Practical overview
When it fits
Use it when a task benefits from splitting work among specialized Pi agents, especially when tasks can run in parallel or their sequence should be scripted rather than improvised.
Who it is for
- Pi users delegating coding investigations or other multi-step tasks to specialized agents.
- Developers who want parallel agent execution or repeatable, explicitly scripted workflows.
- Pi users who need custom agent roles with distinct prompts, models, thinking levels or tool restrictions.
Documented uses
- Delegate a focused investigation to an agent with a specified role and prompt.
- Run independent agent tasks concurrently and collect their results.
- Define a repeatable sequence of agent tasks with workflow scripts.
- Monitor, steer or resume agent sessions.
Requirements & limits
The project is a public GitHub repository licensed under MIT. It is a Pi extension used through a CLI-oriented workflow.
- Agents run in isolated sessions and can have their own tools, system prompt, model and thinking level.
- Background runs return an ID; blocking runs wait for completion and return the full output inline.
- parallel() waits at a group boundary for all its agents, whereas pipeline() allows one item to move ahead while another remains in an earlier stage.
- Workflow scripts run in a Node.js VM sandbox on a worker thread where Date.now(), Math.random() and eval throw.
- Nested subagents are opt-in, depth-capped and ownership-scoped.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Delegate a task to a Pi sub-agent
Ask a specialized agent to perform a task and retrieve its result.
Before you start
- A Pi session with the pi-subagents extension available.
Steps
Call the
Agenttool with asubagent_type, a taskprompt, and a shortdescription.Allow the agent to run in the background, the default, or set
run_in_background: falseto wait for completion and receive its full output inline.For a background run, use the returned agent ID with
get_subagent_resultto retrieve the full result; completion also provides a result preview.
Expected outcome
A specialized sub-agent runs in an isolated session and returns its task result.
Guide limitations
- Background runs return an ID immediately; the completion notification carries a preview, while
get_subagent_resultprovides the full text. - The source does not document installation or extension activation steps.
Define a custom Pi sub-agent type
Create a named agent type with its own prompt and optional model, thinking level, or tool restrictions.
Before you start
- A Pi project or global agent configuration location accessible to the user.
Steps
Create a Markdown file named for the agent under
.pi/agents/.mdor.agents/agents/.mdfor a project, or use the global agent location.Add YAML frontmatter to define the agent configuration, including a custom system prompt and, as needed, model selection, thinking level, or tool restrictions.
Expected outcome
The named custom agent type is defined for use with pi-subagents.
Compare options for Agent orchestration
These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.
| Project | Documented purpose | Platform | Access and requirements |
|---|---|---|---|
| Pi Subagents | Delegate a focused investigation to an agent with a specified role and prompt. | CLI | The project is a public GitHub repository licensed under MIT. It is a Pi extension used through a CLI-oriented workflow. |
| Agenite | Define typed tools with JSON Schema validation and error handling. | CLI | |
| Veldra | Create an agent with a policy, tools, skills, knowledge base and reasoning method. | Self-hosted | The documented deployment is self-hosted and uses a sign-in gate after a first-run administrator account is created. |
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 11 October 2026
- Original website title
- tintinweb/pi-subagents · Official homepage title · retained in its source language

