Pi Subagents 0.53.0 adds Council Mode, a bounded way to bring multiple advisor profiles into a decision without turning it into open-ended chat. Use /council when a plan, architecture choice, or product decision needs several perspectives, such as an architect, skeptic, and operator. The parent session stays in charge: it chooses the roster, sends each advisor a role, collects independent reports, optionally runs one cross-exam pass, and writes the final decision memo. This release also makes extension-hosted agents easier to build, workflow resumes more durable, and model fallback less wasteful when a model fails or a prompt is too large.
Highlights
- New
/councilmode helps with material decisions by running a small, bounded group of advisors and ending with a parent-written decision memo. - Pi extensions can now register runtime agents without writing user or project config.
- Async workflows are easier to resume because completed children now have durable keyed receipts.
- Model fallback is less noisy and less wasteful when a model fails or the prompt is too large.
- Extension RPC hosts can safely inspect status, launch async work, steer children, and manage schedules.
Need to know
No migration is required. To use Council Mode, run /council with a question that has real tradeoffs. You can define council-* advisor profiles for specific models or roles, but the package also falls back to available advisors when those profiles are not present.
Full changelog
Highlights
- New
/councilmode helps with material decisions by running a small, bounded group of advisors and ending with a parent-written decision memo. - Pi extensions can now register runtime agents without writing user or project config.
- Async workflows are easier to resume because completed children now have durable keyed receipts.
- Model fallback is less noisy and less wasteful when a model fails or the prompt is too large.
- Extension RPC hosts can safely inspect status, launch async work, steer children, and manage schedules.
Added
- Carry full model registry metadata, including tiered pricing, into normalized model information. Thanks to @srcKod for #1317.
- Add runtime agent registration for Pi extensions, with name and alias collision checks. Thanks to @fmoda3 for #1310.
- Skip recently failed fallback models for a TTL-backed window during model selection. Thanks to @srcKod for #1318.
- Add a schedule-only
managemethod to extension RPC for list/show/history/pause/resume/run/delete, while rejecting unrelated management actions. Thanks to @aboubakrine for #1319. - Let agent definitions and
agentOverridesset a defaultoutputMode, while
call-level output mode stays higher priority. Thanks to @bbbRye007 for #1305. - Add
context: "profile"for workflow children that should use the selected
agent profile's declared context instead of the global default (#1303). - Add durable keyed async workflow receipts and resume-by-key selectors for
retained workflow children (#1302). - Add the
resultScanLoggingconfig to control result scan logging. Thanks to @apoapostolov for #1293. - Add
/councilandcouncil-modefor bounded advisor councils. Use it for material decisions that need multiple perspectives: the parent picks 2–3 advisors, collects independent reports, optionally runs one cross-exam pass, and writes the final decision memo. The package also documents model-basedcouncil-*profile examples (#1295).
Changed
- Show bounded workflow progress in Fleet detail views while keeping workflow
parents as the only actionable async items (#1304). - Make
/councileasier to supervise with structured advisor contracts,
aggregate pass receipts, and visible pass checkpoints (#1301). - Reuse validated workflow launch fingerprints during
runs.allbatch setup, reducing focused fingerprint bookkeeping time by 48.7% (#1287). - Speed up recent terminal run history reads when the marker history is large and the requested limit is small.
- Reduce repeated serialization while applying async status snapshot byte caps (#1288).
Fixed
- Add tolerant
subagent_wait({ stopOnAttention: false })blocking waits and scale idle attention defaults for higher-thinking children. Thanks to @elecnix for #1315 and #1316. - Add a separate classifier for model context-overflow errors. Thanks to @srcKod for #1312.
- Normalize child result metadata before workflow return persistence (#1307).
- Quote only confidently identified leading Windows executable paths in acceptance verification commands. Thanks to @srcKod for #1294.
- Keep forked subagent sessions out of top-level
pi -cdiscovery by storing them under the parent session root. Thanks to @xz-dev for #1297. - Preserve
/counciladvisor context defaults during fallback and cross-exam runs (#1298).