@qduc/term2 0.29.1 → 0.30.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/dist/agent.d.ts +13 -0
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +73 -2
  4. package/dist/agent.js.map +1 -1
  5. package/dist/build-info.json +2 -2
  6. package/dist/cli.js +17 -0
  7. package/dist/cli.js.map +1 -1
  8. package/dist/components/message/SubagentActivityMessage.d.ts +2 -2
  9. package/dist/components/message/SubagentActivityMessage.d.ts.map +1 -1
  10. package/dist/components/message/SubagentActivityMessage.js +2 -13
  11. package/dist/components/message/SubagentActivityMessage.js.map +1 -1
  12. package/dist/components/message/command-message-helpers.d.ts +2 -2
  13. package/dist/components/message/command-message-helpers.d.ts.map +1 -1
  14. package/dist/core/index.d.ts +2 -3
  15. package/dist/core/index.d.ts.map +1 -1
  16. package/dist/core/index.js +1 -7
  17. package/dist/core/index.js.map +1 -1
  18. package/dist/core/session-runtime.d.ts +72 -0
  19. package/dist/core/session-runtime.d.ts.map +1 -1
  20. package/dist/gateway/contracts.d.ts +1 -1
  21. package/dist/gateway/contracts.d.ts.map +1 -1
  22. package/dist/gateway/gateway.d.ts +32 -0
  23. package/dist/gateway/gateway.d.ts.map +1 -1
  24. package/dist/gateway/gateway.js +36 -1
  25. package/dist/gateway/gateway.js.map +1 -1
  26. package/dist/gateway/persistence/contracts.d.ts +3 -10
  27. package/dist/gateway/persistence/contracts.d.ts.map +1 -1
  28. package/dist/gateway/persistence/contracts.js +2 -31
  29. package/dist/gateway/persistence/contracts.js.map +1 -1
  30. package/dist/gateway/runtime-factory.d.ts.map +1 -1
  31. package/dist/gateway/runtime-factory.js +4 -0
  32. package/dist/gateway/runtime-factory.js.map +1 -1
  33. package/dist/gateway/server-session.d.ts +3 -0
  34. package/dist/gateway/server-session.d.ts.map +1 -1
  35. package/dist/gateway/server-session.js +17 -20
  36. package/dist/gateway/server-session.js.map +1 -1
  37. package/dist/gateway/settings-rpc.d.ts +1 -1
  38. package/dist/gateway/settings-rpc.d.ts.map +1 -1
  39. package/dist/gateway/settings-rpc.js +4 -1
  40. package/dist/gateway/settings-rpc.js.map +1 -1
  41. package/dist/lib/agent-client.d.ts +8 -0
  42. package/dist/lib/agent-client.d.ts.map +1 -1
  43. package/dist/lib/agent-client.js +5 -1
  44. package/dist/lib/agent-client.js.map +1 -1
  45. package/dist/lib/agent-configuration.d.ts +9 -0
  46. package/dist/lib/agent-configuration.d.ts.map +1 -1
  47. package/dist/lib/agent-configuration.js +14 -0
  48. package/dist/lib/agent-configuration.js.map +1 -1
  49. package/dist/lib/agent-factory.d.ts +25 -4
  50. package/dist/lib/agent-factory.d.ts.map +1 -1
  51. package/dist/lib/agent-factory.js +6 -0
  52. package/dist/lib/agent-factory.js.map +1 -1
  53. package/dist/lib/subagent-bridge.d.ts +47 -5
  54. package/dist/lib/subagent-bridge.d.ts.map +1 -1
  55. package/dist/lib/subagent-bridge.js +112 -4
  56. package/dist/lib/subagent-bridge.js.map +1 -1
  57. package/dist/node_modules/@qduc/agent-wire/index.d.ts +73 -0
  58. package/dist/node_modules/@qduc/agent-wire/index.js +212 -0
  59. package/dist/node_modules/@qduc/agent-wire/package.json +1 -0
  60. package/dist/prompts/orchestrator-prompt.test.ts +9 -0
  61. package/dist/prompts/orchestrator.md +2 -0
  62. package/dist/prompts/subagent-delegation.d.ts.map +1 -1
  63. package/dist/prompts/subagent-delegation.js +3 -2
  64. package/dist/prompts/subagent-delegation.js.map +1 -1
  65. package/dist/prompts/subagent-delegation.test.ts +1 -0
  66. package/dist/prompts/subagent-delegation.ts +6 -2
  67. package/dist/providers/codex.provider.d.ts +3 -0
  68. package/dist/providers/codex.provider.d.ts.map +1 -1
  69. package/dist/providers/codex.provider.js +6 -4
  70. package/dist/providers/codex.provider.js.map +1 -1
  71. package/dist/providers/grok-auth.d.ts +3 -0
  72. package/dist/providers/grok-auth.d.ts.map +1 -1
  73. package/dist/providers/grok-auth.js +3 -1
  74. package/dist/providers/grok-auth.js.map +1 -1
  75. package/dist/providers/grok.provider.js +3 -3
  76. package/dist/providers/grok.provider.js.map +1 -1
  77. package/dist/providers/index.d.ts +1 -1
  78. package/dist/providers/index.d.ts.map +1 -1
  79. package/dist/providers/index.js +1 -1
  80. package/dist/providers/index.js.map +1 -1
  81. package/dist/providers/oauth-session-account.d.ts +16 -2
  82. package/dist/providers/oauth-session-account.d.ts.map +1 -1
  83. package/dist/providers/oauth-session-account.js +8 -17
  84. package/dist/providers/oauth-session-account.js.map +1 -1
  85. package/dist/providers/openai.provider.js +1 -1
  86. package/dist/providers/openai.provider.js.map +1 -1
  87. package/dist/providers/openrouter.provider.js +1 -1
  88. package/dist/providers/openrouter.provider.js.map +1 -1
  89. package/dist/providers/registry.d.ts +20 -1
  90. package/dist/providers/registry.d.ts.map +1 -1
  91. package/dist/providers/registry.js +33 -16
  92. package/dist/providers/registry.js.map +1 -1
  93. package/dist/providers/web-search/exa.provider.d.ts.map +1 -1
  94. package/dist/providers/web-search/exa.provider.js +6 -3
  95. package/dist/providers/web-search/exa.provider.js.map +1 -1
  96. package/dist/providers/web-search/firecrawl.provider.d.ts +8 -0
  97. package/dist/providers/web-search/firecrawl.provider.d.ts.map +1 -0
  98. package/dist/providers/web-search/firecrawl.provider.js +59 -0
  99. package/dist/providers/web-search/firecrawl.provider.js.map +1 -0
  100. package/dist/providers/web-search/index.d.ts +5 -2
  101. package/dist/providers/web-search/index.d.ts.map +1 -1
  102. package/dist/providers/web-search/index.js +3 -1
  103. package/dist/providers/web-search/index.js.map +1 -1
  104. package/dist/providers/web-search/registry.d.ts +14 -0
  105. package/dist/providers/web-search/registry.d.ts.map +1 -1
  106. package/dist/providers/web-search/registry.js +45 -15
  107. package/dist/providers/web-search/registry.js.map +1 -1
  108. package/dist/providers/web-search/searxng.provider.d.ts +8 -0
  109. package/dist/providers/web-search/searxng.provider.d.ts.map +1 -0
  110. package/dist/providers/web-search/searxng.provider.js +56 -0
  111. package/dist/providers/web-search/searxng.provider.js.map +1 -0
  112. package/dist/providers/web-search/tavily.provider.d.ts.map +1 -1
  113. package/dist/providers/web-search/tavily.provider.js +8 -3
  114. package/dist/providers/web-search/tavily.provider.js.map +1 -1
  115. package/dist/providers/web-search/types.d.ts +14 -1
  116. package/dist/providers/web-search/types.d.ts.map +1 -1
  117. package/dist/services/agent-runtime/agent-resolver.d.ts.map +1 -1
  118. package/dist/services/agent-runtime/agent-resolver.js +1 -0
  119. package/dist/services/agent-runtime/agent-resolver.js.map +1 -1
  120. package/dist/services/agent-runtime/agent-runtime.d.ts +6 -1
  121. package/dist/services/agent-runtime/agent-runtime.d.ts.map +1 -1
  122. package/dist/services/agent-runtime/agent-runtime.js +11 -2
  123. package/dist/services/agent-runtime/agent-runtime.js.map +1 -1
  124. package/dist/services/agent-runtime/agent-spec.d.ts +14 -0
  125. package/dist/services/agent-runtime/agent-spec.d.ts.map +1 -0
  126. package/dist/services/agent-runtime/agent-spec.js +49 -0
  127. package/dist/services/agent-runtime/agent-spec.js.map +1 -0
  128. package/dist/services/agent-runtime/index.d.ts +3 -1
  129. package/dist/services/agent-runtime/index.d.ts.map +1 -1
  130. package/dist/services/agent-runtime/index.js +2 -0
  131. package/dist/services/agent-runtime/index.js.map +1 -1
  132. package/dist/services/agent-runtime/legacy-adapter.d.ts.map +1 -1
  133. package/dist/services/agent-runtime/legacy-adapter.js +5 -1
  134. package/dist/services/agent-runtime/legacy-adapter.js.map +1 -1
  135. package/dist/services/agent-runtime/permission-boundary.d.ts +95 -0
  136. package/dist/services/agent-runtime/permission-boundary.d.ts.map +1 -0
  137. package/dist/services/agent-runtime/permission-boundary.js +538 -0
  138. package/dist/services/agent-runtime/permission-boundary.js.map +1 -0
  139. package/dist/services/agent-runtime/resolved-agent.d.ts +2 -0
  140. package/dist/services/agent-runtime/resolved-agent.d.ts.map +1 -1
  141. package/dist/services/agent-runtime/types.d.ts +22 -1
  142. package/dist/services/agent-runtime/types.d.ts.map +1 -1
  143. package/dist/services/approval/non-interactive-approval-policy.d.ts.map +1 -1
  144. package/dist/services/approval/non-interactive-approval-policy.js +10 -0
  145. package/dist/services/approval/non-interactive-approval-policy.js.map +1 -1
  146. package/dist/services/approval/shell-auto-approval-resolver.d.ts +2 -0
  147. package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
  148. package/dist/services/approval/shell-auto-approval-resolver.js +4 -2
  149. package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
  150. package/dist/services/conversation/conversation-adapter-factory.d.ts +1 -1
  151. package/dist/services/conversation/conversation-adapter-factory.d.ts.map +1 -1
  152. package/dist/services/conversation/conversation-adapter.d.ts +1 -1
  153. package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
  154. package/dist/services/conversation/conversation-runtime-factory.d.ts +1 -1
  155. package/dist/services/conversation/conversation-runtime-factory.d.ts.map +1 -1
  156. package/dist/services/conversation/conversation-runtime-factory.js +1 -1
  157. package/dist/services/conversation/conversation-runtime-factory.js.map +1 -1
  158. package/dist/services/conversation/conversation-service.d.ts +4 -1
  159. package/dist/services/conversation/conversation-service.d.ts.map +1 -1
  160. package/dist/services/conversation/conversation-service.js +25 -0
  161. package/dist/services/conversation/conversation-service.js.map +1 -1
  162. package/dist/services/conversation/session-index/session-index-service.d.ts +1 -1
  163. package/dist/services/conversation/session-index/session-index-service.d.ts.map +1 -1
  164. package/dist/services/conversation/session-index/session-index-service.js +1 -1
  165. package/dist/services/conversation/session-index/session-index-service.js.map +1 -1
  166. package/dist/services/retry/provider-failure-classification.d.ts +2 -0
  167. package/dist/services/retry/provider-failure-classification.d.ts.map +1 -1
  168. package/dist/services/retry/provider-failure-classification.js +43 -0
  169. package/dist/services/retry/provider-failure-classification.js.map +1 -1
  170. package/dist/services/sandboxed-code-host/host-worker.d.ts.map +1 -1
  171. package/dist/services/sandboxed-code-host/host-worker.js +3 -1
  172. package/dist/services/sandboxed-code-host/host-worker.js.map +1 -1
  173. package/dist/services/session/session-composition.d.ts +3 -0
  174. package/dist/services/session/session-composition.d.ts.map +1 -1
  175. package/dist/services/session/session-composition.js +2 -1
  176. package/dist/services/session/session-composition.js.map +1 -1
  177. package/dist/services/session/session-input-planner.d.ts +2 -0
  178. package/dist/services/session/session-input-planner.d.ts.map +1 -1
  179. package/dist/services/session/session-input-planner.js +4 -6
  180. package/dist/services/session/session-input-planner.js.map +1 -1
  181. package/dist/services/settings/settings-env.d.ts.map +1 -1
  182. package/dist/services/settings/settings-env.js +9 -0
  183. package/dist/services/settings/settings-env.js.map +1 -1
  184. package/dist/services/settings/settings-schema.d.ts +24 -0
  185. package/dist/services/settings/settings-schema.d.ts.map +1 -1
  186. package/dist/services/settings/settings-schema.js +16 -0
  187. package/dist/services/settings/settings-schema.js.map +1 -1
  188. package/dist/services/settings/settings-sources.d.ts +2 -0
  189. package/dist/services/settings/settings-sources.d.ts.map +1 -1
  190. package/dist/services/settings/settings-sources.js +2 -0
  191. package/dist/services/settings/settings-sources.js.map +1 -1
  192. package/dist/services/settings/settings-ui-metadata.d.ts.map +1 -1
  193. package/dist/services/settings/settings-ui-metadata.js +4 -1
  194. package/dist/services/settings/settings-ui-metadata.js.map +1 -1
  195. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts +1 -1
  196. package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts.map +1 -1
  197. package/dist/services/settings/test-helpers/settings-consumer-inventory.js +3 -0
  198. package/dist/services/settings/test-helpers/settings-consumer-inventory.js.map +1 -1
  199. package/dist/services/subagents/execution-runner.d.ts.map +1 -1
  200. package/dist/services/subagents/execution-runner.js +2 -1
  201. package/dist/services/subagents/execution-runner.js.map +1 -1
  202. package/dist/services/subagents/foreground-subagent-lease.d.ts +15 -0
  203. package/dist/services/subagents/foreground-subagent-lease.d.ts.map +1 -1
  204. package/dist/services/subagents/foreground-subagent-lease.js +42 -2
  205. package/dist/services/subagents/foreground-subagent-lease.js.map +1 -1
  206. package/dist/services/subagents/nested-runner.d.ts +1 -1
  207. package/dist/services/subagents/nested-runner.d.ts.map +1 -1
  208. package/dist/services/subagents/nested-runner.js +89 -22
  209. package/dist/services/subagents/nested-runner.js.map +1 -1
  210. package/dist/services/subagents/runtime.d.ts.map +1 -1
  211. package/dist/services/subagents/runtime.js +30 -4
  212. package/dist/services/subagents/runtime.js.map +1 -1
  213. package/dist/services/subagents/subagent-async-registry.d.ts +3 -0
  214. package/dist/services/subagents/subagent-async-registry.d.ts.map +1 -1
  215. package/dist/services/subagents/subagent-async-registry.js +53 -8
  216. package/dist/services/subagents/subagent-async-registry.js.map +1 -1
  217. package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
  218. package/dist/services/subagents/subagent-manager.js +65 -3
  219. package/dist/services/subagents/subagent-manager.js.map +1 -1
  220. package/dist/services/subagents/subagent-role-pool-selector.d.ts +5 -1
  221. package/dist/services/subagents/subagent-role-pool-selector.d.ts.map +1 -1
  222. package/dist/services/subagents/subagent-role-pool-selector.js +24 -5
  223. package/dist/services/subagents/subagent-role-pool-selector.js.map +1 -1
  224. package/dist/services/subagents/tool-policy.d.ts +2 -2
  225. package/dist/services/subagents/tool-policy.d.ts.map +1 -1
  226. package/dist/services/subagents/tool-policy.js +8 -2
  227. package/dist/services/subagents/tool-policy.js.map +1 -1
  228. package/dist/services/subagents/types.d.ts +15 -2
  229. package/dist/services/subagents/types.d.ts.map +1 -1
  230. package/dist/services/subagents/types.js.map +1 -1
  231. package/dist/services/subagents/worker-worktree.d.ts +19 -1
  232. package/dist/services/subagents/worker-worktree.d.ts.map +1 -1
  233. package/dist/services/subagents/worker-worktree.js +128 -4
  234. package/dist/services/subagents/worker-worktree.js.map +1 -1
  235. package/dist/services/workspace/worktree-inventory.d.ts +6 -0
  236. package/dist/services/workspace/worktree-inventory.d.ts.map +1 -1
  237. package/dist/services/workspace/worktree-inventory.js +29 -1
  238. package/dist/services/workspace/worktree-inventory.js.map +1 -1
  239. package/dist/tools/agent/propose-goal.d.ts +17 -0
  240. package/dist/tools/agent/propose-goal.d.ts.map +1 -0
  241. package/dist/tools/agent/propose-goal.js +64 -0
  242. package/dist/tools/agent/propose-goal.js.map +1 -0
  243. package/dist/tools/agent/run-subagent-async.d.ts +61 -3
  244. package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
  245. package/dist/tools/agent/run-subagent-async.js +13 -4
  246. package/dist/tools/agent/run-subagent-async.js.map +1 -1
  247. package/dist/tools/agent/run-subagent.d.ts +73 -7
  248. package/dist/tools/agent/run-subagent.d.ts.map +1 -1
  249. package/dist/tools/agent/run-subagent.js +84 -22
  250. package/dist/tools/agent/run-subagent.js.map +1 -1
  251. package/dist/tools/system/run-code/index.d.ts +1 -1
  252. package/dist/tools/system/run-code/index.d.ts.map +1 -1
  253. package/dist/tools/system/run-code/index.js +1 -1
  254. package/dist/tools/system/run-code/index.js.map +1 -1
  255. package/dist/tools/system/run-code/run-code-agent-capability.d.ts +99 -0
  256. package/dist/tools/system/run-code/run-code-agent-capability.d.ts.map +1 -0
  257. package/dist/tools/system/run-code/run-code-agent-capability.js +384 -0
  258. package/dist/tools/system/run-code/run-code-agent-capability.js.map +1 -0
  259. package/dist/tools/system/run-code/run-code-runtime.d.ts +9 -0
  260. package/dist/tools/system/run-code/run-code-runtime.d.ts.map +1 -1
  261. package/dist/tools/system/run-code/run-code-runtime.js +54 -1
  262. package/dist/tools/system/run-code/run-code-runtime.js.map +1 -1
  263. package/dist/tools/system/run-code/run-code.d.ts +12 -1
  264. package/dist/tools/system/run-code/run-code.d.ts.map +1 -1
  265. package/dist/tools/system/run-code/run-code.js +48 -1
  266. package/dist/tools/system/run-code/run-code.js.map +1 -1
  267. package/dist/tools/tool-names.d.ts +1 -0
  268. package/dist/tools/tool-names.d.ts.map +1 -1
  269. package/dist/tools/tool-names.js +1 -0
  270. package/dist/tools/tool-names.js.map +1 -1
  271. package/dist/tools/web/web-search.d.ts +18 -0
  272. package/dist/tools/web/web-search.d.ts.map +1 -1
  273. package/dist/tools/web/web-search.js +29 -4
  274. package/dist/tools/web/web-search.js.map +1 -1
  275. package/dist/types/message.d.ts +1 -0
  276. package/dist/types/message.d.ts.map +1 -1
  277. package/dist/types/message.js +13 -0
  278. package/dist/types/message.js.map +1 -1
  279. package/dist/utils/conversation/conversation-event-handler.js +1 -1
  280. package/dist/utils/conversation/conversation-event-handler.js.map +1 -1
  281. package/dist/utils/value-suggestions.d.ts.map +1 -1
  282. package/dist/utils/value-suggestions.js +2 -0
  283. package/dist/utils/value-suggestions.js.map +1 -1
  284. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"run-subagent.js","sourceRoot":"","sources":["../../../source/tools/agent/run-subagent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run-subagent.js","sourceRoot":"","sources":["../../../source/tools/agent/run-subagent.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export { bindRunCodeRegistry, createRunCodeToolDefinition, TOOL_NAME_RUN_CODE, isDirectlyCallable, type CreateRunCodeToolOptions, type RunCodeActionOutcome, type RunCodeActionReceipt, type RunCodeCallRecord, type RunCodeParams, } from './run-code.js';
1
+ export { bindRunCodeRegistry, createRunCodeToolDefinition, getRunCodeAgentSpecAuthority, TOOL_NAME_RUN_CODE, isDirectlyCallable, type CreateRunCodeToolOptions, type RunCodeActionOutcome, type RunCodeActionReceipt, type RunCodeCallRecord, type RunCodeParams, } from './run-code.js';
2
2
  export { type RunCodeAttachment, type RunCodeDiagnostic, type RunCodeDiagnosticCode, type RunCodeExecution, type RunCodeExecutionAction, type RunCodeExecutionCall, type RunCodeExecutionMetadata, } from './run-code-execution.js';
3
3
  export { type RunCodeRuntimeInput, type RunCodeRuntimeOptions, type RunCodeRuntimeResult } from './run-code-runtime.js';
4
4
  export { type ScriptedReturnContract, type ScriptedReturnValidation, type ScriptedReturnValidationFailure, } from '../../scripted-return-contract.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../source/tools/system/run-code/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,aAAa,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,GAC9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACxH,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,+BAA+B,GACrC,MAAM,mCAAmC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../source/tools/system/run-code/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,iBAAiB,EACtB,KAAK,aAAa,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,GAC9B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACxH,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,wBAAwB,EAC7B,KAAK,+BAA+B,GACrC,MAAM,mCAAmC,CAAC"}
@@ -1,2 +1,2 @@
1
- export { bindRunCodeRegistry, createRunCodeToolDefinition, TOOL_NAME_RUN_CODE, isDirectlyCallable, } from './run-code.js';
1
+ export { bindRunCodeRegistry, createRunCodeToolDefinition, getRunCodeAgentSpecAuthority, TOOL_NAME_RUN_CODE, isDirectlyCallable, } from './run-code.js';
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../source/tools/system/run-code/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,kBAAkB,EAClB,kBAAkB,GAMnB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../source/tools/system/run-code/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,GAMnB,MAAM,eAAe,CAAC"}
@@ -0,0 +1,99 @@
1
+ import type { CapabilityHandler } from '../../../services/sandboxed-code-host/host-types.js';
2
+ import type { ILoggingService, ISettingsService } from '../../../services/service-interfaces.js';
3
+ import { type AgentSpecAuthoritySnapshot, type AgentSpecBoundaryResult } from '../../../services/agent-runtime/permission-boundary.js';
4
+ import type { NestedSubagentResult, SubagentCancelAcknowledgement, SubagentResult, SubagentRunHandle, SubagentRunStatus } from '../../../services/subagents/types.js';
5
+ import type { ResolvedSubagentLaunch } from '../../../lib/subagent-bridge.js';
6
+ import type { NestedApprovalOwner } from '../../../services/approval/nested-approval-owner.js';
7
+ import type { ToolApprovalPolicyRegistry } from '../../../services/approval/tool-approval-policy-registry.js';
8
+ /**
9
+ * Host-owned bridge callbacks the script `agent` capability launches through.
10
+ * Only the resolved-definition entry points of {@link '../lib/subagent-bridge.js'}
11
+ * appear here: a raw script spec can never reach a raw `runSubagent` callback,
12
+ * because the only path from script input to a launch goes through
13
+ * `resolveAgentSpecForChild` first.
14
+ */
15
+ export interface RunCodeAgentSpecBridge {
16
+ settings: ISettingsService;
17
+ runResolvedSubagent?: (params: ResolvedSubagentLaunch, context?: unknown, details?: unknown) => Promise<NestedSubagentResult>;
18
+ /** The four async members exist together or not at all. */
19
+ runResolvedSubagentAsync?: (params: ResolvedSubagentLaunch) => Promise<SubagentRunHandle>;
20
+ getSubagentResult?: (params: {
21
+ runId: string;
22
+ }, context?: unknown, details?: unknown) => Promise<SubagentResult>;
23
+ getSubagentStatus?: (params: {
24
+ runId?: string;
25
+ }, context?: unknown, details?: unknown) => SubagentRunStatus | SubagentRunStatus[];
26
+ cancelSubagentRun?: (params: {
27
+ target: string;
28
+ }) => SubagentCancelAcknowledgement;
29
+ }
30
+ export interface RunCodeAgentCapabilityDeps extends RunCodeAgentSpecBridge {
31
+ authority: AgentSpecAuthoritySnapshot;
32
+ logger: ILoggingService;
33
+ /**
34
+ * Session-owned approval decision owner and policy registry. When both are
35
+ * bound, a foreground child's tool approval pauses surface through the same
36
+ * user surface as nested `tools.*` calls and the decided answer is applied
37
+ * to the exact retained child continuation. Unbound, a child interruption
38
+ * settles as the existing catchable interrupted error.
39
+ */
40
+ nestedApprovalOwner?: NestedApprovalOwner;
41
+ approvalPolicyRegistry?: ToolApprovalPolicyRegistry;
42
+ /** Session identity and graph binding forwarded to the owner's requests. */
43
+ sessionId?: string;
44
+ graphIdentity?: object;
45
+ /** Session-owned nested tool grant memory; never grant a child through root access. */
46
+ nestedCompatibility?: import('../../../services/session/nested-tool-compatibility-state.js').NestedToolCompatibilityState;
47
+ onCallAdmitted?: (member: string, started: number, callId: string) => void;
48
+ onCallSettled?: (member: string, started: number, callId: string, outcome: 'ok' | 'error' | 'unknown', reason?: string) => void;
49
+ }
50
+ /** Per-run state a script invocation owns. */
51
+ export interface RunCodeAgentCapabilityInvocation {
52
+ bridgeRunId: string;
53
+ context?: unknown;
54
+ }
55
+ /** True when at least one launch seam exists; gates capability existence. */
56
+ export declare function isRunCodeAgentBridgeActive(bridge: RunCodeAgentSpecBridge | undefined): bridge is RunCodeAgentSpecBridge;
57
+ /** The exact member list a bound bridge can serve; also rendered into the tool description. */
58
+ export declare function getRunCodeAgentCapabilityMembers(bridge: RunCodeAgentSpecBridge): string[];
59
+ type SuccessfulBoundary = Extract<AgentSpecBoundaryResult, {
60
+ ok: true;
61
+ }>;
62
+ type PreparedAgentLaunch = {
63
+ member: 'run';
64
+ boundary: SuccessfulBoundary;
65
+ started: number;
66
+ } | {
67
+ member: 'start';
68
+ boundary: SuccessfulBoundary;
69
+ name?: string;
70
+ started: number;
71
+ };
72
+ type PreparedAgentLifecycle = {
73
+ member: 'status';
74
+ runId?: string;
75
+ started: number;
76
+ } | {
77
+ member: 'result';
78
+ runId: string;
79
+ started: number;
80
+ } | {
81
+ member: 'cancel';
82
+ target: string;
83
+ started: number;
84
+ };
85
+ type PreparedAgentCall = PreparedAgentLaunch | PreparedAgentLifecycle;
86
+ /**
87
+ * The script-only `agent` capability of one run_code invocation.
88
+ *
89
+ * Every launch resolves an untrusted script AgentSpec through
90
+ * `resolveAgentSpecForChild` against the host-bound root authority snapshot
91
+ * before any bridge callback sees it; the boundary result — never the raw
92
+ * spec — is what reaches the host bridge. Start admission is a synchronous
93
+ * check-and-increment before resolution, so a script can never race itself
94
+ * past the launch cap, and an over-cap start is rejected before the manager
95
+ * launches anything while already-admitted siblings continue untouched.
96
+ */
97
+ export declare function createRunCodeAgentCapability(deps: RunCodeAgentCapabilityDeps, invocation: RunCodeAgentCapabilityInvocation): CapabilityHandler<PreparedAgentCall>;
98
+ export {};
99
+ //# sourceMappingURL=run-code-agent-capability.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-code-agent-capability.d.ts","sourceRoot":"","sources":["../../../../source/tools/system/run-code/run-code-agent-capability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EAGlB,MAAM,qDAAqD,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AACjG,OAAO,EAEL,KAAK,0BAA0B,EAC/B,KAAK,uBAAuB,EAC7B,MAAM,wDAAwD,CAAC;AAChE,OAAO,KAAK,EACV,oBAAoB,EACpB,6BAA6B,EAC7B,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,6DAA6D,CAAC;AAM9G;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,mBAAmB,CAAC,EAAE,CACpB,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,OAAO,KACd,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnC,2DAA2D;IAC3D,wBAAwB,CAAC,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC1F,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;IACjH,iBAAiB,CAAC,EAAE,CAClB,MAAM,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAC1B,OAAO,CAAC,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,OAAO,KACd,iBAAiB,GAAG,iBAAiB,EAAE,CAAC;IAC7C,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,6BAA6B,CAAC;CACnF;AAED,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,SAAS,EAAE,0BAA0B,CAAC;IACtC,MAAM,EAAE,eAAe,CAAC;IACxB;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,sBAAsB,CAAC,EAAE,0BAA0B,CAAC;IACpD,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uFAAuF;IACvF,mBAAmB,CAAC,EAAE,OAAO,8DAA8D,EAAE,4BAA4B,CAAC;IAC1H,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3E,aAAa,CAAC,EAAE,CACd,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,GAAG,OAAO,GAAG,SAAS,EACnC,MAAM,CAAC,EAAE,MAAM,KACZ,IAAI,CAAC;CACX;AAED,8CAA8C;AAC9C,MAAM,WAAW,gCAAgC;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAMD,6EAA6E;AAC7E,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,sBAAsB,GAAG,SAAS,GACzC,MAAM,IAAI,sBAAsB,CASlC;AAED,+FAA+F;AAC/F,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,EAAE,CAYzF;AAED,KAAK,kBAAkB,GAAG,OAAO,CAAC,uBAAuB,EAAE;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,CAAC,CAAC;AAEzE,KAAK,mBAAmB,GACpB;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,kBAAkB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAChE;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEN,KAAK,sBAAsB,GACvB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,KAAK,iBAAiB,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AA6FtE;;;;;;;;;;GAUG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,EAAE,0BAA0B,EAChC,UAAU,EAAE,gCAAgC,GAC3C,iBAAiB,CAAC,iBAAiB,CAAC,CAoStC"}
@@ -0,0 +1,384 @@
1
+ import { resolveAgentSpecForChild, } from '../../../services/agent-runtime/permission-boundary.js';
2
+ import { applyApprovalGrant } from '../../../services/approval/approval-grant-executor.js';
3
+ import { RUN_CODE_LIMITS } from './run-code-runtime.js';
4
+ const ASYNC_LIFECYCLE_MEMBERS = ['start', 'status', 'result', 'cancel'];
5
+ const isFunction = (value) => typeof value === 'function';
6
+ /** True when at least one launch seam exists; gates capability existence. */
7
+ export function isRunCodeAgentBridgeActive(bridge) {
8
+ if (!bridge)
9
+ return false;
10
+ const foreground = isFunction(bridge.runResolvedSubagent);
11
+ const asyncLifecycle = isFunction(bridge.runResolvedSubagentAsync) &&
12
+ isFunction(bridge.getSubagentResult) &&
13
+ isFunction(bridge.getSubagentStatus) &&
14
+ isFunction(bridge.cancelSubagentRun);
15
+ return foreground || asyncLifecycle;
16
+ }
17
+ /** The exact member list a bound bridge can serve; also rendered into the tool description. */
18
+ export function getRunCodeAgentCapabilityMembers(bridge) {
19
+ const members = [];
20
+ if (isFunction(bridge.runResolvedSubagent))
21
+ members.push('run');
22
+ if (isFunction(bridge.runResolvedSubagentAsync) &&
23
+ isFunction(bridge.getSubagentResult) &&
24
+ isFunction(bridge.getSubagentStatus) &&
25
+ isFunction(bridge.cancelSubagentRun)) {
26
+ members.push(...ASYNC_LIFECYCLE_MEMBERS);
27
+ }
28
+ return members;
29
+ }
30
+ const isRecord = (value) => typeof value === 'object' && value !== null;
31
+ const rejectCall = (error) => ({
32
+ kind: 'result',
33
+ result: { ok: false, error },
34
+ });
35
+ const isAbortError = (error) => error instanceof Error && error.name === 'AbortError';
36
+ /**
37
+ * Extracts the pending tool call from a child run-loop interruption. Other
38
+ * interruption kinds — e.g. a child run-budget check-in — are not tool
39
+ * approvals: the caller leaves those pauses unapplied, so the child settles
40
+ * interrupted and the script keeps its existing catchable error.
41
+ */
42
+ function extractChildToolApproval(interruption) {
43
+ if (!isRecord(interruption) || interruption.type !== 'tool_approval_item')
44
+ return undefined;
45
+ if (typeof interruption.name !== 'string' || interruption.name === '')
46
+ return undefined;
47
+ const argumentsText = typeof interruption.arguments === 'string' ? interruption.arguments : JSON.stringify(interruption.arguments ?? {});
48
+ let argumentsValue = {};
49
+ try {
50
+ argumentsValue = JSON.parse(argumentsText);
51
+ }
52
+ catch {
53
+ // Registry evaluation is fail-closed for arguments it cannot inspect.
54
+ }
55
+ return {
56
+ toolName: interruption.name,
57
+ argumentsText,
58
+ arguments: argumentsValue,
59
+ ...(typeof interruption.callId === 'string' ? { callId: interruption.callId } : {}),
60
+ };
61
+ }
62
+ /** `costRecords` and `nestedRunResult` are host-owned: possibly large, possibly not JSON-safe. */
63
+ const projectNestedResult = (result) => {
64
+ const { costRecords: _costRecords, nestedRunResult: _nestedRunResult, ...projected } = result;
65
+ // The host re-serializes capability results through JSON, so any plain-data
66
+ // projection is transportable even without a JsonValue index signature.
67
+ return projected;
68
+ };
69
+ const AGENT_MEMBERS = ['run', 'start', 'status', 'result', 'cancel'];
70
+ const LAUNCH_PARAM_FIELDS = new Set(['spec', 'worktree', 'name', 'continue_run_id']);
71
+ /** Light, admission-time param checks. Deep AgentSpec validation is the boundary's job. */
72
+ function launchParamError(member, params) {
73
+ const accepted = member === 'run' ? new Set(['spec', 'worktree']) : LAUNCH_PARAM_FIELDS;
74
+ for (const key of Object.keys(params)) {
75
+ if (!accepted.has(key))
76
+ return `unsupported param "${key}"; agent.${member} accepts ${[...accepted].join(', ')}.`;
77
+ }
78
+ if (!isRecord(params.spec) || Array.isArray(params.spec))
79
+ return 'spec must be a plain AgentSpec object.';
80
+ if (params.worktree !== undefined && typeof params.worktree !== 'string')
81
+ return 'worktree must be a string.';
82
+ if (params.name !== undefined && typeof params.name !== 'string')
83
+ return 'name must be a string.';
84
+ if (params.continue_run_id !== undefined && typeof params.continue_run_id !== 'string') {
85
+ return 'continue_run_id must be a string.';
86
+ }
87
+ if (member === 'start' && params.continue_run_id !== undefined) {
88
+ return 'continue_run_id is not supported by script agent.start until continuation authority can be verified.';
89
+ }
90
+ return undefined;
91
+ }
92
+ function lifecycleParamError(member, params) {
93
+ const accepted = member === 'status' ? new Set(['runId']) : new Set([member === 'result' ? 'runId' : 'target']);
94
+ for (const key of Object.keys(params)) {
95
+ if (!accepted.has(key))
96
+ return `unsupported param "${key}"; agent.${member} accepts ${[...accepted].join(', ')}.`;
97
+ }
98
+ const required = member === 'cancel' ? 'target' : 'runId';
99
+ if (member !== 'status' && (params[required] === undefined || typeof params[required] !== 'string')) {
100
+ return `${required} must be a string.`;
101
+ }
102
+ if (member === 'status' && params.runId !== undefined && typeof params.runId !== 'string') {
103
+ return 'runId must be a string.';
104
+ }
105
+ return undefined;
106
+ }
107
+ /**
108
+ * The script-only `agent` capability of one run_code invocation.
109
+ *
110
+ * Every launch resolves an untrusted script AgentSpec through
111
+ * `resolveAgentSpecForChild` against the host-bound root authority snapshot
112
+ * before any bridge callback sees it; the boundary result — never the raw
113
+ * spec — is what reaches the host bridge. Start admission is a synchronous
114
+ * check-and-increment before resolution, so a script can never race itself
115
+ * past the launch cap, and an over-cap start is rejected before the manager
116
+ * launches anything while already-admitted siblings continue untouched.
117
+ */
118
+ export function createRunCodeAgentCapability(deps, invocation) {
119
+ const members = getRunCodeAgentCapabilityMembers(deps);
120
+ if (members.length === 0) {
121
+ throw new Error('run_code agent capability requires a resolved-launch or async lifecycle bridge.');
122
+ }
123
+ // Synchronous admission counter: `prepare` never awaits between the cap
124
+ // check and the increment, so concurrent script starts cannot exceed it.
125
+ let startsAdmitted = 0;
126
+ /**
127
+ * Builds the per-call publisher that surfaces one foreground child approval
128
+ * pause through the session-owned decision owner. The capability attaches it
129
+ * only when the session owner and policy registry are bound; the decision is
130
+ * applied to the pause's exact retained continuation through `pause.apply`,
131
+ * never from script data, and the human wait is bracketed with the host
132
+ * work-clock hooks so paused children do not burn the script timeout.
133
+ */
134
+ const childApprovalPublisher = (callContext) => {
135
+ const owner = deps.nestedApprovalOwner;
136
+ const registry = deps.approvalPolicyRegistry;
137
+ if (!owner || !registry)
138
+ return undefined;
139
+ return async (pause) => {
140
+ const approvalInfo = extractChildToolApproval(pause.interruption);
141
+ // Not a tool approval (e.g. a child run-budget check-in): leave the pause
142
+ // unapplied so the child settles interrupted and the script keeps its
143
+ // existing catchable error.
144
+ if (!approvalInfo)
145
+ return;
146
+ // The host wraps these on the handler per run; the clock pauses only
147
+ // while every admitted call is waiting.
148
+ handler.onWaiting?.(callContext);
149
+ try {
150
+ const resolution = await owner.request({
151
+ requestId: `${pause.runId}:child-approval:${pause.generation}`,
152
+ sessionId: deps.sessionId ?? 'unknown',
153
+ graphIdentity: deps.graphIdentity ?? {},
154
+ outerRunId: invocation.bridgeRunId,
155
+ nestedCallId: pause.runId,
156
+ toolName: approvalInfo.toolName,
157
+ preparedArguments: approvalInfo.arguments,
158
+ authorityContext: invocation.context,
159
+ approval: {
160
+ agentName: `Script child agent (${pause.role})`,
161
+ toolName: approvalInfo.toolName,
162
+ argumentsText: approvalInfo.argumentsText,
163
+ rawInterruption: null,
164
+ ...(approvalInfo.callId !== undefined ? { callId: approvalInfo.callId } : {}),
165
+ },
166
+ signal: callContext.signal,
167
+ revalidate: async () => (await registry.evaluate({
168
+ toolName: approvalInfo.toolName,
169
+ args: approvalInfo.arguments,
170
+ context: invocation.context,
171
+ })).kind,
172
+ grant: (decision) => {
173
+ if (callContext.signal.aborted)
174
+ throw new Error('Tool execution was not approved.');
175
+ // Nested edit tools have no session edit-grant store. Do not claim
176
+ // a durable child edit authorization by mutating the root's state.
177
+ if (decision.answer === 'allow-edit-file-session' || decision.answer === 'allow-edit-folder-session') {
178
+ throw new Error('Session edit grants are unavailable for script child agents.');
179
+ }
180
+ // Session-owned grant memory (allow-session edits, docker, denied
181
+ // reads) applies exactly as the direct child approval path does.
182
+ const applied = applyApprovalGrant({
183
+ sessionId: deps.sessionId ?? 'unknown',
184
+ nestedCompatibility: deps.nestedCompatibility,
185
+ logger: deps.logger,
186
+ }, {
187
+ answer: decision.answer,
188
+ toolName: approvalInfo.toolName,
189
+ rawArguments: approvalInfo.argumentsText,
190
+ callId: approvalInfo.callId,
191
+ interruption: pause.interruption,
192
+ });
193
+ if (!applied.isApproved)
194
+ throw new Error('Tool execution was not approved.');
195
+ // One decision on the exact retained continuation: `apply` consumes
196
+ // only this pause's generation and returns false when stale.
197
+ const resumed = pause.apply(({ handle, interruption }) => {
198
+ handle.approve?.(interruption);
199
+ return true;
200
+ });
201
+ if (!resumed)
202
+ throw new Error('The child approval pause is no longer current.');
203
+ },
204
+ // The child's own loop dispatches after its continuation is approved;
205
+ // the host owns no tool call to run here.
206
+ dispatch: async () => true,
207
+ });
208
+ if (resolution.kind === 'denied') {
209
+ pause.apply(({ handle, interruption }) => {
210
+ handle.reject?.(interruption, { message: resolution.message });
211
+ return true;
212
+ });
213
+ }
214
+ // `approved`: the grant already resumed the exact child continuation.
215
+ // `failed`: the grant threw before or while applying; the lease queue
216
+ // settles the child so the script keeps a truthful outcome.
217
+ }
218
+ finally {
219
+ handler.onResumed?.(callContext);
220
+ }
221
+ };
222
+ };
223
+ const handler = {
224
+ binding: { name: 'agent', kind: 'namespace', members },
225
+ limits: {
226
+ maxCalls: RUN_CODE_LIMITS.maxAgentCalls,
227
+ maxConcurrency: RUN_CODE_LIMITS.maxAgentConcurrency,
228
+ limitExceededMessage: `Agent call limit reached (${RUN_CODE_LIMITS.maxAgentCalls} agent.* calls per script run).`,
229
+ },
230
+ overBudget: ({ usedCalls, maxCalls }) => rejectCall(`Agent call limit reached (${maxCalls} agent.* calls per script run; ${usedCalls} admitted, ${Math.max(0, maxCalls - usedCalls)} remaining). Return the partial results you collected.`),
231
+ onAdmitted: (prepared, context) => {
232
+ const callId = `${invocation.bridgeRunId}:agent:${context.callId}`;
233
+ deps.onCallAdmitted?.(prepared.member, prepared.started, callId);
234
+ },
235
+ onAborted: (prepared, context, reason) => {
236
+ const callId = `${invocation.bridgeRunId}:agent:${context.callId}`;
237
+ deps.onCallSettled?.(prepared.member, prepared.started, callId, 'unknown', reason);
238
+ },
239
+ lane: (prepared) => (prepared.member === 'run' || prepared.member === 'start' ? 'default' : 'serial'),
240
+ prepare: (payload) => {
241
+ const started = Date.now();
242
+ const requested = typeof payload.member === 'string' ? payload.member : '';
243
+ if (!AGENT_MEMBERS.includes(requested)) {
244
+ return rejectCall(`Unknown agent member "${requested}". Available: ${members.join(', ')}.`);
245
+ }
246
+ const member = requested;
247
+ const params = isRecord(payload.params) ? payload.params : {};
248
+ if (member === 'run' || member === 'start') {
249
+ const paramError = launchParamError(member, params);
250
+ if (paramError)
251
+ return rejectCall(`agent.${member} params invalid: ${paramError}`);
252
+ // Admit the start before resolving so the cap holds regardless of what
253
+ // resolution does; a rejected spec consumes its admission like a
254
+ // launched one would, keeping the budget an honest upper bound.
255
+ if (startsAdmitted >= RUN_CODE_LIMITS.maxAgentStarts) {
256
+ return rejectCall(`Agent start limit reached (${RUN_CODE_LIMITS.maxAgentStarts} agent launches per script run; ` +
257
+ `${startsAdmitted} admitted, 0 remaining). Return the partial results you collected; ` +
258
+ 'admitted launches are unaffected.');
259
+ }
260
+ startsAdmitted += 1;
261
+ const boundary = resolveAgentSpecForChild(params.spec, {
262
+ settings: deps.settings,
263
+ logger: deps.logger,
264
+ parent: deps.authority.parent,
265
+ readOnly: deps.authority.readOnly,
266
+ planMode: deps.authority.planMode,
267
+ ...(typeof params.worktree === 'string' ? { worktree: params.worktree } : {}),
268
+ });
269
+ if (!boundary.ok) {
270
+ return rejectCall(`Agent specification rejected: ${boundary.errors.map((error) => error.message).join('; ')}`);
271
+ }
272
+ return member === 'run'
273
+ ? { member, boundary, started }
274
+ : {
275
+ member,
276
+ boundary,
277
+ ...(typeof params.name === 'string' ? { name: params.name } : {}),
278
+ started,
279
+ };
280
+ }
281
+ const lifecycleError = lifecycleParamError(member, params);
282
+ if (lifecycleError)
283
+ return rejectCall(`agent.${member} params invalid: ${lifecycleError}`);
284
+ if (member === 'status') {
285
+ return {
286
+ member,
287
+ ...(typeof params.runId === 'string' ? { runId: params.runId } : {}),
288
+ started,
289
+ };
290
+ }
291
+ if (member === 'result') {
292
+ return { member, runId: params.runId, started };
293
+ }
294
+ return { member: 'cancel', target: params.target, started };
295
+ },
296
+ invoke: async (prepared, callContext) => {
297
+ const callId = `${invocation.bridgeRunId}:agent:${callContext.callId}`;
298
+ try {
299
+ const outcome = await (async () => {
300
+ if (prepared.member === 'run') {
301
+ try {
302
+ const publisher = childApprovalPublisher(callContext);
303
+ const nested = await deps.runResolvedSubagent.call(undefined, {
304
+ resolvedDefinition: prepared.boundary,
305
+ ...(publisher ? { foregroundChildApproval: publisher } : {}),
306
+ }, invocation.context,
307
+ // The host controller signal aborts the child on script timeout or
308
+ // cancellation; the tool call id keeps foreground leases movable.
309
+ {
310
+ toolCall: { callId: `${invocation.bridgeRunId}:agent:${callContext.callId}` },
311
+ signal: callContext.signal,
312
+ });
313
+ if (nested.status === 'interrupted') {
314
+ return rejectCall('Child run interrupted (possibly awaiting a tool approval). The script cannot resume ' +
315
+ 'this foreground child; use the direct subagent tool for approval-interactive work.');
316
+ }
317
+ return { kind: 'result', result: { ok: true, result: projectNestedResult(nested) } };
318
+ }
319
+ catch (error) {
320
+ if (callContext.signal.aborted || isAbortError(error))
321
+ throw error;
322
+ return rejectCall(error instanceof Error ? error.message : String(error));
323
+ }
324
+ }
325
+ if (prepared.member === 'start') {
326
+ try {
327
+ const handle = await deps.runResolvedSubagentAsync.call(undefined, {
328
+ resolvedDefinition: prepared.boundary,
329
+ ...(prepared.name ? { name: prepared.name } : {}),
330
+ });
331
+ return {
332
+ kind: 'result',
333
+ result: {
334
+ ok: true,
335
+ result: {
336
+ runId: handle.runId,
337
+ ...(handle.name ? { name: handle.name } : {}),
338
+ role: handle.role,
339
+ status: handle.status,
340
+ },
341
+ },
342
+ };
343
+ }
344
+ catch (error) {
345
+ // Launch failures are script-catchable; the background run is never
346
+ // bound to this script's signal, so there is no abort case here.
347
+ return rejectCall(error instanceof Error ? error.message : String(error));
348
+ }
349
+ }
350
+ if (prepared.member === 'status') {
351
+ const status = deps.getSubagentStatus.call(undefined, prepared.runId !== undefined ? { runId: prepared.runId } : {}, invocation.context);
352
+ return { kind: 'result', result: { ok: true, result: status } };
353
+ }
354
+ if (prepared.member === 'result') {
355
+ try {
356
+ const settled = await deps.getSubagentResult.call(undefined, { runId: prepared.runId }, invocation.context, {
357
+ signal: callContext.signal,
358
+ });
359
+ return { kind: 'result', result: { ok: true, result: projectNestedResult(settled) } };
360
+ }
361
+ catch (error) {
362
+ if (callContext.signal.aborted || isAbortError(error))
363
+ throw error;
364
+ return rejectCall(error instanceof Error ? error.message : String(error));
365
+ }
366
+ }
367
+ const acknowledgement = deps.cancelSubagentRun.call(undefined, { target: prepared.target });
368
+ return { kind: 'result', result: { ok: true, result: acknowledgement } };
369
+ })();
370
+ const result = outcome.kind === 'result' && isRecord(outcome.result) ? outcome.result : undefined;
371
+ const failed = outcome.kind === 'fail' || result?.ok === false;
372
+ const reason = failed && typeof result?.error === 'string' ? result.error : undefined;
373
+ deps.onCallSettled?.(prepared.member, prepared.started, callId, failed ? 'error' : 'ok', reason);
374
+ return outcome;
375
+ }
376
+ catch (error) {
377
+ deps.onCallSettled?.(prepared.member, prepared.started, callId, 'error', error instanceof Error ? error.message : String(error));
378
+ throw error;
379
+ }
380
+ },
381
+ };
382
+ return handler;
383
+ }
384
+ //# sourceMappingURL=run-code-agent-capability.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-code-agent-capability.js","sourceRoot":"","sources":["../../../../source/tools/system/run-code/run-code-agent-capability.ts"],"names":[],"mappings":"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"}