pi-subagents 0.76.0 → 0.77.0

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 (347) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/README.md +1 -1
  3. package/agents/oracle.md +8 -19
  4. package/agents/researcher.md +0 -3
  5. package/agents/reviewer.md +17 -61
  6. package/agents/scout.md +1 -4
  7. package/agents/worker.md +8 -25
  8. package/docs/agents.md +70 -3
  9. package/docs/configuration.md +55 -6
  10. package/docs/extension-api.md +36 -11
  11. package/docs/missions.md +24 -17
  12. package/docs/models.md +1 -1
  13. package/docs/observability.md +10 -5
  14. package/docs/tool-reference.md +101 -83
  15. package/docs/watchdog.md +8 -6
  16. package/docs/workflows.md +15 -6
  17. package/index.d.ts.map +1 -1
  18. package/index.js +5 -0
  19. package/index.js.map +1 -1
  20. package/package.json +2 -1
  21. package/prompts/council.md +1 -1
  22. package/skills/pi-subagents/SKILL.md +1 -1
  23. package/skills/pi-subagents/references/constraints-and-recipes.md +1 -1
  24. package/skills/pi-subagents/references/execution-controls.md +16 -16
  25. package/skills/pi-subagents/references/management-authoring-rpc.md +16 -12
  26. package/skills/pi-subagents/references/prompting-and-roles.md +3 -3
  27. package/src/agents/advertised-agent-prompt.d.ts +5 -1
  28. package/src/agents/advertised-agent-prompt.d.ts.map +1 -1
  29. package/src/agents/advertised-agent-prompt.js +8 -2
  30. package/src/agents/advertised-agent-prompt.js.map +1 -1
  31. package/src/agents/agent-management.d.ts.map +1 -1
  32. package/src/agents/agent-management.js +5 -0
  33. package/src/agents/agent-management.js.map +1 -1
  34. package/src/agents/agent-scope.d.ts +1 -0
  35. package/src/agents/agent-scope.d.ts.map +1 -1
  36. package/src/agents/agent-scope.js +3 -0
  37. package/src/agents/agent-scope.js.map +1 -1
  38. package/src/agents/agent-serializer.d.ts.map +1 -1
  39. package/src/agents/agent-serializer.js +3 -0
  40. package/src/agents/agent-serializer.js.map +1 -1
  41. package/src/agents/agents.d.ts +14 -2
  42. package/src/agents/agents.d.ts.map +1 -1
  43. package/src/agents/agents.js +94 -36
  44. package/src/agents/agents.js.map +1 -1
  45. package/src/api/preflight.d.ts +2 -0
  46. package/src/api/preflight.d.ts.map +1 -1
  47. package/src/api/preflight.js +6 -2
  48. package/src/api/preflight.js.map +1 -1
  49. package/src/extension/config.d.ts.map +1 -1
  50. package/src/extension/config.js +23 -2
  51. package/src/extension/config.js.map +1 -1
  52. package/src/extension/control-notices.d.ts +0 -2
  53. package/src/extension/control-notices.d.ts.map +1 -1
  54. package/src/extension/control-notices.js +1 -7
  55. package/src/extension/control-notices.js.map +1 -1
  56. package/src/extension/declaration-pinning.d.ts +14 -0
  57. package/src/extension/declaration-pinning.d.ts.map +1 -0
  58. package/src/extension/declaration-pinning.js +147 -0
  59. package/src/extension/declaration-pinning.js.map +1 -0
  60. package/src/extension/doctor.d.ts +3 -1
  61. package/src/extension/doctor.d.ts.map +1 -1
  62. package/src/extension/doctor.js +3 -9
  63. package/src/extension/doctor.js.map +1 -1
  64. package/src/extension/fanout-child.d.ts.map +1 -1
  65. package/src/extension/fanout-child.js +6 -8
  66. package/src/extension/fanout-child.js.map +1 -1
  67. package/src/extension/index.d.ts +1 -1
  68. package/src/extension/index.d.ts.map +1 -1
  69. package/src/extension/index.js +68 -116
  70. package/src/extension/index.js.map +1 -1
  71. package/src/extension/rpc.d.ts.map +1 -1
  72. package/src/extension/rpc.js +12 -6
  73. package/src/extension/rpc.js.map +1 -1
  74. package/src/extension/schemas.d.ts +137 -1
  75. package/src/extension/schemas.d.ts.map +1 -1
  76. package/src/extension/schemas.js +22 -22
  77. package/src/extension/schemas.js.map +1 -1
  78. package/src/extension/subagent-guide.d.ts +1 -0
  79. package/src/extension/subagent-guide.d.ts.map +1 -1
  80. package/src/extension/subagent-guide.js +80 -6
  81. package/src/extension/subagent-guide.js.map +1 -1
  82. package/src/extension/subagent-options.d.ts +8 -0
  83. package/src/extension/subagent-options.d.ts.map +1 -0
  84. package/src/extension/subagent-options.js +52 -0
  85. package/src/extension/subagent-options.js.map +1 -0
  86. package/src/extension/tool-activation.d.ts.map +1 -1
  87. package/src/extension/tool-activation.js +3 -2
  88. package/src/extension/tool-activation.js.map +1 -1
  89. package/src/extension/tool-description.d.ts +4 -7
  90. package/src/extension/tool-description.d.ts.map +1 -1
  91. package/src/extension/tool-description.js +45 -59
  92. package/src/extension/tool-description.js.map +1 -1
  93. package/src/inspectors/actions.d.ts +2 -0
  94. package/src/inspectors/actions.d.ts.map +1 -1
  95. package/src/inspectors/actions.js +41 -13
  96. package/src/inspectors/actions.js.map +1 -1
  97. package/src/inspectors/plugins.d.ts.map +1 -1
  98. package/src/inspectors/plugins.js +3 -2
  99. package/src/inspectors/plugins.js.map +1 -1
  100. package/src/inspectors/tmux/actions.d.ts +26 -0
  101. package/src/inspectors/tmux/actions.d.ts.map +1 -0
  102. package/src/inspectors/tmux/actions.js +182 -0
  103. package/src/inspectors/tmux/actions.js.map +1 -0
  104. package/src/inspectors/tmux/client.d.ts +28 -0
  105. package/src/inspectors/tmux/client.d.ts.map +1 -0
  106. package/src/inspectors/tmux/client.js +65 -0
  107. package/src/inspectors/tmux/client.js.map +1 -0
  108. package/src/inspectors/tmux/plugin.d.ts +8 -0
  109. package/src/inspectors/tmux/plugin.d.ts.map +1 -0
  110. package/src/inspectors/tmux/plugin.js +15 -0
  111. package/src/inspectors/tmux/plugin.js.map +1 -0
  112. package/src/integrations/herdr-status.d.ts +0 -1
  113. package/src/integrations/herdr-status.d.ts.map +1 -1
  114. package/src/integrations/herdr-status.js +18 -52
  115. package/src/integrations/herdr-status.js.map +1 -1
  116. package/src/integrations/program-status.d.ts +31 -0
  117. package/src/integrations/program-status.d.ts.map +1 -0
  118. package/src/integrations/program-status.js +189 -0
  119. package/src/integrations/program-status.js.map +1 -0
  120. package/src/intercom/native-supervisor-channel.d.ts +1 -0
  121. package/src/intercom/native-supervisor-channel.d.ts.map +1 -1
  122. package/src/intercom/native-supervisor-channel.js +77 -3
  123. package/src/intercom/native-supervisor-channel.js.map +1 -1
  124. package/src/intercom/result-intercom.js +1 -1
  125. package/src/intercom/result-intercom.js.map +1 -1
  126. package/src/intercom/supervisor-ui.d.ts +2 -12
  127. package/src/intercom/supervisor-ui.d.ts.map +1 -1
  128. package/src/intercom/supervisor-ui.js +2 -154
  129. package/src/intercom/supervisor-ui.js.map +1 -1
  130. package/src/missions/store.d.ts.map +1 -1
  131. package/src/missions/store.js +27 -5
  132. package/src/missions/store.js.map +1 -1
  133. package/src/runs/background/async-execution.d.ts +9 -1
  134. package/src/runs/background/async-execution.d.ts.map +1 -1
  135. package/src/runs/background/async-execution.js +250 -141
  136. package/src/runs/background/async-execution.js.map +1 -1
  137. package/src/runs/background/async-job-tracker.d.ts +4 -1
  138. package/src/runs/background/async-job-tracker.d.ts.map +1 -1
  139. package/src/runs/background/async-job-tracker.js +3 -2
  140. package/src/runs/background/async-job-tracker.js.map +1 -1
  141. package/src/runs/background/async-resume.d.ts.map +1 -1
  142. package/src/runs/background/async-resume.js +6 -2
  143. package/src/runs/background/async-resume.js.map +1 -1
  144. package/src/runs/background/await-async-run.d.ts +8 -4
  145. package/src/runs/background/await-async-run.d.ts.map +1 -1
  146. package/src/runs/background/await-async-run.js +14 -8
  147. package/src/runs/background/await-async-run.js.map +1 -1
  148. package/src/runs/background/binary-bootstrap.d.ts.map +1 -1
  149. package/src/runs/background/binary-bootstrap.js +2 -1
  150. package/src/runs/background/binary-bootstrap.js.map +1 -1
  151. package/src/runs/background/chain-root-attachment.d.ts +2 -0
  152. package/src/runs/background/chain-root-attachment.d.ts.map +1 -1
  153. package/src/runs/background/chain-root-attachment.js +5 -2
  154. package/src/runs/background/chain-root-attachment.js.map +1 -1
  155. package/src/runs/background/fleet-view.js +5 -5
  156. package/src/runs/background/fleet-view.js.map +1 -1
  157. package/src/runs/background/notify.d.ts +12 -2
  158. package/src/runs/background/notify.d.ts.map +1 -1
  159. package/src/runs/background/notify.js +148 -13
  160. package/src/runs/background/notify.js.map +1 -1
  161. package/src/runs/background/result-files.d.ts +29 -0
  162. package/src/runs/background/result-files.d.ts.map +1 -1
  163. package/src/runs/background/result-files.js +104 -6
  164. package/src/runs/background/result-files.js.map +1 -1
  165. package/src/runs/background/result-watcher.d.ts.map +1 -1
  166. package/src/runs/background/result-watcher.js +60 -64
  167. package/src/runs/background/result-watcher.js.map +1 -1
  168. package/src/runs/background/resume-guidance.js +2 -2
  169. package/src/runs/background/resume-guidance.js.map +1 -1
  170. package/src/runs/background/run-child-session.d.ts.map +1 -1
  171. package/src/runs/background/run-child-session.js +2 -1
  172. package/src/runs/background/run-child-session.js.map +1 -1
  173. package/src/runs/background/run-id-resolver.d.ts.map +1 -1
  174. package/src/runs/background/run-id-resolver.js +9 -6
  175. package/src/runs/background/run-id-resolver.js.map +1 -1
  176. package/src/runs/background/run-status.d.ts.map +1 -1
  177. package/src/runs/background/run-status.js +19 -15
  178. package/src/runs/background/run-status.js.map +1 -1
  179. package/src/runs/background/runner-child-launch.d.ts.map +1 -1
  180. package/src/runs/background/runner-child-launch.js +1 -0
  181. package/src/runs/background/runner-child-launch.js.map +1 -1
  182. package/src/runs/background/runner-http-dispatcher.d.ts +3 -0
  183. package/src/runs/background/runner-http-dispatcher.d.ts.map +1 -1
  184. package/src/runs/background/runner-http-dispatcher.js +2 -0
  185. package/src/runs/background/runner-http-dispatcher.js.map +1 -1
  186. package/src/runs/background/scheduled-runs.d.ts +9 -0
  187. package/src/runs/background/scheduled-runs.d.ts.map +1 -1
  188. package/src/runs/background/scheduled-runs.js +124 -36
  189. package/src/runs/background/scheduled-runs.js.map +1 -1
  190. package/src/runs/background/subagent-runner-bootstrap.d.ts.map +1 -1
  191. package/src/runs/background/subagent-runner-bootstrap.js +5 -1
  192. package/src/runs/background/subagent-runner-bootstrap.js.map +1 -1
  193. package/src/runs/background/subagent-runner.d.ts +3 -1
  194. package/src/runs/background/subagent-runner.d.ts.map +1 -1
  195. package/src/runs/background/subagent-runner.js +15 -6
  196. package/src/runs/background/subagent-runner.js.map +1 -1
  197. package/src/runs/background/subagent-wait.d.ts +2 -0
  198. package/src/runs/background/subagent-wait.d.ts.map +1 -1
  199. package/src/runs/background/subagent-wait.js +34 -20
  200. package/src/runs/background/subagent-wait.js.map +1 -1
  201. package/src/runs/background/terminal-run-index.d.ts +1 -0
  202. package/src/runs/background/terminal-run-index.d.ts.map +1 -1
  203. package/src/runs/background/terminal-run-index.js +47 -1
  204. package/src/runs/background/terminal-run-index.js.map +1 -1
  205. package/src/runs/background/wait-tool.d.ts.map +1 -1
  206. package/src/runs/background/wait-tool.js +36 -23
  207. package/src/runs/background/wait-tool.js.map +1 -1
  208. package/src/runs/foreground/async-stop-action.d.ts +7 -1
  209. package/src/runs/foreground/async-stop-action.d.ts.map +1 -1
  210. package/src/runs/foreground/async-stop-action.js +49 -25
  211. package/src/runs/foreground/async-stop-action.js.map +1 -1
  212. package/src/runs/foreground/execution.d.ts.map +1 -1
  213. package/src/runs/foreground/execution.js +50 -24
  214. package/src/runs/foreground/execution.js.map +1 -1
  215. package/src/runs/foreground/subagent-executor.d.ts +5 -1
  216. package/src/runs/foreground/subagent-executor.d.ts.map +1 -1
  217. package/src/runs/foreground/subagent-executor.js +174 -65
  218. package/src/runs/foreground/subagent-executor.js.map +1 -1
  219. package/src/runs/shared/child-hooks.js +6 -5
  220. package/src/runs/shared/child-hooks.js.map +1 -1
  221. package/src/runs/shared/child-launch.d.ts +2 -0
  222. package/src/runs/shared/child-launch.d.ts.map +1 -1
  223. package/src/runs/shared/child-launch.js +1 -0
  224. package/src/runs/shared/child-launch.js.map +1 -1
  225. package/src/runs/shared/child-session.d.ts +4 -0
  226. package/src/runs/shared/child-session.d.ts.map +1 -1
  227. package/src/runs/shared/child-session.js +28 -23
  228. package/src/runs/shared/child-session.js.map +1 -1
  229. package/src/runs/shared/child-tool-plan.d.ts.map +1 -1
  230. package/src/runs/shared/child-tool-plan.js +11 -10
  231. package/src/runs/shared/child-tool-plan.js.map +1 -1
  232. package/src/runs/shared/dynamic-fanout.js +1 -1
  233. package/src/runs/shared/dynamic-fanout.js.map +1 -1
  234. package/src/runs/shared/herdr-placed-run.d.ts +1 -0
  235. package/src/runs/shared/herdr-placed-run.d.ts.map +1 -1
  236. package/src/runs/shared/herdr-placed-run.js +10 -6
  237. package/src/runs/shared/herdr-placed-run.js.map +1 -1
  238. package/src/runs/shared/model-resolution-diagnostic.d.ts +10 -0
  239. package/src/runs/shared/model-resolution-diagnostic.d.ts.map +1 -1
  240. package/src/runs/shared/model-resolution-diagnostic.js +24 -0
  241. package/src/runs/shared/model-resolution-diagnostic.js.map +1 -1
  242. package/src/runs/shared/model-resolution.d.ts.map +1 -1
  243. package/src/runs/shared/model-resolution.js +29 -1
  244. package/src/runs/shared/model-resolution.js.map +1 -1
  245. package/src/runs/shared/nested-events.d.ts +2 -0
  246. package/src/runs/shared/nested-events.d.ts.map +1 -1
  247. package/src/runs/shared/nested-events.js +4 -0
  248. package/src/runs/shared/nested-events.js.map +1 -1
  249. package/src/runs/shared/parallel-handoff.js +2 -2
  250. package/src/runs/shared/parallel-handoff.js.map +1 -1
  251. package/src/runs/shared/parallel-utils.d.ts +2 -0
  252. package/src/runs/shared/parallel-utils.d.ts.map +1 -1
  253. package/src/runs/shared/parallel-utils.js.map +1 -1
  254. package/src/runs/shared/runner-launcher.d.ts +12 -0
  255. package/src/runs/shared/runner-launcher.d.ts.map +1 -0
  256. package/src/runs/shared/runner-launcher.js +25 -0
  257. package/src/runs/shared/runner-launcher.js.map +1 -0
  258. package/src/runs/shared/single-output.d.ts +20 -0
  259. package/src/runs/shared/single-output.d.ts.map +1 -1
  260. package/src/runs/shared/single-output.js +57 -0
  261. package/src/runs/shared/single-output.js.map +1 -1
  262. package/src/runs/shared/structured-output.d.ts.map +1 -1
  263. package/src/runs/shared/structured-output.js +17 -8
  264. package/src/runs/shared/structured-output.js.map +1 -1
  265. package/src/runs/shared/subagent-control.js +3 -3
  266. package/src/runs/shared/subagent-control.js.map +1 -1
  267. package/src/runs/shared/subagent-prompt-runtime.d.ts +8 -2
  268. package/src/runs/shared/subagent-prompt-runtime.d.ts.map +1 -1
  269. package/src/runs/shared/subagent-prompt-runtime.js +43 -20
  270. package/src/runs/shared/subagent-prompt-runtime.js.map +1 -1
  271. package/src/runs/shared/workflow-async-child-guidance.js +1 -1
  272. package/src/runs/shared/workflow-async-child-guidance.js.map +1 -1
  273. package/src/runs/shared/worktree-cleanup-plan.js +1 -1
  274. package/src/runs/shared/worktree-cleanup-plan.js.map +1 -1
  275. package/src/shared/atomic-json.d.ts +4 -3
  276. package/src/shared/atomic-json.d.ts.map +1 -1
  277. package/src/shared/atomic-json.js +3 -1
  278. package/src/shared/atomic-json.js.map +1 -1
  279. package/src/shared/edit-distance.d.ts +5 -0
  280. package/src/shared/edit-distance.d.ts.map +1 -0
  281. package/src/shared/edit-distance.js +33 -0
  282. package/src/shared/edit-distance.js.map +1 -0
  283. package/src/shared/formatters.d.ts.map +1 -1
  284. package/src/shared/formatters.js +1 -6
  285. package/src/shared/formatters.js.map +1 -1
  286. package/src/shared/model-info.d.ts +8 -0
  287. package/src/shared/model-info.d.ts.map +1 -1
  288. package/src/shared/model-info.js +22 -0
  289. package/src/shared/model-info.js.map +1 -1
  290. package/src/shared/package-version.d.ts +3 -0
  291. package/src/shared/package-version.d.ts.map +1 -0
  292. package/src/shared/package-version.js +15 -0
  293. package/src/shared/package-version.js.map +1 -0
  294. package/src/shared/parent-wake.d.ts +18 -0
  295. package/src/shared/parent-wake.d.ts.map +1 -0
  296. package/src/shared/parent-wake.js +60 -0
  297. package/src/shared/parent-wake.js.map +1 -0
  298. package/src/shared/pruned-fork.d.ts +1 -1
  299. package/src/shared/pruned-fork.d.ts.map +1 -1
  300. package/src/shared/pruned-fork.js +6 -0
  301. package/src/shared/pruned-fork.js.map +1 -1
  302. package/src/shared/runtime-module-path.d.ts +11 -0
  303. package/src/shared/runtime-module-path.d.ts.map +1 -0
  304. package/src/shared/runtime-module-path.js +17 -0
  305. package/src/shared/runtime-module-path.js.map +1 -0
  306. package/src/shared/types.d.ts +26 -2
  307. package/src/shared/types.d.ts.map +1 -1
  308. package/src/shared/types.js +3 -0
  309. package/src/shared/types.js.map +1 -1
  310. package/src/shared/utils.d.ts.map +1 -1
  311. package/src/shared/utils.js +8 -7
  312. package/src/shared/utils.js.map +1 -1
  313. package/src/slash/slash-commands.js +3 -3
  314. package/src/slash/slash-commands.js.map +1 -1
  315. package/src/slash/subagents-admin.d.ts.map +1 -1
  316. package/src/slash/subagents-admin.js +2 -1
  317. package/src/slash/subagents-admin.js.map +1 -1
  318. package/src/tui/fleet-transcript.d.ts +2 -0
  319. package/src/tui/fleet-transcript.d.ts.map +1 -1
  320. package/src/tui/fleet-transcript.js +7 -2
  321. package/src/tui/fleet-transcript.js.map +1 -1
  322. package/src/tui/fleet.d.ts.map +1 -1
  323. package/src/tui/fleet.js +9 -4
  324. package/src/tui/fleet.js.map +1 -1
  325. package/src/tui/render.d.ts +2 -2
  326. package/src/tui/render.d.ts.map +1 -1
  327. package/src/tui/render.js +19 -17
  328. package/src/tui/render.js.map +1 -1
  329. package/src/tui/subagent-messages.d.ts +23 -0
  330. package/src/tui/subagent-messages.d.ts.map +1 -0
  331. package/src/tui/subagent-messages.js +270 -0
  332. package/src/tui/subagent-messages.js.map +1 -0
  333. package/src/watchdog/register-main.d.ts.map +1 -1
  334. package/src/watchdog/register-main.js +1 -19
  335. package/src/watchdog/register-main.js.map +1 -1
  336. package/src/watchdog/render.d.ts +2 -10
  337. package/src/watchdog/render.d.ts.map +1 -1
  338. package/src/watchdog/render.js +1 -19
  339. package/src/watchdog/render.js.map +1 -1
  340. package/src/watchdog/tool-actions.js +2 -2
  341. package/src/watchdog/tool-actions.js.map +1 -1
  342. package/src/workflows/scripted-workflow.d.ts.map +1 -1
  343. package/src/workflows/scripted-workflow.js +20 -6
  344. package/src/workflows/scripted-workflow.js.map +1 -1
  345. package/src/workflows/workflow-resources.d.ts.map +1 -1
  346. package/src/workflows/workflow-resources.js +12 -0
  347. package/src/workflows/workflow-resources.js.map +1 -1
@@ -0,0 +1,189 @@
1
+ import { createHash } from "node:crypto";
2
+ import { sanitizeDisplayText } from "../shared/display-text.js";
3
+ const ID_ROOT = "subagents";
4
+ const MAX_RECORDS = 64;
5
+ const MAX_MSG_BYTES = 2048;
6
+ const MAX_TITLE_BYTES = 192;
7
+ const RUN_SEGMENT_CHARS = 12;
8
+ // 32-character segment limit, minus the run part and the `.` separator.
9
+ const MAX_KEY_CHARS = 32 - RUN_SEGMENT_CHARS - 1;
10
+ // `.` is left out so it can only appear as the run/key separator.
11
+ function segment(value) {
12
+ return value.replace(/[^A-Za-z0-9_+-]/g, "-");
13
+ }
14
+ function runSegment(runId) {
15
+ return segment(runId.replace(/-/g, "").slice(0, RUN_SEGMENT_CHARS));
16
+ }
17
+ // A clear removes the record's descendants too, so workflow children are siblings of their run,
18
+ // never nested under another record of ours: `subagents/<run>.<key>`, one segment of at most 32 characters.
19
+ // A key that needs any change gets a hash of the original, so keys differing only in replaced characters stay distinct.
20
+ function keySegment(key) {
21
+ if (key.length <= MAX_KEY_CHARS && /^[A-Za-z0-9_+-]+$/.test(key))
22
+ return key;
23
+ return `${segment(key).slice(0, 12)}-${createHash("sha1").update(key).digest("hex").slice(0, 6)}`;
24
+ }
25
+ function recordId(job) {
26
+ if (job.parentWorkflowRunId && job.workflowKey) {
27
+ const parent = runSegment(job.parentWorkflowRunId);
28
+ return parent ? `${ID_ROOT}/${parent}.${keySegment(job.workflowKey)}` : undefined;
29
+ }
30
+ const run = runSegment(job.asyncId);
31
+ return run ? `${ID_ROOT}/${run}` : undefined;
32
+ }
33
+ function programState(job, blocked) {
34
+ switch (job.status) {
35
+ case "queued":
36
+ case "running":
37
+ return blocked ? "blocked" : "working";
38
+ case "complete":
39
+ return "done";
40
+ case "failed":
41
+ case "partial":
42
+ case "rejected":
43
+ return "error";
44
+ case "stopped":
45
+ case "paused":
46
+ return "idle";
47
+ }
48
+ }
49
+ function jobLabel(job) {
50
+ if (job.workflowKey)
51
+ return job.workflowKey;
52
+ if (job.mode === "workflow")
53
+ return "workflow";
54
+ const agents = [...new Set(job.agents ?? [])];
55
+ if (agents.length === 0)
56
+ return "subagent";
57
+ return agents.length > 3 ? `${agents.slice(0, 3).join(", ")} +${agents.length - 3}` : agents.join(", ");
58
+ }
59
+ // Prompt text never goes into the record: it is shown outside the terminal grid.
60
+ function message(job, state) {
61
+ switch (state) {
62
+ case "working":
63
+ return job.currentTool ? `Running ${job.currentTool}` : "Running";
64
+ case "blocked":
65
+ return "Waiting for a reply";
66
+ case "done":
67
+ return "Finished";
68
+ case "error":
69
+ return job.status === "partial" ? "Finished with failures" : job.status === "rejected" ? "Rejected" : "Failed";
70
+ case "idle":
71
+ return job.status === "paused" ? "Paused" : "Stopped";
72
+ }
73
+ }
74
+ function encodeText(text, maxBytes) {
75
+ let bytes = Buffer.from(sanitizeDisplayText(text), "utf-8");
76
+ if (bytes.length > maxBytes) {
77
+ let end = maxBytes;
78
+ while (end > 0 && (bytes[end] & 0xc0) === 0x80)
79
+ end--;
80
+ bytes = bytes.subarray(0, end);
81
+ }
82
+ return bytes.toString("base64");
83
+ }
84
+ function programStatusReport(fields) {
85
+ const pairs = [`state=${fields.state}`, `id=${fields.id}`];
86
+ if (fields.state !== "clear")
87
+ pairs.push("app=pi-subagents");
88
+ if (fields.kind)
89
+ pairs.push(`kind=${fields.kind}`);
90
+ if (fields.title !== undefined)
91
+ pairs.push(`title=${encodeText(fields.title, MAX_TITLE_BYTES)}`);
92
+ if (fields.msg !== undefined)
93
+ pairs.push(`msg=${encodeText(fields.msg, MAX_MSG_BYTES)}`);
94
+ return `\x1b]7501;${pairs.join(":")}\x1b\\`;
95
+ }
96
+ export function registerProgramStatusReporter(options) {
97
+ const write = options.write ?? ((data) => { process.stdout.write(data); });
98
+ const env = options.env ?? process.env;
99
+ const isTTY = options.isTTY ?? process.stdout.isTTY === true;
100
+ const sent = new Map();
101
+ let active = false;
102
+ let parentIdle = true;
103
+ // A request counts as waiting on the user only after the parent settled without answering it.
104
+ let unansweredAtSettle = new Set();
105
+ // Pi clears every OSC 7501 record when it suspends on Ctrl+Z and re-reports only its own root
106
+ // record on resume, so the records this extension shows are sent again.
107
+ const resend = () => {
108
+ if (!active)
109
+ return;
110
+ for (const report of sent.values())
111
+ write(report);
112
+ };
113
+ let listeningForResume = false;
114
+ // The shown records are recomputed from the current jobs on every sync: active runs first, then
115
+ // finished ones, each most recently updated first, up to the cap. Only the difference is written.
116
+ const sync = () => {
117
+ if (!active)
118
+ return;
119
+ const blockedRuns = new Set();
120
+ if (parentIdle) {
121
+ for (const request of options.getPendingRequests()) {
122
+ if (unansweredAtSettle.has(request.id))
123
+ blockedRuns.add(request.runId);
124
+ }
125
+ }
126
+ const candidates = [];
127
+ for (const job of options.getJobs()) {
128
+ const id = recordId(job);
129
+ if (!id)
130
+ continue;
131
+ const state = programState(job, blockedRuns.has(job.asyncId));
132
+ const report = programStatusReport({ state, id, ...(state === "blocked" ? { kind: "question" } : {}), title: jobLabel(job), msg: message(job, state) });
133
+ candidates.push({ id, report, active: state === "working" || state === "blocked", updatedAt: job.updatedAt ?? job.startedAt ?? 0 });
134
+ }
135
+ candidates.sort((left, right) => Number(right.active) - Number(left.active) || right.updatedAt - left.updatedAt || (left.id < right.id ? -1 : left.id > right.id ? 1 : 0));
136
+ const desired = new Map();
137
+ for (const candidate of candidates) {
138
+ if (desired.size === MAX_RECORDS)
139
+ break;
140
+ if (!desired.has(candidate.id))
141
+ desired.set(candidate.id, candidate.report);
142
+ }
143
+ for (const id of sent.keys()) {
144
+ if (desired.has(id))
145
+ continue;
146
+ sent.delete(id);
147
+ write(programStatusReport({ state: "clear", id }));
148
+ }
149
+ for (const [id, report] of desired) {
150
+ if (sent.get(id) === report)
151
+ continue;
152
+ sent.set(id, report);
153
+ write(report);
154
+ }
155
+ };
156
+ return {
157
+ sessionStarted({ hasUI, mode }) {
158
+ active = options.enabled && hasUI && mode === "tui" && isTTY && env.TERM !== "dumb" && env.PI_PROGRAM_STATUS !== "0";
159
+ if (active && !listeningForResume && process.platform !== "win32") {
160
+ process.on("SIGCONT", resend);
161
+ listeningForResume = true;
162
+ }
163
+ sync();
164
+ },
165
+ sync,
166
+ agentStarted() {
167
+ parentIdle = false;
168
+ sync();
169
+ },
170
+ agentSettled() {
171
+ parentIdle = true;
172
+ unansweredAtSettle = new Set([...options.getPendingRequests()].map((request) => request.id));
173
+ sync();
174
+ },
175
+ dispose(shutdownReason) {
176
+ if (active && shutdownReason !== "quit") {
177
+ for (const id of sent.keys())
178
+ write(programStatusReport({ state: "clear", id }));
179
+ }
180
+ sent.clear();
181
+ active = false;
182
+ if (listeningForResume) {
183
+ process.off("SIGCONT", resend);
184
+ listeningForResume = false;
185
+ }
186
+ },
187
+ };
188
+ }
189
+ //# sourceMappingURL=program-status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"program-status.js","sourceRoot":"","sources":["../../../src/integrations/program-status.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,7 @@ interface NativeSupervisorChannelDeps {
35
35
  };
36
36
  /** Retained scheduled states for the current runtime owner, never foreign owners. */
37
37
  getCurrentOwnerStates?: () => Iterable<SubagentState>;
38
+ parentWake?: Pick<ExtensionAPI, "sendMessage">;
38
39
  platform?: NodeJS.Platform;
39
40
  watch?: SupervisorWatch;
40
41
  timers?: Pick<typeof globalThis, "setInterval" | "clearInterval" | "setImmediate" | "clearImmediate">;
@@ -1 +1 @@
1
- {"version":3,"file":"native-supervisor-channel.d.ts","sourceRoot":"","sources":["../../../src/intercom/native-supervisor-channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-supervisor-channel.d.ts","sourceRoot":"","sources":["../../../src/intercom/native-supervisor-channel.ts"],"names":[],"mappings":"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"}
@@ -442,7 +442,7 @@ function requestVisibleText(request) {
442
442
  }
443
443
  if (request.expectsReply)
444
444
  lines.push("", `Reply with: ${supervisorReplyHint(request.id)}`);
445
- lines.push("", `Live guidance: subagent({ action: "steer", id: ${JSON.stringify(request.runId)}, index: ${request.childIndex}, message: "..." })${request.expectsReply ? " (Reply to the pending request first.)" : ""}`);
445
+ lines.push("", `Live guidance: subagent({ action: "steer", id: ${JSON.stringify(request.runId)}, message: "...", options: { index: ${request.childIndex} } })${request.expectsReply ? " (Reply to the pending request first.)" : ""}`);
446
446
  return lines.join("\n").trimEnd();
447
447
  }
448
448
  function writeReply(request, message) {
@@ -537,8 +537,8 @@ function buildParentSupervisorTool(pi, pending, state, onLifecycle, discover, ru
537
537
  const request = resolvePendingRequest(pending, input);
538
538
  const reply = writeReply(request, input.message ?? "");
539
539
  appendSupervisorReplyEntry(pi, request, reply);
540
- onLifecycle(request, "resolved");
541
540
  pending.delete(request.id);
541
+ onLifecycle(request, "resolved");
542
542
  clearForegroundSupervisorAttention(request, pending, state);
543
543
  return { content: [{ type: "text", text: `Replied to supervisor request ${request.id}.` }], details: { replyTo: request.id, runId: request.runId, agent: request.agent } };
544
544
  }
@@ -557,6 +557,9 @@ export function createNativeSupervisorChannel(pi, state, deps = {}) {
557
557
  return state;
558
558
  };
559
559
  const pending = new Map();
560
+ // One continuation and one warning per request; never auto-answer or loop.
561
+ const settleNotices = new Map();
562
+ let unsubscribeSettle;
560
563
  const requestCorrelations = new Map();
561
564
  const correlationKey = (request) => {
562
565
  if (!request.toolCallId)
@@ -590,8 +593,10 @@ export function createNativeSupervisorChannel(pi, state, deps = {}) {
590
593
  pruneRequestCorrelations();
591
594
  };
592
595
  const observeRequestLifecycle = (request, lifecycle) => {
596
+ settleNotices.delete(request.id);
593
597
  if (lifecycle !== "wrong-session")
594
598
  rememberResolvedRequest(request);
599
+ updateSettleSubscription();
595
600
  };
596
601
  const getSupervisorRequestState = (event) => {
597
602
  if (event.currentTool === "intercom" || event.index === undefined)
@@ -691,11 +696,12 @@ export function createNativeSupervisorChannel(pi, state, deps = {}) {
691
696
  }
692
697
  rememberPendingRequest(request);
693
698
  pending.set(request.id, request);
699
+ updateSettleSubscription();
694
700
  markForegroundSupervisorAttention(request, state);
695
701
  // The ask is already queued above. A sendMessage failure (no UI, stale context) must not
696
702
  // lose it, and must not abort the loop before the remaining asks register.
697
703
  try {
698
- pi.sendMessage({
704
+ (deps.parentWake ?? pi).sendMessage({
699
705
  customType: SUPERVISOR_REQUEST_MESSAGE_TYPE,
700
706
  content: requestVisibleText(request),
701
707
  display: true,
@@ -727,6 +733,72 @@ export function createNativeSupervisorChannel(pi, state, deps = {}) {
727
733
  markForegroundSupervisorAttention(request, state);
728
734
  }
729
735
  channels?.retire?.();
736
+ updateSettleSubscription();
737
+ };
738
+ const handleBeforeSettle = (event) => {
739
+ if (!started || event.outcome !== "completed")
740
+ return;
741
+ refreshPendingRequests(pending, state, observeRequestLifecycle, runState);
742
+ if (event.continue || event.context.pendingMessages.length)
743
+ return;
744
+ const messages = event.context.contextMessages;
745
+ const requests = [...pending.values()].filter(request => {
746
+ if (!request.expectsReply || settleNotices.get(request.id) === "warned" || settleNotices.get(request.id) === "handled")
747
+ return false;
748
+ const index = messages.findLastIndex(message => message.role === "custom"
749
+ && message.customType === SUPERVISOR_REQUEST_MESSAGE_TYPE
750
+ && message.details?.requestId === request.id);
751
+ const acted = index !== -1 && messages.slice(index + 1).some(message => message.role === "assistant"
752
+ && message.content.some(part => part.type === "toolCall" || (part.type === "text" && part.text.trim())));
753
+ if (index === -1 || acted) {
754
+ settleNotices.set(request.id, "handled");
755
+ return false;
756
+ }
757
+ return true;
758
+ });
759
+ updateSettleSubscription();
760
+ if (!requests.length)
761
+ return;
762
+ const unanswered = requests.filter(request => !settleNotices.has(request.id));
763
+ if (unanswered.length) {
764
+ for (const request of unanswered)
765
+ settleNotices.set(request.id, "reminded");
766
+ return {
767
+ entries: [...event.entries, {
768
+ type: "custom_message",
769
+ customType: "subagent-supervisor-unanswered",
770
+ content: "Silent supervisor wake. Pending request IDs: " + requests.map(request => request.id).join(", ") + ". Check subagent_supervisor({ action: \"pending\" }) and reply within existing authority, or explicitly ask the user for approval. Do not auto-approve.",
771
+ display: true,
772
+ details: { requestIds: requests.map(request => request.id) },
773
+ }],
774
+ continue: true,
775
+ };
776
+ }
777
+ const unflagged = requests.filter(request => settleNotices.get(request.id) !== "warned");
778
+ if (!unflagged.length)
779
+ return;
780
+ for (const request of unflagged)
781
+ settleNotices.set(request.id, "warned");
782
+ updateSettleSubscription();
783
+ return {
784
+ entries: [...event.entries, {
785
+ type: "custom_message",
786
+ customType: "subagent-supervisor-blocked",
787
+ content: "BLOCKED: unanswered supervisor request IDs: " + unflagged.map(request => request.id).join(", ") + ". Reminder budget exhausted; no reply or approval sent. Inspect subagent_supervisor({ action: \"pending\" }).",
788
+ display: true,
789
+ details: { blocked: true, requestIds: unflagged.map(request => request.id) },
790
+ }],
791
+ };
792
+ };
793
+ const updateSettleSubscription = () => {
794
+ const needed = started && [...pending.values()].some(request => request.expectsReply
795
+ && settleNotices.get(request.id) !== "warned" && settleNotices.get(request.id) !== "handled");
796
+ if (needed && !unsubscribeSettle)
797
+ unsubscribeSettle = pi.on?.("agent_before_settle", handleBeforeSettle);
798
+ if (!needed) {
799
+ unsubscribeSettle?.();
800
+ unsubscribeSettle = undefined;
801
+ }
730
802
  };
731
803
  const startPolling = () => {
732
804
  if (poller)
@@ -865,6 +937,7 @@ export function createNativeSupervisorChannel(pi, state, deps = {}) {
865
937
  },
866
938
  dispose: () => {
867
939
  started = false;
940
+ updateSettleSubscription();
868
941
  try {
869
942
  rootWatcher?.close();
870
943
  }
@@ -889,6 +962,7 @@ export function createNativeSupervisorChannel(pi, state, deps = {}) {
889
962
  timers.clearImmediate(deferredWatcherRefresh);
890
963
  deferredWatcherRefresh = undefined;
891
964
  pending.clear();
965
+ settleNotices.clear();
892
966
  requestCorrelations.clear();
893
967
  seenFiles.clear();
894
968
  },
@@ -1 +1 @@
1
- {"version":3,"file":"native-supervisor-channel.js","sourceRoot":"","sources":["../../../src/intercom/native-supervisor-channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-supervisor-channel.js","sourceRoot":"","sources":["../../../src/intercom/native-supervisor-channel.ts"],"names":[],"mappings":"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"}
@@ -196,7 +196,7 @@ function asyncResumeGuidance(input) {
196
196
  }
197
197
  if (resumable.length > 0) {
198
198
  const firstIndex = resumable[0]?.index ?? input.children.indexOf(resumable[0]);
199
- return `Revive child: subagent({ action: "resume", id: "${input.asyncId}", index: ${firstIndex}, message: "..." })`;
199
+ return `Revive child: subagent({ action: "resume", id: "${input.asyncId}", message: "...", options: { index: ${firstIndex} } })`;
200
200
  }
201
201
  return "Resume: unavailable; no child session file was persisted.";
202
202
  }