pi-subagents 0.69.0 → 0.70.1

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 (1443) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/README.md +1 -1
  3. package/agents/claude-code-writer.md +1 -0
  4. package/agents/codex-exec-writer.md +1 -0
  5. package/agents/cursor-agent-writer.md +1 -0
  6. package/agents/reviewer.md +3 -2
  7. package/agents/worker.md +1 -0
  8. package/docs/agents.md +12 -9
  9. package/docs/configuration.md +3 -1
  10. package/docs/extension-api.md +3 -1
  11. package/docs/models.md +4 -2
  12. package/docs/observability.md +7 -1
  13. package/docs/standalone-background.md +4 -4
  14. package/docs/tool-reference.md +3 -7
  15. package/docs/watchdog.md +2 -0
  16. package/docs/workflows.md +6 -2
  17. package/index.d.ts +3 -0
  18. package/index.d.ts.map +1 -0
  19. package/index.js +10 -0
  20. package/index.js.map +1 -0
  21. package/inspector-runner.mjs +1 -1
  22. package/package.json +89 -73
  23. package/runner-peer-loader.mjs +4 -7
  24. package/runner-peer-preload.mjs +5 -7
  25. package/skills/pi-subagents/SKILL.md +1 -0
  26. package/skills/pi-subagents/references/management-authoring-rpc.md +1 -1
  27. package/skills/pi-subagents/references/multi-lane-orchestration.md +8 -0
  28. package/skills/pi-subagents/references/prompting-and-roles.md +16 -15
  29. package/src/agents/advertised-agent-prompt.d.ts +8 -0
  30. package/src/agents/advertised-agent-prompt.d.ts.map +1 -0
  31. package/src/agents/advertised-agent-prompt.js +77 -0
  32. package/src/agents/advertised-agent-prompt.js.map +1 -0
  33. package/src/agents/agent-management.d.ts +27 -0
  34. package/src/agents/agent-management.d.ts.map +1 -0
  35. package/src/agents/agent-management.js +1514 -0
  36. package/src/agents/agent-management.js.map +1 -0
  37. package/src/agents/agent-memory.d.ts +49 -0
  38. package/src/agents/agent-memory.d.ts.map +1 -0
  39. package/src/agents/agent-memory.js +349 -0
  40. package/src/agents/agent-memory.js.map +1 -0
  41. package/src/agents/agent-refinements.d.ts +100 -0
  42. package/src/agents/agent-refinements.d.ts.map +1 -0
  43. package/src/agents/agent-refinements.js +569 -0
  44. package/src/agents/agent-refinements.js.map +1 -0
  45. package/src/agents/agent-scope.d.ts +3 -0
  46. package/src/agents/agent-scope.d.ts.map +1 -0
  47. package/src/agents/agent-scope.js +6 -0
  48. package/src/agents/agent-scope.js.map +1 -0
  49. package/src/agents/agent-selection.d.ts +3 -0
  50. package/src/agents/agent-selection.d.ts.map +1 -0
  51. package/src/agents/agent-selection.js +23 -0
  52. package/src/agents/agent-selection.js.map +1 -0
  53. package/src/agents/agent-serializer.d.ts +8 -0
  54. package/src/agents/agent-serializer.d.ts.map +1 -0
  55. package/src/agents/agent-serializer.js +196 -0
  56. package/src/agents/agent-serializer.js.map +1 -0
  57. package/src/agents/agents.d.ts +326 -0
  58. package/src/agents/agents.d.ts.map +1 -0
  59. package/src/agents/agents.js +2639 -0
  60. package/src/agents/agents.js.map +1 -0
  61. package/src/agents/builtin-names.d.ts +2 -0
  62. package/src/agents/builtin-names.d.ts.map +1 -0
  63. package/src/agents/builtin-names.js +17 -0
  64. package/src/agents/builtin-names.js.map +1 -0
  65. package/src/agents/chain-serializer.d.ts +7 -0
  66. package/src/agents/chain-serializer.d.ts.map +1 -0
  67. package/src/agents/chain-serializer.js +319 -0
  68. package/src/agents/chain-serializer.js.map +1 -0
  69. package/src/agents/frontmatter.d.ts +16 -0
  70. package/src/agents/frontmatter.d.ts.map +1 -0
  71. package/src/agents/frontmatter.js +142 -0
  72. package/src/agents/frontmatter.js.map +1 -0
  73. package/src/agents/identity.d.ts +8 -0
  74. package/src/agents/identity.d.ts.map +1 -0
  75. package/src/agents/identity.js +30 -0
  76. package/src/agents/identity.js.map +1 -0
  77. package/src/agents/proactive-skills.d.ts +35 -0
  78. package/src/agents/proactive-skills.d.ts.map +1 -0
  79. package/src/agents/proactive-skills.js +154 -0
  80. package/src/agents/proactive-skills.js.map +1 -0
  81. package/src/agents/runtime-agent-events.d.ts +27 -0
  82. package/src/agents/runtime-agent-events.d.ts.map +1 -0
  83. package/src/agents/runtime-agent-events.js +53 -0
  84. package/src/agents/runtime-agent-events.js.map +1 -0
  85. package/src/agents/runtime-agent-registry.d.ts +64 -0
  86. package/src/agents/runtime-agent-registry.d.ts.map +1 -0
  87. package/src/agents/runtime-agent-registry.js +395 -0
  88. package/src/agents/runtime-agent-registry.js.map +1 -0
  89. package/src/agents/skills.d.ts +33 -0
  90. package/src/agents/skills.d.ts.map +1 -0
  91. package/src/agents/skills.js +685 -0
  92. package/src/agents/skills.js.map +1 -0
  93. package/src/api/agents.d.ts +5 -0
  94. package/src/api/agents.d.ts.map +1 -0
  95. package/src/api/agents.js +3 -0
  96. package/src/api/agents.js.map +1 -0
  97. package/src/api/background-work.d.ts +39 -0
  98. package/src/api/background-work.d.ts.map +1 -0
  99. package/src/api/background-work.js +165 -0
  100. package/src/api/background-work.js.map +1 -0
  101. package/src/api/capability-ceiling.d.ts +2 -0
  102. package/src/api/capability-ceiling.d.ts.map +1 -0
  103. package/src/api/capability-ceiling.js +2 -0
  104. package/src/api/capability-ceiling.js.map +1 -0
  105. package/src/api/child-tool-plan.d.ts +2 -0
  106. package/src/api/child-tool-plan.d.ts.map +1 -0
  107. package/src/api/child-tool-plan.js +2 -0
  108. package/src/api/child-tool-plan.js.map +1 -0
  109. package/src/api/control-channel.d.ts +2 -0
  110. package/src/api/control-channel.d.ts.map +1 -0
  111. package/src/api/control-channel.js +2 -0
  112. package/src/api/control-channel.js.map +1 -0
  113. package/src/api/delegation.d.ts +99 -0
  114. package/src/api/delegation.d.ts.map +1 -0
  115. package/src/api/delegation.js +9 -0
  116. package/src/api/delegation.js.map +1 -0
  117. package/src/api/external-job-provider.d.ts +58 -0
  118. package/src/api/external-job-provider.d.ts.map +1 -0
  119. package/src/api/external-job-provider.js +140 -0
  120. package/src/api/external-job-provider.js.map +1 -0
  121. package/src/api/external-runs.d.ts +48 -0
  122. package/src/api/external-runs.d.ts.map +1 -0
  123. package/src/api/external-runs.js +245 -0
  124. package/src/api/external-runs.js.map +1 -0
  125. package/src/api/intercom-bridge.d.ts +2 -0
  126. package/src/api/intercom-bridge.d.ts.map +1 -0
  127. package/src/api/intercom-bridge.js +2 -0
  128. package/src/api/intercom-bridge.js.map +1 -0
  129. package/src/api/preflight.d.ts +173 -0
  130. package/src/api/preflight.d.ts.map +1 -0
  131. package/src/api/preflight.js +362 -0
  132. package/src/api/preflight.js.map +1 -0
  133. package/src/api/project-panes.d.ts +8 -0
  134. package/src/api/project-panes.d.ts.map +1 -0
  135. package/src/api/project-panes.js +8 -0
  136. package/src/api/project-panes.js.map +1 -0
  137. package/src/api/required-child-extensions.d.ts +2 -0
  138. package/src/api/required-child-extensions.d.ts.map +1 -0
  139. package/src/api/required-child-extensions.js +2 -0
  140. package/src/api/required-child-extensions.js.map +1 -0
  141. package/src/api/shared-types.d.ts +2 -0
  142. package/src/api/shared-types.d.ts.map +1 -0
  143. package/src/api/shared-types.js +2 -0
  144. package/src/api/shared-types.js.map +1 -0
  145. package/src/api/workflow-resources.d.ts +3 -0
  146. package/src/api/workflow-resources.d.ts.map +1 -0
  147. package/src/api/workflow-resources.js +2 -0
  148. package/src/api/workflow-resources.js.map +1 -0
  149. package/src/extension/config.d.ts +8 -0
  150. package/src/extension/config.d.ts.map +1 -0
  151. package/src/extension/config.js +245 -0
  152. package/src/extension/config.js.map +1 -0
  153. package/src/extension/control-notices.d.ts +19 -0
  154. package/src/extension/control-notices.d.ts.map +1 -0
  155. package/src/extension/control-notices.js +34 -0
  156. package/src/extension/control-notices.js.map +1 -0
  157. package/src/extension/doctor.d.ts +33 -0
  158. package/src/extension/doctor.d.ts.map +1 -0
  159. package/src/extension/doctor.js +231 -0
  160. package/src/extension/doctor.js.map +1 -0
  161. package/src/extension/fanout-child.d.ts +7 -0
  162. package/src/extension/fanout-child.d.ts.map +1 -0
  163. package/src/extension/fanout-child.js +261 -0
  164. package/src/extension/fanout-child.js.map +1 -0
  165. package/src/extension/herdr-pi-bridge.d.ts +17 -0
  166. package/src/extension/herdr-pi-bridge.d.ts.map +1 -0
  167. package/src/extension/herdr-pi-bridge.js +243 -0
  168. package/src/extension/herdr-pi-bridge.js.map +1 -0
  169. package/src/extension/index.d.ts +20 -0
  170. package/src/extension/index.d.ts.map +1 -0
  171. package/src/extension/index.js +1108 -0
  172. package/src/extension/index.js.map +1 -0
  173. package/src/extension/public-execution.d.ts +62 -0
  174. package/src/extension/public-execution.d.ts.map +1 -0
  175. package/src/extension/public-execution.js +174 -0
  176. package/src/extension/public-execution.js.map +1 -0
  177. package/src/extension/rpc.d.ts +83 -0
  178. package/src/extension/rpc.d.ts.map +1 -0
  179. package/src/extension/rpc.js +687 -0
  180. package/src/extension/rpc.js.map +1 -0
  181. package/src/extension/schemas.d.ts +252 -0
  182. package/src/extension/schemas.d.ts.map +1 -0
  183. package/src/extension/schemas.js +396 -0
  184. package/src/extension/schemas.js.map +1 -0
  185. package/src/extension/steering-notices.d.ts +15 -0
  186. package/src/extension/steering-notices.d.ts.map +1 -0
  187. package/src/extension/steering-notices.js +23 -0
  188. package/src/extension/steering-notices.js.map +1 -0
  189. package/src/extension/subagent-guide.d.ts +4 -0
  190. package/src/extension/subagent-guide.d.ts.map +1 -0
  191. package/src/extension/subagent-guide.js +35 -0
  192. package/src/extension/subagent-guide.js.map +1 -0
  193. package/src/extension/tool-description.d.ts +20 -0
  194. package/src/extension/tool-description.d.ts.map +1 -0
  195. package/src/extension/tool-description.js +160 -0
  196. package/src/extension/tool-description.js.map +1 -0
  197. package/src/extension/tool-result.d.ts +10 -0
  198. package/src/extension/tool-result.d.ts.map +1 -0
  199. package/src/extension/tool-result.js +17 -0
  200. package/src/extension/tool-result.js.map +1 -0
  201. package/src/inspectors/actions.d.ts +23 -0
  202. package/src/inspectors/actions.d.ts.map +1 -0
  203. package/src/inspectors/actions.js +155 -0
  204. package/src/inspectors/actions.js.map +1 -0
  205. package/src/inspectors/ghostty/actions.d.ts +12 -0
  206. package/src/inspectors/ghostty/actions.d.ts.map +1 -0
  207. package/src/inspectors/ghostty/actions.js +63 -0
  208. package/src/inspectors/ghostty/actions.js.map +1 -0
  209. package/src/inspectors/ghostty/plugin.d.ts +8 -0
  210. package/src/inspectors/ghostty/plugin.d.ts.map +1 -0
  211. package/src/inspectors/ghostty/plugin.js +24 -0
  212. package/src/inspectors/ghostty/plugin.js.map +1 -0
  213. package/src/inspectors/herdr/actions.d.ts +26 -0
  214. package/src/inspectors/herdr/actions.d.ts.map +1 -0
  215. package/src/inspectors/herdr/actions.js +134 -0
  216. package/src/inspectors/herdr/actions.js.map +1 -0
  217. package/src/inspectors/herdr/client.d.ts +42 -0
  218. package/src/inspectors/herdr/client.d.ts.map +1 -0
  219. package/src/inspectors/herdr/client.js +130 -0
  220. package/src/inspectors/herdr/client.js.map +1 -0
  221. package/src/inspectors/herdr/focus.d.ts +25 -0
  222. package/src/inspectors/herdr/focus.d.ts.map +1 -0
  223. package/src/inspectors/herdr/focus.js +50 -0
  224. package/src/inspectors/herdr/focus.js.map +1 -0
  225. package/src/inspectors/herdr/plugin.d.ts +7 -0
  226. package/src/inspectors/herdr/plugin.d.ts.map +1 -0
  227. package/src/inspectors/herdr/plugin.js +15 -0
  228. package/src/inspectors/herdr/plugin.js.map +1 -0
  229. package/src/inspectors/herdr/project-panes.d.ts +137 -0
  230. package/src/inspectors/herdr/project-panes.d.ts.map +1 -0
  231. package/src/inspectors/herdr/project-panes.js +608 -0
  232. package/src/inspectors/herdr/project-panes.js.map +1 -0
  233. package/src/inspectors/inspector-runner.d.ts +24 -0
  234. package/src/inspectors/inspector-runner.d.ts.map +1 -0
  235. package/src/inspectors/inspector-runner.js +162 -0
  236. package/src/inspectors/inspector-runner.js.map +1 -0
  237. package/src/inspectors/plugins.d.ts +4 -0
  238. package/src/inspectors/plugins.d.ts.map +1 -0
  239. package/src/inspectors/plugins.js +7 -0
  240. package/src/inspectors/plugins.js.map +1 -0
  241. package/src/inspectors/session-roots-codec.d.ts +16 -0
  242. package/src/inspectors/session-roots-codec.d.ts.map +1 -0
  243. package/src/inspectors/session-roots-codec.js +33 -0
  244. package/src/inspectors/session-roots-codec.js.map +1 -0
  245. package/src/inspectors/shell-command.d.ts +2 -0
  246. package/src/inspectors/shell-command.d.ts.map +1 -0
  247. package/src/inspectors/shell-command.js +17 -0
  248. package/src/inspectors/shell-command.js.map +1 -0
  249. package/src/inspectors/types.d.ts +49 -0
  250. package/src/inspectors/types.d.ts.map +1 -0
  251. package/src/inspectors/types.js +2 -0
  252. package/src/inspectors/types.js.map +1 -0
  253. package/src/integrations/herdr-status.d.ts +46 -0
  254. package/src/integrations/herdr-status.d.ts.map +1 -0
  255. package/src/integrations/herdr-status.js +371 -0
  256. package/src/integrations/herdr-status.js.map +1 -0
  257. package/src/integrations/pi-web-session-liveness.d.ts +20 -0
  258. package/src/integrations/pi-web-session-liveness.d.ts.map +1 -0
  259. package/src/integrations/pi-web-session-liveness.js +54 -0
  260. package/src/integrations/pi-web-session-liveness.js.map +1 -0
  261. package/src/intercom/intercom-bridge.d.ts +59 -0
  262. package/src/intercom/intercom-bridge.d.ts.map +1 -0
  263. package/src/intercom/intercom-bridge.js +192 -0
  264. package/src/intercom/intercom-bridge.js.map +1 -0
  265. package/src/intercom/native-supervisor-channel.d.ts +64 -0
  266. package/src/intercom/native-supervisor-channel.d.ts.map +1 -0
  267. package/src/intercom/native-supervisor-channel.js +894 -0
  268. package/src/intercom/native-supervisor-channel.js.map +1 -0
  269. package/src/intercom/result-intercom.d.ts +36 -0
  270. package/src/intercom/result-intercom.d.ts.map +1 -0
  271. package/src/intercom/result-intercom.js +372 -0
  272. package/src/intercom/result-intercom.js.map +1 -0
  273. package/src/intercom/supervisor-ui.d.ts +40 -0
  274. package/src/intercom/supervisor-ui.d.ts.map +1 -0
  275. package/src/intercom/supervisor-ui.js +202 -0
  276. package/src/intercom/supervisor-ui.js.map +1 -0
  277. package/src/missions/actions.d.ts +55 -0
  278. package/src/missions/actions.d.ts.map +1 -0
  279. package/src/missions/actions.js +396 -0
  280. package/src/missions/actions.js.map +1 -0
  281. package/src/missions/goal-driver.d.ts +16 -0
  282. package/src/missions/goal-driver.d.ts.map +1 -0
  283. package/src/missions/goal-driver.js +157 -0
  284. package/src/missions/goal-driver.js.map +1 -0
  285. package/src/missions/lifecycle.d.ts +40 -0
  286. package/src/missions/lifecycle.d.ts.map +1 -0
  287. package/src/missions/lifecycle.js +352 -0
  288. package/src/missions/lifecycle.js.map +1 -0
  289. package/src/missions/store.d.ts +22 -0
  290. package/src/missions/store.d.ts.map +1 -0
  291. package/src/missions/store.js +573 -0
  292. package/src/missions/store.js.map +1 -0
  293. package/src/missions/types.d.ts +168 -0
  294. package/src/missions/types.d.ts.map +1 -0
  295. package/src/missions/types.js +10 -0
  296. package/src/missions/types.js.map +1 -0
  297. package/src/missions/workflow-state.d.ts +15 -0
  298. package/src/missions/workflow-state.d.ts.map +1 -0
  299. package/src/missions/workflow-state.js +274 -0
  300. package/src/missions/workflow-state.js.map +1 -0
  301. package/src/policy/authority.d.ts +10 -0
  302. package/src/policy/authority.d.ts.map +1 -0
  303. package/src/policy/authority.js +42 -0
  304. package/src/policy/authority.js.map +1 -0
  305. package/src/profiles/profiles.d.ts +135 -0
  306. package/src/profiles/profiles.d.ts.map +1 -0
  307. package/src/profiles/profiles.js +520 -0
  308. package/src/profiles/profiles.js.map +1 -0
  309. package/src/runs/background/active-async-capacity.d.ts +100 -0
  310. package/src/runs/background/active-async-capacity.d.ts.map +1 -0
  311. package/src/runs/background/active-async-capacity.js +492 -0
  312. package/src/runs/background/active-async-capacity.js.map +1 -0
  313. package/src/runs/background/active-run-index.d.ts +13 -0
  314. package/src/runs/background/active-run-index.d.ts.map +1 -0
  315. package/src/runs/background/active-run-index.js +158 -0
  316. package/src/runs/background/active-run-index.js.map +1 -0
  317. package/src/runs/background/async-execution.d.ts +274 -0
  318. package/src/runs/background/async-execution.d.ts.map +1 -0
  319. package/src/runs/background/async-execution.js +1955 -0
  320. package/src/runs/background/async-execution.js.map +1 -0
  321. package/src/runs/background/async-job-tracker.d.ts +28 -0
  322. package/src/runs/background/async-job-tracker.d.ts.map +1 -0
  323. package/src/runs/background/async-job-tracker.js +876 -0
  324. package/src/runs/background/async-job-tracker.js.map +1 -0
  325. package/src/runs/background/async-resume.d.ts +59 -0
  326. package/src/runs/background/async-resume.d.ts.map +1 -0
  327. package/src/runs/background/async-resume.js +667 -0
  328. package/src/runs/background/async-resume.js.map +1 -0
  329. package/src/runs/background/async-retention.d.ts +45 -0
  330. package/src/runs/background/async-retention.d.ts.map +1 -0
  331. package/src/runs/background/async-retention.js +884 -0
  332. package/src/runs/background/async-retention.js.map +1 -0
  333. package/src/runs/background/async-status-snapshot.d.ts +10 -0
  334. package/src/runs/background/async-status-snapshot.d.ts.map +1 -0
  335. package/src/runs/background/async-status-snapshot.js +25 -0
  336. package/src/runs/background/async-status-snapshot.js.map +1 -0
  337. package/src/runs/background/async-status.d.ts +169 -0
  338. package/src/runs/background/async-status.d.ts.map +1 -0
  339. package/src/runs/background/async-status.js +673 -0
  340. package/src/runs/background/async-status.js.map +1 -0
  341. package/src/runs/background/auto-drain.d.ts +17 -0
  342. package/src/runs/background/auto-drain.d.ts.map +1 -0
  343. package/src/runs/background/auto-drain.js +73 -0
  344. package/src/runs/background/auto-drain.js.map +1 -0
  345. package/src/runs/background/binary-bootstrap.d.ts +9 -0
  346. package/src/runs/background/binary-bootstrap.d.ts.map +1 -0
  347. package/src/runs/background/binary-bootstrap.js +41 -0
  348. package/src/runs/background/binary-bootstrap.js.map +1 -0
  349. package/src/runs/background/chain-append.d.ts +35 -0
  350. package/src/runs/background/chain-append.d.ts.map +1 -0
  351. package/src/runs/background/chain-append.js +300 -0
  352. package/src/runs/background/chain-append.js.map +1 -0
  353. package/src/runs/background/chain-root-attachment.d.ts +49 -0
  354. package/src/runs/background/chain-root-attachment.d.ts.map +1 -0
  355. package/src/runs/background/chain-root-attachment.js +184 -0
  356. package/src/runs/background/chain-root-attachment.js.map +1 -0
  357. package/src/runs/background/completion-batcher.d.ts +52 -0
  358. package/src/runs/background/completion-batcher.d.ts.map +1 -0
  359. package/src/runs/background/completion-batcher.js +120 -0
  360. package/src/runs/background/completion-batcher.js.map +1 -0
  361. package/src/runs/background/completion-dedupe.d.ts +14 -0
  362. package/src/runs/background/completion-dedupe.d.ts.map +1 -0
  363. package/src/runs/background/completion-dedupe.js +49 -0
  364. package/src/runs/background/completion-dedupe.js.map +1 -0
  365. package/src/runs/background/completion-replay.d.ts +48 -0
  366. package/src/runs/background/completion-replay.d.ts.map +1 -0
  367. package/src/runs/background/completion-replay.js +267 -0
  368. package/src/runs/background/completion-replay.js.map +1 -0
  369. package/src/runs/background/control-channel.d.ts +156 -0
  370. package/src/runs/background/control-channel.d.ts.map +1 -0
  371. package/src/runs/background/control-channel.js +521 -0
  372. package/src/runs/background/control-channel.js.map +1 -0
  373. package/src/runs/background/fleet-view.d.ts +64 -0
  374. package/src/runs/background/fleet-view.d.ts.map +1 -0
  375. package/src/runs/background/fleet-view.js +648 -0
  376. package/src/runs/background/fleet-view.js.map +1 -0
  377. package/src/runs/background/index-segment.d.ts +16 -0
  378. package/src/runs/background/index-segment.d.ts.map +1 -0
  379. package/src/runs/background/index-segment.js +59 -0
  380. package/src/runs/background/index-segment.js.map +1 -0
  381. package/src/runs/background/inspect-rpc.d.ts +60 -0
  382. package/src/runs/background/inspect-rpc.d.ts.map +1 -0
  383. package/src/runs/background/inspect-rpc.js +406 -0
  384. package/src/runs/background/inspect-rpc.js.map +1 -0
  385. package/src/runs/background/notify.d.ts +162 -0
  386. package/src/runs/background/notify.d.ts.map +1 -0
  387. package/src/runs/background/notify.js +665 -0
  388. package/src/runs/background/notify.js.map +1 -0
  389. package/src/runs/background/owned-process-tree.d.ts +11 -0
  390. package/src/runs/background/owned-process-tree.d.ts.map +1 -0
  391. package/src/runs/background/owned-process-tree.js +117 -0
  392. package/src/runs/background/owned-process-tree.js.map +1 -0
  393. package/src/runs/background/parallel-groups.d.ts +4 -0
  394. package/src/runs/background/parallel-groups.d.ts.map +1 -0
  395. package/src/runs/background/parallel-groups.js +47 -0
  396. package/src/runs/background/parallel-groups.js.map +1 -0
  397. package/src/runs/background/process-terminal.d.ts +34 -0
  398. package/src/runs/background/process-terminal.d.ts.map +1 -0
  399. package/src/runs/background/process-terminal.js +305 -0
  400. package/src/runs/background/process-terminal.js.map +1 -0
  401. package/src/runs/background/result-delivery-ownership.d.ts +11 -0
  402. package/src/runs/background/result-delivery-ownership.d.ts.map +1 -0
  403. package/src/runs/background/result-delivery-ownership.js +37 -0
  404. package/src/runs/background/result-delivery-ownership.js.map +1 -0
  405. package/src/runs/background/result-files.d.ts +33 -0
  406. package/src/runs/background/result-files.d.ts.map +1 -0
  407. package/src/runs/background/result-files.js +528 -0
  408. package/src/runs/background/result-files.js.map +1 -0
  409. package/src/runs/background/result-watcher.d.ts +87 -0
  410. package/src/runs/background/result-watcher.d.ts.map +1 -0
  411. package/src/runs/background/result-watcher.js +764 -0
  412. package/src/runs/background/result-watcher.js.map +1 -0
  413. package/src/runs/background/resume-guidance.d.ts +5 -0
  414. package/src/runs/background/resume-guidance.d.ts.map +1 -0
  415. package/src/runs/background/resume-guidance.js +57 -0
  416. package/src/runs/background/resume-guidance.js.map +1 -0
  417. package/src/runs/background/retained-children.d.ts +25 -0
  418. package/src/runs/background/retained-children.d.ts.map +1 -0
  419. package/src/runs/background/retained-children.js +128 -0
  420. package/src/runs/background/retained-children.js.map +1 -0
  421. package/src/runs/background/retained-nested-route-tracker.d.ts +13 -0
  422. package/src/runs/background/retained-nested-route-tracker.d.ts.map +1 -0
  423. package/src/runs/background/retained-nested-route-tracker.js +91 -0
  424. package/src/runs/background/retained-nested-route-tracker.js.map +1 -0
  425. package/src/runs/background/run-child-session.d.ts +123 -0
  426. package/src/runs/background/run-child-session.d.ts.map +1 -0
  427. package/src/runs/background/run-child-session.js +602 -0
  428. package/src/runs/background/run-child-session.js.map +1 -0
  429. package/src/runs/background/run-id-query.d.ts +4 -0
  430. package/src/runs/background/run-id-query.d.ts.map +1 -0
  431. package/src/runs/background/run-id-query.js +7 -0
  432. package/src/runs/background/run-id-query.js.map +1 -0
  433. package/src/runs/background/run-id-resolver.d.ts +23 -0
  434. package/src/runs/background/run-id-resolver.d.ts.map +1 -0
  435. package/src/runs/background/run-id-resolver.js +170 -0
  436. package/src/runs/background/run-id-resolver.js.map +1 -0
  437. package/src/runs/background/run-status.d.ts +26 -0
  438. package/src/runs/background/run-status.d.ts.map +1 -0
  439. package/src/runs/background/run-status.js +828 -0
  440. package/src/runs/background/run-status.js.map +1 -0
  441. package/src/runs/background/runner-aliases.d.ts +17 -0
  442. package/src/runs/background/runner-aliases.d.ts.map +1 -0
  443. package/src/runs/background/runner-aliases.js +152 -0
  444. package/src/runs/background/runner-aliases.js.map +1 -0
  445. package/src/runs/background/runner-child-launch.d.ts +24 -0
  446. package/src/runs/background/runner-child-launch.d.ts.map +1 -0
  447. package/src/runs/background/runner-child-launch.js +68 -0
  448. package/src/runs/background/runner-child-launch.js.map +1 -0
  449. package/src/runs/background/runner-child-sessions.d.ts +7 -0
  450. package/src/runs/background/runner-child-sessions.d.ts.map +1 -0
  451. package/src/runs/background/runner-child-sessions.js +35 -0
  452. package/src/runs/background/runner-child-sessions.js.map +1 -0
  453. package/src/runs/background/runner-http-dispatcher.d.ts +43 -0
  454. package/src/runs/background/runner-http-dispatcher.d.ts.map +1 -0
  455. package/src/runs/background/runner-http-dispatcher.js +114 -0
  456. package/src/runs/background/runner-http-dispatcher.js.map +1 -0
  457. package/src/runs/background/scheduled-runs.d.ts +116 -0
  458. package/src/runs/background/scheduled-runs.d.ts.map +1 -0
  459. package/src/runs/background/scheduled-runs.js +1024 -0
  460. package/src/runs/background/scheduled-runs.js.map +1 -0
  461. package/src/runs/background/stale-run-reconciler.d.ts +37 -0
  462. package/src/runs/background/stale-run-reconciler.d.ts.map +1 -0
  463. package/src/runs/background/stale-run-reconciler.js +393 -0
  464. package/src/runs/background/stale-run-reconciler.js.map +1 -0
  465. package/src/runs/background/steering.d.ts +52 -0
  466. package/src/runs/background/steering.d.ts.map +1 -0
  467. package/src/runs/background/steering.js +247 -0
  468. package/src/runs/background/steering.js.map +1 -0
  469. package/src/runs/background/subagent-runner.d.ts +197 -0
  470. package/src/runs/background/subagent-runner.d.ts.map +1 -0
  471. package/src/runs/background/subagent-runner.js +5052 -0
  472. package/src/runs/background/subagent-runner.js.map +1 -0
  473. package/src/runs/background/subagent-wait.d.ts +122 -0
  474. package/src/runs/background/subagent-wait.d.ts.map +1 -0
  475. package/src/runs/background/subagent-wait.js +735 -0
  476. package/src/runs/background/subagent-wait.js.map +1 -0
  477. package/src/runs/background/terminal-run-index.d.ts +8 -0
  478. package/src/runs/background/terminal-run-index.d.ts.map +1 -0
  479. package/src/runs/background/terminal-run-index.js +123 -0
  480. package/src/runs/background/terminal-run-index.js.map +1 -0
  481. package/src/runs/background/top-level-async.d.ts +8 -0
  482. package/src/runs/background/top-level-async.d.ts.map +1 -0
  483. package/src/runs/background/top-level-async.js +6 -0
  484. package/src/runs/background/top-level-async.js.map +1 -0
  485. package/src/runs/background/wait-completions.d.ts +29 -0
  486. package/src/runs/background/wait-completions.d.ts.map +1 -0
  487. package/src/runs/background/wait-completions.js +264 -0
  488. package/src/runs/background/wait-completions.js.map +1 -0
  489. package/src/runs/background/wait-config.d.ts +9 -0
  490. package/src/runs/background/wait-config.d.ts.map +1 -0
  491. package/src/runs/background/wait-config.js +47 -0
  492. package/src/runs/background/wait-config.js.map +1 -0
  493. package/src/runs/background/wait-subscriptions.d.ts +27 -0
  494. package/src/runs/background/wait-subscriptions.d.ts.map +1 -0
  495. package/src/runs/background/wait-subscriptions.js +337 -0
  496. package/src/runs/background/wait-subscriptions.js.map +1 -0
  497. package/src/runs/background/wait-tool.d.ts +7 -0
  498. package/src/runs/background/wait-tool.d.ts.map +1 -0
  499. package/src/runs/background/wait-tool.js +36 -0
  500. package/src/runs/background/wait-tool.js.map +1 -0
  501. package/src/runs/foreground/async-dismiss-action.d.ts +7 -0
  502. package/src/runs/foreground/async-dismiss-action.d.ts.map +1 -0
  503. package/src/runs/foreground/async-dismiss-action.js +82 -0
  504. package/src/runs/foreground/async-dismiss-action.js.map +1 -0
  505. package/src/runs/foreground/async-steering-action.d.ts +32 -0
  506. package/src/runs/foreground/async-steering-action.d.ts.map +1 -0
  507. package/src/runs/foreground/async-steering-action.js +270 -0
  508. package/src/runs/foreground/async-steering-action.js.map +1 -0
  509. package/src/runs/foreground/async-stop-action.d.ts +7 -0
  510. package/src/runs/foreground/async-stop-action.d.ts.map +1 -0
  511. package/src/runs/foreground/async-stop-action.js +171 -0
  512. package/src/runs/foreground/async-stop-action.js.map +1 -0
  513. package/src/runs/foreground/execution.d.ts +11 -0
  514. package/src/runs/foreground/execution.d.ts.map +1 -0
  515. package/src/runs/foreground/execution.js +2089 -0
  516. package/src/runs/foreground/execution.js.map +1 -0
  517. package/src/runs/foreground/foreground-control.d.ts +25 -0
  518. package/src/runs/foreground/foreground-control.d.ts.map +1 -0
  519. package/src/runs/foreground/foreground-control.js +139 -0
  520. package/src/runs/foreground/foreground-control.js.map +1 -0
  521. package/src/runs/foreground/foreground-history.d.ts +12 -0
  522. package/src/runs/foreground/foreground-history.d.ts.map +1 -0
  523. package/src/runs/foreground/foreground-history.js +165 -0
  524. package/src/runs/foreground/foreground-history.js.map +1 -0
  525. package/src/runs/foreground/prompt-audit.d.ts +33 -0
  526. package/src/runs/foreground/prompt-audit.d.ts.map +1 -0
  527. package/src/runs/foreground/prompt-audit.js +143 -0
  528. package/src/runs/foreground/prompt-audit.js.map +1 -0
  529. package/src/runs/foreground/subagent-executor.d.ts +296 -0
  530. package/src/runs/foreground/subagent-executor.d.ts.map +1 -0
  531. package/src/runs/foreground/subagent-executor.js +7045 -0
  532. package/src/runs/foreground/subagent-executor.js.map +1 -0
  533. package/src/runs/foreground/workflow-detach-reconcile.d.ts +16 -0
  534. package/src/runs/foreground/workflow-detach-reconcile.d.ts.map +1 -0
  535. package/src/runs/foreground/workflow-detach-reconcile.js +284 -0
  536. package/src/runs/foreground/workflow-detach-reconcile.js.map +1 -0
  537. package/src/runs/foreground/workflow-foreground-steering.d.ts +44 -0
  538. package/src/runs/foreground/workflow-foreground-steering.d.ts.map +1 -0
  539. package/src/runs/foreground/workflow-foreground-steering.js +149 -0
  540. package/src/runs/foreground/workflow-foreground-steering.js.map +1 -0
  541. package/src/runs/shared/abort-recovery.d.ts +27 -0
  542. package/src/runs/shared/abort-recovery.d.ts.map +1 -0
  543. package/src/runs/shared/abort-recovery.js +109 -0
  544. package/src/runs/shared/abort-recovery.js.map +1 -0
  545. package/src/runs/shared/acceptance.d.ts +145 -0
  546. package/src/runs/shared/acceptance.d.ts.map +1 -0
  547. package/src/runs/shared/acceptance.js +1617 -0
  548. package/src/runs/shared/acceptance.js.map +1 -0
  549. package/src/runs/shared/agent-contract.d.ts +6 -0
  550. package/src/runs/shared/agent-contract.d.ts.map +1 -0
  551. package/src/runs/shared/agent-contract.js +36 -0
  552. package/src/runs/shared/agent-contract.js.map +1 -0
  553. package/src/runs/shared/async-status-projection.d.ts +94 -0
  554. package/src/runs/shared/async-status-projection.d.ts.map +1 -0
  555. package/src/runs/shared/async-status-projection.js +542 -0
  556. package/src/runs/shared/async-status-projection.js.map +1 -0
  557. package/src/runs/shared/background-process-options.d.ts +5 -0
  558. package/src/runs/shared/background-process-options.d.ts.map +1 -0
  559. package/src/runs/shared/background-process-options.js +7 -0
  560. package/src/runs/shared/background-process-options.js.map +1 -0
  561. package/src/runs/shared/capability-ceiling.d.ts +58 -0
  562. package/src/runs/shared/capability-ceiling.d.ts.map +1 -0
  563. package/src/runs/shared/capability-ceiling.js +179 -0
  564. package/src/runs/shared/capability-ceiling.js.map +1 -0
  565. package/src/runs/shared/chain-outputs.d.ts +19 -0
  566. package/src/runs/shared/chain-outputs.d.ts.map +1 -0
  567. package/src/runs/shared/chain-outputs.js +105 -0
  568. package/src/runs/shared/chain-outputs.js.map +1 -0
  569. package/src/runs/shared/child-hooks.d.ts +32 -0
  570. package/src/runs/shared/child-hooks.d.ts.map +1 -0
  571. package/src/runs/shared/child-hooks.js +173 -0
  572. package/src/runs/shared/child-hooks.js.map +1 -0
  573. package/src/runs/shared/child-identity.d.ts +24 -0
  574. package/src/runs/shared/child-identity.d.ts.map +1 -0
  575. package/src/runs/shared/child-identity.js +41 -0
  576. package/src/runs/shared/child-identity.js.map +1 -0
  577. package/src/runs/shared/child-launch-plan.d.ts +71 -0
  578. package/src/runs/shared/child-launch-plan.d.ts.map +1 -0
  579. package/src/runs/shared/child-launch-plan.js +89 -0
  580. package/src/runs/shared/child-launch-plan.js.map +1 -0
  581. package/src/runs/shared/child-launch.d.ts +112 -0
  582. package/src/runs/shared/child-launch.d.ts.map +1 -0
  583. package/src/runs/shared/child-launch.js +230 -0
  584. package/src/runs/shared/child-launch.js.map +1 -0
  585. package/src/runs/shared/child-lifecycle.d.ts +14 -0
  586. package/src/runs/shared/child-lifecycle.d.ts.map +1 -0
  587. package/src/runs/shared/child-lifecycle.js +23 -0
  588. package/src/runs/shared/child-lifecycle.js.map +1 -0
  589. package/src/runs/shared/child-runtime-config.d.ts +102 -0
  590. package/src/runs/shared/child-runtime-config.d.ts.map +1 -0
  591. package/src/runs/shared/child-runtime-config.js +39 -0
  592. package/src/runs/shared/child-runtime-config.js.map +1 -0
  593. package/src/runs/shared/child-session.d.ts +154 -0
  594. package/src/runs/shared/child-session.d.ts.map +1 -0
  595. package/src/runs/shared/child-session.js +412 -0
  596. package/src/runs/shared/child-session.js.map +1 -0
  597. package/src/runs/shared/child-tool-plan.d.ts +73 -0
  598. package/src/runs/shared/child-tool-plan.d.ts.map +1 -0
  599. package/src/runs/shared/child-tool-plan.js +380 -0
  600. package/src/runs/shared/child-tool-plan.js.map +1 -0
  601. package/src/runs/shared/claude-code-adapter.d.ts +25 -0
  602. package/src/runs/shared/claude-code-adapter.d.ts.map +1 -0
  603. package/src/runs/shared/claude-code-adapter.js +120 -0
  604. package/src/runs/shared/claude-code-adapter.js.map +1 -0
  605. package/src/runs/shared/codex-exec-adapter.d.ts +26 -0
  606. package/src/runs/shared/codex-exec-adapter.d.ts.map +1 -0
  607. package/src/runs/shared/codex-exec-adapter.js +128 -0
  608. package/src/runs/shared/codex-exec-adapter.js.map +1 -0
  609. package/src/runs/shared/context-mode.d.ts +13 -0
  610. package/src/runs/shared/context-mode.d.ts.map +1 -0
  611. package/src/runs/shared/context-mode.js +39 -0
  612. package/src/runs/shared/context-mode.js.map +1 -0
  613. package/src/runs/shared/cursor-agent-adapter.d.ts +27 -0
  614. package/src/runs/shared/cursor-agent-adapter.d.ts.map +1 -0
  615. package/src/runs/shared/cursor-agent-adapter.js +100 -0
  616. package/src/runs/shared/cursor-agent-adapter.js.map +1 -0
  617. package/src/runs/shared/dynamic-fanout.d.ts +50 -0
  618. package/src/runs/shared/dynamic-fanout.d.ts.map +1 -0
  619. package/src/runs/shared/dynamic-fanout.js +274 -0
  620. package/src/runs/shared/dynamic-fanout.js.map +1 -0
  621. package/src/runs/shared/effective-system-prompt.d.ts +18 -0
  622. package/src/runs/shared/effective-system-prompt.d.ts.map +1 -0
  623. package/src/runs/shared/effective-system-prompt.js +23 -0
  624. package/src/runs/shared/effective-system-prompt.js.map +1 -0
  625. package/src/runs/shared/extension-bindings.d.ts +17 -0
  626. package/src/runs/shared/extension-bindings.d.ts.map +1 -0
  627. package/src/runs/shared/extension-bindings.js +83 -0
  628. package/src/runs/shared/extension-bindings.js.map +1 -0
  629. package/src/runs/shared/external-cli-contract.d.ts +30 -0
  630. package/src/runs/shared/external-cli-contract.d.ts.map +1 -0
  631. package/src/runs/shared/external-cli-contract.js +146 -0
  632. package/src/runs/shared/external-cli-contract.js.map +1 -0
  633. package/src/runs/shared/external-cli-preflight.d.ts +32 -0
  634. package/src/runs/shared/external-cli-preflight.d.ts.map +1 -0
  635. package/src/runs/shared/external-cli-preflight.js +116 -0
  636. package/src/runs/shared/external-cli-preflight.js.map +1 -0
  637. package/src/runs/shared/external-cli-runner.d.ts +66 -0
  638. package/src/runs/shared/external-cli-runner.d.ts.map +1 -0
  639. package/src/runs/shared/external-cli-runner.js +421 -0
  640. package/src/runs/shared/external-cli-runner.js.map +1 -0
  641. package/src/runs/shared/external-job-bridge.d.ts +18 -0
  642. package/src/runs/shared/external-job-bridge.d.ts.map +1 -0
  643. package/src/runs/shared/external-job-bridge.js +424 -0
  644. package/src/runs/shared/external-job-bridge.js.map +1 -0
  645. package/src/runs/shared/external-job-runner.d.ts +45 -0
  646. package/src/runs/shared/external-job-runner.d.ts.map +1 -0
  647. package/src/runs/shared/external-job-runner.js +353 -0
  648. package/src/runs/shared/external-job-runner.js.map +1 -0
  649. package/src/runs/shared/fast-mode-extension.d.ts +4 -0
  650. package/src/runs/shared/fast-mode-extension.d.ts.map +1 -0
  651. package/src/runs/shared/fast-mode-extension.js +9 -0
  652. package/src/runs/shared/fast-mode-extension.js.map +1 -0
  653. package/src/runs/shared/herdr-connection.d.ts +71 -0
  654. package/src/runs/shared/herdr-connection.d.ts.map +1 -0
  655. package/src/runs/shared/herdr-connection.js +258 -0
  656. package/src/runs/shared/herdr-connection.js.map +1 -0
  657. package/src/runs/shared/herdr-external-adapters.d.ts +148 -0
  658. package/src/runs/shared/herdr-external-adapters.d.ts.map +1 -0
  659. package/src/runs/shared/herdr-external-adapters.js +405 -0
  660. package/src/runs/shared/herdr-external-adapters.js.map +1 -0
  661. package/src/runs/shared/herdr-machine.d.ts +48 -0
  662. package/src/runs/shared/herdr-machine.d.ts.map +1 -0
  663. package/src/runs/shared/herdr-machine.js +247 -0
  664. package/src/runs/shared/herdr-machine.js.map +1 -0
  665. package/src/runs/shared/herdr-pi-protocol.d.ts +22 -0
  666. package/src/runs/shared/herdr-pi-protocol.d.ts.map +1 -0
  667. package/src/runs/shared/herdr-pi-protocol.js +58 -0
  668. package/src/runs/shared/herdr-pi-protocol.js.map +1 -0
  669. package/src/runs/shared/herdr-placed-run.d.ts +267 -0
  670. package/src/runs/shared/herdr-placed-run.d.ts.map +1 -0
  671. package/src/runs/shared/herdr-placed-run.js +716 -0
  672. package/src/runs/shared/herdr-placed-run.js.map +1 -0
  673. package/src/runs/shared/host-step-status.d.ts +34 -0
  674. package/src/runs/shared/host-step-status.d.ts.map +1 -0
  675. package/src/runs/shared/host-step-status.js +245 -0
  676. package/src/runs/shared/host-step-status.js.map +1 -0
  677. package/src/runs/shared/lane-metadata.d.ts +24 -0
  678. package/src/runs/shared/lane-metadata.d.ts.map +1 -0
  679. package/src/runs/shared/lane-metadata.js +127 -0
  680. package/src/runs/shared/lane-metadata.js.map +1 -0
  681. package/src/runs/shared/launch-cwd.d.ts +2 -0
  682. package/src/runs/shared/launch-cwd.d.ts.map +1 -0
  683. package/src/runs/shared/launch-cwd.js +17 -0
  684. package/src/runs/shared/launch-cwd.js.map +1 -0
  685. package/src/runs/shared/long-running-guard.d.ts +33 -0
  686. package/src/runs/shared/long-running-guard.d.ts.map +1 -0
  687. package/src/runs/shared/long-running-guard.js +199 -0
  688. package/src/runs/shared/long-running-guard.js.map +1 -0
  689. package/src/runs/shared/mcp-config-sources.d.ts +30 -0
  690. package/src/runs/shared/mcp-config-sources.d.ts.map +1 -0
  691. package/src/runs/shared/mcp-config-sources.js +419 -0
  692. package/src/runs/shared/mcp-config-sources.js.map +1 -0
  693. package/src/runs/shared/mcp-direct-tool-allowlist.d.ts +59 -0
  694. package/src/runs/shared/mcp-direct-tool-allowlist.d.ts.map +1 -0
  695. package/src/runs/shared/mcp-direct-tool-allowlist.js +400 -0
  696. package/src/runs/shared/mcp-direct-tool-allowlist.js.map +1 -0
  697. package/src/runs/shared/mcp-direct-tool-grant.d.ts +41 -0
  698. package/src/runs/shared/mcp-direct-tool-grant.d.ts.map +1 -0
  699. package/src/runs/shared/mcp-direct-tool-grant.js +146 -0
  700. package/src/runs/shared/mcp-direct-tool-grant.js.map +1 -0
  701. package/src/runs/shared/model-resolution-diagnostic.d.ts +22 -0
  702. package/src/runs/shared/model-resolution-diagnostic.d.ts.map +1 -0
  703. package/src/runs/shared/model-resolution-diagnostic.js +65 -0
  704. package/src/runs/shared/model-resolution-diagnostic.js.map +1 -0
  705. package/src/runs/shared/model-resolution.d.ts +92 -0
  706. package/src/runs/shared/model-resolution.d.ts.map +1 -0
  707. package/src/runs/shared/model-resolution.js +343 -0
  708. package/src/runs/shared/model-resolution.js.map +1 -0
  709. package/src/runs/shared/model-scope.d.ts +68 -0
  710. package/src/runs/shared/model-scope.d.ts.map +1 -0
  711. package/src/runs/shared/model-scope.js +156 -0
  712. package/src/runs/shared/model-scope.js.map +1 -0
  713. package/src/runs/shared/mutation-evidence.d.ts +19 -0
  714. package/src/runs/shared/mutation-evidence.d.ts.map +1 -0
  715. package/src/runs/shared/mutation-evidence.js +199 -0
  716. package/src/runs/shared/mutation-evidence.js.map +1 -0
  717. package/src/runs/shared/nested-events.d.ts +134 -0
  718. package/src/runs/shared/nested-events.d.ts.map +1 -0
  719. package/src/runs/shared/nested-events.js +1056 -0
  720. package/src/runs/shared/nested-events.js.map +1 -0
  721. package/src/runs/shared/nested-path.d.ts +9 -0
  722. package/src/runs/shared/nested-path.d.ts.map +1 -0
  723. package/src/runs/shared/nested-path.js +35 -0
  724. package/src/runs/shared/nested-path.js.map +1 -0
  725. package/src/runs/shared/nested-render.d.ts +21 -0
  726. package/src/runs/shared/nested-render.d.ts.map +1 -0
  727. package/src/runs/shared/nested-render.js +116 -0
  728. package/src/runs/shared/nested-render.js.map +1 -0
  729. package/src/runs/shared/orca-progress-tabs.d.ts +33 -0
  730. package/src/runs/shared/orca-progress-tabs.d.ts.map +1 -0
  731. package/src/runs/shared/orca-progress-tabs.js +527 -0
  732. package/src/runs/shared/orca-progress-tabs.js.map +1 -0
  733. package/src/runs/shared/parallel-handoff.d.ts +73 -0
  734. package/src/runs/shared/parallel-handoff.d.ts.map +1 -0
  735. package/src/runs/shared/parallel-handoff.js +733 -0
  736. package/src/runs/shared/parallel-handoff.js.map +1 -0
  737. package/src/runs/shared/parallel-utils.d.ts +164 -0
  738. package/src/runs/shared/parallel-utils.d.ts.map +1 -0
  739. package/src/runs/shared/parallel-utils.js +126 -0
  740. package/src/runs/shared/parallel-utils.js.map +1 -0
  741. package/src/runs/shared/permissions.d.ts +13 -0
  742. package/src/runs/shared/permissions.d.ts.map +1 -0
  743. package/src/runs/shared/permissions.js +93 -0
  744. package/src/runs/shared/permissions.js.map +1 -0
  745. package/src/runs/shared/pi-spawn.d.ts +28 -0
  746. package/src/runs/shared/pi-spawn.d.ts.map +1 -0
  747. package/src/runs/shared/pi-spawn.js +156 -0
  748. package/src/runs/shared/pi-spawn.js.map +1 -0
  749. package/src/runs/shared/process-signal.d.ts +16 -0
  750. package/src/runs/shared/process-signal.d.ts.map +1 -0
  751. package/src/runs/shared/process-signal.js +22 -0
  752. package/src/runs/shared/process-signal.js.map +1 -0
  753. package/src/runs/shared/readonly-drain-observation.d.ts +26 -0
  754. package/src/runs/shared/readonly-drain-observation.d.ts.map +1 -0
  755. package/src/runs/shared/readonly-drain-observation.js +51 -0
  756. package/src/runs/shared/readonly-drain-observation.js.map +1 -0
  757. package/src/runs/shared/run-fanout-budget.d.ts +15 -0
  758. package/src/runs/shared/run-fanout-budget.d.ts.map +1 -0
  759. package/src/runs/shared/run-fanout-budget.js +259 -0
  760. package/src/runs/shared/run-fanout-budget.js.map +1 -0
  761. package/src/runs/shared/run-history.d.ts +20 -0
  762. package/src/runs/shared/run-history.d.ts.map +1 -0
  763. package/src/runs/shared/run-history.js +200 -0
  764. package/src/runs/shared/run-history.js.map +1 -0
  765. package/src/runs/shared/runtime-acknowledged-extensions.d.ts +8 -0
  766. package/src/runs/shared/runtime-acknowledged-extensions.d.ts.map +1 -0
  767. package/src/runs/shared/runtime-acknowledged-extensions.js +45 -0
  768. package/src/runs/shared/runtime-acknowledged-extensions.js.map +1 -0
  769. package/src/runs/shared/session-lease.d.ts +70 -0
  770. package/src/runs/shared/session-lease.d.ts.map +1 -0
  771. package/src/runs/shared/session-lease.js +251 -0
  772. package/src/runs/shared/session-lease.js.map +1 -0
  773. package/src/runs/shared/single-output.d.ts +61 -0
  774. package/src/runs/shared/single-output.d.ts.map +1 -0
  775. package/src/runs/shared/single-output.js +271 -0
  776. package/src/runs/shared/single-output.js.map +1 -0
  777. package/src/runs/shared/spawn-budget.d.ts +21 -0
  778. package/src/runs/shared/spawn-budget.d.ts.map +1 -0
  779. package/src/runs/shared/spawn-budget.js +94 -0
  780. package/src/runs/shared/spawn-budget.js.map +1 -0
  781. package/src/runs/shared/structured-output.d.ts +57 -0
  782. package/src/runs/shared/structured-output.d.ts.map +1 -0
  783. package/src/runs/shared/structured-output.js +391 -0
  784. package/src/runs/shared/structured-output.js.map +1 -0
  785. package/src/runs/shared/subagent-control.d.ts +50 -0
  786. package/src/runs/shared/subagent-control.d.ts.map +1 -0
  787. package/src/runs/shared/subagent-control.js +234 -0
  788. package/src/runs/shared/subagent-control.js.map +1 -0
  789. package/src/runs/shared/subagent-prompt-runtime.d.ts +28 -0
  790. package/src/runs/shared/subagent-prompt-runtime.d.ts.map +1 -0
  791. package/src/runs/shared/subagent-prompt-runtime.js +548 -0
  792. package/src/runs/shared/subagent-prompt-runtime.js.map +1 -0
  793. package/src/runs/shared/tool-availability.d.ts +17 -0
  794. package/src/runs/shared/tool-availability.d.ts.map +1 -0
  795. package/src/runs/shared/tool-availability.js +30 -0
  796. package/src/runs/shared/tool-availability.js.map +1 -0
  797. package/src/runs/shared/tool-budget.d.ts +22 -0
  798. package/src/runs/shared/tool-budget.d.ts.map +1 -0
  799. package/src/runs/shared/tool-budget.js +79 -0
  800. package/src/runs/shared/tool-budget.js.map +1 -0
  801. package/src/runs/shared/tool-timeout.d.ts +32 -0
  802. package/src/runs/shared/tool-timeout.d.ts.map +1 -0
  803. package/src/runs/shared/tool-timeout.js +74 -0
  804. package/src/runs/shared/tool-timeout.js.map +1 -0
  805. package/src/runs/shared/usage-budget.d.ts +8 -0
  806. package/src/runs/shared/usage-budget.d.ts.map +1 -0
  807. package/src/runs/shared/usage-budget.js +75 -0
  808. package/src/runs/shared/usage-budget.js.map +1 -0
  809. package/src/runs/shared/usage-reconciliation.d.ts +9 -0
  810. package/src/runs/shared/usage-reconciliation.d.ts.map +1 -0
  811. package/src/runs/shared/usage-reconciliation.js +72 -0
  812. package/src/runs/shared/usage-reconciliation.js.map +1 -0
  813. package/src/runs/shared/workflow-async-child-guidance.d.ts +4 -0
  814. package/src/runs/shared/workflow-async-child-guidance.d.ts.map +1 -0
  815. package/src/runs/shared/workflow-async-child-guidance.js +18 -0
  816. package/src/runs/shared/workflow-async-child-guidance.js.map +1 -0
  817. package/src/runs/shared/workflow-graph.d.ts +32 -0
  818. package/src/runs/shared/workflow-graph.d.ts.map +1 -0
  819. package/src/runs/shared/workflow-graph.js +222 -0
  820. package/src/runs/shared/workflow-graph.js.map +1 -0
  821. package/src/runs/shared/worktree-cleanup-plan.d.ts +78 -0
  822. package/src/runs/shared/worktree-cleanup-plan.d.ts.map +1 -0
  823. package/src/runs/shared/worktree-cleanup-plan.js +782 -0
  824. package/src/runs/shared/worktree-cleanup-plan.js.map +1 -0
  825. package/src/runs/shared/worktree-setup-command.d.ts +39 -0
  826. package/src/runs/shared/worktree-setup-command.d.ts.map +1 -0
  827. package/src/runs/shared/worktree-setup-command.js +201 -0
  828. package/src/runs/shared/worktree-setup-command.js.map +1 -0
  829. package/src/runs/shared/worktree.d.ts +179 -0
  830. package/src/runs/shared/worktree.d.ts.map +1 -0
  831. package/src/runs/shared/worktree.js +1333 -0
  832. package/src/runs/shared/worktree.js.map +1 -0
  833. package/src/shared/accessible-dir.d.ts +12 -0
  834. package/src/shared/accessible-dir.d.ts.map +1 -0
  835. package/src/shared/accessible-dir.js +37 -0
  836. package/src/shared/accessible-dir.js.map +1 -0
  837. package/src/shared/agent-stream-options.d.ts +6 -0
  838. package/src/shared/agent-stream-options.d.ts.map +1 -0
  839. package/src/shared/agent-stream-options.js +4 -0
  840. package/src/shared/agent-stream-options.js.map +1 -0
  841. package/src/shared/artifacts.d.ts +23 -0
  842. package/src/shared/artifacts.d.ts.map +1 -0
  843. package/src/shared/artifacts.js +273 -0
  844. package/src/shared/artifacts.js.map +1 -0
  845. package/src/shared/atomic-json.d.ts +19 -0
  846. package/src/shared/atomic-json.d.ts.map +1 -0
  847. package/src/shared/atomic-json.js +60 -0
  848. package/src/shared/atomic-json.js.map +1 -0
  849. package/src/shared/capacity-resilient-json.d.ts +27 -0
  850. package/src/shared/capacity-resilient-json.d.ts.map +1 -0
  851. package/src/shared/capacity-resilient-json.js +87 -0
  852. package/src/shared/capacity-resilient-json.js.map +1 -0
  853. package/src/shared/child-cache-retention.d.ts +30 -0
  854. package/src/shared/child-cache-retention.d.ts.map +1 -0
  855. package/src/shared/child-cache-retention.js +41 -0
  856. package/src/shared/child-cache-retention.js.map +1 -0
  857. package/src/shared/child-session-name.d.ts +9 -0
  858. package/src/shared/child-session-name.d.ts.map +1 -0
  859. package/src/shared/child-session-name.js +39 -0
  860. package/src/shared/child-session-name.js.map +1 -0
  861. package/src/shared/child-transcript.d.ts +38 -0
  862. package/src/shared/child-transcript.d.ts.map +1 -0
  863. package/src/shared/child-transcript.js +226 -0
  864. package/src/shared/child-transcript.js.map +1 -0
  865. package/src/shared/completion-owner.d.ts +3 -0
  866. package/src/shared/completion-owner.d.ts.map +1 -0
  867. package/src/shared/completion-owner.js +9 -0
  868. package/src/shared/completion-owner.js.map +1 -0
  869. package/src/shared/display-text.d.ts +6 -0
  870. package/src/shared/display-text.d.ts.map +1 -0
  871. package/src/shared/display-text.js +155 -0
  872. package/src/shared/display-text.js.map +1 -0
  873. package/src/shared/extension-context.d.ts +6 -0
  874. package/src/shared/extension-context.d.ts.map +1 -0
  875. package/src/shared/extension-context.js +22 -0
  876. package/src/shared/extension-context.js.map +1 -0
  877. package/src/shared/file-coalescer.d.ts +12 -0
  878. package/src/shared/file-coalescer.d.ts.map +1 -0
  879. package/src/shared/file-coalescer.js +35 -0
  880. package/src/shared/file-coalescer.js.map +1 -0
  881. package/src/shared/file-system-retry.d.ts +32 -0
  882. package/src/shared/file-system-retry.d.ts.map +1 -0
  883. package/src/shared/file-system-retry.js +85 -0
  884. package/src/shared/file-system-retry.js.map +1 -0
  885. package/src/shared/fork-context.d.ts +59 -0
  886. package/src/shared/fork-context.d.ts.map +1 -0
  887. package/src/shared/fork-context.js +171 -0
  888. package/src/shared/fork-context.js.map +1 -0
  889. package/src/shared/fork-session-cwd.d.ts +3 -0
  890. package/src/shared/fork-session-cwd.d.ts.map +1 -0
  891. package/src/shared/fork-session-cwd.js +24 -0
  892. package/src/shared/fork-session-cwd.js.map +1 -0
  893. package/src/shared/formatters.d.ts +36 -0
  894. package/src/shared/formatters.d.ts.map +1 -0
  895. package/src/shared/formatters.js +143 -0
  896. package/src/shared/formatters.js.map +1 -0
  897. package/src/shared/jsonl-writer.d.ts +21 -0
  898. package/src/shared/jsonl-writer.d.ts.map +1 -0
  899. package/src/shared/jsonl-writer.js +68 -0
  900. package/src/shared/jsonl-writer.js.map +1 -0
  901. package/src/shared/launch-contract.d.ts +64 -0
  902. package/src/shared/launch-contract.d.ts.map +1 -0
  903. package/src/shared/launch-contract.js +140 -0
  904. package/src/shared/launch-contract.js.map +1 -0
  905. package/src/shared/model-info.d.ts +44 -0
  906. package/src/shared/model-info.d.ts.map +1 -0
  907. package/src/shared/model-info.js +73 -0
  908. package/src/shared/model-info.js.map +1 -0
  909. package/src/shared/model-response-aliases.d.ts +2 -0
  910. package/src/shared/model-response-aliases.d.ts.map +1 -0
  911. package/src/shared/model-response-aliases.js +16 -0
  912. package/src/shared/model-response-aliases.js.map +1 -0
  913. package/src/shared/node-executable.d.ts +2 -0
  914. package/src/shared/node-executable.d.ts.map +1 -0
  915. package/src/shared/node-executable.js +21 -0
  916. package/src/shared/node-executable.js.map +1 -0
  917. package/src/shared/opencode-session-headers.d.ts +13 -0
  918. package/src/shared/opencode-session-headers.d.ts.map +1 -0
  919. package/src/shared/opencode-session-headers.js +27 -0
  920. package/src/shared/opencode-session-headers.js.map +1 -0
  921. package/src/shared/prompt-resources.d.ts +6 -0
  922. package/src/shared/prompt-resources.d.ts.map +1 -0
  923. package/src/shared/prompt-resources.js +11 -0
  924. package/src/shared/prompt-resources.js.map +1 -0
  925. package/src/shared/pruned-fork.d.ts +35 -0
  926. package/src/shared/pruned-fork.d.ts.map +1 -0
  927. package/src/shared/pruned-fork.js +417 -0
  928. package/src/shared/pruned-fork.js.map +1 -0
  929. package/src/shared/required-child-extensions.d.ts +20 -0
  930. package/src/shared/required-child-extensions.d.ts.map +1 -0
  931. package/src/shared/required-child-extensions.js +74 -0
  932. package/src/shared/required-child-extensions.js.map +1 -0
  933. package/src/shared/session-file-trust.d.ts +2 -0
  934. package/src/shared/session-file-trust.d.ts.map +1 -0
  935. package/src/shared/session-file-trust.js +21 -0
  936. package/src/shared/session-file-trust.js.map +1 -0
  937. package/src/shared/session-identity.d.ts +7 -0
  938. package/src/shared/session-identity.d.ts.map +1 -0
  939. package/src/shared/session-identity.js +7 -0
  940. package/src/shared/session-identity.js.map +1 -0
  941. package/src/shared/session-tokens.d.ts +3 -0
  942. package/src/shared/session-tokens.d.ts.map +1 -0
  943. package/src/shared/session-tokens.js +59 -0
  944. package/src/shared/session-tokens.js.map +1 -0
  945. package/src/shared/settings.d.ts +147 -0
  946. package/src/shared/settings.d.ts.map +1 -0
  947. package/src/shared/settings.js +248 -0
  948. package/src/shared/settings.js.map +1 -0
  949. package/src/shared/shortcuts.d.ts +2 -0
  950. package/src/shared/shortcuts.d.ts.map +1 -0
  951. package/src/shared/shortcuts.js +18 -0
  952. package/src/shared/shortcuts.js.map +1 -0
  953. package/src/shared/status-format.d.ts +10 -0
  954. package/src/shared/status-format.d.ts.map +1 -0
  955. package/src/shared/status-format.js +61 -0
  956. package/src/shared/status-format.js.map +1 -0
  957. package/src/shared/thinking-ceiling.d.ts +14 -0
  958. package/src/shared/thinking-ceiling.d.ts.map +1 -0
  959. package/src/shared/thinking-ceiling.js +38 -0
  960. package/src/shared/thinking-ceiling.js.map +1 -0
  961. package/src/shared/types.d.ts +2660 -0
  962. package/src/shared/types.d.ts.map +1 -0
  963. package/src/shared/types.js +265 -0
  964. package/src/shared/types.js.map +1 -0
  965. package/src/shared/utf8.d.ts +6 -0
  966. package/src/shared/utf8.d.ts.map +1 -0
  967. package/src/shared/utf8.js +13 -0
  968. package/src/shared/utf8.js.map +1 -0
  969. package/src/shared/utils.d.ts +71 -0
  970. package/src/shared/utils.d.ts.map +1 -0
  971. package/src/shared/utils.js +593 -0
  972. package/src/shared/utils.js.map +1 -0
  973. package/src/shared/watch-strategy.d.ts +3 -0
  974. package/src/shared/watch-strategy.d.ts.map +1 -0
  975. package/src/shared/watch-strategy.js +6 -0
  976. package/src/shared/watch-strategy.js.map +1 -0
  977. package/src/shared/workflow-child-permit.d.ts +59 -0
  978. package/src/shared/workflow-child-permit.d.ts.map +1 -0
  979. package/src/shared/workflow-child-permit.js +160 -0
  980. package/src/shared/workflow-child-permit.js.map +1 -0
  981. package/src/slash/delegation-adapters.d.ts +147 -0
  982. package/src/slash/delegation-adapters.d.ts.map +1 -0
  983. package/src/slash/delegation-adapters.js +293 -0
  984. package/src/slash/delegation-adapters.js.map +1 -0
  985. package/src/slash/delegation-json.d.ts +11 -0
  986. package/src/slash/delegation-json.d.ts.map +1 -0
  987. package/src/slash/delegation-json.js +118 -0
  988. package/src/slash/delegation-json.js.map +1 -0
  989. package/src/slash/delegation-request.d.ts +13 -0
  990. package/src/slash/delegation-request.d.ts.map +1 -0
  991. package/src/slash/delegation-request.js +175 -0
  992. package/src/slash/delegation-request.js.map +1 -0
  993. package/src/slash/prompt-template-bridge.d.ts +27 -0
  994. package/src/slash/prompt-template-bridge.d.ts.map +1 -0
  995. package/src/slash/prompt-template-bridge.js +380 -0
  996. package/src/slash/prompt-template-bridge.js.map +1 -0
  997. package/src/slash/prompt-workflows.d.ts +22 -0
  998. package/src/slash/prompt-workflows.d.ts.map +1 -0
  999. package/src/slash/prompt-workflows.js +261 -0
  1000. package/src/slash/prompt-workflows.js.map +1 -0
  1001. package/src/slash/selector.d.ts +48 -0
  1002. package/src/slash/selector.d.ts.map +1 -0
  1003. package/src/slash/selector.js +118 -0
  1004. package/src/slash/selector.js.map +1 -0
  1005. package/src/slash/slash-bridge.d.ts +31 -0
  1006. package/src/slash/slash-bridge.d.ts.map +1 -0
  1007. package/src/slash/slash-bridge.js +133 -0
  1008. package/src/slash/slash-bridge.js.map +1 -0
  1009. package/src/slash/slash-commands.d.ts +9 -0
  1010. package/src/slash/slash-commands.d.ts.map +1 -0
  1011. package/src/slash/slash-commands.js +1295 -0
  1012. package/src/slash/slash-commands.js.map +1 -0
  1013. package/src/slash/slash-live-state.d.ts +22 -0
  1014. package/src/slash/slash-live-state.d.ts.map +1 -0
  1015. package/src/slash/slash-live-state.js +264 -0
  1016. package/src/slash/slash-live-state.js.map +1 -0
  1017. package/src/slash/subagents-admin.d.ts +3 -0
  1018. package/src/slash/subagents-admin.d.ts.map +1 -0
  1019. package/src/slash/subagents-admin.js +453 -0
  1020. package/src/slash/subagents-admin.js.map +1 -0
  1021. package/src/tui/fleet-status.d.ts +86 -0
  1022. package/src/tui/fleet-status.d.ts.map +1 -0
  1023. package/src/tui/fleet-status.js +1083 -0
  1024. package/src/tui/fleet-status.js.map +1 -0
  1025. package/src/tui/fleet-transcript.d.ts +50 -0
  1026. package/src/tui/fleet-transcript.d.ts.map +1 -0
  1027. package/src/tui/fleet-transcript.js +497 -0
  1028. package/src/tui/fleet-transcript.js.map +1 -0
  1029. package/src/tui/fleet.d.ts +169 -0
  1030. package/src/tui/fleet.d.ts.map +1 -0
  1031. package/src/tui/fleet.js +1412 -0
  1032. package/src/tui/fleet.js.map +1 -0
  1033. package/src/tui/render-helpers.d.ts +24 -0
  1034. package/src/tui/render-helpers.d.ts.map +1 -0
  1035. package/src/tui/render-helpers.js +101 -0
  1036. package/src/tui/render-helpers.js.map +1 -0
  1037. package/src/tui/render.d.ts +61 -0
  1038. package/src/tui/render.d.ts.map +1 -0
  1039. package/src/tui/render.js +3608 -0
  1040. package/src/tui/render.js.map +1 -0
  1041. package/src/watchdog/change-signature.d.ts +8 -0
  1042. package/src/watchdog/change-signature.d.ts.map +1 -0
  1043. package/src/watchdog/change-signature.js +246 -0
  1044. package/src/watchdog/change-signature.js.map +1 -0
  1045. package/src/watchdog/child-status.d.ts +54 -0
  1046. package/src/watchdog/child-status.d.ts.map +1 -0
  1047. package/src/watchdog/child-status.js +188 -0
  1048. package/src/watchdog/child-status.js.map +1 -0
  1049. package/src/watchdog/diff-tool.d.ts +23 -0
  1050. package/src/watchdog/diff-tool.d.ts.map +1 -0
  1051. package/src/watchdog/diff-tool.js +84 -0
  1052. package/src/watchdog/diff-tool.js.map +1 -0
  1053. package/src/watchdog/emission-guard.d.ts +37 -0
  1054. package/src/watchdog/emission-guard.d.ts.map +1 -0
  1055. package/src/watchdog/emission-guard.js +98 -0
  1056. package/src/watchdog/emission-guard.js.map +1 -0
  1057. package/src/watchdog/guidance.d.ts +4 -0
  1058. package/src/watchdog/guidance.d.ts.map +1 -0
  1059. package/src/watchdog/guidance.js +20 -0
  1060. package/src/watchdog/guidance.js.map +1 -0
  1061. package/src/watchdog/lsp-diagnostics.d.ts +18 -0
  1062. package/src/watchdog/lsp-diagnostics.d.ts.map +1 -0
  1063. package/src/watchdog/lsp-diagnostics.js +490 -0
  1064. package/src/watchdog/lsp-diagnostics.js.map +1 -0
  1065. package/src/watchdog/model-selection.d.ts +25 -0
  1066. package/src/watchdog/model-selection.d.ts.map +1 -0
  1067. package/src/watchdog/model-selection.js +168 -0
  1068. package/src/watchdog/model-selection.js.map +1 -0
  1069. package/src/watchdog/permission-arbiter.d.ts +21 -0
  1070. package/src/watchdog/permission-arbiter.d.ts.map +1 -0
  1071. package/src/watchdog/permission-arbiter.js +141 -0
  1072. package/src/watchdog/permission-arbiter.js.map +1 -0
  1073. package/src/watchdog/register-child.d.ts +12 -0
  1074. package/src/watchdog/register-child.d.ts.map +1 -0
  1075. package/src/watchdog/register-child.js +120 -0
  1076. package/src/watchdog/register-child.js.map +1 -0
  1077. package/src/watchdog/register-main.d.ts +10 -0
  1078. package/src/watchdog/register-main.d.ts.map +1 -0
  1079. package/src/watchdog/register-main.js +419 -0
  1080. package/src/watchdog/register-main.js.map +1 -0
  1081. package/src/watchdog/render.d.ts +12 -0
  1082. package/src/watchdog/render.d.ts.map +1 -0
  1083. package/src/watchdog/render.js +52 -0
  1084. package/src/watchdog/render.js.map +1 -0
  1085. package/src/watchdog/review.d.ts +37 -0
  1086. package/src/watchdog/review.d.ts.map +1 -0
  1087. package/src/watchdog/review.js +325 -0
  1088. package/src/watchdog/review.js.map +1 -0
  1089. package/src/watchdog/rules.d.ts +22 -0
  1090. package/src/watchdog/rules.d.ts.map +1 -0
  1091. package/src/watchdog/rules.js +59 -0
  1092. package/src/watchdog/rules.js.map +1 -0
  1093. package/src/watchdog/runtime.d.ts +196 -0
  1094. package/src/watchdog/runtime.d.ts.map +1 -0
  1095. package/src/watchdog/runtime.js +862 -0
  1096. package/src/watchdog/runtime.js.map +1 -0
  1097. package/src/watchdog/scope.d.ts +15 -0
  1098. package/src/watchdog/scope.d.ts.map +1 -0
  1099. package/src/watchdog/scope.js +45 -0
  1100. package/src/watchdog/scope.js.map +1 -0
  1101. package/src/watchdog/settings.d.ts +30 -0
  1102. package/src/watchdog/settings.d.ts.map +1 -0
  1103. package/src/watchdog/settings.js +476 -0
  1104. package/src/watchdog/settings.js.map +1 -0
  1105. package/src/watchdog/tool-actions.d.ts +18 -0
  1106. package/src/watchdog/tool-actions.d.ts.map +1 -0
  1107. package/src/watchdog/tool-actions.js +151 -0
  1108. package/src/watchdog/tool-actions.js.map +1 -0
  1109. package/src/watchdog/turn-delta.d.ts +12 -0
  1110. package/src/watchdog/turn-delta.d.ts.map +1 -0
  1111. package/src/watchdog/turn-delta.js +185 -0
  1112. package/src/watchdog/turn-delta.js.map +1 -0
  1113. package/src/watchdog/types.d.ts +142 -0
  1114. package/src/watchdog/types.d.ts.map +1 -0
  1115. package/src/watchdog/types.js +28 -0
  1116. package/src/watchdog/types.js.map +1 -0
  1117. package/src/watchdog/warning-format.d.ts +8 -0
  1118. package/src/watchdog/warning-format.d.ts.map +1 -0
  1119. package/src/watchdog/warning-format.js +60 -0
  1120. package/src/watchdog/warning-format.js.map +1 -0
  1121. package/src/workflows/chat-progress.d.ts +38 -0
  1122. package/src/workflows/chat-progress.d.ts.map +1 -0
  1123. package/src/workflows/chat-progress.js +130 -0
  1124. package/src/workflows/chat-progress.js.map +1 -0
  1125. package/src/workflows/host-command.d.ts +31 -0
  1126. package/src/workflows/host-command.d.ts.map +1 -0
  1127. package/src/workflows/host-command.js +228 -0
  1128. package/src/workflows/host-command.js.map +1 -0
  1129. package/src/workflows/scripted-workflow.d.ts +195 -0
  1130. package/src/workflows/scripted-workflow.d.ts.map +1 -0
  1131. package/src/workflows/scripted-workflow.js +2634 -0
  1132. package/src/workflows/scripted-workflow.js.map +1 -0
  1133. package/src/workflows/workflow-checklist.d.ts +124 -0
  1134. package/src/workflows/workflow-checklist.d.ts.map +1 -0
  1135. package/src/workflows/workflow-checklist.js +312 -0
  1136. package/src/workflows/workflow-checklist.js.map +1 -0
  1137. package/src/workflows/workflow-child-summary.d.ts +20 -0
  1138. package/src/workflows/workflow-child-summary.d.ts.map +1 -0
  1139. package/src/workflows/workflow-child-summary.js +179 -0
  1140. package/src/workflows/workflow-child-summary.js.map +1 -0
  1141. package/src/workflows/workflow-preflight.d.ts +59 -0
  1142. package/src/workflows/workflow-preflight.d.ts.map +1 -0
  1143. package/src/workflows/workflow-preflight.js +289 -0
  1144. package/src/workflows/workflow-preflight.js.map +1 -0
  1145. package/src/workflows/workflow-receipt.d.ts +35 -0
  1146. package/src/workflows/workflow-receipt.d.ts.map +1 -0
  1147. package/src/workflows/workflow-receipt.js +449 -0
  1148. package/src/workflows/workflow-receipt.js.map +1 -0
  1149. package/src/workflows/workflow-resources.d.ts +43 -0
  1150. package/src/workflows/workflow-resources.d.ts.map +1 -0
  1151. package/src/workflows/workflow-resources.js +230 -0
  1152. package/src/workflows/workflow-resources.js.map +1 -0
  1153. package/src/workflows/workflow-settlement.d.ts +85 -0
  1154. package/src/workflows/workflow-settlement.d.ts.map +1 -0
  1155. package/src/workflows/workflow-settlement.js +204 -0
  1156. package/src/workflows/workflow-settlement.js.map +1 -0
  1157. package/index.ts +0 -13
  1158. package/src/agents/advertised-agent-prompt.ts +0 -94
  1159. package/src/agents/agent-management.ts +0 -1417
  1160. package/src/agents/agent-memory.ts +0 -254
  1161. package/src/agents/agent-refinements.ts +0 -624
  1162. package/src/agents/agent-scope.ts +0 -6
  1163. package/src/agents/agent-selection.ts +0 -25
  1164. package/src/agents/agent-serializer.ts +0 -182
  1165. package/src/agents/agents.ts +0 -2917
  1166. package/src/agents/builtin-names.ts +0 -16
  1167. package/src/agents/chain-serializer.ts +0 -285
  1168. package/src/agents/frontmatter.ts +0 -153
  1169. package/src/agents/identity.ts +0 -30
  1170. package/src/agents/proactive-skills.ts +0 -194
  1171. package/src/agents/runtime-agent-events.ts +0 -70
  1172. package/src/agents/runtime-agent-registry.ts +0 -430
  1173. package/src/agents/skills.ts +0 -754
  1174. package/src/api/agents.ts +0 -12
  1175. package/src/api/background-work.ts +0 -206
  1176. package/src/api/capability-ceiling.ts +0 -16
  1177. package/src/api/child-tool-plan.ts +0 -5
  1178. package/src/api/control-channel.ts +0 -4
  1179. package/src/api/delegation.ts +0 -116
  1180. package/src/api/external-job-provider.ts +0 -195
  1181. package/src/api/external-runs.ts +0 -282
  1182. package/src/api/intercom-bridge.ts +0 -3
  1183. package/src/api/preflight.ts +0 -539
  1184. package/src/api/project-panes.ts +0 -32
  1185. package/src/api/required-child-extensions.ts +0 -6
  1186. package/src/api/shared-types.ts +0 -29
  1187. package/src/api/workflow-resources.ts +0 -6
  1188. package/src/extension/config.ts +0 -230
  1189. package/src/extension/control-notices.ts +0 -58
  1190. package/src/extension/doctor.ts +0 -270
  1191. package/src/extension/fanout-child.ts +0 -265
  1192. package/src/extension/herdr-pi-bridge.ts +0 -160
  1193. package/src/extension/index.ts +0 -1205
  1194. package/src/extension/public-execution.ts +0 -225
  1195. package/src/extension/rpc.ts +0 -848
  1196. package/src/extension/schemas.ts +0 -428
  1197. package/src/extension/steering-notices.ts +0 -35
  1198. package/src/extension/subagent-guide.ts +0 -39
  1199. package/src/extension/tool-description.ts +0 -175
  1200. package/src/extension/tool-result.ts +0 -19
  1201. package/src/inspectors/actions.ts +0 -148
  1202. package/src/inspectors/ghostty/actions.ts +0 -74
  1203. package/src/inspectors/ghostty/plugin.ts +0 -29
  1204. package/src/inspectors/herdr/actions.ts +0 -155
  1205. package/src/inspectors/herdr/client.ts +0 -130
  1206. package/src/inspectors/herdr/focus.ts +0 -55
  1207. package/src/inspectors/herdr/plugin.ts +0 -20
  1208. package/src/inspectors/herdr/project-panes.ts +0 -730
  1209. package/src/inspectors/inspector-runner.ts +0 -153
  1210. package/src/inspectors/plugins.ts +0 -8
  1211. package/src/inspectors/session-roots-codec.ts +0 -31
  1212. package/src/inspectors/shell-command.ts +0 -16
  1213. package/src/inspectors/types.ts +0 -51
  1214. package/src/integrations/herdr-status.ts +0 -400
  1215. package/src/integrations/pi-web-session-liveness.ts +0 -73
  1216. package/src/intercom/intercom-bridge.ts +0 -233
  1217. package/src/intercom/native-supervisor-channel.ts +0 -917
  1218. package/src/intercom/result-intercom.ts +0 -423
  1219. package/src/intercom/supervisor-ui.ts +0 -244
  1220. package/src/missions/actions.ts +0 -433
  1221. package/src/missions/goal-driver.ts +0 -164
  1222. package/src/missions/lifecycle.ts +0 -367
  1223. package/src/missions/store.ts +0 -584
  1224. package/src/missions/types.ts +0 -190
  1225. package/src/missions/workflow-state.ts +0 -281
  1226. package/src/policy/authority.ts +0 -50
  1227. package/src/profiles/profiles.ts +0 -668
  1228. package/src/runs/background/active-async-capacity.ts +0 -520
  1229. package/src/runs/background/active-run-index.ts +0 -155
  1230. package/src/runs/background/async-execution.ts +0 -2278
  1231. package/src/runs/background/async-job-tracker.ts +0 -826
  1232. package/src/runs/background/async-resume.ts +0 -647
  1233. package/src/runs/background/async-retention.ts +0 -912
  1234. package/src/runs/background/async-status-snapshot.ts +0 -46
  1235. package/src/runs/background/async-status.ts +0 -771
  1236. package/src/runs/background/auto-drain.ts +0 -92
  1237. package/src/runs/background/binary-bootstrap.ts +0 -38
  1238. package/src/runs/background/chain-append.ts +0 -321
  1239. package/src/runs/background/chain-root-attachment.ts +0 -259
  1240. package/src/runs/background/completion-batcher.ts +0 -168
  1241. package/src/runs/background/completion-dedupe.ts +0 -58
  1242. package/src/runs/background/completion-replay.ts +0 -287
  1243. package/src/runs/background/control-channel.ts +0 -600
  1244. package/src/runs/background/fleet-view.ts +0 -648
  1245. package/src/runs/background/index-segment.ts +0 -59
  1246. package/src/runs/background/inspect-rpc.ts +0 -443
  1247. package/src/runs/background/notify.ts +0 -819
  1248. package/src/runs/background/owned-process-tree.ts +0 -131
  1249. package/src/runs/background/parallel-groups.ts +0 -45
  1250. package/src/runs/background/process-terminal.ts +0 -310
  1251. package/src/runs/background/result-delivery-ownership.ts +0 -45
  1252. package/src/runs/background/result-files.ts +0 -523
  1253. package/src/runs/background/result-watcher.ts +0 -809
  1254. package/src/runs/background/resume-guidance.ts +0 -56
  1255. package/src/runs/background/retained-children.ts +0 -135
  1256. package/src/runs/background/retained-nested-route-tracker.ts +0 -96
  1257. package/src/runs/background/run-child-session.ts +0 -690
  1258. package/src/runs/background/run-id-query.ts +0 -7
  1259. package/src/runs/background/run-id-resolver.ts +0 -175
  1260. package/src/runs/background/run-status.ts +0 -786
  1261. package/src/runs/background/runner-aliases.ts +0 -142
  1262. package/src/runs/background/runner-child-launch.ts +0 -91
  1263. package/src/runs/background/runner-child-sessions.ts +0 -32
  1264. package/src/runs/background/runner-http-dispatcher.ts +0 -119
  1265. package/src/runs/background/scheduled-runs.ts +0 -1012
  1266. package/src/runs/background/stale-run-reconciler.ts +0 -436
  1267. package/src/runs/background/steering.ts +0 -260
  1268. package/src/runs/background/subagent-runner.ts +0 -5357
  1269. package/src/runs/background/subagent-wait.ts +0 -876
  1270. package/src/runs/background/terminal-run-index.ts +0 -138
  1271. package/src/runs/background/top-level-async.ts +0 -14
  1272. package/src/runs/background/wait-completions.ts +0 -261
  1273. package/src/runs/background/wait-config.ts +0 -50
  1274. package/src/runs/background/wait-subscriptions.ts +0 -354
  1275. package/src/runs/background/wait-tool.ts +0 -45
  1276. package/src/runs/foreground/async-dismiss-action.ts +0 -86
  1277. package/src/runs/foreground/async-steering-action.ts +0 -276
  1278. package/src/runs/foreground/async-stop-action.ts +0 -176
  1279. package/src/runs/foreground/execution.ts +0 -2254
  1280. package/src/runs/foreground/foreground-control.ts +0 -157
  1281. package/src/runs/foreground/foreground-history.ts +0 -163
  1282. package/src/runs/foreground/prompt-audit.ts +0 -178
  1283. package/src/runs/foreground/subagent-executor.ts +0 -7526
  1284. package/src/runs/foreground/workflow-detach-reconcile.ts +0 -304
  1285. package/src/runs/foreground/workflow-foreground-steering.ts +0 -169
  1286. package/src/runs/shared/abort-recovery.ts +0 -119
  1287. package/src/runs/shared/acceptance.ts +0 -1698
  1288. package/src/runs/shared/agent-contract.ts +0 -38
  1289. package/src/runs/shared/async-status-projection.ts +0 -659
  1290. package/src/runs/shared/background-process-options.ts +0 -9
  1291. package/src/runs/shared/capability-ceiling.ts +0 -211
  1292. package/src/runs/shared/chain-outputs.ts +0 -116
  1293. package/src/runs/shared/child-hooks.ts +0 -189
  1294. package/src/runs/shared/child-identity.ts +0 -62
  1295. package/src/runs/shared/child-launch-plan.ts +0 -163
  1296. package/src/runs/shared/child-launch.ts +0 -342
  1297. package/src/runs/shared/child-lifecycle.ts +0 -28
  1298. package/src/runs/shared/child-runtime-config.ts +0 -133
  1299. package/src/runs/shared/child-session.ts +0 -448
  1300. package/src/runs/shared/child-tool-plan.ts +0 -661
  1301. package/src/runs/shared/claude-code-adapter.ts +0 -133
  1302. package/src/runs/shared/codex-exec-adapter.ts +0 -129
  1303. package/src/runs/shared/completion-evidence.ts +0 -89
  1304. package/src/runs/shared/completion-guard.ts +0 -255
  1305. package/src/runs/shared/context-mode.ts +0 -44
  1306. package/src/runs/shared/cursor-agent-adapter.ts +0 -114
  1307. package/src/runs/shared/dynamic-fanout.ts +0 -297
  1308. package/src/runs/shared/effective-system-prompt.ts +0 -33
  1309. package/src/runs/shared/extension-bindings.ts +0 -78
  1310. package/src/runs/shared/external-cli-contract.ts +0 -177
  1311. package/src/runs/shared/external-cli-preflight.ts +0 -142
  1312. package/src/runs/shared/external-cli-runner.ts +0 -431
  1313. package/src/runs/shared/external-job-bridge.ts +0 -460
  1314. package/src/runs/shared/external-job-runner.ts +0 -389
  1315. package/src/runs/shared/fast-mode-extension.ts +0 -10
  1316. package/src/runs/shared/herdr-connection.ts +0 -134
  1317. package/src/runs/shared/herdr-external-adapters.ts +0 -169
  1318. package/src/runs/shared/herdr-machine.ts +0 -279
  1319. package/src/runs/shared/herdr-pi-protocol.ts +0 -59
  1320. package/src/runs/shared/herdr-placed-run.ts +0 -263
  1321. package/src/runs/shared/host-step-status.ts +0 -231
  1322. package/src/runs/shared/lane-metadata.ts +0 -126
  1323. package/src/runs/shared/launch-cwd.ts +0 -16
  1324. package/src/runs/shared/llm-intent-arbiter.ts +0 -321
  1325. package/src/runs/shared/long-running-guard.ts +0 -221
  1326. package/src/runs/shared/mcp-config-sources.ts +0 -422
  1327. package/src/runs/shared/mcp-direct-tool-allowlist.ts +0 -484
  1328. package/src/runs/shared/mcp-direct-tool-grant.ts +0 -194
  1329. package/src/runs/shared/model-resolution-diagnostic.ts +0 -76
  1330. package/src/runs/shared/model-resolution.ts +0 -441
  1331. package/src/runs/shared/model-scope.ts +0 -205
  1332. package/src/runs/shared/mutation-evidence.ts +0 -199
  1333. package/src/runs/shared/nested-events.ts +0 -1079
  1334. package/src/runs/shared/nested-path.ts +0 -38
  1335. package/src/runs/shared/nested-render.ts +0 -127
  1336. package/src/runs/shared/orca-progress-tabs.ts +0 -510
  1337. package/src/runs/shared/parallel-handoff.ts +0 -741
  1338. package/src/runs/shared/parallel-utils.ts +0 -279
  1339. package/src/runs/shared/permissions.ts +0 -86
  1340. package/src/runs/shared/pi-spawn.ts +0 -207
  1341. package/src/runs/shared/process-signal.ts +0 -35
  1342. package/src/runs/shared/readonly-drain-observation.ts +0 -42
  1343. package/src/runs/shared/run-fanout-budget.ts +0 -267
  1344. package/src/runs/shared/run-history.ts +0 -201
  1345. package/src/runs/shared/runtime-acknowledged-extensions.ts +0 -44
  1346. package/src/runs/shared/session-lease.ts +0 -293
  1347. package/src/runs/shared/single-output.ts +0 -304
  1348. package/src/runs/shared/spawn-budget.ts +0 -128
  1349. package/src/runs/shared/structured-output.ts +0 -236
  1350. package/src/runs/shared/subagent-control.ts +0 -294
  1351. package/src/runs/shared/subagent-prompt-runtime.ts +0 -545
  1352. package/src/runs/shared/task-intent.ts +0 -244
  1353. package/src/runs/shared/tool-availability.ts +0 -37
  1354. package/src/runs/shared/tool-budget.ts +0 -66
  1355. package/src/runs/shared/tool-timeout.ts +0 -93
  1356. package/src/runs/shared/usage-budget.ts +0 -65
  1357. package/src/runs/shared/workflow-async-child-guidance.ts +0 -18
  1358. package/src/runs/shared/workflow-graph.ts +0 -225
  1359. package/src/runs/shared/worktree-cleanup-plan.ts +0 -869
  1360. package/src/runs/shared/worktree-setup-command.ts +0 -213
  1361. package/src/runs/shared/worktree.ts +0 -1538
  1362. package/src/shared/accessible-dir.ts +0 -47
  1363. package/src/shared/agent-stream-options.ts +0 -5
  1364. package/src/shared/artifacts.ts +0 -281
  1365. package/src/shared/atomic-json.ts +0 -83
  1366. package/src/shared/capacity-resilient-json.ts +0 -102
  1367. package/src/shared/child-cache-retention.ts +0 -43
  1368. package/src/shared/child-session-name.ts +0 -46
  1369. package/src/shared/child-transcript.ts +0 -264
  1370. package/src/shared/completion-owner.ts +0 -14
  1371. package/src/shared/display-text.ts +0 -150
  1372. package/src/shared/extension-context.ts +0 -24
  1373. package/src/shared/file-coalescer.ts +0 -49
  1374. package/src/shared/file-system-retry.ts +0 -95
  1375. package/src/shared/fork-context.ts +0 -236
  1376. package/src/shared/fork-session-cwd.ts +0 -27
  1377. package/src/shared/formatters.ts +0 -146
  1378. package/src/shared/jsonl-writer.ts +0 -92
  1379. package/src/shared/launch-contract.ts +0 -198
  1380. package/src/shared/model-info.ts +0 -101
  1381. package/src/shared/model-response-aliases.ts +0 -13
  1382. package/src/shared/node-executable.ts +0 -21
  1383. package/src/shared/opencode-session-headers.ts +0 -30
  1384. package/src/shared/prompt-resources.ts +0 -11
  1385. package/src/shared/pruned-fork.ts +0 -450
  1386. package/src/shared/required-child-extensions.ts +0 -81
  1387. package/src/shared/session-file-trust.ts +0 -19
  1388. package/src/shared/session-identity.ts +0 -10
  1389. package/src/shared/session-tokens.ts +0 -55
  1390. package/src/shared/settings.ts +0 -412
  1391. package/src/shared/shortcuts.ts +0 -13
  1392. package/src/shared/status-format.ts +0 -55
  1393. package/src/shared/thinking-ceiling.ts +0 -46
  1394. package/src/shared/types.ts +0 -2983
  1395. package/src/shared/utf8.ts +0 -11
  1396. package/src/shared/utils.ts +0 -608
  1397. package/src/shared/watch-strategy.ts +0 -12
  1398. package/src/shared/workflow-child-permit.ts +0 -212
  1399. package/src/slash/delegation-adapters.ts +0 -428
  1400. package/src/slash/delegation-json.ts +0 -108
  1401. package/src/slash/delegation-request.ts +0 -176
  1402. package/src/slash/prompt-template-bridge.ts +0 -419
  1403. package/src/slash/prompt-workflows.ts +0 -287
  1404. package/src/slash/selector.ts +0 -147
  1405. package/src/slash/slash-bridge.ts +0 -192
  1406. package/src/slash/slash-commands.ts +0 -1325
  1407. package/src/slash/slash-live-state.ts +0 -310
  1408. package/src/slash/subagents-admin.ts +0 -460
  1409. package/src/tui/fleet-status.ts +0 -1109
  1410. package/src/tui/fleet-transcript.ts +0 -536
  1411. package/src/tui/fleet.ts +0 -1448
  1412. package/src/tui/render-helpers.ts +0 -111
  1413. package/src/tui/render.ts +0 -3721
  1414. package/src/types/pi-runtime-compat.d.ts +0 -8
  1415. package/src/watchdog/change-signature.ts +0 -260
  1416. package/src/watchdog/child-status.ts +0 -225
  1417. package/src/watchdog/diff-tool.ts +0 -77
  1418. package/src/watchdog/emission-guard.ts +0 -125
  1419. package/src/watchdog/guidance.ts +0 -20
  1420. package/src/watchdog/lsp-diagnostics.ts +0 -538
  1421. package/src/watchdog/model-selection.ts +0 -187
  1422. package/src/watchdog/permission-arbiter.ts +0 -156
  1423. package/src/watchdog/register-child.ts +0 -128
  1424. package/src/watchdog/register-main.ts +0 -445
  1425. package/src/watchdog/render.ts +0 -53
  1426. package/src/watchdog/review.ts +0 -363
  1427. package/src/watchdog/rules.ts +0 -70
  1428. package/src/watchdog/runtime.ts +0 -924
  1429. package/src/watchdog/scope.ts +0 -51
  1430. package/src/watchdog/settings.ts +0 -515
  1431. package/src/watchdog/tool-actions.ts +0 -156
  1432. package/src/watchdog/turn-delta.ts +0 -184
  1433. package/src/watchdog/types.ts +0 -186
  1434. package/src/watchdog/warning-format.ts +0 -72
  1435. package/src/workflows/chat-progress.ts +0 -152
  1436. package/src/workflows/host-command.ts +0 -235
  1437. package/src/workflows/scripted-workflow.ts +0 -2575
  1438. package/src/workflows/workflow-checklist.ts +0 -436
  1439. package/src/workflows/workflow-child-summary.ts +0 -170
  1440. package/src/workflows/workflow-preflight.ts +0 -297
  1441. package/src/workflows/workflow-receipt.ts +0 -384
  1442. package/src/workflows/workflow-resources.ts +0 -236
  1443. package/src/workflows/workflow-settlement.ts +0 -249
@@ -0,0 +1,2660 @@
1
+ /**
2
+ * Type definitions for the subagent extension
3
+ */
4
+ import type { Message } from "@earendil-works/pi-ai";
5
+ import type { AgentConfig } from "../agents/agents.ts";
6
+ import type { FSWatcher } from "node:fs";
7
+ import type { ExtensionContext } from "@earendil-works/pi-coding-agent";
8
+ import type { ModelScopeRule } from "../runs/shared/model-scope.ts";
9
+ import type { ResolvedSubagentCapabilityCeiling, SubagentCapabilityAudit } from "../runs/shared/capability-ceiling.ts";
10
+ import type { AuthorityPolicyConfig } from "../policy/authority.ts";
11
+ import type { ThinkingLevel } from "./model-info.ts";
12
+ import type { GlobalMissionIndexRecord, MissionRecord, MissionStoreConfig } from "../missions/types.ts";
13
+ import type { ExtensionBindings } from "../runs/shared/extension-bindings.ts";
14
+ import type { WorkflowChildPermitContext } from "./workflow-child-permit.ts";
15
+ import type { WatchdogWarningDetails } from "../watchdog/types.ts";
16
+ import type { RequiredChildExtensionSnapshot } from "./required-child-extensions.ts";
17
+ export interface MaxOutputConfig {
18
+ bytes?: number;
19
+ lines?: number;
20
+ }
21
+ export type OutputMode = "inline" | "file-only";
22
+ export type AcceptanceRole = "read-only" | "writer";
23
+ export type JsonSchemaObject = Record<string, unknown>;
24
+ export interface ChainOutputMapEntry {
25
+ text: string;
26
+ structured?: unknown;
27
+ agent: string;
28
+ stepIndex: number;
29
+ }
30
+ export type ChainOutputMap = Record<string, ChainOutputMapEntry>;
31
+ export type WorkflowNodeStatus = "pending" | "running" | "completed" | "failed" | "partial" | "paused" | "stopped" | "detached" | "rejected";
32
+ export type HostStepMonitorKind = "command" | "ci" | "gate";
33
+ export type HostStepState = "pending" | "running" | "done" | "cancelled" | "error";
34
+ export type HostStepVerdict = "pass" | "fail" | "inconclusive";
35
+ export interface HostStepFreshness {
36
+ expectedRef: string;
37
+ observedRef?: string;
38
+ stale?: boolean;
39
+ }
40
+ /** Bounded, provider-agnostic status for a host-owned workflow monitor. */
41
+ export interface HostStepNode {
42
+ version: 1;
43
+ kind: "host-step";
44
+ /** Explicit monitor category; never inferred from labels or commands. */
45
+ monitorKind: HostStepMonitorKind;
46
+ id: string;
47
+ label: string;
48
+ role?: string;
49
+ provider?: string;
50
+ state: HostStepState;
51
+ verdict?: HostStepVerdict;
52
+ reasonCode?: string;
53
+ detail?: string;
54
+ target?: string;
55
+ freshness?: HostStepFreshness;
56
+ reportPath?: string;
57
+ exitCode?: number | null;
58
+ updatedAt: number;
59
+ deadlineAt?: number;
60
+ }
61
+ export interface WorkflowGraphNode {
62
+ id: string;
63
+ kind: "step" | "parallel-group" | "dynamic-parallel-group" | "agent" | "host-step";
64
+ agent?: string;
65
+ phase?: string;
66
+ label: string;
67
+ status: WorkflowNodeStatus;
68
+ flatIndex?: number;
69
+ stepIndex?: number;
70
+ children?: WorkflowGraphNode[];
71
+ dynamic?: {
72
+ sourceOutput: string;
73
+ sourcePath: string;
74
+ itemName: string;
75
+ maxItems?: number;
76
+ collectAs?: string;
77
+ };
78
+ itemKey?: string;
79
+ outputName?: string;
80
+ structured?: boolean;
81
+ acceptanceStatus?: AcceptanceLedgerStatus;
82
+ error?: string;
83
+ hostStep?: HostStepNode;
84
+ }
85
+ export interface WorkflowGraphSnapshot {
86
+ runId: string;
87
+ mode: SubagentRunMode;
88
+ phases: Array<{
89
+ title: string;
90
+ nodeIds: string[];
91
+ }>;
92
+ nodes: WorkflowGraphNode[];
93
+ currentNodeId?: string;
94
+ }
95
+ export type WorkflowPreflightCoverage = "complete" | "partial";
96
+ export type WorkflowPreflightMode = "mutation" | "review" | "scout" | "gate";
97
+ /** Bounded, display-only lane hints supplied alongside a workflowScript launch. */
98
+ export interface WorkflowPreflightLane {
99
+ key: string;
100
+ mode?: WorkflowPreflightMode;
101
+ decision?: string;
102
+ claims?: string[];
103
+ expectedOutput?: string;
104
+ independence?: string;
105
+ }
106
+ /** Versioned, display-only workflow launch plan; it never grants launch authority. */
107
+ export interface WorkflowPreflight {
108
+ version: 1;
109
+ coverage: WorkflowPreflightCoverage;
110
+ lanes: WorkflowPreflightLane[];
111
+ }
112
+ export type WorkflowReceiptState = "complete" | "failed" | "paused" | "stopped";
113
+ export type WorkflowTerminalResolution = "settled-awaiting-resume" | "failed-child" | "interrupted-child";
114
+ export interface WorkflowTerminalOutcome {
115
+ state: "partial";
116
+ reason: "budget_exhausted" | "timeout";
117
+ }
118
+ export interface WorkflowRecoveryAction {
119
+ key: string;
120
+ call: "runs.run";
121
+ resume: {
122
+ workflowRunId: string;
123
+ key: string;
124
+ latest: true;
125
+ };
126
+ taskRequired: true;
127
+ }
128
+ /**
129
+ * Bounded, host-generated identity for a resolved pi-subagents workflow resource.
130
+ * Permission/policy extensions can use it to distinguish resolved content from
131
+ * raw workflow scripts. This audit projection never grants execution authority.
132
+ */
133
+ export interface WorkflowResourceProvenance {
134
+ kind: "workflow";
135
+ name: string;
136
+ version: number;
137
+ invocation: "named";
138
+ expansion: "resolved";
139
+ id: string;
140
+ }
141
+ /**
142
+ * Bounded, launch-declared workflow lane metadata. This is display and
143
+ * triage information only; capability ceilings, authorization, and cleanup
144
+ * safety remain owned by their existing enforcement and handoff paths.
145
+ */
146
+ export type WorkflowLaneMode = "mutation" | "review" | "scout" | "gate";
147
+ export interface WorkflowLaneMetadata {
148
+ version: 1;
149
+ key: string;
150
+ mode?: WorkflowLaneMode;
151
+ sourceRef?: string;
152
+ claims?: string[];
153
+ outputPaths?: string[];
154
+ }
155
+ /** Bounded foreground activity; excludes tool arguments and transcript content. */
156
+ export interface WorkflowChildActivity {
157
+ currentTool?: string;
158
+ currentToolStartedAt?: number;
159
+ lastActivityAt?: number;
160
+ durationMs?: number;
161
+ toolCount?: number;
162
+ turnCount?: number;
163
+ tokens?: number;
164
+ inputTokens?: number;
165
+ outputTokens?: number;
166
+ }
167
+ export interface WorkflowChildSummary {
168
+ version: 1;
169
+ parentToolCallId: string;
170
+ workflowRunId: string;
171
+ inventoryComplete: boolean;
172
+ workflowState: "queued" | "running" | "completed" | "failed" | "paused" | "stopped";
173
+ children: Array<{
174
+ childId: string;
175
+ runId?: string;
176
+ agent?: string;
177
+ /** Human-readable display name for the child session, when derived at launch. */
178
+ sessionName?: string;
179
+ model?: string;
180
+ thinking?: string;
181
+ /** Present only while a synchronous foreground child is running. */
182
+ activity?: WorkflowChildActivity;
183
+ state: "pending" | "running" | "completed" | "failed" | "paused" | "stopped" | "rejected" | "detached";
184
+ }>;
185
+ }
186
+ type WorkflowReceiptEntryResumability = {
187
+ latestRunId: string;
188
+ resumability: {
189
+ state: "resumable";
190
+ };
191
+ } | {
192
+ latestRunId?: string;
193
+ resumability: {
194
+ state: "not-resumable";
195
+ reason: string;
196
+ };
197
+ };
198
+ export type WorkflowReceiptEntry = WorkflowReceiptEntryResumability & {
199
+ key: string;
200
+ lane?: WorkflowLaneMetadata;
201
+ terminalOutcome?: WorkflowTerminalOutcome;
202
+ agent?: string;
203
+ requestedContext?: "fresh" | "fork";
204
+ resolvedContext?: "fresh" | "fork" | "mixed";
205
+ outputReference?: string;
206
+ acceptanceRecovery?: AcceptanceRecoveryMetadata;
207
+ externalAdapter?: ExternalCliReceiptMetadata;
208
+ continuation: {
209
+ runIds: string[];
210
+ };
211
+ };
212
+ export interface WorkflowReceipt {
213
+ version: 1;
214
+ workflowRunId: string;
215
+ state: WorkflowReceiptState;
216
+ createdAt: number;
217
+ entries: Record<string, WorkflowReceiptEntry>;
218
+ argsDigest?: string;
219
+ resource?: WorkflowResourceProvenance;
220
+ hostSteps?: HostStepNode[];
221
+ workflowChildren?: WorkflowChildSummary;
222
+ workflowResolution?: WorkflowTerminalResolution;
223
+ terminalOutcome?: WorkflowTerminalOutcome;
224
+ recovery?: WorkflowRecoveryAction[];
225
+ }
226
+ export interface SavedOutputReference {
227
+ path: string;
228
+ bytes: number;
229
+ lines: number;
230
+ message: string;
231
+ }
232
+ interface TruncationResult {
233
+ text: string;
234
+ truncated: boolean;
235
+ originalBytes?: number;
236
+ originalLines?: number;
237
+ artifactPath?: string;
238
+ }
239
+ export interface Usage {
240
+ input: number;
241
+ output: number;
242
+ cacheRead: number;
243
+ cacheWrite: number;
244
+ cost: number;
245
+ turns: number;
246
+ }
247
+ export interface ToolBudgetConfig {
248
+ soft?: number;
249
+ hard: number;
250
+ block?: string[] | "*";
251
+ }
252
+ export interface ResolvedToolBudget {
253
+ soft?: number;
254
+ hard: number;
255
+ block: string[] | "*";
256
+ }
257
+ export type ToolBudgetOutcome = "within-budget" | "soft-reached" | "hard-blocked";
258
+ export interface ToolBudgetState extends ResolvedToolBudget {
259
+ outcome: ToolBudgetOutcome;
260
+ toolCount: number;
261
+ softReachedAt?: number;
262
+ hardReachedAt?: number;
263
+ blockedTool?: string;
264
+ }
265
+ /**
266
+ * @deprecated Turn budgets are no longer accepted as launch configuration or
267
+ * enforced. Retained only to decode historical persisted status and result data.
268
+ */
269
+ export type TurnBudgetOutcome = "within-budget" | "wrap-up-requested" | "termination-deferred" | "exceeded";
270
+ /**
271
+ * @deprecated Historical persisted turn-budget state. New runs do not produce
272
+ * this field, but status readers retain it for backwards compatibility.
273
+ */
274
+ export interface TurnBudgetState {
275
+ maxTurns: number;
276
+ graceTurns: number;
277
+ outcome: TurnBudgetOutcome;
278
+ turnCount: number;
279
+ wrapUpRequestedAtTurn?: number;
280
+ terminationDeferredAtTurn?: number;
281
+ exceededAtTurn?: number;
282
+ }
283
+ export interface TokenUsage {
284
+ input: number;
285
+ output: number;
286
+ total: number;
287
+ /** Input plus cache-read tokens for the latest assistant turn. */
288
+ window?: number;
289
+ /** Largest window observed in this usage scope. */
290
+ windowPeak?: number;
291
+ }
292
+ export type ActivityState = "active_long_running" | "needs_attention";
293
+ export type ControlEventType = "active_long_running" | "needs_attention";
294
+ export type ControlNotificationChannel = "event" | "async" | "intercom";
295
+ export interface ControlConfig {
296
+ enabled?: boolean;
297
+ needsAttentionAfterMs?: number;
298
+ activeNoticeAfterMs?: number;
299
+ activeNoticeAfterTurns?: number;
300
+ activeNoticeAfterTokens?: number;
301
+ failedToolAttemptsBeforeAttention?: number;
302
+ notifyOn?: ControlEventType[];
303
+ notifyChannels?: ControlNotificationChannel[];
304
+ }
305
+ export interface ResolvedControlConfig {
306
+ enabled: boolean;
307
+ needsAttentionAfterMs: number;
308
+ needsAttentionAfterMsIsExplicit?: boolean;
309
+ activeNoticeAfterMs: number;
310
+ activeNoticeAfterTurns?: number;
311
+ activeNoticeAfterTokens?: number;
312
+ failedToolAttemptsBeforeAttention: number;
313
+ notifyOn: ControlEventType[];
314
+ notifyChannels: ControlNotificationChannel[];
315
+ }
316
+ /**
317
+ * Smart completion batching for async-completion notifications. Successful
318
+ * sibling completions are held briefly so they arrive as one grouped message;
319
+ * failure and attention signals bypass grouping and always fire immediately.
320
+ */
321
+ export interface CompletionBatchConfig {
322
+ enabled?: boolean;
323
+ /** Idle window after each arrival; resets on every new item. */
324
+ debounceMs?: number;
325
+ /** Hard cap measured from the first item in a group. */
326
+ maxWaitMs?: number;
327
+ /** Shorter idle window for straggler groups. */
328
+ stragglerDebounceMs?: number;
329
+ /** Shorter hard cap for straggler groups. */
330
+ stragglerMaxWaitMs?: number;
331
+ /** Arrivals within this window after an emit join a straggler group. */
332
+ stragglerWindowMs?: number;
333
+ }
334
+ export interface WaitToolConfigObject {
335
+ enabled?: boolean;
336
+ /** Default blocking window for bg_wait calls that omit timeoutMs. */
337
+ defaultTimeoutMs?: number;
338
+ }
339
+ export type WaitToolConfig = boolean | WaitToolConfigObject;
340
+ export interface ControlEvent {
341
+ type: ControlEventType;
342
+ from?: ActivityState;
343
+ to: ActivityState;
344
+ ts: number;
345
+ agent: string;
346
+ index?: number;
347
+ runId: string;
348
+ nestedRunId?: string;
349
+ nestingPath?: NestedRunAddress["path"];
350
+ message: string;
351
+ reason?: "idle" | "active_long_running" | "tool_failures" | "supervisor_request" | "time_threshold" | "turn_threshold" | "token_threshold" | "tool_open_threshold";
352
+ turns?: number;
353
+ tokens?: number;
354
+ toolCount?: number;
355
+ currentTool?: string;
356
+ toolCallId?: string;
357
+ currentToolDurationMs?: number;
358
+ currentPath?: string;
359
+ elapsedMs?: number;
360
+ recentFailureSummary?: string;
361
+ workflowKey?: string;
362
+ phase?: string;
363
+ label?: string;
364
+ taskPreview?: string;
365
+ }
366
+ export type SubagentResultStatus = "running" | "completed" | "failed" | "paused" | "stopped" | "detached";
367
+ export type SubagentOutputState = "present" | "absent" | "unknown";
368
+ export type SubagentRunMode = "single" | "parallel" | "chain" | "workflow";
369
+ export type SubagentResultMode = SubagentRunMode;
370
+ export type WorktreeProvider = "auto" | "native" | "worktrunk";
371
+ export type ManagedWorktreeProvider = Exclude<WorktreeProvider, "auto">;
372
+ export interface WorktreeNaming {
373
+ requestedBranch: string;
374
+ branchPrefix: string;
375
+ label: string;
376
+ sanitizedPathComponent: string;
377
+ collision?: "branch" | "path" | "both";
378
+ collisionSuffix?: string;
379
+ }
380
+ export interface ParallelHandoffPatch {
381
+ path: string;
382
+ branch: string;
383
+ changed: boolean;
384
+ diffStat: string;
385
+ filesChanged: number;
386
+ insertions: number;
387
+ deletions: number;
388
+ error?: string;
389
+ }
390
+ export interface ParallelHandoffChild {
391
+ index: number;
392
+ taskIndex: number;
393
+ agent: string;
394
+ /** Stable workflow identity used to join status/receipt metadata. */
395
+ workflowKey?: string;
396
+ /** Child run id when the worktree belongs to a workflow child. */
397
+ runId?: string;
398
+ lane?: WorkflowLaneMetadata;
399
+ status: SubagentResultStatus;
400
+ summary: string;
401
+ outputPath?: string;
402
+ structuredOutput?: unknown;
403
+ structuredOutputPath?: string;
404
+ sessionPath?: string;
405
+ patch: ParallelHandoffPatch;
406
+ }
407
+ /** Launch-time identity retained while a handoff group has no terminal child rows yet. */
408
+ export interface ParallelHandoffLaneBinding {
409
+ index: number;
410
+ taskIndex: number;
411
+ workflowKey?: string;
412
+ runId?: string;
413
+ lane?: WorkflowLaneMetadata;
414
+ }
415
+ export interface ParallelHandoffCleanupTask {
416
+ index: number;
417
+ path: string;
418
+ branch: string;
419
+ /** Provider that allocated this worktree; omitted in old manifests. */
420
+ provider?: ManagedWorktreeProvider;
421
+ /** Branch/path naming evidence retained with the cleanup authority. */
422
+ naming?: WorktreeNaming;
423
+ worktreeRemoved: boolean;
424
+ branchRemoved: boolean;
425
+ preserved?: boolean;
426
+ reason?: string;
427
+ errors?: string[];
428
+ }
429
+ export type CleanupEligibility = {
430
+ state: "active";
431
+ } | {
432
+ state: "terminal-eligible";
433
+ } | {
434
+ state: "terminal-blocked";
435
+ reason: string;
436
+ } | {
437
+ state: "superseded-eligible";
438
+ } | {
439
+ state: "unknown";
440
+ };
441
+ export interface ParallelHandoffMergeEvidence {
442
+ prNumber: number;
443
+ reviewedHead: string;
444
+ mergeCommit: string;
445
+ treeEquivalent: boolean | "unknown";
446
+ postMergeChecks: "recorded" | "unknown";
447
+ attestedBy: string;
448
+ attestedAt: string;
449
+ manifestDigest?: string;
450
+ }
451
+ export interface ParallelHandoffSupersessionEvidence {
452
+ supersededBy: string;
453
+ attestedBy: string;
454
+ attestedAt: string;
455
+ manifestDigest?: string;
456
+ }
457
+ export interface ParallelHandoffGroup {
458
+ stepIndex: number;
459
+ baseCommit: string;
460
+ repoRoot: string;
461
+ children: ParallelHandoffChild[];
462
+ /** Optional launch identities for pending groups before child results settle. */
463
+ laneBindings?: ParallelHandoffLaneBinding[];
464
+ cleanup: {
465
+ state: "complete" | "partial";
466
+ tasks: ParallelHandoffCleanupTask[];
467
+ pruned: boolean;
468
+ errors?: string[];
469
+ };
470
+ }
471
+ export interface ParallelHandoffManifest {
472
+ version: 1;
473
+ runId: string;
474
+ mode: "single" | "parallel" | "chain";
475
+ source: "foreground" | "async";
476
+ cwd: string;
477
+ createdAt: number;
478
+ updatedAt: number;
479
+ groups: ParallelHandoffGroup[];
480
+ merge?: ParallelHandoffMergeEvidence;
481
+ supersession?: ParallelHandoffSupersessionEvidence;
482
+ cleanupEligibility?: CleanupEligibility;
483
+ }
484
+ export interface ParallelHandoffReference {
485
+ version: 1;
486
+ path: string;
487
+ groupCount: number;
488
+ childCount: number;
489
+ changedPatches: number;
490
+ cleanupState: "complete" | "partial";
491
+ cleanupEligibility?: CleanupEligibility;
492
+ }
493
+ export interface AgentContract {
494
+ version: 1;
495
+ }
496
+ export type ChainGateLayer = "execution" | "acceptance";
497
+ export type ExecutionProjectionStatus = "completed" | "failed" | "partial" | "paused" | "stopped" | "detached";
498
+ export interface ExecutionProjection {
499
+ status: ExecutionProjectionStatus;
500
+ success: boolean;
501
+ exitCode: number;
502
+ error?: string;
503
+ interrupted?: boolean;
504
+ timedOut?: boolean;
505
+ stopped?: boolean;
506
+ detached?: boolean;
507
+ }
508
+ export interface ReviewProjection {
509
+ status: "not-requested" | "review-required" | "reviewed" | "blockers";
510
+ findings?: AcceptanceReviewResult["findings"];
511
+ }
512
+ export interface FileMutationEffect {
513
+ status: "observed";
514
+ attempted: true;
515
+ evidence?: TrackedMutationEvidence;
516
+ }
517
+ export interface SettlementDiagnostic {
518
+ finalTextPresent: boolean;
519
+ mutation: {
520
+ attempted: boolean;
521
+ observed: boolean;
522
+ };
523
+ requiredOutput?: {
524
+ kind: "file-only" | "structured";
525
+ path: string;
526
+ missing: boolean;
527
+ };
528
+ afterCompactionSettlement?: boolean;
529
+ }
530
+ export interface EffectsProjection {
531
+ fileMutation?: FileMutationEffect;
532
+ settlementDiagnostic?: SettlementDiagnostic;
533
+ }
534
+ export interface TrackedMutationSnapshot {
535
+ source: "tracked-files";
536
+ trackedOnly: true;
537
+ cwd: string;
538
+ gitRoot?: string;
539
+ dirtyFiles: string[];
540
+ fingerprints: Record<string, TrackedMutationFingerprint>;
541
+ truncated?: boolean;
542
+ unavailable?: string;
543
+ }
544
+ export type TrackedMutationFingerprint = {
545
+ kind: "diff";
546
+ digest: string;
547
+ };
548
+ export interface TrackedMutationEvidence {
549
+ source: "tracked-files";
550
+ trackedOnly: true;
551
+ changedFiles: string[];
552
+ attemptedMutation: boolean;
553
+ truncated?: boolean;
554
+ unavailable?: string;
555
+ }
556
+ export interface TimeoutRecoverySummary {
557
+ termination: "timed-out" | "stopped";
558
+ changedFiles: string[];
559
+ truncated?: boolean;
560
+ /** True only when a timed-out child left tracked changes without its requested report. */
561
+ recoveryNeeded?: boolean;
562
+ reason?: "timed-out-with-dirty-worktree";
563
+ reportStatus?: "missing" | "written" | "not-requested" | "unknown";
564
+ currentTool?: string;
565
+ currentToolArgs?: string;
566
+ currentPath?: string;
567
+ sessionFile?: string;
568
+ transcriptPath?: string;
569
+ artifactPaths?: ArtifactPaths;
570
+ warning: string;
571
+ message: string;
572
+ }
573
+ /** Safe parent-facing subset of a timeout recovery summary. */
574
+ export type TimeoutRecoveryProjection = Pick<TimeoutRecoverySummary, "termination" | "changedFiles" | "truncated" | "recoveryNeeded" | "reason" | "reportStatus">;
575
+ export declare const SUBAGENT_LIFECYCLE_ARTIFACT_VERSION = 3;
576
+ export type SubagentLifecycleArtifactVersion = typeof SUBAGENT_LIFECYCLE_ARTIFACT_VERSION;
577
+ export type ProcessTerminalState = "pending" | "observed" | "unknown" | "not-started";
578
+ export type ProcessTerminalReason = "observer-unavailable" | "runner-candidate-missing" | "runner-instance-mismatch" | "writer-close-unverified" | "process-tree-unverified" | "canonical-session-unavailable" | "canonical-session-lease-active" | "canonical-session-release-unverified" | "proof-write-failed" | "stale-repair";
579
+ export interface RunnerProcessInstanceExit {
580
+ processInstanceId: string;
581
+ kind: "runner";
582
+ closeObservedAt: number;
583
+ exitCode: number | null;
584
+ signal: string | null;
585
+ }
586
+ export type ProcessTreeTerminal = {
587
+ state: "observed";
588
+ mechanism: "posix-process-group";
589
+ processGroupId: number;
590
+ verifiedAt: number;
591
+ } | {
592
+ state: "observed";
593
+ mechanism: "windows-taskkill";
594
+ pid: number;
595
+ verifiedAt: number;
596
+ } | {
597
+ state: "unknown";
598
+ reason: "unsupported-platform" | "signal-failed" | "verification-failed";
599
+ diagnostic?: string;
600
+ };
601
+ export interface PiWriterProcessInstanceExit {
602
+ processInstanceId: string;
603
+ kind: "pi-writer";
604
+ attempt: number;
605
+ closeObservedAt: number;
606
+ exitCode: number | null;
607
+ signal: string | null;
608
+ processTree: ProcessTreeTerminal;
609
+ }
610
+ export type ProcessInstanceExit = RunnerProcessInstanceExit | PiWriterProcessInstanceExit;
611
+ export interface CanonicalSessionTerminal {
612
+ canonicalSessionId: string;
613
+ leaseDisposition: "released" | "not-held";
614
+ freeAtObservation: true;
615
+ canonicalSessionLeaseReleased?: true;
616
+ }
617
+ interface ProcessTerminalBase {
618
+ version: 1;
619
+ runId: string;
620
+ childIndex?: number;
621
+ runnerProcessInstanceId: string;
622
+ observedAt?: number;
623
+ reason?: ProcessTerminalReason;
624
+ resumeDisposition?: "resumable" | "non-resumable" | "unavailable";
625
+ }
626
+ export type ProcessTerminal = (ProcessTerminalBase & {
627
+ state: "pending" | "not-started";
628
+ }) | (ProcessTerminalBase & {
629
+ state: "observed";
630
+ observedAt: number;
631
+ instances: ProcessInstanceExit[];
632
+ canonicalSession?: CanonicalSessionTerminal;
633
+ }) | (ProcessTerminalBase & {
634
+ state: "unknown";
635
+ reason: ProcessTerminalReason;
636
+ diagnostic?: string;
637
+ });
638
+ /** Identifies the durable schedule that launched a run, so its completion is attributable. */
639
+ export interface ScheduleOrigin {
640
+ id: string;
641
+ name?: string;
642
+ quiet?: boolean;
643
+ }
644
+ export type SteeringActionState = "delivered" | "scheduled" | "pending" | "partial" | "recovered" | "failed";
645
+ export type SteeringTargetState = "scheduled" | "pending" | "routed" | "queued" | "delivered" | "late" | "failed" | "recovered";
646
+ export interface SteeringTargetStatus {
647
+ index: number;
648
+ state: SteeringTargetState;
649
+ routedAt?: number;
650
+ deliveredAt?: number;
651
+ lateDeliveredAt?: number;
652
+ failedAt?: number;
653
+ recoveredAt?: number;
654
+ reason?: string;
655
+ replacementRunId?: string;
656
+ }
657
+ export interface SteeringRequestStatus {
658
+ id: string;
659
+ requestedAt: number;
660
+ source?: string;
661
+ messagePreview: string;
662
+ targets: SteeringTargetStatus[];
663
+ }
664
+ export interface SteeringStatus {
665
+ requested: number;
666
+ scheduled: number;
667
+ pending: number;
668
+ delivered: number;
669
+ failed: number;
670
+ recovered: number;
671
+ lastRequestedAt?: number;
672
+ lastDeliveredAt?: number;
673
+ recent: SteeringRequestStatus[];
674
+ }
675
+ export interface SteerActionTarget {
676
+ index: number;
677
+ state: SteeringTargetState;
678
+ deliveredAt?: number;
679
+ lateDeliveredAt?: number;
680
+ reason?: string;
681
+ replacementRunId?: string;
682
+ }
683
+ export interface SteerActionResult {
684
+ requestId: string;
685
+ state: SteeringActionState;
686
+ deliveryStatus: "delivered" | "queued";
687
+ sourceRunId: string;
688
+ replacementRunId?: string;
689
+ targets: SteerActionTarget[];
690
+ }
691
+ export interface SteeringNotice {
692
+ type: "subagent.steering.notice";
693
+ ts: number;
694
+ runId: string;
695
+ requestId: string;
696
+ state: "failed" | "partial" | "recovered";
697
+ message: string;
698
+ currentSessionId?: string;
699
+ }
700
+ export interface RunFanoutBudgetDescriptor {
701
+ version: 1;
702
+ rootRunId: string;
703
+ directory: string;
704
+ limit: number;
705
+ parentPath?: string;
706
+ }
707
+ export interface RunFanoutBudgetSnapshot {
708
+ used: number;
709
+ limit: number;
710
+ remaining: number;
711
+ }
712
+ export interface RunFanoutRejection extends RunFanoutBudgetSnapshot {
713
+ code: "RUN_FANOUT_LIMIT";
714
+ path: string;
715
+ requested: number;
716
+ }
717
+ export interface SteeringRecoveryDescriptor {
718
+ /** Captured response identity authority; absence means no declared aliases on revival. */
719
+ modelResponseAliases?: Record<string, string[]>;
720
+ version: 1;
721
+ launchContractDigest?: string;
722
+ extensionBindings?: ExtensionBindings;
723
+ requiredExtensions?: RequiredChildExtensionSnapshot;
724
+ runFanoutBudget: RunFanoutBudgetDescriptor;
725
+ sourceRunId: string;
726
+ agentContract?: AgentContract;
727
+ agent: string;
728
+ sessionFile?: string;
729
+ /** Git ref used to allocate managed worktrees for this run. */
730
+ baseRef?: string;
731
+ cwd: string;
732
+ model?: string;
733
+ modelProvider?: string;
734
+ modelOverrideFromParent?: boolean;
735
+ modelOrigin?: "explicit" | "inherited" | "configured";
736
+ fast?: boolean;
737
+ thinking?: string;
738
+ thinkingCeiling?: ThinkingLevel;
739
+ tools?: string[];
740
+ excludeTools?: string[];
741
+ allowNestedSubagents?: boolean;
742
+ allowedAgents?: string[];
743
+ extensions?: string[];
744
+ subagentOnlyExtensions?: string[];
745
+ mcpDirectTools?: string[];
746
+ mutationTools?: string[];
747
+ systemPrompt?: string;
748
+ systemPromptMode: "append" | "replace";
749
+ inheritProjectContext: boolean;
750
+ inheritGlobalContext: boolean;
751
+ inheritSkills: boolean;
752
+ skills?: string[];
753
+ skillPath?: string[];
754
+ agentFilePath?: string;
755
+ memory?: {
756
+ scope: "project" | "user";
757
+ path: string;
758
+ };
759
+ outputPath?: string;
760
+ outputMode: "inline" | "file-only";
761
+ structuredOutputSchema?: JsonSchemaObject;
762
+ acceptance?: AcceptanceInput;
763
+ controlConfig?: ResolvedControlConfig;
764
+ /** Resolved launch context for this async child. */
765
+ context?: "fresh" | "fork";
766
+ /** Raw per-run bridge override. Omitted descriptors continue to use global config. */
767
+ intercomBridge?: IntercomBridgeConfig;
768
+ lane?: WorkflowLaneMetadata;
769
+ absoluteDeadlineAt?: number;
770
+ initialToolBudget?: ResolvedToolBudget;
771
+ maxSubagentDepth: number;
772
+ maxOutput?: MaxOutputConfig;
773
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
774
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
775
+ share: boolean;
776
+ sessionDir?: string;
777
+ artifactsDir?: string;
778
+ artifactConfig?: ArtifactConfig;
779
+ }
780
+ export type PublicNestedStepSummary = Pick<NestedStepSummary, "agent" | "sessionName" | "status" | "model" | "thinking" | "sessionFile" | "transcriptPath" | "transcriptError" | "activityState" | "lastActivityAt" | "currentTool" | "currentToolStartedAt" | "currentPath" | "turnCount" | "toolCount" | "toolBudget" | "toolBudgetBlocked" | "startedAt" | "endedAt" | "error" | "timedOut" | "stopped"> & {
781
+ children?: PublicNestedRunSummary[];
782
+ };
783
+ export type CostSummary = {
784
+ inputTokens: number;
785
+ outputTokens: number;
786
+ costUsd: number;
787
+ };
788
+ export type PublicNestedRunSummary = Pick<NestedRunSummary, "id" | "parentRunId" | "parentStepIndex" | "parentAgent" | "depth" | "path" | "asyncDir" | "sessionId" | "sessionFile" | "intercomTarget" | "ownerIntercomTarget" | "leafIntercomTarget" | "ownerState" | "mode" | "state" | "agent" | "sessionName" | "agents" | "model" | "thinking" | "currentStep" | "chainStepCount" | "parallelGroups" | "activityState" | "lastActivityAt" | "currentTool" | "currentToolStartedAt" | "currentPath" | "turnCount" | "toolCount" | "toolBudget" | "toolBudgetBlocked" | "totalTokens" | "totalCost" | "startedAt" | "endedAt" | "lastUpdate" | "error" | "timeoutMs" | "deadlineAt" | "timedOut" | "stopped" | "turnBudget" | "turnBudgetExceeded" | "wrapUpRequested"> & {
789
+ steps?: PublicNestedStepSummary[];
790
+ children?: PublicNestedRunSummary[];
791
+ };
792
+ export interface SubagentResultIntercomChild {
793
+ agent: string;
794
+ /** Human-readable display name for the child session, when derived at launch. */
795
+ sessionName?: string;
796
+ /** Process/lifecycle status. It does not establish semantic task completion. */
797
+ status: SubagentResultStatus;
798
+ /** Whether the child produced substantive output before its process ended. */
799
+ outputState?: SubagentOutputState;
800
+ summary: string;
801
+ index?: number;
802
+ artifactPath?: string;
803
+ sessionPath?: string;
804
+ intercomTarget?: string;
805
+ children?: PublicNestedRunSummary[];
806
+ }
807
+ export interface SubagentResultIntercomPayload {
808
+ to: string;
809
+ message: string;
810
+ requestId?: string;
811
+ runId: string;
812
+ mode: SubagentRunMode;
813
+ status: SubagentResultStatus;
814
+ summary: string;
815
+ source: "foreground" | "async";
816
+ children: SubagentResultIntercomChild[];
817
+ asyncId?: string;
818
+ asyncDir?: string;
819
+ chainSteps?: number;
820
+ agent?: string;
821
+ index?: number;
822
+ artifactPath?: string;
823
+ sessionPath?: string;
824
+ parallelHandoff?: ParallelHandoffReference;
825
+ }
826
+ export interface ChildWatchdogWarningSummary extends Pick<WatchdogWarningDetails, "severity" | "importance" | "category" | "summary" | "evidence" | "recommendedAction" | "displayedAt"> {
827
+ /** True when a later assistant turn in the child followed the warning. */
828
+ addressed: boolean;
829
+ stalemate: boolean;
830
+ }
831
+ export interface ChildWatchdogProgress {
832
+ phase: "idle" | "reviewing" | "stale" | "failed";
833
+ seq: number;
834
+ lastUpdate: number;
835
+ reason?: string;
836
+ timedOut?: boolean;
837
+ warnings?: ChildWatchdogWarningSummary[];
838
+ }
839
+ export interface AgentProgress {
840
+ index: number;
841
+ agent: string;
842
+ /** Human-readable display name for the child's session, when derived at launch. */
843
+ sessionName?: string;
844
+ status: "pending" | "running" | "completed" | "failed" | "detached";
845
+ activityState?: ActivityState;
846
+ task: string;
847
+ skills?: string[];
848
+ lastActivityAt?: number;
849
+ currentTool?: string;
850
+ currentToolArgs?: string;
851
+ currentToolStartedAt?: number;
852
+ currentPath?: string;
853
+ recentTools: Array<{
854
+ tool: string;
855
+ args: string;
856
+ endMs: number;
857
+ }>;
858
+ recentOutput: string[];
859
+ toolCount: number;
860
+ turnCount?: number;
861
+ tokens: number;
862
+ /** Resolved launch model/effort and split usage for public live projections. */
863
+ model?: string;
864
+ thinking?: string;
865
+ inputTokens?: number;
866
+ outputTokens?: number;
867
+ window?: number;
868
+ windowPeak?: number;
869
+ durationMs: number;
870
+ error?: string;
871
+ failedTool?: string;
872
+ watchdog?: ChildWatchdogProgress;
873
+ }
874
+ export interface ToolCallSummary {
875
+ text: string;
876
+ expandedText: string;
877
+ }
878
+ interface ProgressSummary {
879
+ index?: number;
880
+ agent?: string;
881
+ /** Human-readable display name for the child's session, when derived at launch. */
882
+ sessionName?: string;
883
+ status?: AgentProgress["status"];
884
+ activityState?: ActivityState;
885
+ skills?: string[];
886
+ lastActivityAt?: number;
887
+ currentTool?: string;
888
+ currentToolArgs?: string;
889
+ currentToolStartedAt?: number;
890
+ recentTools?: Array<{
891
+ tool: string;
892
+ args: string;
893
+ endMs: number;
894
+ }>;
895
+ recentOutput?: string[];
896
+ toolCount: number;
897
+ tokens: number;
898
+ model?: string;
899
+ thinking?: string;
900
+ durationMs: number;
901
+ }
902
+ export type AcceptanceLevel = "auto" | "none" | "attested" | "checked" | "verified";
903
+ export type AcceptanceEvidenceKind = "changed-files" | "tests-added" | "commands-run" | "validation-output" | "residual-risks" | "no-staged-files" | "diff-summary" | "review-findings" | "manual-notes";
904
+ export interface AcceptanceGate {
905
+ id: string;
906
+ must: string;
907
+ evidence?: AcceptanceEvidenceKind[];
908
+ severity?: "required" | "recommended";
909
+ }
910
+ export interface AcceptanceVerifyCommand {
911
+ id: string;
912
+ command: string;
913
+ timeoutMs?: number;
914
+ cwd?: string;
915
+ env?: Record<string, string>;
916
+ allowFailure?: boolean;
917
+ /** When "json", a passing command's stdout is parsed and becomes the run's structured output. */
918
+ output?: "json";
919
+ /** Optional JSON Schema the parsed stdout must satisfy; only meaningful with `output: "json"`. */
920
+ schema?: JsonSchemaObject;
921
+ }
922
+ export interface AcceptanceReviewGate {
923
+ agent?: string;
924
+ focus?: string;
925
+ required?: boolean;
926
+ }
927
+ export interface AcceptanceConfig {
928
+ level?: AcceptanceLevel;
929
+ report?: "on" | "off";
930
+ /** Preserve an intentional launch-time staged index, while rejecting any terminal index change. */
931
+ preserveStagedIndex?: true;
932
+ criteria?: Array<string | AcceptanceGate>;
933
+ evidence?: AcceptanceEvidenceKind[];
934
+ verify?: AcceptanceVerifyCommand[];
935
+ review?: AcceptanceReviewGate | false;
936
+ stopRules?: string[];
937
+ reason?: string;
938
+ }
939
+ /** Bare "none" and "verified" are not accepted; verified policies require object form with runtime commands. */
940
+ export type AcceptanceInput = Exclude<AcceptanceLevel, "none" | "verified"> | false | AcceptanceConfig;
941
+ export interface ResolvedAcceptanceGate extends AcceptanceGate {
942
+ id: string;
943
+ must: string;
944
+ evidence: AcceptanceEvidenceKind[];
945
+ severity: "required" | "recommended";
946
+ }
947
+ export interface ResolvedAcceptanceConfig {
948
+ level: Exclude<AcceptanceLevel, "auto">;
949
+ explicit: boolean;
950
+ inferredReason: string[];
951
+ criteria: ResolvedAcceptanceGate[];
952
+ evidence: AcceptanceEvidenceKind[];
953
+ preserveStagedIndex?: true;
954
+ verify: AcceptanceVerifyCommand[];
955
+ review?: AcceptanceReviewGate | false;
956
+ stopRules: string[];
957
+ reason?: string;
958
+ }
959
+ export interface AcceptanceReport {
960
+ criteriaSatisfied?: Array<{
961
+ id?: string;
962
+ status: "satisfied" | "not-satisfied" | "not-applicable";
963
+ evidence: string;
964
+ }>;
965
+ changedFiles?: string[];
966
+ testsAddedOrUpdated?: string[];
967
+ commandsRun?: Array<{
968
+ command: string;
969
+ result: "passed" | "failed" | "not-run";
970
+ summary: string;
971
+ }>;
972
+ validationOutput?: string[];
973
+ residualRisks?: string[];
974
+ noStagedFiles?: boolean;
975
+ diffSummary?: string;
976
+ reviewFindings?: string[];
977
+ manualNotes?: string;
978
+ notes?: string;
979
+ }
980
+ export type AcceptanceRuntimeCheckStatus = "passed" | "failed" | "not-applicable";
981
+ export interface AcceptanceRuntimeCheck {
982
+ id: string;
983
+ status: AcceptanceRuntimeCheckStatus;
984
+ message: string;
985
+ }
986
+ export interface AcceptanceVerifyResult {
987
+ id: string;
988
+ command: string;
989
+ cwd?: string;
990
+ exitCode: number | null;
991
+ status: "passed" | "failed" | "timed-out" | "allowed-failure";
992
+ stdout?: string;
993
+ stderr?: string;
994
+ durationMs: number;
995
+ artifactPath?: string;
996
+ cacheKey?: string;
997
+ memoized?: boolean;
998
+ envKeys?: string[];
999
+ envHash?: string;
1000
+ workspaceState?: {
1001
+ kind: "git-tracked";
1002
+ repoRoot: string;
1003
+ cwdRelative: string;
1004
+ head: string;
1005
+ diffHash: string;
1006
+ };
1007
+ artifactError?: string;
1008
+ /** Parsed stdout of a passing `output: "json"` command. */
1009
+ structuredOutput?: unknown;
1010
+ /** Why a passing `output: "json"` command still failed: invalid JSON, truncated stdout, or schema mismatch. */
1011
+ structuredOutputError?: string;
1012
+ }
1013
+ export interface AcceptanceReviewResult {
1014
+ status: "review-required" | "reviewed" | "blockers";
1015
+ findings: Array<{
1016
+ severity: "blocker" | "non-blocking";
1017
+ file?: string;
1018
+ issue: string;
1019
+ rationale: string;
1020
+ }>;
1021
+ }
1022
+ export type AcceptanceEvidenceStatus = "pending" | "not-required" | "claimed" | "attested" | "checked" | "verified" | "rejected";
1023
+ export type AcceptanceLedgerStatus = AcceptanceEvidenceStatus | "review-required" | "reviewed" | "accepted";
1024
+ /**
1025
+ * Durable child evidence that can be handed to a read-only review after the
1026
+ * acceptance envelope itself was rejected. This never upgrades acceptance;
1027
+ * the enclosing ledger remains rejected and the child remains unsuccessful.
1028
+ */
1029
+ export interface AcceptanceRecoveryMetadata {
1030
+ status: "available-for-review";
1031
+ reason: "acceptance-metadata-rejected";
1032
+ reportPath: string;
1033
+ reportHash: string;
1034
+ }
1035
+ export interface AcceptanceLedger {
1036
+ status: AcceptanceLedgerStatus;
1037
+ evidenceStatus: AcceptanceEvidenceStatus;
1038
+ explicit: boolean;
1039
+ effectiveAcceptance: ResolvedAcceptanceConfig;
1040
+ inferredReason: string[];
1041
+ criteria: ResolvedAcceptanceGate[];
1042
+ childReport?: AcceptanceReport;
1043
+ childReportParseError?: string;
1044
+ recovery?: AcceptanceRecoveryMetadata;
1045
+ runtimeChecks: AcceptanceRuntimeCheck[];
1046
+ verifyRuns: AcceptanceVerifyResult[];
1047
+ reviewResult?: AcceptanceReviewResult;
1048
+ parentDecision?: {
1049
+ status: "accepted" | "rejected";
1050
+ at: string;
1051
+ reason?: string;
1052
+ };
1053
+ }
1054
+ export interface LaunchResolvedChildExtensions {
1055
+ version: 1;
1056
+ /** This is parent-resolved launch intent, not child-runtime acknowledgement that extensions loaded. */
1057
+ source: "launch-resolved";
1058
+ disableAmbientExtensions: boolean;
1059
+ runtime: string[];
1060
+ configured: string[];
1061
+ /** Bounded host-supplied identities; paths are intentionally not exposed. */
1062
+ required: string[];
1063
+ effective: string[];
1064
+ omitted: {
1065
+ runtime: number;
1066
+ configured: number;
1067
+ required: number;
1068
+ effective: number;
1069
+ };
1070
+ }
1071
+ export interface RuntimeAcknowledgedChildExtensions {
1072
+ version: 1;
1073
+ /** Best-effort child-runtime registration acknowledgement, not extension health. */
1074
+ source: "child-runtime";
1075
+ ids: string[];
1076
+ omitted: number;
1077
+ }
1078
+ export interface UsageBudgetLimitConfig {
1079
+ soft?: number;
1080
+ hard: number;
1081
+ }
1082
+ export interface UsageBudgetConfig {
1083
+ tokens?: UsageBudgetLimitConfig;
1084
+ costUsd?: UsageBudgetLimitConfig;
1085
+ }
1086
+ export interface UsageBudgetMetricState extends UsageBudgetLimitConfig {
1087
+ used: number;
1088
+ outcome: "within-budget" | "soft-exceeded" | "hard-exceeded";
1089
+ }
1090
+ export interface UsageBudgetState {
1091
+ version: 1;
1092
+ /** Enforced from usage reported by completed or streaming child runs; no reservation estimates. */
1093
+ source: "reported";
1094
+ tokens?: UsageBudgetMetricState;
1095
+ costUsd?: UsageBudgetMetricState;
1096
+ exhausted: boolean;
1097
+ reason?: "tokens" | "costUsd";
1098
+ }
1099
+ export interface SingleResult {
1100
+ /**
1101
+ * Stable child identity within the foreground run. Pair with Details.runId for
1102
+ * cross-run correlation. This is assigned in launch order, remains stable across
1103
+ * partial progress snapshots and the final result, and is independent of the
1104
+ * result row's array position.
1105
+ */
1106
+ index: number;
1107
+ /** Workflow child key that owns this result when returned from workflow details. */
1108
+ workflowKey?: string;
1109
+ agent: string;
1110
+ task: string;
1111
+ /** Human-readable display name for the child's own session (agent + task
1112
+ * excerpt), when the launcher derived one. Display metadata only. */
1113
+ sessionName?: string;
1114
+ /** Resolved launch context for this child. */
1115
+ context?: "fresh" | "fork";
1116
+ exitCode: number;
1117
+ processSignal?: string | null;
1118
+ timeoutRecovery?: TimeoutRecoverySummary;
1119
+ detached?: boolean;
1120
+ detachedReason?: string;
1121
+ interrupted?: boolean;
1122
+ timedOut?: boolean;
1123
+ stopped?: boolean;
1124
+ turnBudget?: TurnBudgetState;
1125
+ turnBudgetExceeded?: boolean;
1126
+ wrapUpRequested?: boolean;
1127
+ toolBudget?: ToolBudgetState;
1128
+ toolBudgetBlocked?: boolean;
1129
+ messages?: Message[];
1130
+ usage: Usage;
1131
+ model?: string;
1132
+ /** Authoritative before/after Git evidence captured by a pane-native remote machine. */
1133
+ nativeMachine?: {
1134
+ provider: "herdr";
1135
+ machineId: string;
1136
+ initialGit?: HerdrRemoteGitStatus;
1137
+ finalGit?: HerdrRemoteGitStatus;
1138
+ };
1139
+ /** Effective thinking level used by this foreground child, when known. */
1140
+ thinking?: string;
1141
+ requestedModel?: string;
1142
+ controlEvents?: ControlEvent[];
1143
+ error?: string;
1144
+ /**
1145
+ * True when the dispatch failed because the input exceeded the model's
1146
+ * context window. Callers should treat this as
1147
+ * a signal to reduce input size or re-decompose the task.
1148
+ */
1149
+ contextOverflow?: boolean;
1150
+ sessionFile?: string;
1151
+ skills?: string[];
1152
+ skillsWarning?: string;
1153
+ progress?: AgentProgress;
1154
+ progressSummary?: ProgressSummary;
1155
+ toolCalls?: ToolCallSummary[];
1156
+ artifactPaths?: ArtifactPaths;
1157
+ truncation?: TruncationResult;
1158
+ finalOutput?: string;
1159
+ /** Provenance-aware state for substantive child output, excluding synthetic lifecycle messages. */
1160
+ outputState?: SubagentOutputState;
1161
+ outputMode?: OutputMode;
1162
+ savedOutputPath?: string;
1163
+ outputReference?: SavedOutputReference;
1164
+ outputSaveError?: string;
1165
+ /** Best-effort metadata persistence failure; execution and receipt publication continue. */
1166
+ metadataSaveError?: string;
1167
+ structuredOutput?: unknown;
1168
+ structuredOutputFailed?: boolean;
1169
+ structuredOutputPath?: string;
1170
+ structuredOutputSchemaPath?: string;
1171
+ acceptance?: AcceptanceLedger;
1172
+ agentContract?: AgentContract;
1173
+ launchContractDigest?: string;
1174
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
1175
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
1176
+ execution?: ExecutionProjection;
1177
+ review?: ReviewProjection;
1178
+ effects?: EffectsProjection;
1179
+ transcriptPath?: string;
1180
+ transcriptError?: string;
1181
+ children?: NestedRunSummary[];
1182
+ watchdog?: ChildWatchdogProgress;
1183
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
1184
+ capabilityAudit?: SubagentCapabilityAudit;
1185
+ runner?: ExternalCliRunnerStatus | ExternalJobRunnerStatus;
1186
+ externalProcess?: ExternalProcessStatus;
1187
+ }
1188
+ export interface SpawnBudgetGrant {
1189
+ sessionId: string;
1190
+ amount: number;
1191
+ grantedAt: number;
1192
+ previousLimit: number;
1193
+ limit: number;
1194
+ }
1195
+ export interface SpawnBudgetSnapshot {
1196
+ used: number;
1197
+ configuredLimit: number | null;
1198
+ granted: number;
1199
+ limit: number | null;
1200
+ remaining: number | null;
1201
+ grantRemaining: number | null;
1202
+ grantHistory: SpawnBudgetGrant[];
1203
+ }
1204
+ /** Slim per-child projection of a terminal result payload, safe to surface in tool_result details. */
1205
+ export interface WaitCompletionChild {
1206
+ agent?: string;
1207
+ /** Child run identity where the producer records one (workflow children); artifact files are keyed by it. */
1208
+ runId?: string;
1209
+ /** Bounded accounting projection used by /subagent-cost after async completion. */
1210
+ usage?: Usage;
1211
+ /** Persisted Pi child session when available. */
1212
+ sessionFile?: string;
1213
+ success?: boolean;
1214
+ outputState?: SubagentOutputState;
1215
+ structuredOutput?: unknown;
1216
+ structuredOutputPath?: string;
1217
+ error?: string;
1218
+ model?: string;
1219
+ contextOverflow?: boolean;
1220
+ artifactPaths?: Partial<ArtifactPaths>;
1221
+ timeoutRecovery?: TimeoutRecoveryProjection;
1222
+ }
1223
+ /**
1224
+ * Terminal completion observed for a run a bg_wait call covered. Carries run
1225
+ * identity and the artifact trail; output text stays in the tool result content.
1226
+ */
1227
+ export interface WaitCompletion {
1228
+ runId: string;
1229
+ workflowReceiptPath?: string;
1230
+ agent?: string;
1231
+ mode?: string;
1232
+ state?: string;
1233
+ success?: boolean;
1234
+ /** Versioned bounded output archive retained with the durable completion replay. */
1235
+ archivePath?: string;
1236
+ results?: WaitCompletionChild[];
1237
+ workflowChildren?: WorkflowChildSummary;
1238
+ }
1239
+ export interface AgentCapabilitiesSnapshot {
1240
+ agents: AgentCapabilityRow[];
1241
+ restrictedCount: number;
1242
+ capabilityCeilingSources?: string[];
1243
+ }
1244
+ export interface AgentCapabilityRow {
1245
+ name: string;
1246
+ description: string;
1247
+ source: "builtin" | "package" | "user" | "project" | "runtime";
1248
+ executable: boolean;
1249
+ restrictionSources?: string[];
1250
+ aliases?: string[];
1251
+ runner: {
1252
+ type: "pi";
1253
+ } | {
1254
+ type: "external-cli";
1255
+ adapter?: string;
1256
+ command: string;
1257
+ machine?: string;
1258
+ available: boolean;
1259
+ unavailableReason?: string;
1260
+ capabilities: ExternalCliCapabilities;
1261
+ } | {
1262
+ type: "external-job";
1263
+ provider: string;
1264
+ available?: boolean;
1265
+ capabilities: ExternalJobRunnerStatus["capabilities"];
1266
+ };
1267
+ tools: {
1268
+ ambient: boolean;
1269
+ names: string[];
1270
+ excludeTools?: string[];
1271
+ mcpDirectTools: string[];
1272
+ mutationTools?: string[];
1273
+ };
1274
+ model?: {
1275
+ value?: string;
1276
+ thinking?: string | false;
1277
+ };
1278
+ execution?: {
1279
+ defaultAsync?: boolean;
1280
+ timeoutMs?: number;
1281
+ };
1282
+ acceptance?: {
1283
+ policy?: AcceptanceInput;
1284
+ role?: AcceptanceRole;
1285
+ };
1286
+ output?: {
1287
+ path?: string;
1288
+ mode?: OutputMode;
1289
+ };
1290
+ extensions?: {
1291
+ names?: string[];
1292
+ subagentOnly?: string[];
1293
+ skills?: string[];
1294
+ };
1295
+ }
1296
+ export interface Details {
1297
+ mode: SubagentResultMode | "management";
1298
+ workflowReceiptPath?: string;
1299
+ runId?: string;
1300
+ /** Host tool-call id retained when it differs from the internal run id. */
1301
+ toolCallId?: string;
1302
+ /** Run-level context summary. "mixed" when children resolved to different modes. */
1303
+ context?: "fresh" | "fork" | "mixed";
1304
+ results: SingleResult[];
1305
+ workflowChildren?: WorkflowChildSummary;
1306
+ /**
1307
+ * Terminal completion payloads for runs this bg_wait call observed
1308
+ * finishing. Async completions travel as result files that are consumed and
1309
+ * deleted after text delivery, so without this field their run and artifact
1310
+ * identity never reaches tool_result details.
1311
+ */
1312
+ completions?: WaitCompletion[];
1313
+ wait?: {
1314
+ reason: "window_elapsed";
1315
+ timedOut: true;
1316
+ activeRunIds: string[];
1317
+ activeProviderItems: Array<{
1318
+ provider: string;
1319
+ id: string;
1320
+ }>;
1321
+ } | {
1322
+ /** Non-terminal internal auto-drain yield; tracked work remains active. */
1323
+ reason: "supervisor_request";
1324
+ timedOut: false;
1325
+ activeRunIds: string[];
1326
+ activeProviderItems: Array<{
1327
+ provider: string;
1328
+ id: string;
1329
+ }>;
1330
+ };
1331
+ controlEvents?: ControlEvent[];
1332
+ steering?: SteerActionResult;
1333
+ asyncId?: string;
1334
+ background?: boolean;
1335
+ asyncDir?: string;
1336
+ timeoutMs?: number;
1337
+ deadlineAt?: number;
1338
+ timedOut?: boolean;
1339
+ stopped?: boolean;
1340
+ toolBudget?: ResolvedToolBudget;
1341
+ usageBudget?: UsageBudgetState;
1342
+ progress?: AgentProgress[];
1343
+ progressSummary?: ProgressSummary;
1344
+ artifacts?: {
1345
+ dir: string;
1346
+ files: ArtifactPaths[];
1347
+ };
1348
+ truncation?: {
1349
+ truncated: boolean;
1350
+ originalBytes?: number;
1351
+ originalLines?: number;
1352
+ artifactPath?: string;
1353
+ };
1354
+ chainAgents?: string[];
1355
+ totalSteps?: number;
1356
+ currentStepIndex?: number;
1357
+ workflowGraph?: WorkflowGraphSnapshot;
1358
+ /** Validated, display-only fanout plan supplied with a workflow launch. */
1359
+ preflight?: WorkflowPreflight;
1360
+ preflightWarnings?: string[];
1361
+ outputs?: ChainOutputMap;
1362
+ totalChildUsage?: Usage;
1363
+ totalCost?: CostSummary;
1364
+ spawnBudget?: SpawnBudgetSnapshot;
1365
+ runFanoutBudget?: RunFanoutBudgetSnapshot;
1366
+ runFanoutRejection?: RunFanoutRejection;
1367
+ activeAsyncCapacity?: ActiveAsyncCapacitySnapshot;
1368
+ agentCapabilities?: AgentCapabilitiesSnapshot;
1369
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
1370
+ capabilityAudit?: SubagentCapabilityAudit;
1371
+ parallelHandoff?: ParallelHandoffReference;
1372
+ lifecycleStatus?: {
1373
+ processTerminal?: ProcessTerminal;
1374
+ };
1375
+ launchContractDigest?: string;
1376
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
1377
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
1378
+ /** Original launch contract whose persisted session is being revived. */
1379
+ sourceLaunchContractDigest?: string;
1380
+ /** Durable mission attached to this run, when mission mode was explicitly used. */
1381
+ missionId?: string;
1382
+ missionPath?: string;
1383
+ /** Non-fatal automatic mission persistence failure. */
1384
+ missionWarning?: string;
1385
+ mission?: MissionRecord;
1386
+ workflow?: {
1387
+ value?: unknown;
1388
+ args?: Record<string, unknown>;
1389
+ argsDigest?: string;
1390
+ resource?: WorkflowResourceProvenance;
1391
+ preflightWarnings?: string[];
1392
+ trace: Array<{
1393
+ operation: "run" | "status" | "steer" | "host";
1394
+ key: string;
1395
+ state: "started" | "completed" | "failed" | "detached" | "stopped" | "reused" | "queued" | "delivered" | "missed";
1396
+ agent?: string;
1397
+ runId?: string;
1398
+ phase?: string;
1399
+ label?: string;
1400
+ durationMs?: number;
1401
+ /** Internal provenance for a generated runs.lanes child key. */
1402
+ generatedLaneKey?: string;
1403
+ warning?: string;
1404
+ error?: string;
1405
+ }>;
1406
+ emits: unknown[];
1407
+ console: Array<{
1408
+ level: "log" | "info" | "warn" | "error";
1409
+ text: string;
1410
+ }>;
1411
+ /** Terminal keyed child receipt. Async workflows also persist it beside status.json. */
1412
+ receipt?: WorkflowReceipt;
1413
+ };
1414
+ chatProgress?: {
1415
+ mode: "off" | "live-card";
1416
+ repoRelation: "same" | "other";
1417
+ repoLabel?: string;
1418
+ };
1419
+ missions?: {
1420
+ records?: MissionRecord[];
1421
+ globalEntries?: GlobalMissionIndexRecord[];
1422
+ warnings: string[];
1423
+ };
1424
+ /** Project-scoped recurring schedule records and run history for management actions. */
1425
+ schedules?: {
1426
+ records?: unknown[];
1427
+ runs?: unknown[];
1428
+ };
1429
+ }
1430
+ export interface ArtifactPaths {
1431
+ inputPath: string;
1432
+ outputPath: string;
1433
+ jsonlPath: string;
1434
+ transcriptPath: string;
1435
+ metadataPath: string;
1436
+ }
1437
+ export type ArtifactDirPreference = "project" | "session" | "temp";
1438
+ export interface ArtifactConfig {
1439
+ enabled: boolean;
1440
+ dir?: ArtifactDirPreference;
1441
+ includeInput: boolean;
1442
+ includeOutput: boolean;
1443
+ includeJsonl: boolean;
1444
+ includeTranscript?: boolean;
1445
+ includeMetadata: boolean;
1446
+ cleanupDays: number;
1447
+ }
1448
+ export interface AsyncParallelGroupStatus {
1449
+ start: number;
1450
+ count: number;
1451
+ stepIndex: number;
1452
+ }
1453
+ export type NestedRunState = "queued" | "running" | "complete" | "failed" | "partial" | "paused" | "stopped" | "rejected";
1454
+ export type NestedOwnerState = "live" | "gone" | "unknown";
1455
+ export interface NestedRunAddress {
1456
+ id: string;
1457
+ parentRunId: string;
1458
+ parentStepIndex?: number;
1459
+ parentAgent?: string;
1460
+ depth: number;
1461
+ path: Array<{
1462
+ runId: string;
1463
+ stepIndex?: number;
1464
+ agent?: string;
1465
+ }>;
1466
+ }
1467
+ export interface NestedStepSummary {
1468
+ agent: string;
1469
+ /** Human-readable display name for the child session, when derived at launch. */
1470
+ sessionName?: string;
1471
+ status: "pending" | "running" | "complete" | "completed" | "failed" | "partial" | "paused" | "stopped" | "rejected";
1472
+ model?: string;
1473
+ thinking?: string;
1474
+ sessionFile?: string;
1475
+ transcriptPath?: string;
1476
+ transcriptError?: string;
1477
+ activityState?: ActivityState;
1478
+ lastActivityAt?: number;
1479
+ currentTool?: string;
1480
+ currentToolStartedAt?: number;
1481
+ currentPath?: string;
1482
+ turnCount?: number;
1483
+ toolCount?: number;
1484
+ startedAt?: number;
1485
+ endedAt?: number;
1486
+ error?: string;
1487
+ watchdog?: ChildWatchdogProgress;
1488
+ timedOut?: boolean;
1489
+ stopped?: boolean;
1490
+ turnBudget?: TurnBudgetState;
1491
+ turnBudgetExceeded?: boolean;
1492
+ wrapUpRequested?: boolean;
1493
+ toolBudget?: ToolBudgetState;
1494
+ toolBudgetBlocked?: boolean;
1495
+ processTerminal?: ProcessTerminal;
1496
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
1497
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
1498
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
1499
+ capabilityAudit?: SubagentCapabilityAudit;
1500
+ children?: NestedRunSummary[];
1501
+ }
1502
+ export interface NestedRunSummary extends NestedRunAddress {
1503
+ asyncDir?: string;
1504
+ pid?: number;
1505
+ sessionId?: string;
1506
+ sessionFile?: string;
1507
+ intercomTarget?: string;
1508
+ ownerIntercomTarget?: string;
1509
+ leafIntercomTarget?: string;
1510
+ ownerState?: NestedOwnerState;
1511
+ controlInbox?: string;
1512
+ capabilityToken?: string;
1513
+ mode?: SubagentRunMode;
1514
+ processTerminal?: ProcessTerminal;
1515
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
1516
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
1517
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
1518
+ capabilityAudit?: SubagentCapabilityAudit;
1519
+ state: NestedRunState;
1520
+ agent?: string;
1521
+ /** Human-readable display name for the child session, when derived at launch. */
1522
+ sessionName?: string;
1523
+ agents?: string[];
1524
+ model?: string;
1525
+ thinking?: string;
1526
+ currentStep?: number;
1527
+ chainStepCount?: number;
1528
+ parallelGroups?: AsyncParallelGroupStatus[];
1529
+ steps?: NestedStepSummary[];
1530
+ children?: NestedRunSummary[];
1531
+ activityState?: ActivityState;
1532
+ lastActivityAt?: number;
1533
+ currentTool?: string;
1534
+ currentToolStartedAt?: number;
1535
+ currentPath?: string;
1536
+ turnCount?: number;
1537
+ toolCount?: number;
1538
+ totalTokens?: TokenUsage;
1539
+ totalCost?: CostSummary;
1540
+ startedAt?: number;
1541
+ endedAt?: number;
1542
+ lastUpdate?: number;
1543
+ timeoutMs?: number;
1544
+ deadlineAt?: number;
1545
+ timedOut?: boolean;
1546
+ stopped?: boolean;
1547
+ turnBudget?: TurnBudgetState;
1548
+ turnBudgetExceeded?: boolean;
1549
+ wrapUpRequested?: boolean;
1550
+ toolBudget?: ToolBudgetState;
1551
+ toolBudgetBlocked?: boolean;
1552
+ error?: string;
1553
+ }
1554
+ export interface NestedRouteInfo {
1555
+ rootRunId: string;
1556
+ eventSink: string;
1557
+ controlInbox: string;
1558
+ capabilityToken: string;
1559
+ }
1560
+ export interface AsyncStartedEvent {
1561
+ lifecycleArtifactVersion?: SubagentLifecycleArtifactVersion;
1562
+ id?: string;
1563
+ asyncDir?: string;
1564
+ /** Parent-resolved launch directory, used as a trusted artifact root while this session is live. */
1565
+ cwd?: string;
1566
+ /** Parent-resolved child session root, used only while this session owns the live run. */
1567
+ sessionRoot?: string;
1568
+ pid?: number;
1569
+ sessionId?: string;
1570
+ completionOwnerId?: string;
1571
+ mode?: SubagentRunMode;
1572
+ agent?: string;
1573
+ agents?: string[];
1574
+ /** Truncated first child task retained for backwards compatibility. */
1575
+ task?: string;
1576
+ /** Workflow-level caller task, falling back to the first child task. */
1577
+ goal?: string;
1578
+ chain?: string[];
1579
+ chainStepCount?: number;
1580
+ parallelGroups?: AsyncParallelGroupStatus[];
1581
+ workflowGraph?: WorkflowGraphSnapshot;
1582
+ preflight?: WorkflowPreflight;
1583
+ launchContractDigest?: string;
1584
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
1585
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
1586
+ usageBudget?: UsageBudgetState;
1587
+ timeoutMs?: number;
1588
+ deadlineAt?: number;
1589
+ turnBudget?: TurnBudgetState;
1590
+ nestedRoute?: NestedRouteInfo;
1591
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
1592
+ parentWorkflowRunId?: string;
1593
+ workflowKey?: string;
1594
+ }
1595
+ export type AgentRunnerConfig = {
1596
+ type: "pi";
1597
+ } | {
1598
+ type: "external-cli";
1599
+ adapter?: "codex-exec" | "codex-exec-writer" | "claude-code" | "claude-code-writer" | "cursor-agent" | "cursor-agent-writer";
1600
+ command: string;
1601
+ args?: string[];
1602
+ promptDelivery?: "stdin";
1603
+ capabilities?: ExternalCliCapabilityNarrowing;
1604
+ } | {
1605
+ type: "external-job";
1606
+ provider: string;
1607
+ options?: Record<string, unknown>;
1608
+ };
1609
+ export type ExternalCliCapabilityNarrowing = Partial<Record<"steer" | "resume" | "structuredOutput" | "toolEvents" | "supervisor" | "forkContext" | "extensionBindings", false>>;
1610
+ export interface HerdrRemoteGitStatus {
1611
+ head?: string;
1612
+ branch?: string;
1613
+ dirty?: boolean;
1614
+ }
1615
+ /** A Herdr saved SSH machine resolved for one launch. `cwd` is the directory on that machine. */
1616
+ export interface HerdrMachineReference {
1617
+ provider: "herdr";
1618
+ id: string;
1619
+ label?: string;
1620
+ target: string;
1621
+ session?: string;
1622
+ cwd: string;
1623
+ }
1624
+ export interface ExternalCliMachineStatus extends HerdrMachineReference {
1625
+ remoteGit?: HerdrRemoteGitStatus;
1626
+ }
1627
+ export interface ExternalCliCapabilities {
1628
+ stop: true;
1629
+ steer: false;
1630
+ resume: false;
1631
+ structuredOutput: false;
1632
+ toolEvents: false;
1633
+ supervisor: "unsupported";
1634
+ forkContext: false;
1635
+ extensionBindings: false;
1636
+ }
1637
+ export interface ExternalCliReceiptMetadata {
1638
+ adapter: {
1639
+ id: "external-cli" | "codex-exec" | "codex-exec-writer" | "claude-code" | "claude-code-writer" | "cursor-agent" | "cursor-agent-writer" | "grok-build";
1640
+ version: 1;
1641
+ executionMode: "one-shot-stdin" | "one-shot-prompt-file";
1642
+ };
1643
+ capabilities: ExternalCliCapabilities;
1644
+ machine?: ExternalCliMachineStatus;
1645
+ safety?: {
1646
+ sandbox: "read-only";
1647
+ approvalPolicy: "never";
1648
+ ephemeral: true;
1649
+ } | {
1650
+ access: "workspace-write";
1651
+ sandbox: "workspace-write";
1652
+ approvalPolicy: "never";
1653
+ ephemeral: true;
1654
+ } | {
1655
+ permissionMode: "plan";
1656
+ tools: "none";
1657
+ mcp: "empty-strict";
1658
+ settingSources: "none";
1659
+ sessionPersistence: false;
1660
+ } | {
1661
+ access: "read-only";
1662
+ authentication: "existing-cli-required";
1663
+ permissionMode: "plan";
1664
+ tools: "none";
1665
+ mcp: "empty-strict";
1666
+ settingSources: "user";
1667
+ userSettingsTrust: "required";
1668
+ sessionPersistence: false;
1669
+ } | {
1670
+ access: "workspace-write";
1671
+ authentication: "existing-cli-required";
1672
+ permissionMode: "acceptEdits";
1673
+ tools: "Read,Write,Edit,Glob,Grep";
1674
+ mcp: "empty-strict";
1675
+ settingSources: "user";
1676
+ userSettingsTrust: "required";
1677
+ sessionPersistence: false;
1678
+ } | {
1679
+ access: "read-only";
1680
+ authentication: "cursor-api-key-or-existing-login";
1681
+ mode: "ask";
1682
+ sandbox: "enabled";
1683
+ workspaceTrust: "existing-required";
1684
+ sessionReuse: false;
1685
+ } | {
1686
+ access: "workspace-write";
1687
+ authentication: "cursor-api-key-or-existing-login";
1688
+ mode: "print";
1689
+ sandbox: "enabled";
1690
+ workspaceTrust: "existing-required";
1691
+ sessionReuse: false;
1692
+ };
1693
+ outputArtifacts?: {
1694
+ stdoutPath?: string;
1695
+ stderrPath?: string;
1696
+ finalOutputPath?: string;
1697
+ };
1698
+ handoff: {
1699
+ mode: "fresh";
1700
+ };
1701
+ supervisor: {
1702
+ mode: "unsupported";
1703
+ reason: string;
1704
+ };
1705
+ nonResumableReason: string;
1706
+ }
1707
+ export interface ExternalCliRunnerStatus {
1708
+ type: "external-cli";
1709
+ command: string;
1710
+ args: string[];
1711
+ promptDelivery: "stdin" | "prompt-file";
1712
+ adapter: ExternalCliReceiptMetadata["adapter"];
1713
+ safety?: ExternalCliReceiptMetadata["safety"];
1714
+ capabilities: ExternalCliCapabilities;
1715
+ unsupportedReasons: Record<Exclude<keyof ExternalCliCapabilities, "stop">, string>;
1716
+ nonResumableReason: string;
1717
+ machine?: HerdrMachineReference;
1718
+ }
1719
+ export interface ExternalJobRunnerStatus {
1720
+ type: "external-job";
1721
+ provider: string;
1722
+ options: Record<string, unknown>;
1723
+ capabilities: {
1724
+ stop: false;
1725
+ steer: false;
1726
+ resume: false;
1727
+ structuredOutput: false;
1728
+ toolEvents: false;
1729
+ };
1730
+ }
1731
+ export interface ExternalJobStatus {
1732
+ provider: string;
1733
+ providerJobId?: string;
1734
+ promptDigest: string;
1735
+ operation?: "start" | "follow-up";
1736
+ sourceRunId?: string;
1737
+ sourceStepIndex?: number;
1738
+ parentProviderJobId?: string;
1739
+ requestId?: string;
1740
+ requestDigest?: string;
1741
+ options: Record<string, unknown>;
1742
+ handleUrl?: string;
1743
+ conversationUrl?: string;
1744
+ resultArtifactPath?: string;
1745
+ state: "queued" | "running" | "completed" | "failed" | "stopped" | "blocked";
1746
+ failureCode?: string;
1747
+ failureMessage?: string;
1748
+ blockingJobId?: string;
1749
+ startedAt?: number;
1750
+ updatedAt?: number;
1751
+ }
1752
+ export interface ExternalProcessStatus {
1753
+ pid?: number;
1754
+ startedAt: number;
1755
+ endedAt?: number;
1756
+ durationMs?: number;
1757
+ exitCode?: number | null;
1758
+ processSignal?: string | null;
1759
+ stdoutPath: string;
1760
+ stderrPath: string;
1761
+ finalOutputPath?: string;
1762
+ stdoutBytes?: number;
1763
+ stderrBytes?: number;
1764
+ stdoutTruncated?: boolean;
1765
+ stderrTruncated?: boolean;
1766
+ machine?: ExternalCliMachineStatus;
1767
+ }
1768
+ export interface AsyncStatus {
1769
+ /** Exact reference returned by successful current workflow receipt publication. */
1770
+ workflowReceiptPath?: string;
1771
+ lifecycleArtifactVersion?: SubagentLifecycleArtifactVersion;
1772
+ runId: string;
1773
+ /** Parent Pi process/window that owns local completion delivery. */
1774
+ completionOwnerId?: string;
1775
+ /** Host tool-call id retained when it differs from the internal run id. */
1776
+ toolCallId?: string;
1777
+ sessionId?: string;
1778
+ mode: SubagentRunMode;
1779
+ context?: "fresh" | "fork" | "mixed";
1780
+ isNested?: boolean;
1781
+ state: "queued" | "running" | "complete" | "failed" | "partial" | "paused" | "stopped" | "rejected";
1782
+ /** Display-only dismissal marker for a reload-orphaned workflow. */
1783
+ displayDismissedAt?: number;
1784
+ error?: string;
1785
+ activityState?: ActivityState;
1786
+ lastActivityAt?: number;
1787
+ currentTool?: string;
1788
+ currentToolStartedAt?: number;
1789
+ currentPath?: string;
1790
+ turnCount?: number;
1791
+ toolCount?: number;
1792
+ steering?: SteeringStatus;
1793
+ startedAt: number;
1794
+ endedAt?: number;
1795
+ lastUpdate?: number;
1796
+ timeoutMs?: number;
1797
+ deadlineAt?: number;
1798
+ timedOut?: boolean;
1799
+ stopped?: boolean;
1800
+ turnBudget?: TurnBudgetState;
1801
+ turnBudgetExceeded?: boolean;
1802
+ wrapUpRequested?: boolean;
1803
+ toolBudget?: ToolBudgetState;
1804
+ toolBudgetBlocked?: boolean;
1805
+ usageBudget?: UsageBudgetState;
1806
+ pid?: number;
1807
+ cwd?: string;
1808
+ /** Parent-resolved child session root retained for trusted restored transcript lookup. */
1809
+ sessionRoot?: string;
1810
+ currentStep?: number;
1811
+ chainStepCount?: number;
1812
+ pendingAppends?: number;
1813
+ parallelGroups?: AsyncParallelGroupStatus[];
1814
+ workflowGraph?: WorkflowGraphSnapshot;
1815
+ preflight?: WorkflowPreflight;
1816
+ processTerminal?: ProcessTerminal;
1817
+ runFanoutBudget?: RunFanoutBudgetSnapshot;
1818
+ runFanoutBudgetDescriptor?: RunFanoutBudgetDescriptor;
1819
+ launchContractDigest?: string;
1820
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
1821
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
1822
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
1823
+ capabilityAudit?: SubagentCapabilityAudit;
1824
+ workflow?: Details["workflow"];
1825
+ workflowChildren?: WorkflowChildSummary;
1826
+ parentWorkflowRunId?: string;
1827
+ workflowKey?: string;
1828
+ lane?: WorkflowLaneMetadata;
1829
+ /** Set when a durable schedule launched this run, so completions can name their origin. */
1830
+ scheduleOrigin?: ScheduleOrigin;
1831
+ steps?: Array<{
1832
+ /** Stable caller-facing child identity for inspect/status/stop. */
1833
+ childId?: string;
1834
+ agent: string;
1835
+ /** Human-readable display name for the child session, when derived at launch. */
1836
+ sessionName?: string;
1837
+ runner?: ExternalCliRunnerStatus | ExternalJobRunnerStatus;
1838
+ externalProcess?: ExternalProcessStatus;
1839
+ externalJob?: ExternalJobStatus;
1840
+ /** Resolved launch context for this child step. */
1841
+ context?: "fresh" | "fork";
1842
+ /** Short caller-facing task/goal shown in fleet surfaces when available. */
1843
+ description?: string;
1844
+ phase?: string;
1845
+ label?: string;
1846
+ workflowKey?: string;
1847
+ lane?: WorkflowLaneMetadata;
1848
+ /** Display-only worktree path copied at launch; handoff remains authoritative. */
1849
+ worktreePath?: string;
1850
+ /** Display-only branch copied at launch; handoff remains authoritative. */
1851
+ branch?: string;
1852
+ /** Display-only provisioning provider copied at launch; handoff remains authoritative. */
1853
+ provider?: ManagedWorktreeProvider;
1854
+ /** Display-only naming evidence copied at launch; handoff remains authoritative. */
1855
+ naming?: WorktreeNaming;
1856
+ /** Child run identity for workflow capacity reconciliation. */
1857
+ runId?: string;
1858
+ /** True only when this workflow child owns a detached async runner. */
1859
+ async?: boolean;
1860
+ parentWorkflowRunId?: string;
1861
+ outputName?: string;
1862
+ structured?: boolean;
1863
+ status: "pending" | "running" | "complete" | "completed" | "failed" | "partial" | "paused" | "stopped" | "rejected";
1864
+ stopRequested?: boolean;
1865
+ stopRequestedAt?: number;
1866
+ children?: NestedRunSummary[];
1867
+ sessionFile?: string;
1868
+ transcriptPath?: string;
1869
+ transcriptError?: string;
1870
+ activityState?: ActivityState;
1871
+ lastActivityAt?: number;
1872
+ currentTool?: string;
1873
+ currentToolArgs?: string;
1874
+ currentToolStartedAt?: number;
1875
+ currentPath?: string;
1876
+ recentTools?: Array<{
1877
+ tool: string;
1878
+ args: string;
1879
+ endMs: number;
1880
+ }>;
1881
+ recentOutput?: string[];
1882
+ turnCount?: number;
1883
+ toolCount?: number;
1884
+ startedAt?: number;
1885
+ endedAt?: number;
1886
+ durationMs?: number;
1887
+ exitCode?: number | null;
1888
+ timedOut?: boolean;
1889
+ timeoutRecovery?: TimeoutRecoverySummary;
1890
+ stopped?: boolean;
1891
+ turnBudget?: TurnBudgetState;
1892
+ turnBudgetExceeded?: boolean;
1893
+ wrapUpRequested?: boolean;
1894
+ toolBudget?: ToolBudgetState;
1895
+ toolBudgetBlocked?: boolean;
1896
+ tokens?: TokenUsage;
1897
+ skills?: string[];
1898
+ model?: string;
1899
+ thinking?: string;
1900
+ contextLimit?: number;
1901
+ thinkingCeiling?: ThinkingLevel;
1902
+ requestedModel?: string;
1903
+ /** True when the child input exceeded the model context window. */
1904
+ contextOverflow?: boolean;
1905
+ totalCost?: CostSummary;
1906
+ steering?: SteeringStatus;
1907
+ error?: string;
1908
+ structuredOutput?: unknown;
1909
+ structuredOutputPath?: string;
1910
+ structuredOutputSchemaPath?: string;
1911
+ acceptance?: AcceptanceLedger;
1912
+ agentContract?: AgentContract;
1913
+ launchContractDigest?: string;
1914
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
1915
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
1916
+ execution?: ExecutionProjection;
1917
+ review?: ReviewProjection;
1918
+ effects?: EffectsProjection;
1919
+ watchdog?: ChildWatchdogProgress;
1920
+ processTerminal?: ProcessTerminal;
1921
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
1922
+ capabilityAudit?: SubagentCapabilityAudit;
1923
+ }>;
1924
+ sessionDir?: string;
1925
+ outputFile?: string;
1926
+ totalTokens?: TokenUsage;
1927
+ totalCost?: CostSummary;
1928
+ sessionFile?: string;
1929
+ outputs?: ChainOutputMap;
1930
+ parallelHandoff?: ParallelHandoffReference;
1931
+ }
1932
+ export type AsyncJobStep = Omit<NonNullable<AsyncStatus["steps"]>[number], "timeoutRecovery"> & {
1933
+ index?: number;
1934
+ description?: string;
1935
+ timeoutRecovery?: TimeoutRecoveryProjection;
1936
+ };
1937
+ export interface AsyncJobState {
1938
+ asyncId: string;
1939
+ asyncDir: string;
1940
+ /** Host tool-call id retained when it differs from the internal run id. */
1941
+ toolCallId?: string;
1942
+ /** Parent-resolved launch directory retained for trusted live artifact lookup. */
1943
+ cwd?: string;
1944
+ /** Parent-resolved child session root retained for trusted live transcript lookup. */
1945
+ sessionRoot?: string;
1946
+ status: "queued" | "running" | "complete" | "failed" | "partial" | "paused" | "stopped" | "rejected";
1947
+ /** Short caller-facing task/goal shown in fleet surfaces when available. */
1948
+ description?: string;
1949
+ pid?: number;
1950
+ sessionId?: string;
1951
+ completionOwnerId?: string;
1952
+ activityState?: ActivityState;
1953
+ lastActivityAt?: number;
1954
+ currentTool?: string;
1955
+ currentToolStartedAt?: number;
1956
+ currentPath?: string;
1957
+ turnCount?: number;
1958
+ toolCount?: number;
1959
+ steering?: SteeringStatus;
1960
+ mode?: SubagentRunMode;
1961
+ /** Run-level context summary derived from step contexts. */
1962
+ context?: "fresh" | "fork" | "mixed";
1963
+ agents?: string[];
1964
+ currentStep?: number;
1965
+ chainStepCount?: number;
1966
+ parallelGroups?: AsyncParallelGroupStatus[];
1967
+ /** Bounded host-owned CI/gate nodes loaded from the workflow status graph. */
1968
+ hostSteps?: HostStepNode[];
1969
+ /** Full bounded workflow plan, including not-yet-materialized stages. */
1970
+ workflowGraph?: WorkflowGraphSnapshot;
1971
+ steps?: AsyncJobStep[];
1972
+ preflight?: WorkflowPreflight;
1973
+ stepsTotal?: number;
1974
+ runningSteps?: number;
1975
+ completedSteps?: number;
1976
+ hasParallelGroups?: boolean;
1977
+ activeParallelGroup?: boolean;
1978
+ startedAt?: number;
1979
+ updatedAt?: number;
1980
+ timeoutMs?: number;
1981
+ deadlineAt?: number;
1982
+ timedOut?: boolean;
1983
+ stopped?: boolean;
1984
+ turnBudget?: TurnBudgetState;
1985
+ turnBudgetExceeded?: boolean;
1986
+ wrapUpRequested?: boolean;
1987
+ toolBudget?: ToolBudgetState;
1988
+ toolBudgetBlocked?: boolean;
1989
+ sessionDir?: string;
1990
+ outputFile?: string;
1991
+ totalTokens?: TokenUsage;
1992
+ totalCost?: CostSummary;
1993
+ usageBudget?: UsageBudgetState;
1994
+ sessionFile?: string;
1995
+ controlEventCursor?: number;
1996
+ nestedRoute?: NestedRouteInfo;
1997
+ nestedChildren?: NestedRunSummary[];
1998
+ parentWorkflowRunId?: string;
1999
+ workflowKey?: string;
2000
+ workflow?: Details["workflow"];
2001
+ workflowChildren?: WorkflowChildSummary;
2002
+ lane?: WorkflowLaneMetadata;
2003
+ }
2004
+ export interface ForegroundResumeChild {
2005
+ agent: string;
2006
+ /** Human-readable display name for the child session, when derived at launch. */
2007
+ sessionName?: string;
2008
+ index: number;
2009
+ context?: "fresh" | "fork";
2010
+ sessionFile?: string;
2011
+ model?: string;
2012
+ thinking?: string;
2013
+ status: SubagentResultStatus;
2014
+ activityState?: ActivityState;
2015
+ lastActivityAt?: number;
2016
+ currentTool?: string;
2017
+ currentToolStartedAt?: number;
2018
+ currentPath?: string;
2019
+ turnCount?: number;
2020
+ tokens?: number;
2021
+ window?: number;
2022
+ windowPeak?: number;
2023
+ toolCount?: number;
2024
+ exitCode?: number;
2025
+ error?: string;
2026
+ finalOutput?: string;
2027
+ outputState?: SubagentOutputState;
2028
+ outputMode?: OutputMode;
2029
+ savedOutputPath?: string;
2030
+ outputSaveError?: string;
2031
+ artifactPaths?: ArtifactPaths;
2032
+ transcriptPath?: string;
2033
+ transcriptError?: string;
2034
+ detachedReason?: string;
2035
+ acceptance?: AcceptanceLedger;
2036
+ agentContract?: AgentContract;
2037
+ /** Private bounded launch fields needed to preserve the child contract on resume. */
2038
+ resumeContract?: {
2039
+ modelResponseAliases?: Record<string, string[]>;
2040
+ outputSchema?: JsonSchemaObject | false;
2041
+ agentContract?: AgentContract;
2042
+ acceptance?: AcceptanceInput;
2043
+ output?: string | boolean;
2044
+ outputMode?: OutputMode;
2045
+ };
2046
+ launchContractDigest?: string;
2047
+ /** Private retained launch authority. Never project into status or result output. */
2048
+ extensionBindings?: ExtensionBindings;
2049
+ requiredExtensions?: RequiredChildExtensionSnapshot;
2050
+ launchResolvedExtensions?: LaunchResolvedChildExtensions;
2051
+ runtimeAcknowledgedExtensions?: RuntimeAcknowledgedChildExtensions;
2052
+ execution?: ExecutionProjection;
2053
+ review?: ReviewProjection;
2054
+ effects?: EffectsProjection;
2055
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
2056
+ capabilityAudit?: SubagentCapabilityAudit;
2057
+ updatedAt?: number;
2058
+ }
2059
+ export interface ForegroundResumeRun {
2060
+ runId: string;
2061
+ mode: SubagentRunMode;
2062
+ cwd: string;
2063
+ /** Originating parent session. Detached exits can outlive the active session. */
2064
+ sessionId?: string;
2065
+ updatedAt: number;
2066
+ children: ForegroundResumeChild[];
2067
+ }
2068
+ export interface ForegroundChildControl {
2069
+ index: number;
2070
+ agent: string;
2071
+ /** Human-readable display name for the child's session, when derived at launch. */
2072
+ sessionName?: string;
2073
+ description?: string;
2074
+ startedAt: number;
2075
+ updatedAt: number;
2076
+ currentActivityState?: ActivityState;
2077
+ lastActivityAt?: number;
2078
+ currentTool?: string;
2079
+ currentToolStartedAt?: number;
2080
+ currentPath?: string;
2081
+ turnCount?: number;
2082
+ tokens?: number;
2083
+ inputTokens?: number;
2084
+ outputTokens?: number;
2085
+ window?: number;
2086
+ windowPeak?: number;
2087
+ model?: string;
2088
+ thinking?: string;
2089
+ toolCount?: number;
2090
+ interrupt?: () => boolean;
2091
+ detach?: () => boolean;
2092
+ /** Steer the live in-process child session; undefined until the session exists. */
2093
+ steer?: (input: ForegroundSteerInput) => Promise<ForegroundSteerOutcome>;
2094
+ }
2095
+ export interface ForegroundSteerInput {
2096
+ message: string;
2097
+ mode?: "steer" | "follow_up" | "auto";
2098
+ }
2099
+ export interface ForegroundSteerOutcome {
2100
+ state: "delivered" | "queued" | "failed";
2101
+ reason?: string;
2102
+ }
2103
+ export interface ForegroundRunControl {
2104
+ runId: string;
2105
+ /** Workflow shell that owns this live foreground child, when applicable. */
2106
+ parentWorkflowRunId?: string;
2107
+ /** Stable workflow lane key for this live foreground child. */
2108
+ workflowKey?: string;
2109
+ /** Originating parent session; required for public fleet projection. */
2110
+ sessionId?: string;
2111
+ mode: SubagentRunMode;
2112
+ startedAt: number;
2113
+ updatedAt: number;
2114
+ /** Effective working directory used to resolve live transcript artifacts. */
2115
+ cwd?: string;
2116
+ currentAgent?: string;
2117
+ /** Human-readable display name for the current child session, when derived at launch. */
2118
+ sessionName?: string;
2119
+ currentIndex?: number;
2120
+ /** Short caller-facing task/goal shown in fleet surfaces when available. */
2121
+ description?: string;
2122
+ currentActivityState?: ActivityState;
2123
+ lastActivityAt?: number;
2124
+ currentTool?: string;
2125
+ currentToolStartedAt?: number;
2126
+ currentPath?: string;
2127
+ turnCount?: number;
2128
+ tokens?: number;
2129
+ inputTokens?: number;
2130
+ outputTokens?: number;
2131
+ window?: number;
2132
+ windowPeak?: number;
2133
+ model?: string;
2134
+ thinking?: string;
2135
+ toolCount?: number;
2136
+ /** Independently tracked children for foreground parallel work and fleet inspection. */
2137
+ activeChildren?: Map<number, ForegroundChildControl>;
2138
+ /** Live Prompt Audit redo callback. It is current-session memory only. */
2139
+ promptAuditRedo?: (index: number, guidance: string) => Promise<{
2140
+ text: string;
2141
+ isError?: boolean;
2142
+ }>;
2143
+ /** Memory-only source run for Prompt Audit redo. */
2144
+ sourceRunId?: string;
2145
+ /** Memory-only replacement run started by Prompt Audit redo. */
2146
+ supersededByRunId?: string;
2147
+ /** Scheduling owners that may still launch another child. Removal is safe only at zero. */
2148
+ schedulingOwners?: number;
2149
+ nestedRoute?: NestedRouteInfo;
2150
+ nestedChildren?: NestedRunSummary[];
2151
+ interrupt?: () => boolean;
2152
+ detach?: () => boolean;
2153
+ steer?: ForegroundChildControl["steer"];
2154
+ }
2155
+ export interface WaitSubscriptionRecord {
2156
+ version: 1;
2157
+ token: string;
2158
+ sessionId: string;
2159
+ targetKind: "async" | "foreground";
2160
+ runId: string;
2161
+ requestedId: string;
2162
+ createdAt: number;
2163
+ expiresAt: number;
2164
+ }
2165
+ export interface ActiveAsyncCapacitySnapshot {
2166
+ used: number;
2167
+ /** Zero means the opt-in cap is disabled. */
2168
+ limit: number;
2169
+ }
2170
+ export interface SubagentState {
2171
+ baseCwd: string;
2172
+ currentSessionId: string | null;
2173
+ /** Exact SDK runtime session ID for supervisor ownership; never a session file path. */
2174
+ supervisorOwnerSessionId?: string | null;
2175
+ /** Session for which active status projections were restored successfully. */
2176
+ statusProjectionSessionId?: string | null;
2177
+ /** Reload-stable identity for this parent Pi process/window. */
2178
+ completionOwnerId?: string;
2179
+ /** Runtime-owned artifact resolution inputs used by Fleet transcript targeting. */
2180
+ artifactDirPreference?: ArtifactDirPreference;
2181
+ /** Runtime authority snapshot used by optional inspector controls. */
2182
+ authorityPolicy?: AuthorityPolicyConfig;
2183
+ /** Runtime mission-store snapshot used by optional inspector context. */
2184
+ missionStoreConfig?: MissionStoreConfig;
2185
+ parentSessionFile?: string | null;
2186
+ /** Extension-owned roots trusted for child session transcript reads. */
2187
+ trustedSessionRoots?: string[];
2188
+ /** Pi sessions base that caps exact runtime-recorded session file trust. */
2189
+ trustedSessionFileRoot?: string;
2190
+ /** Live async session roots created by this parent executor, keyed by run id. */
2191
+ liveAsyncSessionRoots?: Map<string, string>;
2192
+ /** Foreground nested routes retained after their direct parent settles, keyed by root run id. */
2193
+ retainedForegroundNestedRoutes?: Map<string, NestedRouteInfo>;
2194
+ /** Lookup authority outlives live controls, but never crosses the owning session. */
2195
+ retainedNestedLookupRoutes?: {
2196
+ sessionId: string;
2197
+ routes: Map<string, NestedRouteInfo>;
2198
+ };
2199
+ /** Last valid parent session model observed for this session; used when continuation contexts omit ctx.model. */
2200
+ lastParentModel?: {
2201
+ provider: string;
2202
+ id: string;
2203
+ };
2204
+ subagentInProgress?: boolean;
2205
+ subagentSpawns?: {
2206
+ sessionId: string | null;
2207
+ count: number;
2208
+ configuredLimit?: number | null;
2209
+ granted?: number;
2210
+ grantHistory?: SpawnBudgetGrant[];
2211
+ };
2212
+ /** Current-session top-level async capacity projection. */
2213
+ activeAsyncCapacity?: ActiveAsyncCapacitySnapshot;
2214
+ /** Herdr project panes opened by this Pi session, keyed by project root. */
2215
+ herdrProjectPanes?: Map<string, HerdrProjectPaneSnapshot>;
2216
+ asyncJobs: Map<string, AsyncJobState>;
2217
+ /** Current-session active and recent async runs for the native fleet inspector. */
2218
+ fleetJobs?: Map<string, AsyncJobState>;
2219
+ /** Suppress dynamic status widgets while the fleet overlay owns the viewport. */
2220
+ fleetInspectorOpen?: boolean;
2221
+ /** Temporarily suppress dynamic widgets while Pi compacts the session. */
2222
+ widgetsSuspended?: boolean;
2223
+ foregroundRuns?: Map<string, ForegroundResumeRun>;
2224
+ foregroundControls: Map<string, ForegroundRunControl>;
2225
+ lastForegroundControlId: string | null;
2226
+ cleanupTimers: Map<string, ReturnType<typeof setTimeout>>;
2227
+ lastUiContext: ExtensionContext | null;
2228
+ poller: NodeJS.Timeout | null;
2229
+ completionSeen: Map<string, number>;
2230
+ /** Session-owned terminal result payloads observed by the result watcher, keyed by run id and pruned by the completion TTL. */
2231
+ completedResults?: Map<string, {
2232
+ sessionId: string;
2233
+ seenAt: number;
2234
+ completion: WaitCompletion;
2235
+ }>;
2236
+ watcher: FSWatcher | null;
2237
+ watcherRestartTimer: ReturnType<typeof setTimeout> | null;
2238
+ resultFileCoalescer: {
2239
+ schedule(file: string, delayMs?: number): boolean;
2240
+ clear(): void;
2241
+ };
2242
+ /** Current-session durable non-blocking wait registrations. */
2243
+ waitSubscriptions?: Map<string, WaitSubscriptionRecord>;
2244
+ /** Live in-process workflow controllers. Durable status remains on disk after settlement. */
2245
+ workflowControllers?: Map<string, AbortController>;
2246
+ /** Live in-process workflow child stoppers keyed by parent workflow run id. */
2247
+ workflowChildStops?: Map<string, (childId: string, message?: string) => boolean>;
2248
+ }
2249
+ export interface HerdrProjectPaneSnapshot {
2250
+ projectRoot: string;
2251
+ bindingPath: string;
2252
+ paneId: string;
2253
+ openedAt: string;
2254
+ lastFocusedAt?: string;
2255
+ state: "open" | "stale";
2256
+ agentStatus: string;
2257
+ ownership: "verified" | "unknown" | "mismatch";
2258
+ safeToClose: boolean;
2259
+ refreshedAt: number;
2260
+ summary?: string;
2261
+ tabId?: string;
2262
+ workspaceId?: string;
2263
+ terminalTitle?: string;
2264
+ staleReason?: string;
2265
+ }
2266
+ export type DisplayItem = {
2267
+ type: "text";
2268
+ text: string;
2269
+ } | {
2270
+ type: "tool";
2271
+ name: string;
2272
+ args: Record<string, unknown>;
2273
+ };
2274
+ export interface ErrorInfo {
2275
+ hasError: boolean;
2276
+ exitCode?: number;
2277
+ errorType?: string;
2278
+ details?: string;
2279
+ }
2280
+ export interface IntercomEventBus {
2281
+ on(channel: string, handler: (data: unknown) => void): () => void;
2282
+ emit(channel: string, data: unknown): void;
2283
+ }
2284
+ export declare const INTERCOM_DETACH_REQUEST_EVENT = "pi-intercom:detach-request";
2285
+ export declare const INTERCOM_DETACH_RESPONSE_EVENT = "pi-intercom:detach-response";
2286
+ export declare const SUBAGENT_ASYNC_STARTED_EVENT = "subagent:async-started";
2287
+ export declare const SUBAGENT_ASYNC_COMPLETE_EVENT = "subagent:async-complete";
2288
+ export declare const SUBAGENT_PROCESS_TERMINAL_EVENT = "subagent:process-terminal";
2289
+ export declare const SUBAGENT_FOREGROUND_COMPLETE_EVENT = "subagent:foreground-complete";
2290
+ export declare const SUBAGENT_CONTROL_EVENT = "subagent:control-event";
2291
+ export declare const SUBAGENT_CONTROL_INTERCOM_EVENT = "subagent:control-intercom";
2292
+ export declare const SUBAGENT_STEERING_NOTICE_EVENT = "subagent:steering-notice";
2293
+ export declare const SUBAGENT_CHILD_STATUS_EVENT = "subagent:child-status";
2294
+ export declare const SUBAGENT_RESULT_INTERCOM_EVENT = "subagent:result-intercom";
2295
+ export declare const SUBAGENT_RESULT_INTERCOM_DELIVERY_EVENT = "subagent:result-intercom-delivery";
2296
+ export interface SubagentChildStatusEvent {
2297
+ type: "subagent.child-status";
2298
+ version: 1;
2299
+ runId: string;
2300
+ childId: string;
2301
+ status: "stopping" | "stopped";
2302
+ ts: number;
2303
+ reason?: string;
2304
+ source?: "rpc" | "async";
2305
+ asyncDir?: string;
2306
+ stepIndex?: number;
2307
+ agent?: string;
2308
+ childRunId?: string;
2309
+ workflowKey?: string;
2310
+ phase?: string;
2311
+ label?: string;
2312
+ }
2313
+ /** Live controls for one in-process foreground child session. */
2314
+ export interface ForegroundChildSessionControls {
2315
+ steer: (text: string) => Promise<void>;
2316
+ followUp: (text: string) => Promise<void>;
2317
+ }
2318
+ export interface RunSyncOptions {
2319
+ /** Exact discovery provenance for an unknown-agent error; omission uses defensive fallback discovery. */
2320
+ unknownAgentDiagnosticContext?: import("../agents/agents.ts").UnknownAgentDiagnosticContext;
2321
+ /** Session factory for the in-process child; defaults to the process-wide factory. */
2322
+ childSessionFactory?: import("../runs/shared/child-session.ts").ChildSessionFactory;
2323
+ /** Invoking parent registry inherited only by its local foreground launch. */
2324
+ parentProviderRegistry?: import("../runs/shared/child-session.ts").ParentProviderRegistry;
2325
+ /** The launching executor's own child runtime when it is itself an in-process child. */
2326
+ childRuntime?: import("../runs/shared/child-runtime-config.ts").ChildRuntimeConfig;
2327
+ /** Fires once the child session exists and can be steered. */
2328
+ onChildSession?: (controls: ForegroundChildSessionControls) => void;
2329
+ /** Opt-in global permission rules; missing tools remain allowed. */
2330
+ permissions?: import("../runs/shared/permissions.ts").PermissionConfig;
2331
+ /** Session id of the direct parent session for permission-system ask forwarding. */
2332
+ parentSessionId?: string;
2333
+ /** Resolved launch context for this child. */
2334
+ context?: "fresh" | "fork";
2335
+ cwd?: string;
2336
+ /** Resolved pane-native saved-machine placement. */
2337
+ machine?: HerdrMachineReference;
2338
+ /** Explicit read override resolved by the remote ambient agent profile. */
2339
+ remoteReads?: string[] | false;
2340
+ /** Original cwd input retained for launch diagnostics. */
2341
+ requestedCwd?: string;
2342
+ signal?: AbortSignal;
2343
+ interruptSignal?: AbortSignal;
2344
+ timeoutMs?: number;
2345
+ deadlineAt?: number;
2346
+ /** Per-call per-tool timeout (ms), resolved with the agent/config/environment ladder at execution. */
2347
+ toolTimeoutMs?: number;
2348
+ /** Raw global config.toolTimeoutMs, used by the per-child resolver. */
2349
+ configToolTimeoutMs?: number;
2350
+ usageBudget?: UsageBudgetConfig;
2351
+ toolBudget?: ResolvedToolBudget;
2352
+ allowZeroToolBudget?: boolean;
2353
+ allowIntercomDetach?: boolean;
2354
+ intercomEvents?: IntercomEventBus;
2355
+ onUpdate?: (r: import("@earendil-works/pi-agent-core").AgentToolResult<Details>) => void;
2356
+ /** Internal structured-delegation transport optimization: skip unchanged live snapshots. */
2357
+ suppressUnchangedDelegationUpdates?: boolean;
2358
+ onControlEvent?: (event: ControlEvent) => void;
2359
+ /** Exposes a non-terminating detach callback while the child is active. */
2360
+ onDetachReady?: (detach: (reason?: string) => boolean) => void;
2361
+ /** Internal foreground receipt proposal; returns true only when the outer waiter accepted it. */
2362
+ onDetachReceipt?: (result: SingleResult) => boolean;
2363
+ /** Authoritative terminal result, emitted only after the full detached run finalizes. */
2364
+ onDetachedExit?: (result: SingleResult) => void | Promise<void>;
2365
+ controlConfig?: ResolvedControlConfig;
2366
+ intercomSessionName?: string;
2367
+ orchestratorIntercomTarget?: string;
2368
+ maxOutput?: MaxOutputConfig;
2369
+ artifactsDir?: string;
2370
+ artifactConfig?: ArtifactConfig;
2371
+ runId: string;
2372
+ index?: number;
2373
+ sessionDir?: string;
2374
+ sessionFile?: string;
2375
+ share?: boolean;
2376
+ outputPath?: string;
2377
+ outputClaimPath?: string;
2378
+ outputMode?: OutputMode;
2379
+ maxSubagentDepth?: number;
2380
+ /** Effective parent wait-tool setting propagated to the child runtime. */
2381
+ waitToolEnabled?: boolean;
2382
+ /** Effective parent default wait window propagated to the child runtime. */
2383
+ waitToolDefaultTimeoutMs?: number;
2384
+ capabilityCeiling?: ResolvedSubagentCapabilityCeiling;
2385
+ runFanoutBudget?: RunFanoutBudgetDescriptor;
2386
+ nestedRoute?: NestedRouteInfo;
2387
+ /** Override the agent's default model (format: "provider/id" or just "id") */
2388
+ modelOverride?: string;
2389
+ /** Opt into priority service tier for supported native OpenAI-Codex launches. */
2390
+ fast?: boolean;
2391
+ /** The override came from the running parent session, not configuration. */
2392
+ modelOverrideFromParent?: boolean;
2393
+ /** How the launch model was selected: explicit per-call, configured agent primary, or inherited parent. */
2394
+ modelOrigin?: "explicit" | "inherited" | "configured";
2395
+ /** Override the agent's default thinking level for this run */
2396
+ thinkingOverride?: AgentConfig["thinking"];
2397
+ thinkingCeiling?: ThinkingLevel;
2398
+ requiredExtensions?: RequiredChildExtensionSnapshot;
2399
+ extensionBindings?: ExtensionBindings;
2400
+ /** Package-internal one-use authorization for one foreground workflow child. */
2401
+ workflowChildPermitLaunch?: WorkflowChildPermitContext;
2402
+ /** Registry models available for heuristic bare-model resolution */
2403
+ availableModels?: Array<{
2404
+ provider: string;
2405
+ id: string;
2406
+ fullId: string;
2407
+ contextWindow?: number;
2408
+ }>;
2409
+ modelResponseAliases?: Record<string, string[]>;
2410
+ /** Current parent-session provider to prefer for ambiguous bare model ids */
2411
+ preferredModelProvider?: string;
2412
+ /** Parent Pi event host used to snapshot runtime-registered MCP servers before child launch. */
2413
+ runtimeSnapshotHost?: import("../runs/shared/mcp-direct-tool-allowlist.ts").McpRuntimeSnapshotHost;
2414
+ /** Optional subagent model-scope enforcement. */
2415
+ modelScope?: ModelScopeRule | ModelScopeRule[];
2416
+ /** Skills to make available (overrides agent default if provided) */
2417
+ skills?: string[];
2418
+ structuredOutput?: {
2419
+ schema: JsonSchemaObject;
2420
+ schemaPath: string;
2421
+ outputPath: string;
2422
+ acceptanceReportPath?: string;
2423
+ acceptanceReportRequired?: boolean;
2424
+ };
2425
+ agentContract?: AgentContract;
2426
+ acceptance?: AcceptanceInput;
2427
+ acceptanceContext?: {
2428
+ mode?: SubagentRunMode;
2429
+ async?: boolean;
2430
+ dynamic?: boolean;
2431
+ dynamicGroup?: boolean;
2432
+ };
2433
+ /** Private live callback for the exact child prompt after runtime acceptance injection. */
2434
+ onEffectivePrompt?: (prompt: string) => void;
2435
+ /** Internal lifecycle hook for the observer shared across retries of one logical child. */
2436
+ onOrcaProgressTabCreated?: (tab: import("../runs/shared/orca-progress-tabs.ts").OrcaProgressTab) => void;
2437
+ }
2438
+ export type IntercomBridgeMode = "off" | "fork-only" | "always";
2439
+ export interface IntercomBridgeConfig {
2440
+ mode?: IntercomBridgeMode;
2441
+ instructionFile?: string;
2442
+ /** Deliver grouped completion messages through an external acknowledged intercom listener. */
2443
+ resultDelivery?: boolean;
2444
+ }
2445
+ interface TopLevelParallelConfig {
2446
+ maxTasks?: number;
2447
+ concurrency?: number;
2448
+ }
2449
+ interface ExtensionChainConfig {
2450
+ dynamicFanout?: {
2451
+ maxItems?: number;
2452
+ };
2453
+ }
2454
+ export interface ProactiveSkillSubagentsConfig {
2455
+ enabled?: boolean;
2456
+ minReferences?: number;
2457
+ maxRecommendations?: number;
2458
+ preferredAgent?: string;
2459
+ }
2460
+ export type ToolDescriptionMode = "full" | "compact" | "custom";
2461
+ export type InlineToolDisplay = "rich" | "summary";
2462
+ export interface ScheduledRunsConfig {
2463
+ enabled?: boolean;
2464
+ maxPending?: number;
2465
+ /** Absolute or `~/` root for per-project durable schedules. */
2466
+ storeRoot?: string;
2467
+ }
2468
+ export type FleetViewPlacement = "aboveEditor" | "belowEditor";
2469
+ export declare const FLEET_KEYBINDING_ACTIONS: readonly ["close", "scrollUp", "scrollDown", "selectUp", "selectDown", "selectFirst", "selectLast", "pageUp", "pageDown", "refresh", "steer", "inspect", "stop", "toggleTools"];
2470
+ export type FleetKeybindingAction = typeof FLEET_KEYBINDING_ACTIONS[number];
2471
+ export type FleetKeybindingsConfig = Partial<Record<FleetKeybindingAction, string[]>>;
2472
+ export interface OrcaProgressTabsConfig {
2473
+ /** Create one Orca observer tab per top-level subagent call. Experimental and opt-in. */
2474
+ enabled?: boolean;
2475
+ }
2476
+ export interface MainWindowRendererConfig {
2477
+ /** Unit of horizontal space in main chat subagent call/result rows. Omit to preserve current spacing. Set 0 for no extra padding. */
2478
+ horizontalSpacing?: number;
2479
+ /** Maximum collapsed rich-result rows. Expanded output is not capped. */
2480
+ compactResultMaxLines?: number;
2481
+ }
2482
+ export interface ForkContextConfig {
2483
+ /** Keep the complete fork by default, or summarize large text-only tool results before launch. */
2484
+ mode?: "full" | "pruned";
2485
+ /** Required pruning model when mode is "pruned". */
2486
+ model?: string;
2487
+ }
2488
+ export interface ActiveAsyncCapacityConfig {
2489
+ /** Reclaim failed runner slots after this age when process proof is unknown; false keeps strict retention. */
2490
+ abandonedSlotReleaseAfterMs?: number | false;
2491
+ }
2492
+ export interface ExtensionConfig {
2493
+ asyncByDefault?: boolean;
2494
+ /** Set the context for launches that omit an explicit context. */
2495
+ defaultSubagentContext?: "fresh" | "fork";
2496
+ /** Configure how every resolved fork session is prepared before child spawn. */
2497
+ forkContext?: ForkContextConfig;
2498
+ /** Optional shortcut that detaches the active foreground single-subagent run. */
2499
+ foregroundDetachShortcut?: string;
2500
+ /** Show the Claude Code-style navigable fleet. Defaults to true. */
2501
+ fleetView?: boolean;
2502
+ /** Place the persistent FleetView above or below the editor. Defaults to belowEditor. */
2503
+ fleetViewPlacement?: FleetViewPlacement;
2504
+ /** Local keybindings for the full Fleet inspector. */
2505
+ fleetKeybindings?: FleetKeybindingsConfig;
2506
+ /** Show the under-editor async runs widget. Defaults to true, including when FleetView is enabled. */
2507
+ asyncWidget?: boolean;
2508
+ /** Exact provider/model candidates mapped to operator-declared equivalent response IDs. Empty arrays add no accepted IDs. */
2509
+ modelResponseAliases?: Record<string, string[]>;
2510
+ /** Tool description variant registered for the parent-facing subagent tool. Defaults to split metadata. */
2511
+ toolDescriptionMode?: ToolDescriptionMode;
2512
+ /** Inline chat rendering for the subagent tool. Defaults to rich. */
2513
+ inlineToolDisplay?: InlineToolDisplay;
2514
+ /** Density controls for the main chat subagent call/result renderer. */
2515
+ mainWindowRenderer?: MainWindowRendererConfig;
2516
+ /** Experimental observer: mirror each native subagent's progress into a new Orca tab. */
2517
+ orcaProgressTabs?: OrcaProgressTabsConfig;
2518
+ forceTopLevelAsync?: boolean;
2519
+ waitTool?: WaitToolConfig;
2520
+ defaultSessionDir?: string;
2521
+ singleRunOutputBaseDir?: string;
2522
+ maxSubagentDepth?: number;
2523
+ /** Optional cumulative session cap. Unset or 0 means unlimited. */
2524
+ maxSubagentSpawnsPerSession?: number;
2525
+ /** Cumulative logical-child cap for one top-level run tree. Defaults to 64. */
2526
+ maxSubagentSpawnsPerRun?: number;
2527
+ /** Optional active top-level async run cap per parent session. Unset or 0 means unlimited. */
2528
+ maxActiveAsyncRunsPerSession?: number;
2529
+ /** Active-capacity cleanup policy. */
2530
+ capacity?: ActiveAsyncCapacityConfig;
2531
+ /** Global cap on simultaneously-running subagent tasks within a single run. Defaults to 20. */
2532
+ globalConcurrencyLimit?: number;
2533
+ /**
2534
+ * Global default runtime deadline in milliseconds. It replaces the built-in
2535
+ * 30-minute backstop for single, parallel, and chain launches (foreground, plus
2536
+ * plain single-agent async runs) when neither the call (`timeoutMs`/`maxRuntimeMs`)
2537
+ * nor the selected agent provides a timeout. Explicit call values and agent
2538
+ * frontmatter defaults still win. Composite async runs (chain/parallel/workflow)
2539
+ * stay unbounded at the top level by design — their children are bounded individually.
2540
+ * Must be a positive integer; invalid values are ignored.
2541
+ */
2542
+ timeoutMs?: number;
2543
+ /**
2544
+ * Optional hard per-tool-call timeout in milliseconds. Bounds a single
2545
+ * subagent tool call inside the child; the run-level timeout remains
2546
+ * authoritative. Known-fast built-in tools have a five-minute default when
2547
+ * this is undefined. Precedence: call param > agent frontmatter > this config >
2548
+ * PI_SUBAGENT_TOOL_TIMEOUT_MS. Must be a positive integer; invalid values
2549
+ * are rejected with an error.
2550
+ */
2551
+ toolTimeoutMs?: number;
2552
+ /**
2553
+ * Global default for the async single-agent `checkpointBeforeDeadlineMs` launch option: the runner requests that
2554
+ * the child checkpoint and stop this many milliseconds before its run deadline (best-effort). The call param wins; values that
2555
+ * leave no run time before the checkpoint disarm it.
2556
+ */
2557
+ checkpointBeforeDeadlineMs?: number;
2558
+ control?: ControlConfig;
2559
+ completionBatch?: CompletionBatchConfig;
2560
+ toolBudget?: ToolBudgetConfig;
2561
+ /** Opt-in native tool permissions. Bash remains outside this policy. */
2562
+ permissions?: import("../runs/shared/permissions.ts").PermissionConfig;
2563
+ usageBudget?: UsageBudgetConfig;
2564
+ parallel?: TopLevelParallelConfig;
2565
+ chain?: ExtensionChainConfig;
2566
+ worktreeSetupHook?: string;
2567
+ worktreeSetupHookTimeoutMs?: number;
2568
+ worktreeBaseDir?: string;
2569
+ /** Enable managed worktrees when a launch does not provide an explicit value. */
2570
+ worktree?: boolean;
2571
+ /** Worktree allocator selection. Defaults to auto. */
2572
+ worktreeProvider?: WorktreeProvider;
2573
+ /** Namespace used by managed worktree branches. Defaults to pi-subagents/. */
2574
+ worktreeBranchPrefix?: string;
2575
+ /** Where to store subagent artifact files. Defaults to "session" (the pi session directory, or OS temp when unavailable). Set to "project" for cwd/.pi/subagents. */
2576
+ artifactDir?: ArtifactDirPreference;
2577
+ /** Artifact cleanup retention. Set cleanupDays to 0 to disable cleanup. */
2578
+ artifactConfig?: Pick<ArtifactConfig, "cleanupDays">;
2579
+ intercomBridge?: IntercomBridgeConfig;
2580
+ /** Control how slow result-index scans are logged. Defaults to \"activity\".
2581
+ * - \"all\": log every slow scan, including scans that find nothing.
2582
+ * - \"activity\": log only slow scans that found or scheduled work. Silences
2583
+ * the periodic healthy rescan that inspects zero files while no async runs
2584
+ * are pending, which otherwise spams the session transcript.
2585
+ * - \"off\": never log slow result-index scans. */
2586
+ resultScanLogging?: "all" | "activity" | "off";
2587
+ proactiveSkillSubagents?: ProactiveSkillSubagentsConfig | false;
2588
+ scheduledRuns?: ScheduledRunsConfig;
2589
+ /** Durable mission behavior. Missions are automatic by default; set enabled:false to disable auto-create. Explicit mission actions/fields still work. */
2590
+ missions?: MissionStoreConfig;
2591
+ /** Small fixed authority policy for the supported operational actions. */
2592
+ authorityPolicy?: AuthorityPolicyConfig;
2593
+ }
2594
+ export declare const DEFAULT_MAX_OUTPUT: Required<MaxOutputConfig>;
2595
+ export declare const DEFAULT_ARTIFACT_CONFIG: ArtifactConfig;
2596
+ export declare function resolveTempScopeId(options?: {
2597
+ env?: NodeJS.ProcessEnv;
2598
+ getuid?: (() => number) | undefined;
2599
+ userInfo?: (() => {
2600
+ username?: string | null;
2601
+ }) | undefined;
2602
+ homedir?: (() => string) | undefined;
2603
+ }): string;
2604
+ export declare const MAX_CONCURRENCY = 4;
2605
+ export declare const TEMP_ROOT_DIR: string;
2606
+ export declare const RESULTS_DIR: string;
2607
+ export declare const ASYNC_DIR: string;
2608
+ export declare const CHAIN_RUNS_DIR: string;
2609
+ export declare const TEMP_ARTIFACTS_DIR: string;
2610
+ export declare const DIRS: {
2611
+ results: string;
2612
+ async: string;
2613
+ chain: string;
2614
+ artifacts: string;
2615
+ };
2616
+ export declare const WIDGET_KEY = "subagent-async";
2617
+ export declare const SLASH_RESULT_TYPE = "subagent-slash-result";
2618
+ export declare const SLASH_TEXT_RESULT_TYPE = "subagent-slash-text-result";
2619
+ export declare const SLASH_SUBAGENT_REQUEST_EVENT = "subagent:slash:request";
2620
+ export declare const SLASH_SUBAGENT_STARTED_EVENT = "subagent:slash:started";
2621
+ export declare const SLASH_SUBAGENT_RESPONSE_EVENT = "subagent:slash:response";
2622
+ export declare const SLASH_SUBAGENT_UPDATE_EVENT = "subagent:slash:update";
2623
+ export declare const SLASH_SUBAGENT_CANCEL_EVENT = "subagent:slash:cancel";
2624
+ export declare const POLL_INTERVAL_MS = 250;
2625
+ export declare const WIDGET_ANIMATION_INTERVAL_MS = 1000;
2626
+ export declare const MAX_WIDGET_JOBS = 4;
2627
+ export declare const DEFAULT_SUBAGENT_MAX_DEPTH = 2;
2628
+ export declare const SUBAGENT_ACTIONS: readonly ["list", "get", "models", "children.list", "guide", "validate", "create", "update", "delete", "eject", "disable", "enable", "reset", "mission.create", "mission.list", "mission.show", "mission.update", "mission.resolve-decision", "mission.attach-run", "mission.close", "worktree.discard", "worktree.cleanup", "lane.status", "lane.recordMerge", "lane.recordSupersession", "refine", "refine.show", "refine.rollback", "inspector.open", "inspector.command", "inspector.status", "inspector.close", "project.open", "project.status", "project.close", "status", "debug.run", "grant-spawn-budget", "interrupt", "resume", "steer", "stop", "dismiss", "doctor", "watchdog.status", "watchdog.check", "watchdog.configure", "watchdog.recommend-model", "schedule.create", "schedule.list", "schedule.show", "schedule.history", "schedule.pause", "schedule.resume", "schedule.run", "schedule.run-due", "schedule.delete"];
2629
+ export declare const DEFAULT_FORK_PREAMBLE: string;
2630
+ export declare function resolveTopLevelParallelMaxTasks(value: unknown): number;
2631
+ export declare function resolveTopLevelParallelConcurrency(override: unknown, configValue: unknown): number;
2632
+ export declare function getAsyncConfigPath(suffix: string): string;
2633
+ export declare function wrapForkTask(task: string, preamble?: string | false): string;
2634
+ export declare function normalizeMaxSubagentDepth(value: unknown): number | undefined;
2635
+ /** Depth context of the executor's own child runtime, when it runs as an in-process child. */
2636
+ export interface SubagentDepthContext {
2637
+ depth: number;
2638
+ maxDepth?: number;
2639
+ }
2640
+ /** Operator override for the top-level parent; children inherit their limit through their runtime config. */
2641
+ export declare const SUBAGENT_MAX_DEPTH_ENV = "PI_SUBAGENT_MAX_DEPTH";
2642
+ export declare function resolveCurrentMaxSubagentDepth(configMaxDepth?: number, runtime?: SubagentDepthContext): number;
2643
+ export declare function resolveChildMaxSubagentDepth(parentMaxDepth: number, agentMaxDepth?: number): number;
2644
+ /** Depth of the executor itself: 0 for a top-level parent, its own child depth otherwise. */
2645
+ export declare function resolveCurrentSubagentDepth(runtime?: SubagentDepthContext): number;
2646
+ export declare function checkSubagentDepth(configMaxDepth?: number, runtime?: SubagentDepthContext): {
2647
+ blocked: boolean;
2648
+ depth: number;
2649
+ maxDepth: number;
2650
+ };
2651
+ /** Depth context handed to a child launched by an executor at `runtime` (undefined for a top-level parent). */
2652
+ export declare function resolveChildDepth(maxDepth?: number, runtime?: SubagentDepthContext): Required<SubagentDepthContext>;
2653
+ export declare function normalizeMaxSubagentSpawnsPerSession(value: unknown): number | undefined;
2654
+ export declare function resolveMaxSubagentSpawnsPerSession(configMaxSpawns?: number): number | undefined;
2655
+ export declare const DEFAULT_MAX_SUBAGENT_SPAWNS_PER_RUN = 64;
2656
+ export declare function normalizeMaxSubagentSpawnsPerRun(value: unknown): number | undefined;
2657
+ export declare function resolveMaxSubagentSpawnsPerRun(configMaxSpawns?: number): number;
2658
+ export declare function truncateOutput(output: string, config: Required<MaxOutputConfig>, artifactPath?: string): TruncationResult;
2659
+ export {};
2660
+ //# sourceMappingURL=types.d.ts.map