agentAll changes saved to nought
J

Identity

The handle Pi runs this agent by, and the one line that tells it when to pick it.

Runs as /run submission-scout. It is also the file name.

Pi reads this to choose an agent from natural language. Write what it does, not what it is.

System prompt

Becomes the markdown body of the compiled agent. Everything it knows before it reads a message.

1175 characters, roughly 294 tokens.

The one file this agent may write, even when it is read-only.

Model

Served through OpenRouter. IDs are matched fuzzily, so claude-haiku-4-5 and claude-haiku-4.5 both resolve.

200K context · $1 / $5 per 1M tokens

openai/gpt-5-mini

Tools

An allowlist decides which tools get registered. It is visibility, not a sandbox: policy lives in the permission block.

readgrepfindls
No MCP tools. They are listed per agent, a global directTools does not grant them.

Skills and inheritance

A custom agent starts narrow. It inherits nothing unless you opt in.

No skills attached.
inheritProjectContext
AGENTS.md and the project instructions
inheritSkills
the whole skills catalogue, always on

Packages

What has to be installed for this file to work. Missing one is the usual reason a tool never appears.

npm:pi-subagents

Behaviour

What authority this agent has, and what it starts each run with.

Nothing is read automatically.
defaultProgress
stream progress back to the caller

Budgets

Hard caps are for read-only scouts and reviewers. Bound a writer with a narrow task and a timeout instead.

300 seconds

Memory

A file the agent appends to across runs. Only for knowledge that stays true.

Persistent memory
off

Permission

allow, ask or deny per tool. Needs @gotgenes/pi-permission-system. Composes with the tools allowlist.

No policy. Every registered tool runs without asking.

Publishing

Where Publish writes this file. build.py compiles agents-src into .pi/agents.