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.
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.
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
An allowlist decides which tools get registered. It is visibility, not a sandbox: policy lives in the permission block.
A custom agent starts narrow. It inherits nothing unless you opt in.
What has to be installed for this file to work. Missing one is the usual reason a tool never appears.
What authority this agent has, and what it starts each run with.
Hard caps are for read-only scouts and reviewers. Bound a writer with a narrow task and a timeout instead.
300 seconds
A file the agent appends to across runs. Only for knowledge that stays true.
allow, ask or deny per tool. Needs @gotgenes/pi-permission-system. Composes with the tools allowlist.
Where Publish writes this file. build.py compiles agents-src into .pi/agents.