pi-crew 0.9.51 → 0.9.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (611) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/README.md +216 -20
  3. package/dist/build-meta.json +2090 -1638
  4. package/dist/index.mjs +18057 -17119
  5. package/docs/actions-reference.md +431 -1
  6. package/index.ts +39 -10
  7. package/package.json +19 -9
  8. package/schema.json +41 -0
  9. package/scripts/check-bundle-size.mjs +38 -0
  10. package/scripts/test-runner.mjs +11 -1
  11. package/dist/index.mjs.map +0 -7
  12. package/docs/FEATURE_INTAKE.md +0 -126
  13. package/docs/HARNESS.md +0 -87
  14. package/docs/HARNESS_BACKLOG.md +0 -89
  15. package/docs/PROJECT_REVIEW.md +0 -270
  16. package/docs/PROJECT_REVIEW_FIXES.md +0 -342
  17. package/docs/PROJECT_REVIEW_ROUND4.md +0 -156
  18. package/docs/PROJECT_REVIEW_ROUND5.md +0 -86
  19. package/docs/REVIEW-FINDINGS-2026-06 +0 -357
  20. package/docs/REVIEW-FINDINGS-2026-07-CORE.md +0 -139
  21. package/docs/REVIEW-FINDINGS-2026-07.md +0 -125
  22. package/docs/TEST_MATRIX.md +0 -51
  23. package/docs/archive/README.md +0 -91
  24. package/docs/archive/followup-review-round3-2026-05-12.md +0 -342
  25. package/docs/archive/followup-review-round4-2026-05-13.md +0 -107
  26. package/docs/archive/pi-crew-bugs.md +0 -961
  27. package/docs/archive/pi-crew-test-final.md +0 -120
  28. package/docs/archive/pi-crew-test-results.md +0 -260
  29. package/docs/archive/pi-crew-test-round2.md +0 -136
  30. package/docs/archive/pi-crew-test-round4.md +0 -100
  31. package/docs/archive/pi-crew-test-round5.md +0 -70
  32. package/docs/archive/pi-crew-test-round6.md +0 -110
  33. package/docs/archive/pi-crew-v0.5.10-audit-fix-plan.md +0 -60
  34. package/docs/archive/pi-crew-v0.5.11-audit-fix-plan.md +0 -92
  35. package/docs/archive/pi-crew-v0.5.12-audit-fix-plan.md +0 -76
  36. package/docs/archive/pi-crew-v0.5.13-audit-fix-plan.md +0 -75
  37. package/docs/archive/pi-crew-v0.5.14-audit-fix-plan.md +0 -75
  38. package/docs/archive/pi-crew-v0.5.16-audit-fix-plan.md +0 -35
  39. package/docs/archive/pi-crew-v0.5.17-audit-fix-plan.md +0 -80
  40. package/docs/archive/pi-crew-v0.5.5-audit-fix-plan.md +0 -133
  41. package/docs/archive/pi-crew-v0.5.9-audit-fix-plan.md +0 -88
  42. package/docs/archive/pi-mono-opportunities.md +0 -969
  43. package/docs/archive/pi-mono-review.md +0 -291
  44. package/docs/archive/pi-subagent4-comparison.md +0 -261
  45. package/docs/archive/pi-subagents3-deep-analysis.md +0 -508
  46. package/docs/bugs/bug-021-notification-badge-counter-misleading.md +0 -293
  47. package/docs/bugs/bug-023-chain-windows-path-resolution.md +0 -106
  48. package/docs/bugs/bug-quota-display-truncation.md +0 -223
  49. package/docs/bugs/cross-session-notification-leakage.md +0 -82
  50. package/docs/code-review-2026-05-11.md +0 -592
  51. package/docs/coding-agent-optimization.md +0 -268
  52. package/docs/comparison-pi-subagents-vs-pi-crew.md +0 -303
  53. package/docs/decisions/0001-durable-state.md +0 -41
  54. package/docs/decisions/0002-child-process-for-async.md +0 -42
  55. package/docs/decisions/0003-depth-guard.md +0 -36
  56. package/docs/decisions/0004-execfile-over-exec.md +0 -34
  57. package/docs/decisions/0005-no-parameter-properties.md +0 -49
  58. package/docs/decisions/0006-publish-bundled-esm.md +0 -63
  59. package/docs/decisions/0007-active-run-binary-index.md +0 -54
  60. package/docs/decisions/0008-child-pi-warm-pool.md +0 -61
  61. package/docs/decisions/2026-07-21-broker-phase4-default-on.md +0 -77
  62. package/docs/decisions/2026-07-21-broker-windows-perms.md +0 -91
  63. package/docs/decisions/2026-07-22-broker-phase4-gated-on.md +0 -99
  64. package/docs/decisions/2026-07-24-oidc-trusted-publishing.md +0 -112
  65. package/docs/decisions/2026-07-26-c6-mascot-visibility-not-wired.md +0 -84
  66. package/docs/decisions/README.md +0 -26
  67. package/docs/deep-review-report.md +0 -384
  68. package/docs/distillation/cybersecurity-patterns.md +0 -294
  69. package/docs/feature-analysis-subagent4.md +0 -305
  70. package/docs/fix-plan-disabletools-exit-null.md +0 -219
  71. package/docs/fixes/BATCH_A_H1_H2.md +0 -86
  72. package/docs/fixes/bug-006-foreground-cancel-concurrent.md +0 -78
  73. package/docs/fixes/bug-007-async-notifier-stale-ctx.md +0 -112
  74. package/docs/fixes/bug-008-child-process-silent-timeout.md +0 -100
  75. package/docs/fixes/bug-009-executor-yield-limit-needs-attention.md +0 -75
  76. package/docs/fixes/bug-010-child-process-api-key-filtered.md +0 -109
  77. package/docs/fixes/bug-011-spawn-pi-enoent.md +0 -92
  78. package/docs/fixes/bug-012-essential-env-stripped.md +0 -89
  79. package/docs/fixes/bug-013-background-runner-death.md +0 -84
  80. package/docs/fixes/bug-014-infinite-retry-loop-needs-attention.md +0 -82
  81. package/docs/fixes/bug-015-background-runner-sigterm.md +0 -65
  82. package/docs/fixes/bug-017-background-runner-session-shutdown.md +0 -66
  83. package/docs/fixes/bug-017-background-runner-sigkill-double-fork.md +0 -28
  84. package/docs/fixes/bug-018-child-pi-worker-stdin-hang.md +0 -61
  85. package/docs/fixes/bug-019-phantom-runs-temp-workspace.md +0 -52
  86. package/docs/fixes/bug-020-infinite-retry-loop-needs-attention.md +0 -47
  87. package/docs/fixes/v0.9.10/locks-fix-verify.md +0 -3
  88. package/docs/fixes/v0.9.10/smoke-test.md +0 -12
  89. package/docs/followup-plan-2026-05-12.md +0 -463
  90. package/docs/followup-review-2026-05-12.md +0 -297
  91. package/docs/goals.md +0 -59
  92. package/docs/implementation-plan-top3.md +0 -333
  93. package/docs/issue-29-analysis.md +0 -189
  94. package/docs/live-mailbox-runtime.md +0 -36
  95. package/docs/migration/atomic-write-v2-migration.md +0 -299
  96. package/docs/next-upgrade-roadmap.md +0 -808
  97. package/docs/oh-my-pi-research.md +0 -509
  98. package/docs/optimization-plan-2026-07.md +0 -366
  99. package/docs/optimization-plan.md +0 -644
  100. package/docs/patterns/command-agent-skill.md +0 -71
  101. package/docs/perf/baseline-2026-05.md +0 -113
  102. package/docs/perf/final-report-2026-05.md +0 -206
  103. package/docs/perf/optimization-plan-2026-07-verified.md +0 -396
  104. package/docs/perf/performance-audit-report-2026-07.md +0 -948
  105. package/docs/perf/performance-review-2026-07.md +0 -287
  106. package/docs/perf/sprint-1-report.md +0 -71
  107. package/docs/perf/sprint-2-report.md +0 -81
  108. package/docs/perf/sprint-2.5-report.md +0 -53
  109. package/docs/perf/sprint-3-report.md +0 -36
  110. package/docs/perf/sprint-4-report.md +0 -47
  111. package/docs/perf/sprint-5-report.md +0 -51
  112. package/docs/perf/sprint-6-report.md +0 -94
  113. package/docs/perf/sprint-7-report.md +0 -74
  114. package/docs/perf/upgrade-plan-2026-05.md +0 -147
  115. package/docs/performance-optimization-execution-plan.md +0 -520
  116. package/docs/phase4-triage.md +0 -58
  117. package/docs/pi-crew-investigation-report.md +0 -411
  118. package/docs/product/README.md +0 -31
  119. package/docs/product/platform.md +0 -27
  120. package/docs/product/runtime-safety.md +0 -37
  121. package/docs/product/team-run.md +0 -39
  122. package/docs/product/team-tool.md +0 -37
  123. package/docs/runtime-analysis-child-vs-live.md +0 -171
  124. package/docs/runtime-migration-in-process-analysis.md +0 -250
  125. package/docs/skills/REFERENCE.md +0 -138
  126. package/docs/stories/README.md +0 -32
  127. package/docs/stories/US-DEPS-major-upgrade.md +0 -62
  128. package/docs/stories/backlog.md +0 -36
  129. package/docs/superpowers/plans/2026-06-09-fallow-patterns-adoption.md +0 -1270
  130. package/docs/templates/decision.md +0 -27
  131. package/docs/templates/story.md +0 -44
  132. package/docs/templates/validation-report.md +0 -32
  133. package/docs/ui-optimization-plan.md +0 -447
  134. package/src/adapters/claude-adapter.ts +0 -23
  135. package/src/adapters/codex-adapter.ts +0 -21
  136. package/src/adapters/cursor-adapter.ts +0 -17
  137. package/src/adapters/export-util.ts +0 -143
  138. package/src/adapters/index.ts +0 -15
  139. package/src/adapters/registry.ts +0 -18
  140. package/src/adapters/types.ts +0 -23
  141. package/src/agents/agent-config.ts +0 -194
  142. package/src/agents/agent-search.ts +0 -98
  143. package/src/agents/agent-serializer.ts +0 -38
  144. package/src/agents/discover-agents.ts +0 -623
  145. package/src/benchmark/benchmark-runner.ts +0 -313
  146. package/src/benchmark/feedback-loop.ts +0 -73
  147. package/src/config/config.ts +0 -1269
  148. package/src/config/defaults.ts +0 -193
  149. package/src/config/drift-detector.ts +0 -290
  150. package/src/config/markers.ts +0 -330
  151. package/src/config/resilient-parser.ts +0 -117
  152. package/src/config/role-tools.ts +0 -118
  153. package/src/config/suggestions.ts +0 -75
  154. package/src/config/types.ts +0 -278
  155. package/src/errors.ts +0 -194
  156. package/src/extension/action-suggestions.ts +0 -117
  157. package/src/extension/async-notifier.ts +0 -179
  158. package/src/extension/autonomous-policy.ts +0 -209
  159. package/src/extension/command-completions.ts +0 -120
  160. package/src/extension/context-status-injection.ts +0 -185
  161. package/src/extension/crew-autocomplete.ts +0 -131
  162. package/src/extension/crew-cleanup.ts +0 -168
  163. package/src/extension/crew-input-router.ts +0 -93
  164. package/src/extension/crew-shortcuts.ts +0 -87
  165. package/src/extension/crew-vibes/cat-frames.ts +0 -18
  166. package/src/extension/crew-vibes/config.ts +0 -195
  167. package/src/extension/crew-vibes/figures.ts +0 -101
  168. package/src/extension/crew-vibes/font-detect.ts +0 -71
  169. package/src/extension/crew-vibes/footer.ts +0 -292
  170. package/src/extension/crew-vibes/index.ts +0 -432
  171. package/src/extension/crew-vibes/provider-usage.ts +0 -396
  172. package/src/extension/crew-vibes/render.ts +0 -206
  173. package/src/extension/crew-vibes/speed.ts +0 -286
  174. package/src/extension/cross-extension-rpc.ts +0 -350
  175. package/src/extension/help.ts +0 -62
  176. package/src/extension/import-index.ts +0 -74
  177. package/src/extension/knowledge-injection.ts +0 -402
  178. package/src/extension/management.ts +0 -571
  179. package/src/extension/message-renderers.ts +0 -108
  180. package/src/extension/notification-router.ts +0 -152
  181. package/src/extension/notification-sink.ts +0 -54
  182. package/src/extension/pi-api.ts +0 -56
  183. package/src/extension/plan-orchestrate.ts +0 -302
  184. package/src/extension/project-init.ts +0 -170
  185. package/src/extension/register.ts +0 -113
  186. package/src/extension/registration/artifact-cleanup.ts +0 -20
  187. package/src/extension/registration/command-registration.ts +0 -58
  188. package/src/extension/registration/command-utils.ts +0 -58
  189. package/src/extension/registration/commands.ts +0 -1228
  190. package/src/extension/registration/compaction-guard.ts +0 -333
  191. package/src/extension/registration/context-builder.ts +0 -135
  192. package/src/extension/registration/crash-recovery-cache.ts +0 -54
  193. package/src/extension/registration/foreground-run-controller.ts +0 -238
  194. package/src/extension/registration/hook-registration.ts +0 -119
  195. package/src/extension/registration/lazy-configurers.ts +0 -124
  196. package/src/extension/registration/lifecycle-handlers.ts +0 -923
  197. package/src/extension/registration/lifecycle.ts +0 -259
  198. package/src/extension/registration/observability.ts +0 -322
  199. package/src/extension/registration/registration-types.ts +0 -158
  200. package/src/extension/registration/runtime-cleanup.ts +0 -230
  201. package/src/extension/registration/subagent-helpers.ts +0 -125
  202. package/src/extension/registration/subagent-manager-setup.ts +0 -330
  203. package/src/extension/registration/subagent-tools.ts +0 -456
  204. package/src/extension/registration/team-tool.ts +0 -220
  205. package/src/extension/registration/tool-registration.ts +0 -50
  206. package/src/extension/registration/ui.ts +0 -172
  207. package/src/extension/registration/viewers.ts +0 -121
  208. package/src/extension/registration/wire-cross-extension.ts +0 -37
  209. package/src/extension/result-watcher.ts +0 -139
  210. package/src/extension/rpc-hmac.ts +0 -256
  211. package/src/extension/run-bundle-schema.ts +0 -104
  212. package/src/extension/run-export.ts +0 -97
  213. package/src/extension/run-import.ts +0 -168
  214. package/src/extension/run-index.ts +0 -131
  215. package/src/extension/run-maintenance.ts +0 -190
  216. package/src/extension/session-summary.ts +0 -18
  217. package/src/extension/team-manager-command.ts +0 -153
  218. package/src/extension/team-onboard.ts +0 -177
  219. package/src/extension/team-recommendation.ts +0 -288
  220. package/src/extension/team-tool/anchor.ts +0 -172
  221. package/src/extension/team-tool/api.ts +0 -1244
  222. package/src/extension/team-tool/auto-summarize.ts +0 -142
  223. package/src/extension/team-tool/cache-control.ts +0 -19
  224. package/src/extension/team-tool/cancel.ts +0 -337
  225. package/src/extension/team-tool/chain-dispatch.ts +0 -95
  226. package/src/extension/team-tool/chain-executor.ts +0 -379
  227. package/src/extension/team-tool/config-patch.ts +0 -50
  228. package/src/extension/team-tool/context.ts +0 -149
  229. package/src/extension/team-tool/destructive-gate.ts +0 -52
  230. package/src/extension/team-tool/doctor.ts +0 -431
  231. package/src/extension/team-tool/explain.ts +0 -282
  232. package/src/extension/team-tool/failure-patterns.ts +0 -118
  233. package/src/extension/team-tool/goal-wrap.ts +0 -330
  234. package/src/extension/team-tool/goal.ts +0 -556
  235. package/src/extension/team-tool/handle-schedule.ts +0 -332
  236. package/src/extension/team-tool/handle-settings.ts +0 -520
  237. package/src/extension/team-tool/health-monitor.ts +0 -481
  238. package/src/extension/team-tool/inspect.ts +0 -88
  239. package/src/extension/team-tool/intent-policy.ts +0 -45
  240. package/src/extension/team-tool/lifecycle-actions.ts +0 -615
  241. package/src/extension/team-tool/orchestrate.ts +0 -98
  242. package/src/extension/team-tool/parallel-dispatch.ts +0 -183
  243. package/src/extension/team-tool/plan.ts +0 -50
  244. package/src/extension/team-tool/respond.ts +0 -150
  245. package/src/extension/team-tool/run-not-found.ts +0 -49
  246. package/src/extension/team-tool/run.ts +0 -1035
  247. package/src/extension/team-tool/status.ts +0 -260
  248. package/src/extension/team-tool/workflow-manage.ts +0 -261
  249. package/src/extension/team-tool-types.ts +0 -26
  250. package/src/extension/team-tool.ts +0 -1116
  251. package/src/extension/tool-result.ts +0 -16
  252. package/src/extension/validate-resources.ts +0 -108
  253. package/src/hooks/registry.ts +0 -200
  254. package/src/hooks/types.ts +0 -69
  255. package/src/i18n.ts +0 -212
  256. package/src/observability/correlation.ts +0 -50
  257. package/src/observability/event-bus.ts +0 -86
  258. package/src/observability/event-to-metric.ts +0 -170
  259. package/src/observability/exporters/adapter.ts +0 -27
  260. package/src/observability/exporters/otlp-exporter.ts +0 -356
  261. package/src/observability/exporters/prometheus-exporter.ts +0 -54
  262. package/src/observability/metric-registry.ts +0 -100
  263. package/src/observability/metric-retention.ts +0 -64
  264. package/src/observability/metric-sink.ts +0 -99
  265. package/src/observability/metrics-primitives.ts +0 -219
  266. package/src/plugins/plugin-define.ts +0 -6
  267. package/src/plugins/plugin-registry.ts +0 -32
  268. package/src/plugins/plugins/index.ts +0 -3
  269. package/src/plugins/plugins/nextjs.ts +0 -19
  270. package/src/plugins/plugins/vite.ts +0 -10
  271. package/src/plugins/plugins/vitest.ts +0 -9
  272. package/src/prompt/prompt-runtime.ts +0 -380
  273. package/src/runtime/adaptive-plan.ts +0 -563
  274. package/src/runtime/agent-control.ts +0 -215
  275. package/src/runtime/agent-memory.ts +0 -81
  276. package/src/runtime/agent-observability.ts +0 -122
  277. package/src/runtime/anchor-manager.ts +0 -475
  278. package/src/runtime/async-marker.ts +0 -32
  279. package/src/runtime/async-runner.ts +0 -381
  280. package/src/runtime/attention-events.ts +0 -28
  281. package/src/runtime/auto-summarize.ts +0 -344
  282. package/src/runtime/background-runner.ts +0 -837
  283. package/src/runtime/batch-barrier.ts +0 -147
  284. package/src/runtime/broker-issuer.ts +0 -37
  285. package/src/runtime/cancellation-token.ts +0 -99
  286. package/src/runtime/cancellation.ts +0 -99
  287. package/src/runtime/capability-inventory.ts +0 -137
  288. package/src/runtime/chain-parser.ts +0 -237
  289. package/src/runtime/chain-runner.ts +0 -606
  290. package/src/runtime/checkpoint.ts +0 -291
  291. package/src/runtime/child-pi-constants.ts +0 -42
  292. package/src/runtime/child-pi-kill.ts +0 -180
  293. package/src/runtime/child-pi-pool.ts +0 -68
  294. package/src/runtime/child-pi-spawn.ts +0 -287
  295. package/src/runtime/child-pi-steering.ts +0 -128
  296. package/src/runtime/child-pi-streams.ts +0 -296
  297. package/src/runtime/child-pi-transcript.ts +0 -169
  298. package/src/runtime/child-pi.ts +0 -1105
  299. package/src/runtime/coalesce-tasks.ts +0 -268
  300. package/src/runtime/code-summary.ts +0 -292
  301. package/src/runtime/command-trace.ts +0 -105
  302. package/src/runtime/compact-pipeline.ts +0 -56
  303. package/src/runtime/compact-stages/ansi-strip-stage.ts +0 -25
  304. package/src/runtime/compact-stages/blank-collapse-stage.ts +0 -31
  305. package/src/runtime/compact-stages/deduplicate-stage.ts +0 -34
  306. package/src/runtime/compact-stages/head-snap-stage.ts +0 -57
  307. package/src/runtime/compact-stages/index.ts +0 -23
  308. package/src/runtime/compact-stages/tail-capture-stage.ts +0 -77
  309. package/src/runtime/compact-stages/truncation-stage.ts +0 -74
  310. package/src/runtime/compaction-summary.ts +0 -278
  311. package/src/runtime/completion-guard.ts +0 -207
  312. package/src/runtime/concurrency.ts +0 -58
  313. package/src/runtime/crash-classification.ts +0 -229
  314. package/src/runtime/crash-recovery.ts +0 -577
  315. package/src/runtime/crew-agent-records.ts +0 -593
  316. package/src/runtime/crew-agent-runtime.ts +0 -62
  317. package/src/runtime/crew-broker-child.ts +0 -88
  318. package/src/runtime/crew-broker-client.ts +0 -673
  319. package/src/runtime/crew-broker-tokens.ts +0 -84
  320. package/src/runtime/crew-broker.ts +0 -1276
  321. package/src/runtime/crew-hooks.ts +0 -227
  322. package/src/runtime/cross-extension-rpc.ts +0 -143
  323. package/src/runtime/custom-tools/irc-tool.ts +0 -282
  324. package/src/runtime/custom-tools/submit-result-tool.ts +0 -102
  325. package/src/runtime/deadletter.ts +0 -47
  326. package/src/runtime/delivery-coordinator.ts +0 -211
  327. package/src/runtime/delta-conflict.ts +0 -348
  328. package/src/runtime/deterministic-ast.ts +0 -161
  329. package/src/runtime/diagnostic-export.ts +0 -171
  330. package/src/runtime/direct-run.ts +0 -45
  331. package/src/runtime/dwf-state-store.ts +0 -102
  332. package/src/runtime/dynamic-workflow-context.ts +0 -1016
  333. package/src/runtime/dynamic-workflow-runner.ts +0 -310
  334. package/src/runtime/effectiveness.ts +0 -90
  335. package/src/runtime/errors/crew-errors.ts +0 -162
  336. package/src/runtime/event-stream-bridge.ts +0 -98
  337. package/src/runtime/foreground-control.ts +0 -193
  338. package/src/runtime/foreground-watchdog.ts +0 -132
  339. package/src/runtime/global-worker-cap.ts +0 -96
  340. package/src/runtime/goal-achievement.ts +0 -148
  341. package/src/runtime/goal-evaluator.ts +0 -361
  342. package/src/runtime/goal-loop-runner.ts +0 -828
  343. package/src/runtime/goal-state-store.ts +0 -219
  344. package/src/runtime/green-contract.ts +0 -55
  345. package/src/runtime/group-join.ts +0 -267
  346. package/src/runtime/handoff-manager.ts +0 -598
  347. package/src/runtime/heartbeat-gradient.ts +0 -36
  348. package/src/runtime/heartbeat-watcher.ts +0 -239
  349. package/src/runtime/hidden-handoff.ts +0 -407
  350. package/src/runtime/important-line-classifier.ts +0 -140
  351. package/src/runtime/intercom-bridge.ts +0 -187
  352. package/src/runtime/iteration-hooks.ts +0 -305
  353. package/src/runtime/live-agent-control.ts +0 -136
  354. package/src/runtime/live-agent-manager.ts +0 -704
  355. package/src/runtime/live-control-realtime.ts +0 -56
  356. package/src/runtime/live-extension-bridge.ts +0 -148
  357. package/src/runtime/live-irc.ts +0 -97
  358. package/src/runtime/live-session-health.ts +0 -108
  359. package/src/runtime/live-session-runtime.ts +0 -1139
  360. package/src/runtime/loop-gates.ts +0 -128
  361. package/src/runtime/manifest-cache.ts +0 -375
  362. package/src/runtime/mcp-proxy.ts +0 -105
  363. package/src/runtime/metric-parser.ts +0 -36
  364. package/src/runtime/model-fallback.ts +0 -409
  365. package/src/runtime/model-resolver.ts +0 -126
  366. package/src/runtime/model-scope.ts +0 -158
  367. package/src/runtime/orphan-worker-registry.ts +0 -465
  368. package/src/runtime/output-validator.ts +0 -202
  369. package/src/runtime/overflow-recovery.ts +0 -206
  370. package/src/runtime/parallel-research.ts +0 -68
  371. package/src/runtime/parallel-utils.ts +0 -160
  372. package/src/runtime/parent-guard.ts +0 -134
  373. package/src/runtime/path-overlap.ts +0 -150
  374. package/src/runtime/peer-dep.ts +0 -292
  375. package/src/runtime/per-write-validator.ts +0 -181
  376. package/src/runtime/phase-progress.ts +0 -217
  377. package/src/runtime/phase-tracker.ts +0 -385
  378. package/src/runtime/pi-args.ts +0 -655
  379. package/src/runtime/pi-json-output.ts +0 -170
  380. package/src/runtime/pi-spawn.ts +0 -273
  381. package/src/runtime/pipeline-runner.ts +0 -523
  382. package/src/runtime/plan-templates.ts +0 -201
  383. package/src/runtime/policy-engine.ts +0 -115
  384. package/src/runtime/post-checks.ts +0 -142
  385. package/src/runtime/post-exit-stdio-guard.ts +0 -104
  386. package/src/runtime/process-lifecycle.ts +0 -491
  387. package/src/runtime/process-status.ts +0 -154
  388. package/src/runtime/progress-event-coalescer.ts +0 -44
  389. package/src/runtime/progress-tracker.ts +0 -124
  390. package/src/runtime/prose-compressor.ts +0 -162
  391. package/src/runtime/recovery-recipes.ts +0 -203
  392. package/src/runtime/replace.ts +0 -570
  393. package/src/runtime/resilient-edit.ts +0 -153
  394. package/src/runtime/result-extractor.ts +0 -213
  395. package/src/runtime/retry-executor.ts +0 -100
  396. package/src/runtime/retry-runner.ts +0 -336
  397. package/src/runtime/role-permission.ts +0 -59
  398. package/src/runtime/run-coalesced-task-group.ts +0 -308
  399. package/src/runtime/run-drift.ts +0 -219
  400. package/src/runtime/run-tracker.ts +0 -116
  401. package/src/runtime/runtime-policy.ts +0 -29
  402. package/src/runtime/runtime-resolver.ts +0 -172
  403. package/src/runtime/runtime-warmup.ts +0 -160
  404. package/src/runtime/scheduler.ts +0 -353
  405. package/src/runtime/semaphore.ts +0 -141
  406. package/src/runtime/sensitive-paths.ts +0 -93
  407. package/src/runtime/session-resources.ts +0 -25
  408. package/src/runtime/session-snapshot.ts +0 -59
  409. package/src/runtime/session-usage.ts +0 -79
  410. package/src/runtime/settings-store.ts +0 -155
  411. package/src/runtime/sidechain-output.ts +0 -35
  412. package/src/runtime/single-agent-compose.ts +0 -84
  413. package/src/runtime/skill-effectiveness.ts +0 -524
  414. package/src/runtime/skill-instructions.ts +0 -391
  415. package/src/runtime/stale-reconciler.ts +0 -680
  416. package/src/runtime/stream-preview.ts +0 -184
  417. package/src/runtime/streaming-output.ts +0 -50
  418. package/src/runtime/subagent-manager.ts +0 -561
  419. package/src/runtime/subprocess-tool-registry.ts +0 -70
  420. package/src/runtime/supervisor-contact.ts +0 -64
  421. package/src/runtime/task-display.ts +0 -52
  422. package/src/runtime/task-graph-scheduler.ts +0 -227
  423. package/src/runtime/task-graph.ts +0 -290
  424. package/src/runtime/task-health.ts +0 -83
  425. package/src/runtime/task-id.ts +0 -161
  426. package/src/runtime/task-output-context.ts +0 -602
  427. package/src/runtime/task-packet.ts +0 -268
  428. package/src/runtime/task-quality.ts +0 -199
  429. package/src/runtime/task-runner/capabilities.ts +0 -78
  430. package/src/runtime/task-runner/context-retrieval.ts +0 -163
  431. package/src/runtime/task-runner/live-executor.ts +0 -227
  432. package/src/runtime/task-runner/output-splitter.ts +0 -152
  433. package/src/runtime/task-runner/progress.ts +0 -157
  434. package/src/runtime/task-runner/prompt-builder.ts +0 -278
  435. package/src/runtime/task-runner/prompt-pipeline.ts +0 -88
  436. package/src/runtime/task-runner/result-utils.ts +0 -16
  437. package/src/runtime/task-runner/retrieval-orchestrator.ts +0 -310
  438. package/src/runtime/task-runner/run-projection.ts +0 -125
  439. package/src/runtime/task-runner/state-helpers.ts +0 -176
  440. package/src/runtime/task-runner/tail-read.ts +0 -34
  441. package/src/runtime/task-runner.ts +0 -1420
  442. package/src/runtime/team-runner-artifacts.ts +0 -13
  443. package/src/runtime/team-runner.ts +0 -1993
  444. package/src/runtime/tool-output-pruner.ts +0 -333
  445. package/src/runtime/tool-progress.ts +0 -278
  446. package/src/runtime/usage-tracker.ts +0 -73
  447. package/src/runtime/verification-gates.ts +0 -571
  448. package/src/runtime/verification-integrity.ts +0 -105
  449. package/src/runtime/verification-worktree.ts +0 -186
  450. package/src/runtime/worker-heartbeat.ts +0 -25
  451. package/src/runtime/worker-startup.ts +0 -83
  452. package/src/runtime/workflow-state.ts +0 -195
  453. package/src/runtime/workspace-lock.ts +0 -443
  454. package/src/runtime/workspace-tree.ts +0 -312
  455. package/src/runtime/yield-handler.ts +0 -224
  456. package/src/runtime/zombie-scanner.ts +0 -298
  457. package/src/schema/config-schema.ts +0 -327
  458. package/src/schema/team-tool-schema.ts +0 -415
  459. package/src/schema/validation-types.ts +0 -159
  460. package/src/skills/discover-skills.ts +0 -197
  461. package/src/skills/skill-templates.ts +0 -456
  462. package/src/skills/validate.ts +0 -285
  463. package/src/state/active-run-registry.ts +0 -439
  464. package/src/state/artifact-store.ts +0 -176
  465. package/src/state/atomic-write.ts +0 -903
  466. package/src/state/blob-store.ts +0 -308
  467. package/src/state/contracts.ts +0 -158
  468. package/src/state/crew-init.ts +0 -269
  469. package/src/state/decision-ledger.ts +0 -345
  470. package/src/state/event-log-rotation.ts +0 -342
  471. package/src/state/event-log.ts +0 -1311
  472. package/src/state/event-reconstructor.ts +0 -229
  473. package/src/state/gitignore-manager.ts +0 -46
  474. package/src/state/health-store.ts +0 -79
  475. package/src/state/hook-instinct-bridge.ts +0 -94
  476. package/src/state/hook-integrations.ts +0 -51
  477. package/src/state/instinct-store.ts +0 -275
  478. package/src/state/jsonl-writer.ts +0 -107
  479. package/src/state/locks.ts +0 -562
  480. package/src/state/mailbox.ts +0 -916
  481. package/src/state/observation-store.ts +0 -176
  482. package/src/state/run-cache.ts +0 -193
  483. package/src/state/run-graph.ts +0 -183
  484. package/src/state/run-metrics.ts +0 -165
  485. package/src/state/schedule.ts +0 -166
  486. package/src/state/session-state-map.ts +0 -51
  487. package/src/state/state-store.ts +0 -958
  488. package/src/state/task-claims.ts +0 -61
  489. package/src/state/tiered-eval.ts +0 -480
  490. package/src/state/types-eval.ts +0 -58
  491. package/src/state/types.ts +0 -440
  492. package/src/state/usage.ts +0 -138
  493. package/src/state/worker-atomic-writer.ts +0 -194
  494. package/src/subagents/async-entry.ts +0 -1
  495. package/src/subagents/index.ts +0 -3
  496. package/src/subagents/live/control.ts +0 -1
  497. package/src/subagents/live/manager.ts +0 -1
  498. package/src/subagents/live/realtime.ts +0 -1
  499. package/src/subagents/live/session-runtime.ts +0 -1
  500. package/src/subagents/manager.ts +0 -1
  501. package/src/subagents/spawn.ts +0 -1
  502. package/src/teams/discover-teams.ts +0 -187
  503. package/src/teams/team-config.ts +0 -27
  504. package/src/teams/team-serializer.ts +0 -38
  505. package/src/tools/safe-bash-extension.ts +0 -54
  506. package/src/tools/safe-bash.ts +0 -505
  507. package/src/types/diff.d.ts +0 -18
  508. package/src/types/new-api-types.ts +0 -35
  509. package/src/ui/agent-management-overlay.ts +0 -160
  510. package/src/ui/card-colors.ts +0 -139
  511. package/src/ui/crew-footer.ts +0 -102
  512. package/src/ui/crew-select-list.ts +0 -111
  513. package/src/ui/dashboard-panes/agents-pane.ts +0 -164
  514. package/src/ui/dashboard-panes/cancellation-pane.ts +0 -66
  515. package/src/ui/dashboard-panes/capability-pane.ts +0 -77
  516. package/src/ui/dashboard-panes/health-pane.ts +0 -31
  517. package/src/ui/dashboard-panes/mailbox-pane.ts +0 -35
  518. package/src/ui/dashboard-panes/metrics-pane.ts +0 -37
  519. package/src/ui/dashboard-panes/progress-pane.ts +0 -38
  520. package/src/ui/dashboard-panes/transcript-pane.ts +0 -10
  521. package/src/ui/deploy-bundled-themes.ts +0 -71
  522. package/src/ui/dwf-phase-display.ts +0 -151
  523. package/src/ui/dynamic-border.ts +0 -35
  524. package/src/ui/heartbeat-aggregator.ts +0 -74
  525. package/src/ui/key-utils.ts +0 -42
  526. package/src/ui/keybinding-map.ts +0 -248
  527. package/src/ui/layout-primitives.ts +0 -106
  528. package/src/ui/live-conversation-overlay.ts +0 -183
  529. package/src/ui/live-duration.ts +0 -55
  530. package/src/ui/live-run-sidebar.ts +0 -293
  531. package/src/ui/loaders.ts +0 -6
  532. package/src/ui/mascot.ts +0 -449
  533. package/src/ui/overlays/agent-picker-overlay.ts +0 -65
  534. package/src/ui/overlays/confirm-overlay.ts +0 -60
  535. package/src/ui/overlays/help-overlay.ts +0 -177
  536. package/src/ui/overlays/mailbox-compose-overlay.ts +0 -181
  537. package/src/ui/overlays/mailbox-compose-preview.ts +0 -78
  538. package/src/ui/overlays/mailbox-detail-overlay.ts +0 -154
  539. package/src/ui/pi-ui-compat.ts +0 -68
  540. package/src/ui/powerbar-publisher.ts +0 -459
  541. package/src/ui/render-coalescer.ts +0 -101
  542. package/src/ui/render-diff.ts +0 -160
  543. package/src/ui/render-scheduler.ts +0 -278
  544. package/src/ui/run-action-dispatcher.ts +0 -182
  545. package/src/ui/run-dashboard.ts +0 -904
  546. package/src/ui/run-event-bus.ts +0 -381
  547. package/src/ui/run-snapshot-cache.ts +0 -1057
  548. package/src/ui/settings-overlay.ts +0 -1067
  549. package/src/ui/shared-overlay-scheduler.ts +0 -96
  550. package/src/ui/snapshot-types.ts +0 -90
  551. package/src/ui/spinner.ts +0 -17
  552. package/src/ui/status-colors.ts +0 -143
  553. package/src/ui/syntax-highlight.ts +0 -136
  554. package/src/ui/terminal-status.ts +0 -269
  555. package/src/ui/theme-adapter.ts +0 -271
  556. package/src/ui/theme-discovery.ts +0 -199
  557. package/src/ui/tool-progress-formatter.ts +0 -93
  558. package/src/ui/tool-render.ts +0 -453
  559. package/src/ui/tool-renderers/brief-mode.ts +0 -225
  560. package/src/ui/tool-renderers/index.ts +0 -726
  561. package/src/ui/transcript-cache.ts +0 -128
  562. package/src/ui/transcript-entries.ts +0 -256
  563. package/src/ui/transcript-viewer.ts +0 -424
  564. package/src/ui/widget/index.ts +0 -391
  565. package/src/ui/widget/widget-formatters.ts +0 -182
  566. package/src/ui/widget/widget-model.ts +0 -110
  567. package/src/ui/widget/widget-renderer.ts +0 -182
  568. package/src/ui/widget/widget-types.ts +0 -36
  569. package/src/utils/bm25-search.ts +0 -235
  570. package/src/utils/completion-dedupe.ts +0 -63
  571. package/src/utils/conflict-detect.ts +0 -668
  572. package/src/utils/env-allowlist.ts +0 -30
  573. package/src/utils/env-filter.ts +0 -155
  574. package/src/utils/file-coalescer.ts +0 -98
  575. package/src/utils/fingerprint.ts +0 -180
  576. package/src/utils/frontmatter.ts +0 -70
  577. package/src/utils/fs-watch.ts +0 -37
  578. package/src/utils/gh-protocol.ts +0 -556
  579. package/src/utils/git.ts +0 -260
  580. package/src/utils/guards.ts +0 -107
  581. package/src/utils/ids.ts +0 -24
  582. package/src/utils/incremental-reader.ts +0 -220
  583. package/src/utils/internal-error.ts +0 -10
  584. package/src/utils/names.ts +0 -36
  585. package/src/utils/ndjson.ts +0 -115
  586. package/src/utils/paths.ts +0 -227
  587. package/src/utils/project-detector.ts +0 -160
  588. package/src/utils/redaction.ts +0 -347
  589. package/src/utils/resolve-shell.ts +0 -36
  590. package/src/utils/run-watcher-registry.ts +0 -152
  591. package/src/utils/safe-paths.ts +0 -383
  592. package/src/utils/scan-cache.ts +0 -144
  593. package/src/utils/session-utils.ts +0 -110
  594. package/src/utils/sleep.ts +0 -54
  595. package/src/utils/socket-path.ts +0 -127
  596. package/src/utils/sse-parser.ts +0 -129
  597. package/src/utils/task-name-generator.ts +0 -337
  598. package/src/utils/timings.ts +0 -33
  599. package/src/utils/token-counter.ts +0 -200
  600. package/src/utils/visual.ts +0 -207
  601. package/src/workflows/cost-estimator.ts +0 -34
  602. package/src/workflows/discover-workflows.ts +0 -290
  603. package/src/workflows/intermediate-store.ts +0 -166
  604. package/src/workflows/preflight-validator.ts +0 -168
  605. package/src/workflows/topology-analyzer.ts +0 -203
  606. package/src/workflows/validate-workflow.ts +0 -50
  607. package/src/workflows/workflow-config.ts +0 -70
  608. package/src/workflows/workflow-serializer.ts +0 -32
  609. package/src/worktree/branch-freshness.ts +0 -112
  610. package/src/worktree/cleanup.ts +0 -341
  611. package/src/worktree/worktree-manager.ts +0 -1200
@@ -8,24 +8,37 @@ The `team` tool is the primary tool that pi-crew registers with Pi. All operatio
8
8
  |--------|---------|-------------|
9
9
  | `recommend` | Suggest a suitable team/workflow | Starting point when unsure what to pick |
10
10
  | `run` | Create a run and execute a workflow | Main operation |
11
+ | `parallel` | Fan out independent tasks as concurrent runs | When you need N truly concurrent agents |
11
12
  | `plan` | Preview a workflow without running tasks | Dry-run planning |
12
13
  | `orchestrate` | Execute from a plan document | Automate a plan |
13
14
  | `schedule` | Schedule recurring runs | Periodic automation |
14
15
  | `scheduled` | List scheduled jobs | View schedules |
16
+ | `anchor` | Cross-run session anchoring | Persist context across runs |
17
+ | `auto-summarize` | Control auto-summarization of long runs | Manage context summarization |
18
+ | `auto_boomerang` | Toggle auto-summarize (shorthand) | Quick on/off |
15
19
  | `status` | Read run status | Track progress |
16
20
  | `summary` | Read/write run summary artifact | Summarize |
17
21
  | `cancel` | Cancel queued/running work | Stop a run |
18
22
  | `resume` | Re-queue failed/cancelled tasks | Resume a run |
23
+ | `retry` | Retry specific failed/cancelled task(s) | Retry a task without full resume |
24
+ | `wait` | Block until a run finishes (with timeout) | Synchronous wait |
25
+ | `steer` | Queue an interrupting message to an active task | Redirect in-flight work |
26
+ | `respond` | Reply to a waiting task and re-queue it | Interactive task Q&A |
19
27
  | `list` | List teams, agents, workflows, runs | Explore resources |
20
28
  | `get` | Inspect agent/team/workflow | View details |
29
+ | `onboard` | Show team onboarding guide | Learn a team's roles/flow |
21
30
  | `search` | BM25-ranked agent/team discovery | Smart search |
22
31
  | `events` | Read the event log | Debug/audit |
23
32
  | `artifacts` | List run artifacts | View outputs |
24
33
  | `worktrees` | List run worktree metadata | Inspect worktrees |
25
34
  | `graph` | Load/save/list run graphs | Visualization |
35
+ | `explain` | Explain a run or task structure | Understand a run |
36
+ | `cache` | Run/skill cache stats or cached-run lookup | Inspect caches |
37
+ | `checkpoint` | Read a task's saved checkpoint | Inspect task progress |
26
38
  | `cleanup` | Delete run worktrees | Cleanup |
27
39
  | `forget` | Delete run state/artifacts | Remove entirely (requires `confirm`) |
28
40
  | `prune` | Delete multiple old finished runs | Bulk cleanup |
41
+ | `invalidate` | Drop a run's snapshot cache | Force fresh reads |
29
42
  | `export` | Export a portable run bundle | Share/backup |
30
43
  | `import` | Import a run bundle | Receive a run from elsewhere |
31
44
  | `imports` | List imported bundles | View imports |
@@ -34,7 +47,9 @@ The `team` tool is the primary tool that pi-crew registers with Pi. All operatio
34
47
  | `delete` | Delete an agent/team/workflow | Remove resources (requires `confirm`) |
35
48
  | `validate` | Validate resources | Health check |
36
49
  | `doctor` | Check readiness | Diagnose environment |
37
- | `config` | Show/update config | Configuration |
50
+ | `health` | Watchdog health monitor across all runs | Diagnose stuck/zombie runs |
51
+ | `config` | Show/update config (raw JSON) | Configuration |
52
+ | `settings` | View/set config via dotted-path keys | Human-readable settings |
38
53
  | `init` | Initialize project layout | Initial setup |
39
54
  | `autonomy` | Manage delegation settings | Adjust automation |
40
55
  | `api` | Safe interop for state operations | Advanced integration |
@@ -686,3 +701,418 @@ Copy builtins:
686
701
  ```
687
702
 
688
703
  Profiles: `manual`, `suggested`, `assisted`, `aggressive`.
704
+
705
+ ---
706
+
707
+ ## Additional Actions (Run domain)
708
+
709
+ ### `parallel` — Fan out independent tasks
710
+
711
+ Spawns an array of independent tasks as concurrent background agents. Use this when you need N truly concurrent workers in a single call (e.g. parallel research or review). Max concurrency is 8.
712
+
713
+ ```json
714
+ {
715
+ "action": "parallel",
716
+ "config": {
717
+ "tasks": [
718
+ { "goal": "Audit auth module for CVEs", "agent": "explorer" },
719
+ { "goal": "Audit payment module for CVEs", "agent": "explorer" }
720
+ ],
721
+ "concurrency": 4,
722
+ "team": "fast-fix"
723
+ }
724
+ }
725
+ ```
726
+
727
+ Params:
728
+
729
+ | Param | Type | Default | Notes |
730
+ |-------|------|---------|-------|
731
+ | `config.tasks` | `Array<{ goal, agent? }>` | — | **Required.** Each entry becomes a concurrent run. |
732
+ | `config.concurrency` | `number` | `4` | Clamped to `1..8`. |
733
+ | `config.team` | `string` | `fast-fix` | Team whose workflow is used for each task. |
734
+
735
+ Each task launches its own run; the host agent does not need to emit one
736
+ `Agent()` call per turn.
737
+
738
+ ---
739
+
740
+ ### `retry` — Retry specific failed task(s)
741
+
742
+ Re-queues `failed` / `cancelled` tasks so the scheduler picks them up again.
743
+ Unlike `resume` (which re-queues *all* non-terminal tasks), `retry` can target a
744
+ single task via `taskId`. Runs the `before_retry` hook before mutating state.
745
+
746
+ ```json
747
+ {
748
+ "action": "retry",
749
+ "runId": "team_..."
750
+ }
751
+ ```
752
+
753
+ Retry a single task:
754
+
755
+ ```json
756
+ {
757
+ "action": "retry",
758
+ "runId": "team_...",
759
+ "taskId": "03_execute"
760
+ }
761
+ ```
762
+
763
+ Params:
764
+
765
+ | Param | Type | Default | Notes |
766
+ |-------|------|---------|-------|
767
+ | `runId` | `string` | — | **Required.** |
768
+ | `taskId` | `string` | — | Retry only this task; omit to retry all failed/cancelled. |
769
+ | `force` | `boolean` | `false` | Override cross-session ownership check. |
770
+
771
+ ---
772
+
773
+ ### `wait` — Block until a run finishes
774
+
775
+ Synchronously waits (polling) until the run reaches a terminal status, then
776
+ returns the result. Useful when a foreground caller must block on an async run.
777
+
778
+ ```json
779
+ {
780
+ "action": "wait",
781
+ "runId": "team_...",
782
+ "config": { "timeoutMs": 300000, "pollIntervalMs": 2000 }
783
+ }
784
+ ```
785
+
786
+ Params:
787
+
788
+ | Param | Type | Default | Notes |
789
+ |-------|------|---------|-------|
790
+ | `runId` | `string` | — | **Required.** |
791
+ | `config.timeoutMs` | `number` | `300000` | Clamped to `1000..3_600_000` (1 s – 1 h). |
792
+ | `config.pollIntervalMs` | `number` | `2000` | Clamped to `500..60_000`. |
793
+
794
+ Returns `status: "error"` when the run finished as `failed`.
795
+
796
+ ---
797
+
798
+ ### `steer` — Interrupt an active task
799
+
800
+ > ⚠️ **Internal / experimental.** Queues a steering message that is delivered to
801
+ > a task's worker session on its next turn. The message is appended to
802
+ > `pendingSteers` and also written to a live steering file for immediate delivery.
803
+
804
+ ```json
805
+ {
806
+ "action": "steer",
807
+ "runId": "team_...",
808
+ "taskId": "01_explore",
809
+ "message": "Focus only on src/ — ignore docs/"
810
+ }
811
+ ```
812
+
813
+ Params:
814
+
815
+ | Param | Type | Default | Notes |
816
+ |-------|------|---------|-------|
817
+ | `runId` | `string` | — | **Required.** |
818
+ | `taskId` | `string` | — | **Required.** Must be a non-terminal task. |
819
+ | `message` | `string` | — | **Required.** The steering instruction. |
820
+
821
+ The pending-steers queue is capped at 100 entries (oldest dropped with an
822
+ audit event). Terminal tasks cannot be steered.
823
+
824
+ ---
825
+
826
+ ## Additional Actions (Control domain)
827
+
828
+ ### `respond` — Reply to a waiting task
829
+
830
+ Sends a message to a task in `waiting` status and re-queues it for the durable
831
+ scheduler. Used for interactive task Q&A (e.g. a worker that paused to ask a
832
+ clarifying question).
833
+
834
+ ```json
835
+ {
836
+ "action": "respond",
837
+ "runId": "team_...",
838
+ "taskId": "05_verify",
839
+ "message": "Yes, use the Postgres dialect."
840
+ }
841
+ ```
842
+
843
+ Params:
844
+
845
+ | Param | Type | Default | Notes |
846
+ |-------|------|---------|-------|
847
+ | `runId` | `string` | — | **Required.** |
848
+ | `taskId` | `string` | — | Target a specific waiting task; omit to respond to all waiting. |
849
+ | `message` | `string` | — | The reply body. |
850
+ | `force` | `boolean` | `false` | Override cross-session ownership check. |
851
+
852
+ If no tasks are `waiting`, the response hints at `api operation=follow-up-agent`
853
+ (continuation) or `api operation=steer-agent` (interrupt).
854
+
855
+ ---
856
+
857
+ ### `invalidate` — Drop a run's snapshot cache
858
+
859
+ > ⚠️ **Internal / experimental.** Discards the cached run snapshot for a run so
860
+ > subsequent reads rebuild it from disk. Use after external state mutations that
861
+ > bypass the normal write path.
862
+
863
+ ```json
864
+ {
865
+ "action": "invalidate",
866
+ "runId": "team_..."
867
+ }
868
+ ```
869
+
870
+ Params:
871
+
872
+ | Param | Type | Default | Notes |
873
+ |-------|------|---------|-------|
874
+ | `runId` | `string` | — | **Required.** |
875
+
876
+ Requires the in-process snapshot cache (only available within a live Pi
877
+ session that has the cache wired up).
878
+
879
+ ---
880
+
881
+ ## Additional Actions (Status domain)
882
+
883
+ ### `onboard` — Team onboarding guide
884
+
885
+ Prints a human-readable guide describing a team's roles, workflow, and expected
886
+ flow — helpful when adopting a new team.
887
+
888
+ ```json
889
+ { "action": "onboard", "team": "implementation" }
890
+ ```
891
+
892
+ Params:
893
+
894
+ | Param | Type | Default | Notes |
895
+ |-------|------|---------|-------|
896
+ | `team` | `string` | `default` | The team to onboard. |
897
+
898
+ ---
899
+
900
+ ### `explain` — Explain a run or task
901
+
902
+ Produces a structured explanation of a run (status, duration, task table) or,
903
+ when `taskId` is given, a single-task breakdown (role, layer, why it exists,
904
+ files touched, connected tasks, complexity).
905
+
906
+ ```json
907
+ { "action": "explain", "runId": "team_..." }
908
+ ```
909
+
910
+ Explain one task:
911
+
912
+ ```json
913
+ { "action": "explain", "runId": "team_...", "taskId": "02_plan" }
914
+ ```
915
+
916
+ Params:
917
+
918
+ | Param | Type | Default | Notes |
919
+ |-------|------|---------|-------|
920
+ | `runId` | `string` | — | **Required.** |
921
+ | `taskId` | `string` | — | Omit to explain the whole run. |
922
+
923
+ ---
924
+
925
+ ### `cache` — Cache stats or cached-run lookup
926
+
927
+ > ⚠️ **Internal / experimental.** With a `goal`, looks up a previously cached run
928
+ > by goal/team/workflow hash. Without a `goal`, reports run-cache and skill-cache
929
+ > statistics (entries, size, hit rate, evictions).
930
+
931
+ ```json
932
+ { "action": "cache" }
933
+ ```
934
+
935
+ Lookup a cached run:
936
+
937
+ ```json
938
+ {
939
+ "action": "cache",
940
+ "goal": "Investigate failing tests",
941
+ "team": "default",
942
+ "workflow": "default"
943
+ }
944
+ ```
945
+
946
+ Params:
947
+
948
+ | Param | Type | Default | Notes |
949
+ |-------|------|---------|-------|
950
+ | `goal` | `string` | — | Omit to show cache stats; provide to look up a cached run. |
951
+ | `team` | `string` | `default` | Used in the cache key when `goal` is set. |
952
+ | `workflow` | `string` | `default` | Used in the cache key when `goal` is set. |
953
+
954
+ ---
955
+
956
+ ### `checkpoint` — Read a task's saved checkpoint
957
+
958
+ Loads a previously saved checkpoint for a task (step, progress, saved-at
959
+ timestamp). Checkpoints are written during long-running tasks for resume
960
+ support.
961
+
962
+ ```json
963
+ {
964
+ "action": "checkpoint",
965
+ "runId": "team_...",
966
+ "taskId": "07_build"
967
+ }
968
+ ```
969
+
970
+ Params:
971
+
972
+ | Param | Type | Default | Notes |
973
+ |-------|------|---------|-------|
974
+ | `runId` | `string` | — | **Required.** |
975
+ | `taskId` | `string` | — | **Required.** |
976
+
977
+ ---
978
+
979
+ ### `health` — Watchdog health monitor
980
+
981
+ > ⚠️ **Internal / experimental.** Scans all known runs and classifies them by
982
+ > status, surfacing stuck tasks (heartbeat stale > 5 min), zombie workspaces,
983
+ > ghost processes, orphaned temp dirs, and corrupted state. Returns a counts
984
+ > summary (`total`, `running`, `completed`, `failed`, `blocked`, `queued`,
985
+ > `planning`, `waiting`, `stuck`, `zombie`, `ghost`, `orphaned`, `corrupted`).
986
+
987
+ ```json
988
+ { "action": "health" }
989
+ ```
990
+
991
+ No parameters. This is an auto-monitored watchdog diagnostic — prefer `doctor`
992
+ for environment readiness checks.
993
+
994
+ ---
995
+
996
+ ## Additional Actions (Manage domain)
997
+
998
+ ### `settings` — View/set config via dotted-path keys
999
+
1000
+ A richer, human-readable interface to configuration. Unlike `config` (which
1001
+ returns the raw merged JSON), `settings` supports dotted-path `get`/`set`/`unset`,
1002
+ a flattened effective-settings listing, a schema reference, config-path
1003
+ display, and live Pi-UI theme switching.
1004
+
1005
+ ```json
1006
+ { "action": "settings", "config": { "args": "list" } }
1007
+ ```
1008
+
1009
+ Set a value:
1010
+
1011
+ ```json
1012
+ {
1013
+ "action": "settings",
1014
+ "config": { "args": "set runtime.mode scaffold", "scope": "project" }
1015
+ }
1016
+ ```
1017
+
1018
+ Commands (passed via `config.args`):
1019
+
1020
+ | Command | Description |
1021
+ |---------|-------------|
1022
+ | `list` | Show all effective config values (default). |
1023
+ | `json` | Dump full effective config as JSON. |
1024
+ | `schema` | List all known config keys (✓ = currently set). |
1025
+ | `paths` | Show user + project config file paths. |
1026
+ | `get <key>` | Get a specific dotted-path value. |
1027
+ | `set <key> <value>` | Set a value (JSON-parsed; scope via `config.scope`). |
1028
+ | `unset <key>` | Remove a value. |
1029
+ | `scope [user\|project]` | Show/change the write scope for `set`/`unset`. |
1030
+ | `themes` | Browse the Pi UI theme gallery. |
1031
+ | `theme <name>` | Switch the Pi UI theme (applied live). |
1032
+
1033
+ > **`settings` vs `config`:** `config` returns/updates the merged JSON object
1034
+ > directly. `settings` is the dotted-path UI with schema hints, theme
1035
+ > management, and fuzzy key suggestions — use it for interactive exploration.
1036
+
1037
+ ---
1038
+
1039
+ ## Additional Actions (Automate domain)
1040
+
1041
+ ### `anchor` — Cross-run session anchoring
1042
+
1043
+ Persists a named context anchor for the current session so it survives across
1044
+ runs and compactions. Sub-actions are selected via `config.subAction`.
1045
+
1046
+ ```json
1047
+ { "action": "anchor", "config": { "subAction": "status" } }
1048
+ ```
1049
+
1050
+ Set an anchor:
1051
+
1052
+ ```json
1053
+ {
1054
+ "action": "anchor",
1055
+ "config": { "subAction": "set", "context": { "refactor": "auth-split" } }
1056
+ }
1057
+ ```
1058
+
1059
+ Sub-actions:
1060
+
1061
+ | `subAction` | Description |
1062
+ |-------------|-------------|
1063
+ | `status` (default) | Show current anchors for the session. |
1064
+ | `set` | Create an anchor (accepts `config.context` object or `config.key`). |
1065
+ | `clear` | Remove an anchor (by `config.anchorId`, or all if omitted). |
1066
+ | `accumulate` | Append to an existing anchor's context. |
1067
+
1068
+ ---
1069
+
1070
+ ### `auto-summarize` — Auto-summarization control
1071
+
1072
+ Controls automatic context summarization for long-running sessions. When
1073
+ enabled, the worker's context is summarized once the token count or tool-use
1074
+ count crosses a threshold. Sub-actions via `config.subAction`.
1075
+
1076
+ ```json
1077
+ { "action": "auto-summarize", "config": { "subAction": "status" } }
1078
+ ```
1079
+
1080
+ Enable and configure:
1081
+
1082
+ ```json
1083
+ {
1084
+ "action": "auto-summarize",
1085
+ "config": {
1086
+ "subAction": "on",
1087
+ "threshold": 8000,
1088
+ "minToolsUsed": 10,
1089
+ "collapseContext": true
1090
+ }
1091
+ }
1092
+ ```
1093
+
1094
+ Sub-actions:
1095
+
1096
+ | `subAction` | Description |
1097
+ |-------------|-------------|
1098
+ | `status` (default) | Show current config + trigger thresholds. |
1099
+ | `on` | Enable summarization. |
1100
+ | `off` | Disable summarization. |
1101
+ | `config` | Update thresholds (`threshold`, `minToolsUsed`, `collapseContext`). |
1102
+ | `toggle` | Flip enabled state. |
1103
+
1104
+ Defaults: `threshold` 5000 tokens, `minToolsUsed` 5, `collapseContext` true.
1105
+
1106
+ ---
1107
+
1108
+ ### `auto_boomerang` — Toggle auto-summarize (shorthand)
1109
+
1110
+ Shares the same handler as `auto-summarize`; defaults `subAction` to `toggle`
1111
+ when omitted, providing a quick on/off switch.
1112
+
1113
+ ```json
1114
+ { "action": "auto_boomerang" }
1115
+ ```
1116
+
1117
+ Accepts the same `config.subAction` values as `auto-summarize`
1118
+ (`on`, `off`, `config`, `toggle`, `status`).
package/index.ts CHANGED
@@ -47,18 +47,29 @@
47
47
  * avoid recursion), the bundle flip risk is acceptable.
48
48
  */
49
49
  import type { ExtensionAPI } from "@earendil-works/pi-coding-agent";
50
- import { registerPiTeams as registerPiTeamsFromSrc } from "./src/extension/register.ts";
51
- import { waitForRun as waitForRunFromSrc } from "./src/runtime/run-tracker.ts";
52
50
  import { accessSync } from "node:fs";
53
51
  import { fileURLToPath } from "node:url";
54
52
  import { dirname, resolve } from "node:path";
55
53
 
56
- // Minimal bundle shape — we only use a few named exports. Keep this loose
57
- // because dist/index.mjs has no .d.ts (it's a build artifact, not source).
54
+ // IMPORTANT: src/ imports here MUST be dynamic (lazy `import()`), never
55
+ // top-level static imports. Published npm packages ship only dist/index.mjs
56
+ // in the tarball (src/ is excluded by the package.json "files" field — keeps
57
+ // the package ~5MB instead of ~16MB). A top-level static
58
+ // `import { x } from "./src/..."` is resolved by the module loader BEFORE
59
+ // this file's code runs, so it would break every fresh `npm install`
60
+ // (Cannot find module './src/...'). Dynamic import() defers src/ resolution
61
+ // to the fallback path below, which only executes when the bundle is
62
+ // unavailable — i.e. dev clones that still have src/. Published installs
63
+ // always ship + load the bundle, so src/ is never touched there.
64
+
65
+ // Minimal bundle shape — loose types because dist/index.mjs has no .d.ts
66
+ // (it's a build artifact, not source). The src fallback types use
67
+ // `typeof import(...)` type queries, which are type-only constructs erased
68
+ // at runtime (no module load) — they stay in sync with the real modules.
58
69
  type BundleModule = {
59
70
  default?: (pi: ExtensionAPI) => void;
60
- waitForRun?: typeof waitForRunFromSrc;
61
- registerPiTeams?: (pi: ExtensionAPI) => void;
71
+ waitForRun?: typeof import("./src/runtime/run-tracker.ts").waitForRun;
72
+ registerPiTeams?: typeof import("./src/extension/register.ts").registerPiTeams;
62
73
  };
63
74
 
64
75
  const OPT_OUT = new Set(["0", "false", "no", "off"]);
@@ -91,8 +102,26 @@ if (!envForceOff) {
91
102
  }
92
103
  }
93
104
 
94
- export const waitForRun = bundleModule?.waitForRun ?? waitForRunFromSrc;
95
- export const registerPiTeams: (pi: ExtensionAPI) => void =
96
- bundleModule?.registerPiTeams ?? registerPiTeamsFromSrc;
105
+ // Lazy src/ fallback — only resolved when the bundle is unavailable
106
+ // (dev clones without a built dist/). NEVER imported in published
107
+ // installs, where the bundle always ships + loads above. This dynamic
108
+ // import() is what lets us exclude src/ from the npm tarball.
109
+ let srcRegister:
110
+ | typeof import("./src/extension/register.ts").registerPiTeams
111
+ | undefined;
112
+ let srcWaitForRun:
113
+ | typeof import("./src/runtime/run-tracker.ts").waitForRun
114
+ | undefined;
115
+ if (!bundleModule) {
116
+ ({ registerPiTeams: srcRegister } = await import(
117
+ "./src/extension/register.ts",
118
+ ));
119
+ ({ waitForRun: srcWaitForRun } = await import(
120
+ "./src/runtime/run-tracker.ts",
121
+ ));
122
+ }
97
123
 
98
- export default bundleModule?.default ?? ((pi: ExtensionAPI) => registerPiTeamsFromSrc(pi));
124
+ export const waitForRun = bundleModule?.waitForRun ?? srcWaitForRun!;
125
+ export const registerPiTeams: (pi: ExtensionAPI) => void =
126
+ bundleModule?.registerPiTeams ?? srcRegister!;
127
+ export default bundleModule?.default ?? ((pi: ExtensionAPI) => srcRegister!(pi));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-crew",
3
- "version": "0.9.51",
3
+ "version": "0.9.53",
4
4
  "description": "Pi extension for coordinated AI teams, workflows, worktrees, and async task orchestration",
5
5
  "author": "baphuongna",
6
6
  "license": "MIT",
@@ -31,8 +31,8 @@
31
31
  "files": [
32
32
  "*.ts",
33
33
  "*.mjs",
34
- "src/**/*.ts",
35
- "dist/",
34
+ "dist/index.mjs",
35
+ "dist/build-meta.json",
36
36
  "agents/",
37
37
  "teams/",
38
38
  "workflows/",
@@ -45,7 +45,16 @@
45
45
  "scripts/pty_probe.py",
46
46
  "README.md",
47
47
  "AGENTS.md",
48
- "docs/",
48
+ "docs/actions-reference.md",
49
+ "docs/commands-reference.md",
50
+ "docs/troubleshooting.md",
51
+ "docs/usage.md",
52
+ "docs/architecture.md",
53
+ "docs/dynamic-workflows.md",
54
+ "docs/runtime-flow.md",
55
+ "docs/resource-formats.md",
56
+ "docs/publishing.md",
57
+ "docs/migration-v0.4-v0.5.md",
49
58
  "tsconfig.json",
50
59
  "schema.json",
51
60
  "types/",
@@ -55,9 +64,10 @@
55
64
  ],
56
65
  "scripts": {
57
66
  "check": "npm run ci",
58
- "ci": "npm run typecheck && npm run lint && npm run format:check && npm run check:conflict-markers && npm run check:lazy-imports && npm run check:bundle-staleness && npm run build:bundle && npm run test:bundle && npm test && npm pack --dry-run",
67
+ "ci": "npm run typecheck && npm run lint && npm run format:check && npm run check:conflict-markers && npm run check:lazy-imports && npm run check:bundle-staleness && npm run build:bundle && npm run check:bundle-size && npm run test:bundle && npm test && npm pack --dry-run",
59
68
  "check:lazy-imports": "node scripts/check-lazy-imports.mjs",
60
69
  "check:bundle-staleness": "node scripts/check-bundle-staleness.mjs",
70
+ "check:bundle-size": "node scripts/check-bundle-size.mjs",
61
71
  "check:conflict-markers": "node scripts/check-conflict-markers.mjs",
62
72
  "typecheck": "tsc --noEmit && node --experimental-strip-types -e \"await import('./index.ts'); console.log('strip-types import ok')\"",
63
73
  "lint": "biome check --linter-enabled=true --formatter-enabled=false --max-diagnostics=50 --diagnostic-level=error .",
@@ -116,10 +126,10 @@
116
126
  },
117
127
  "devDependencies": {
118
128
  "@biomejs/biome": "^2.5.3",
119
- "@earendil-works/pi-agent-core": "^0.77.0",
120
- "@earendil-works/pi-ai": "^0.77.0",
121
- "@earendil-works/pi-coding-agent": "^0.77.0",
122
- "@earendil-works/pi-tui": "^0.77.0",
129
+ "@earendil-works/pi-agent-core": "^0.82.0",
130
+ "@earendil-works/pi-ai": "^0.82.0",
131
+ "@earendil-works/pi-coding-agent": "^0.82.0",
132
+ "@earendil-works/pi-tui": "^0.82.0",
123
133
  "@types/node": "^25.9.5",
124
134
  "esbuild": "^0.28.1",
125
135
  "tsx": "^4.23.0",
package/schema.json CHANGED
@@ -22,6 +22,12 @@
22
22
  "type": "boolean",
23
23
  "description": "Require a clean leader git repository before provisioning worktrees."
24
24
  },
25
+ "ignoreMethod": {
26
+ "type": "string",
27
+ "enum": ["gitignore", "exclude"],
28
+ "default": "gitignore",
29
+ "description": "Method for ignoring pi-crew generated directories from VCS: 'gitignore' appends to .gitignore, 'exclude' writes to .git/info/exclude."
30
+ },
25
31
  "autonomous": {
26
32
  "type": "object",
27
33
  "additionalProperties": false,
@@ -94,6 +100,30 @@
94
100
  "linkNodeModules": { "type": "boolean" }
95
101
  }
96
102
  },
103
+ "goalWrap": {
104
+ "type": "object",
105
+ "description": "Per-workflow goal-wrap configuration. Maps workflow name to goal-wrap settings (worker -> judge -> feedback -> redo until achieved / maxTurns / budget). Only applies to builtin workflows with a clear done condition.",
106
+ "additionalProperties": {
107
+ "type": "object",
108
+ "additionalProperties": false,
109
+ "properties": {
110
+ "enabled": { "type": "boolean" },
111
+ "maxTurns": { "type": "integer", "minimum": 1, "maximum": 50 },
112
+ "evaluatorModel": { "type": "string", "minLength": 1 },
113
+ "verification": {
114
+ "type": "object",
115
+ "additionalProperties": false,
116
+ "properties": {
117
+ "commands": { "type": "array", "items": { "type": "string", "minLength": 1 } },
118
+ "mode": { "type": "string", "enum": ["text-only"] }
119
+ },
120
+ "required": ["commands"]
121
+ },
122
+ "budgetTotal": { "type": "integer", "minimum": 1000 },
123
+ "budgetUnlimited": { "type": "boolean" }
124
+ }
125
+ }
126
+ },
97
127
  "agents": {
98
128
  "type": "object",
99
129
  "additionalProperties": false,
@@ -217,6 +247,17 @@
217
247
  "headers": { "type": "object", "additionalProperties": { "type": "string" } },
218
248
  "intervalMs": { "type": "integer", "minimum": 5000, "default": 60000 }
219
249
  }
250
+ },
251
+ "broker": {
252
+ "type": "object",
253
+ "additionalProperties": false,
254
+ "description": "Phase 0 inter-pi broker config for cross-process communication.",
255
+ "properties": {
256
+ "enabled": { "type": "boolean" },
257
+ "pathHashLen": { "type": "integer", "minimum": 4, "maximum": 32 },
258
+ "maxFrameBytes": { "type": "integer", "minimum": 1024, "maximum": 1048576 },
259
+ "outboundQueueCap": { "type": "integer", "minimum": 32, "maximum": 4096 }
260
+ }
220
261
  }
221
262
  }
222
263
  }