@abot-ai/runtime 1.0.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 (1141) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +251 -0
  3. package/dist/scripts/add-runtime-model.d.ts +6 -0
  4. package/dist/scripts/add-runtime-model.js +239 -0
  5. package/dist/scripts/init-runtime.d.ts +6 -0
  6. package/dist/scripts/init-runtime.js +254 -0
  7. package/dist/scripts/runtime-setup-files.d.ts +12 -0
  8. package/dist/scripts/runtime-setup-files.js +96 -0
  9. package/dist/scripts/runtime-setup-presentation.d.ts +6 -0
  10. package/dist/scripts/runtime-setup-presentation.js +34 -0
  11. package/dist/src/bridge/request-steering.d.ts +8 -0
  12. package/dist/src/bridge/request-steering.js +90 -0
  13. package/dist/src/bridge/runtime-admin.d.ts +13 -0
  14. package/dist/src/bridge/runtime-admin.js +207 -0
  15. package/dist/src/bridge/runtime-replay.d.ts +10 -0
  16. package/dist/src/bridge/runtime-replay.js +497 -0
  17. package/dist/src/bridge/start-agent-bridge.d.ts +40 -0
  18. package/dist/src/bridge/start-agent-bridge.js +519 -0
  19. package/dist/src/capabilities/normal-invocation/contracts.d.ts +73 -0
  20. package/dist/src/capabilities/normal-invocation/contracts.js +3 -0
  21. package/dist/src/capabilities/normal-invocation/definition-projection.d.ts +10 -0
  22. package/dist/src/capabilities/normal-invocation/definition-projection.js +41 -0
  23. package/dist/src/capabilities/normal-invocation/index.d.ts +3 -0
  24. package/dist/src/capabilities/normal-invocation/index.js +3 -0
  25. package/dist/src/capabilities/normal-invocation/validator.d.ts +23 -0
  26. package/dist/src/capabilities/normal-invocation/validator.js +497 -0
  27. package/dist/src/capabilities/registry.d.ts +14 -0
  28. package/dist/src/capabilities/registry.js +34 -0
  29. package/dist/src/capabilities/tool-definition-validator.d.ts +4 -0
  30. package/dist/src/capabilities/tool-definition-validator.js +776 -0
  31. package/dist/src/capabilities/tool-event-metadata.d.ts +8 -0
  32. package/dist/src/capabilities/tool-event-metadata.js +181 -0
  33. package/dist/src/capabilities/tool-executor.d.ts +10 -0
  34. package/dist/src/capabilities/tool-executor.js +160 -0
  35. package/dist/src/capabilities/tool-types.d.ts +287 -0
  36. package/dist/src/capabilities/tool-types.js +8 -0
  37. package/dist/src/cli/abot.d.ts +1 -0
  38. package/dist/src/cli/abot.js +102 -0
  39. package/dist/src/cli/bin.d.ts +2 -0
  40. package/dist/src/cli/bin.js +6 -0
  41. package/dist/src/model-gateway/client/chat.d.ts +5 -0
  42. package/dist/src/model-gateway/client/chat.js +116 -0
  43. package/dist/src/model-gateway/client/contracts.d.ts +71 -0
  44. package/dist/src/model-gateway/client/contracts.js +1 -0
  45. package/dist/src/model-gateway/client/input-token-count.d.ts +4 -0
  46. package/dist/src/model-gateway/client/input-token-count.js +112 -0
  47. package/dist/src/model-gateway/client/invocation-metrics.d.ts +17 -0
  48. package/dist/src/model-gateway/client/invocation-metrics.js +107 -0
  49. package/dist/src/model-gateway/client/message-projection.d.ts +23 -0
  50. package/dist/src/model-gateway/client/message-projection.js +176 -0
  51. package/dist/src/model-gateway/client/options.d.ts +10 -0
  52. package/dist/src/model-gateway/client/options.js +33 -0
  53. package/dist/src/model-gateway/client/raw.d.ts +2 -0
  54. package/dist/src/model-gateway/client/raw.js +107 -0
  55. package/dist/src/model-gateway/client/stream-consumer.d.ts +37 -0
  56. package/dist/src/model-gateway/client/stream-consumer.js +183 -0
  57. package/dist/src/model-gateway/client/stream-parser.d.ts +16 -0
  58. package/dist/src/model-gateway/client/stream-parser.js +129 -0
  59. package/dist/src/model-gateway/client-stream-parser.d.ts +1 -0
  60. package/dist/src/model-gateway/client-stream-parser.js +1 -0
  61. package/dist/src/model-gateway/client.d.ts +19 -0
  62. package/dist/src/model-gateway/client.js +25 -0
  63. package/dist/src/model-gateway/index.d.ts +3 -0
  64. package/dist/src/model-gateway/index.js +2 -0
  65. package/dist/src/model-gateway/invocation-policy.d.ts +1 -0
  66. package/dist/src/model-gateway/invocation-policy.js +1 -0
  67. package/dist/src/model-gateway/invocation-profile-policy.d.ts +1 -0
  68. package/dist/src/model-gateway/invocation-profile-policy.js +1 -0
  69. package/dist/src/model-gateway/message-contract.d.ts +1 -0
  70. package/dist/src/model-gateway/message-contract.js +1 -0
  71. package/dist/src/model-gateway/model-io-trace.d.ts +3 -0
  72. package/dist/src/model-gateway/model-io-trace.js +3 -0
  73. package/dist/src/model-gateway/model-registry.d.ts +1 -0
  74. package/dist/src/model-gateway/model-registry.js +1 -0
  75. package/dist/src/model-gateway/observability/context-window-guard.d.ts +27 -0
  76. package/dist/src/model-gateway/observability/context-window-guard.js +81 -0
  77. package/dist/src/model-gateway/observability/provider-trace-context.d.ts +12 -0
  78. package/dist/src/model-gateway/observability/provider-trace-context.js +22 -0
  79. package/dist/src/model-gateway/observability/provider-trace.d.ts +19 -0
  80. package/dist/src/model-gateway/observability/provider-trace.js +90 -0
  81. package/dist/src/model-gateway/observability/trace-store.d.ts +32 -0
  82. package/dist/src/model-gateway/observability/trace-store.js +74 -0
  83. package/dist/src/model-gateway/policy/invocation-policy.d.ts +11 -0
  84. package/dist/src/model-gateway/policy/invocation-policy.js +178 -0
  85. package/dist/src/model-gateway/policy/invocation-profile-policy.d.ts +25 -0
  86. package/dist/src/model-gateway/policy/invocation-profile-policy.js +28 -0
  87. package/dist/src/model-gateway/policy/model-registry.d.ts +9 -0
  88. package/dist/src/model-gateway/policy/model-registry.js +164 -0
  89. package/dist/src/model-gateway/protocol/message-contract.d.ts +15 -0
  90. package/dist/src/model-gateway/protocol/message-contract.js +181 -0
  91. package/dist/src/model-gateway/protocol/usage.d.ts +9 -0
  92. package/dist/src/model-gateway/protocol/usage.js +39 -0
  93. package/dist/src/model-gateway/provider-adapter.d.ts +1 -0
  94. package/dist/src/model-gateway/provider-adapter.js +1 -0
  95. package/dist/src/model-gateway/provider-envelope-budget.d.ts +1 -0
  96. package/dist/src/model-gateway/provider-envelope-budget.js +1 -0
  97. package/dist/src/model-gateway/providers/contracts.d.ts +62 -0
  98. package/dist/src/model-gateway/providers/contracts.js +32 -0
  99. package/dist/src/model-gateway/providers/envelope-budget.d.ts +15 -0
  100. package/dist/src/model-gateway/providers/envelope-budget.js +79 -0
  101. package/dist/src/model-gateway/providers/ollama/adapter.d.ts +4 -0
  102. package/dist/src/model-gateway/providers/ollama/adapter.js +115 -0
  103. package/dist/src/model-gateway/providers/ollama/generation-options.d.ts +20 -0
  104. package/dist/src/model-gateway/providers/ollama/generation-options.js +49 -0
  105. package/dist/src/model-gateway/providers/ollama/message-projection.d.ts +7 -0
  106. package/dist/src/model-gateway/providers/ollama/message-projection.js +92 -0
  107. package/dist/src/model-gateway/providers/ollama/options.d.ts +1 -0
  108. package/dist/src/model-gateway/providers/ollama/options.js +10 -0
  109. package/dist/src/model-gateway/providers/ollama/payload.d.ts +10 -0
  110. package/dist/src/model-gateway/providers/ollama/payload.js +111 -0
  111. package/dist/src/model-gateway/providers/ollama/request-diagnostics.d.ts +16 -0
  112. package/dist/src/model-gateway/providers/ollama/request-diagnostics.js +98 -0
  113. package/dist/src/model-gateway/providers/ollama/stream-diagnostics.d.ts +11 -0
  114. package/dist/src/model-gateway/providers/ollama/stream-diagnostics.js +137 -0
  115. package/dist/src/model-gateway/providers/ollama/stream-normalizer.d.ts +21 -0
  116. package/dist/src/model-gateway/providers/ollama/stream-normalizer.js +201 -0
  117. package/dist/src/model-gateway/providers/ollama-adapter.d.ts +1 -0
  118. package/dist/src/model-gateway/providers/ollama-adapter.js +1 -0
  119. package/dist/src/model-gateway/providers/ollama.d.ts +1 -0
  120. package/dist/src/model-gateway/providers/ollama.js +1 -0
  121. package/dist/src/model-gateway/providers/openai/adapter.d.ts +2 -0
  122. package/dist/src/model-gateway/providers/openai/adapter.js +114 -0
  123. package/dist/src/model-gateway/providers/openai/diagnostics.d.ts +14 -0
  124. package/dist/src/model-gateway/providers/openai/diagnostics.js +71 -0
  125. package/dist/src/model-gateway/providers/openai/input-token-count.d.ts +2 -0
  126. package/dist/src/model-gateway/providers/openai/input-token-count.js +55 -0
  127. package/dist/src/model-gateway/providers/openai/payload.d.ts +9 -0
  128. package/dist/src/model-gateway/providers/openai/payload.js +127 -0
  129. package/dist/src/model-gateway/providers/openai/protocol.d.ts +4 -0
  130. package/dist/src/model-gateway/providers/openai/protocol.js +3 -0
  131. package/dist/src/model-gateway/providers/openai/settings.d.ts +6 -0
  132. package/dist/src/model-gateway/providers/openai/settings.js +25 -0
  133. package/dist/src/model-gateway/providers/openai/stream-normalizer.d.ts +51 -0
  134. package/dist/src/model-gateway/providers/openai/stream-normalizer.js +179 -0
  135. package/dist/src/model-gateway/providers/openai/stream.d.ts +10 -0
  136. package/dist/src/model-gateway/providers/openai/stream.js +96 -0
  137. package/dist/src/model-gateway/providers/openai-adapter.d.ts +1 -0
  138. package/dist/src/model-gateway/providers/openai-adapter.js +1 -0
  139. package/dist/src/model-gateway/providers/openai.d.ts +1 -0
  140. package/dist/src/model-gateway/providers/openai.js +1 -0
  141. package/dist/src/model-gateway/providers/registry.d.ts +5 -0
  142. package/dist/src/model-gateway/providers/registry.js +10 -0
  143. package/dist/src/model-gateway/server/admin.d.ts +5 -0
  144. package/dist/src/model-gateway/server/admin.js +64 -0
  145. package/dist/src/model-gateway/server/chat-handler.d.ts +4 -0
  146. package/dist/src/model-gateway/server/chat-handler.js +83 -0
  147. package/dist/src/model-gateway/server/configuration.d.ts +4 -0
  148. package/dist/src/model-gateway/server/configuration.js +57 -0
  149. package/dist/src/model-gateway/server/contracts.d.ts +48 -0
  150. package/dist/src/model-gateway/server/contracts.js +1 -0
  151. package/dist/src/model-gateway/server/create-server.d.ts +3 -0
  152. package/dist/src/model-gateway/server/create-server.js +96 -0
  153. package/dist/src/model-gateway/server/errors.d.ts +12 -0
  154. package/dist/src/model-gateway/server/errors.js +47 -0
  155. package/dist/src/model-gateway/server/http-response.d.ts +3 -0
  156. package/dist/src/model-gateway/server/http-response.js +13 -0
  157. package/dist/src/model-gateway/server/index.d.ts +6 -0
  158. package/dist/src/model-gateway/server/index.js +5 -0
  159. package/dist/src/model-gateway/server/input-token-count-handler.d.ts +4 -0
  160. package/dist/src/model-gateway/server/input-token-count-handler.js +84 -0
  161. package/dist/src/model-gateway/server/input-token-measurements.d.ts +16 -0
  162. package/dist/src/model-gateway/server/input-token-measurements.js +58 -0
  163. package/dist/src/model-gateway/server/invocation-validation.d.ts +18 -0
  164. package/dist/src/model-gateway/server/invocation-validation.js +91 -0
  165. package/dist/src/model-gateway/server/provider-fetch.d.ts +16 -0
  166. package/dist/src/model-gateway/server/provider-fetch.js +108 -0
  167. package/dist/src/model-gateway/server/provider-registry.d.ts +3 -0
  168. package/dist/src/model-gateway/server/provider-registry.js +12 -0
  169. package/dist/src/model-gateway/server/raw-handler.d.ts +3 -0
  170. package/dist/src/model-gateway/server/raw-handler.js +70 -0
  171. package/dist/src/model-gateway/server/request-body.d.ts +3 -0
  172. package/dist/src/model-gateway/server/request-body.js +12 -0
  173. package/dist/src/model-gateway/server.d.ts +2 -0
  174. package/dist/src/model-gateway/server.js +9 -0
  175. package/dist/src/model-gateway/stream-normalizer.d.ts +1 -0
  176. package/dist/src/model-gateway/stream-normalizer.js +1 -0
  177. package/dist/src/model-gateway/structured-output/budget.d.ts +7 -0
  178. package/dist/src/model-gateway/structured-output/budget.js +20 -0
  179. package/dist/src/model-gateway/structured-output/format-contract.d.ts +5 -0
  180. package/dist/src/model-gateway/structured-output/format-contract.js +28 -0
  181. package/dist/src/model-gateway/structured-output/ollama-format.d.ts +13 -0
  182. package/dist/src/model-gateway/structured-output/ollama-format.js +136 -0
  183. package/dist/src/model-gateway/structured-output/openai-format.d.ts +14 -0
  184. package/dist/src/model-gateway/structured-output/openai-format.js +75 -0
  185. package/dist/src/model-gateway/structured-output/projection.d.ts +3 -0
  186. package/dist/src/model-gateway/structured-output/projection.js +3 -0
  187. package/dist/src/model-gateway/structured-output/schema-character-estimator.d.ts +1 -0
  188. package/dist/src/model-gateway/structured-output/schema-character-estimator.js +211 -0
  189. package/dist/src/model-gateway/structured-output-budget.d.ts +1 -0
  190. package/dist/src/model-gateway/structured-output-budget.js +1 -0
  191. package/dist/src/model-gateway/structured-output.d.ts +1 -0
  192. package/dist/src/model-gateway/structured-output.js +1 -0
  193. package/dist/src/model-gateway/types.d.ts +214 -0
  194. package/dist/src/model-gateway/types.js +1 -0
  195. package/dist/src/plugin-contract/entrypoint.d.ts +34 -0
  196. package/dist/src/plugin-contract/entrypoint.js +1 -0
  197. package/dist/src/plugin-contract/index.d.ts +2 -0
  198. package/dist/src/plugin-contract/index.js +1 -0
  199. package/dist/src/plugin-contract/manifest.d.ts +49 -0
  200. package/dist/src/plugin-contract/manifest.js +3 -0
  201. package/dist/src/plugin-sdk/bounds.d.ts +28 -0
  202. package/dist/src/plugin-sdk/bounds.js +48 -0
  203. package/dist/src/plugin-sdk/files.d.ts +16 -0
  204. package/dist/src/plugin-sdk/files.js +95 -0
  205. package/dist/src/plugin-sdk/index.d.ts +7 -0
  206. package/dist/src/plugin-sdk/index.js +7 -0
  207. package/dist/src/plugin-sdk/parameters.d.ts +44 -0
  208. package/dist/src/plugin-sdk/parameters.js +123 -0
  209. package/dist/src/plugin-sdk/paths.d.ts +9 -0
  210. package/dist/src/plugin-sdk/paths.js +15 -0
  211. package/dist/src/plugin-sdk/plugin.d.ts +7 -0
  212. package/dist/src/plugin-sdk/plugin.js +7 -0
  213. package/dist/src/plugin-sdk/results.d.ts +21 -0
  214. package/dist/src/plugin-sdk/results.js +70 -0
  215. package/dist/src/runtime/adapters/compiled-workspace-provider.d.ts +5 -0
  216. package/dist/src/runtime/adapters/compiled-workspace-provider.js +7 -0
  217. package/dist/src/runtime/adapters/configured-skill-provider.d.ts +16 -0
  218. package/dist/src/runtime/adapters/configured-skill-provider.js +59 -0
  219. package/dist/src/runtime/adapters/default-session-adapters.d.ts +3 -0
  220. package/dist/src/runtime/adapters/default-session-adapters.js +16 -0
  221. package/dist/src/runtime/adapters/file-session-store.d.ts +8 -0
  222. package/dist/src/runtime/adapters/file-session-store.js +26 -0
  223. package/dist/src/runtime/adapters/in-memory-session-store.d.ts +8 -0
  224. package/dist/src/runtime/adapters/in-memory-session-store.js +475 -0
  225. package/dist/src/runtime/adapters/index.d.ts +8 -0
  226. package/dist/src/runtime/adapters/index.js +8 -0
  227. package/dist/src/runtime/adapters/multi-workspace-provider.d.ts +7 -0
  228. package/dist/src/runtime/adapters/multi-workspace-provider.js +14 -0
  229. package/dist/src/runtime/adapters/registered-tool-normal-invocations/catalog/registrations.d.ts +2 -0
  230. package/dist/src/runtime/adapters/registered-tool-normal-invocations/catalog/registrations.js +39 -0
  231. package/dist/src/runtime/adapters/registered-tool-normal-invocations/catalog/runtime-path-bindings.d.ts +5 -0
  232. package/dist/src/runtime/adapters/registered-tool-normal-invocations/catalog/runtime-path-bindings.js +18 -0
  233. package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.d.ts +19 -0
  234. package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/approval.js +47 -0
  235. package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/call-binding.d.ts +23 -0
  236. package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/call-binding.js +117 -0
  237. package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/run.d.ts +8 -0
  238. package/dist/src/runtime/adapters/registered-tool-normal-invocations/execution/run.js +113 -0
  239. package/dist/src/runtime/adapters/registered-tool-normal-invocations/executor.d.ts +7 -0
  240. package/dist/src/runtime/adapters/registered-tool-normal-invocations/executor.js +56 -0
  241. package/dist/src/runtime/adapters/registered-tool-normal-invocations/payload/input-preparation.d.ts +10 -0
  242. package/dist/src/runtime/adapters/registered-tool-normal-invocations/payload/input-preparation.js +91 -0
  243. package/dist/src/runtime/adapters/registered-tool-normal-invocations/payload/lifecycle.d.ts +6 -0
  244. package/dist/src/runtime/adapters/registered-tool-normal-invocations/payload/lifecycle.js +97 -0
  245. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/contracts.d.ts +86 -0
  246. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/contracts.js +1 -0
  247. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/event-metadata.d.ts +2 -0
  248. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/event-metadata.js +10 -0
  249. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/rejection.d.ts +2 -0
  250. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/rejection.js +3 -0
  251. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/values.d.ts +1 -0
  252. package/dist/src/runtime/adapters/registered-tool-normal-invocations/shared/values.js +7 -0
  253. package/dist/src/runtime/adapters/registered-tool-normal-invocations.d.ts +3 -0
  254. package/dist/src/runtime/adapters/registered-tool-normal-invocations.js +2 -0
  255. package/dist/src/runtime/adapters/registered-tool-payload-plan.d.ts +90 -0
  256. package/dist/src/runtime/adapters/registered-tool-payload-plan.js +495 -0
  257. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/catalog.d.ts +6 -0
  258. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/catalog.js +144 -0
  259. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/contracts.d.ts +33 -0
  260. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/contracts.js +1 -0
  261. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/errors.d.ts +11 -0
  262. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/errors.js +30 -0
  263. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/execution.d.ts +12 -0
  264. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/execution.js +155 -0
  265. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-authoring-result.d.ts +5 -0
  266. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-authoring-result.js +60 -0
  267. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.d.ts +30 -0
  268. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-lifecycle.js +119 -0
  269. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-rejection.d.ts +20 -0
  270. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-rejection.js +46 -0
  271. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.d.ts +32 -0
  272. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/payload-stages.js +303 -0
  273. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/result-evidence.d.ts +21 -0
  274. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/result-evidence.js +151 -0
  275. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/result-observer.d.ts +8 -0
  276. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/result-observer.js +167 -0
  277. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/runtime-path-controls.d.ts +12 -0
  278. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/runtime-path-controls.js +39 -0
  279. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/values.d.ts +3 -0
  280. package/dist/src/runtime/adapters/registered-tool-worker-capabilities/values.js +21 -0
  281. package/dist/src/runtime/adapters/registered-tool-worker-capabilities.d.ts +8 -0
  282. package/dist/src/runtime/adapters/registered-tool-worker-capabilities.js +147 -0
  283. package/dist/src/runtime/adapters/registered-tool-worker-capability-diagnostics.d.ts +37 -0
  284. package/dist/src/runtime/adapters/registered-tool-worker-capability-diagnostics.js +133 -0
  285. package/dist/src/runtime/adapters/request-tool-model-invoker.d.ts +4 -0
  286. package/dist/src/runtime/adapters/request-tool-model-invoker.js +20 -0
  287. package/dist/src/runtime/adapters/source-workspace-provider.d.ts +5 -0
  288. package/dist/src/runtime/adapters/source-workspace-provider.js +14 -0
  289. package/dist/src/runtime/admin/config-control.d.ts +42 -0
  290. package/dist/src/runtime/admin/config-control.js +211 -0
  291. package/dist/src/runtime/admin/system-control.d.ts +89 -0
  292. package/dist/src/runtime/admin/system-control.js +227 -0
  293. package/dist/src/runtime/attachments/store.d.ts +32 -0
  294. package/dist/src/runtime/attachments/store.js +169 -0
  295. package/dist/src/runtime/capabilities/configured-tool-registry.d.ts +3 -0
  296. package/dist/src/runtime/capabilities/configured-tool-registry.js +40 -0
  297. package/dist/src/runtime/capabilities/request-bound-tool-registry.d.ts +11 -0
  298. package/dist/src/runtime/capabilities/request-bound-tool-registry.js +80 -0
  299. package/dist/src/runtime/capabilities/request-runtime-tool-registry.d.ts +14 -0
  300. package/dist/src/runtime/capabilities/request-runtime-tool-registry.js +18 -0
  301. package/dist/src/runtime/capabilities/runtime-target-path.d.ts +42 -0
  302. package/dist/src/runtime/capabilities/runtime-target-path.js +261 -0
  303. package/dist/src/runtime/composition.d.ts +38 -0
  304. package/dist/src/runtime/composition.js +36 -0
  305. package/dist/src/runtime/config/builders.d.ts +23 -0
  306. package/dist/src/runtime/config/builders.js +485 -0
  307. package/dist/src/runtime/config/constants.d.ts +8 -0
  308. package/dist/src/runtime/config/constants.js +8 -0
  309. package/dist/src/runtime/config/effective-model-config-validation.d.ts +11 -0
  310. package/dist/src/runtime/config/effective-model-config-validation.js +165 -0
  311. package/dist/src/runtime/config/environment.d.ts +12 -0
  312. package/dist/src/runtime/config/environment.js +40 -0
  313. package/dist/src/runtime/config/fields.d.ts +5 -0
  314. package/dist/src/runtime/config/fields.js +259 -0
  315. package/dist/src/runtime/config/layout.d.ts +17 -0
  316. package/dist/src/runtime/config/layout.js +24 -0
  317. package/dist/src/runtime/config/loader.d.ts +12 -0
  318. package/dist/src/runtime/config/loader.js +46 -0
  319. package/dist/src/runtime/config/model-execution-policy.d.ts +13 -0
  320. package/dist/src/runtime/config/model-execution-policy.js +8 -0
  321. package/dist/src/runtime/config/request-runner-config.d.ts +6 -0
  322. package/dist/src/runtime/config/request-runner-config.js +16 -0
  323. package/dist/src/runtime/config/runner/contracts.d.ts +30 -0
  324. package/dist/src/runtime/config/runner/contracts.js +6 -0
  325. package/dist/src/runtime/config/runner/instruction-refs.d.ts +6 -0
  326. package/dist/src/runtime/config/runner/instruction-refs.js +48 -0
  327. package/dist/src/runtime/config/runner/loader.d.ts +4 -0
  328. package/dist/src/runtime/config/runner/loader.js +100 -0
  329. package/dist/src/runtime/config/runner/model-policy.d.ts +6 -0
  330. package/dist/src/runtime/config/runner/model-policy.js +26 -0
  331. package/dist/src/runtime/config/runner/step-instructions.d.ts +34 -0
  332. package/dist/src/runtime/config/runner/step-instructions.js +72 -0
  333. package/dist/src/runtime/config/runner/validation.d.ts +10 -0
  334. package/dist/src/runtime/config/runner/validation.js +57 -0
  335. package/dist/src/runtime/config/schema.d.ts +3 -0
  336. package/dist/src/runtime/config/schema.js +467 -0
  337. package/dist/src/runtime/config/types.d.ts +56 -0
  338. package/dist/src/runtime/config/types.js +1 -0
  339. package/dist/src/runtime/config/utils.d.ts +12 -0
  340. package/dist/src/runtime/config/utils.js +83 -0
  341. package/dist/src/runtime/config/validation.d.ts +17 -0
  342. package/dist/src/runtime/config/validation.js +561 -0
  343. package/dist/src/runtime/config.d.ts +11 -0
  344. package/dist/src/runtime/config.js +166 -0
  345. package/dist/src/runtime/context/model-step-compaction.d.ts +17 -0
  346. package/dist/src/runtime/context/model-step-compaction.js +456 -0
  347. package/dist/src/runtime/context/pinned-context-compaction.d.ts +33 -0
  348. package/dist/src/runtime/context/pinned-context-compaction.js +235 -0
  349. package/dist/src/runtime/context/request-context-budget.d.ts +17 -0
  350. package/dist/src/runtime/context/request-context-budget.js +51 -0
  351. package/dist/src/runtime/context/request-context-contracts.d.ts +64 -0
  352. package/dist/src/runtime/context/request-context-contracts.js +1 -0
  353. package/dist/src/runtime/context/request-context.d.ts +30 -0
  354. package/dist/src/runtime/context/request-context.js +242 -0
  355. package/dist/src/runtime/context/request-source.d.ts +33 -0
  356. package/dist/src/runtime/context/request-source.js +92 -0
  357. package/dist/src/runtime/context/request-temporal-context.d.ts +18 -0
  358. package/dist/src/runtime/context/request-temporal-context.js +43 -0
  359. package/dist/src/runtime/context/request-tool-results.d.ts +48 -0
  360. package/dist/src/runtime/context/request-tool-results.js +319 -0
  361. package/dist/src/runtime/context/semantic-compaction/chunking.d.ts +24 -0
  362. package/dist/src/runtime/context/semantic-compaction/chunking.js +50 -0
  363. package/dist/src/runtime/context/semantic-compaction/contracts.d.ts +60 -0
  364. package/dist/src/runtime/context/semantic-compaction/contracts.js +134 -0
  365. package/dist/src/runtime/context/semantic-compaction/dependency-results.d.ts +20 -0
  366. package/dist/src/runtime/context/semantic-compaction/dependency-results.js +81 -0
  367. package/dist/src/runtime/context/semantic-compaction/format.d.ts +3 -0
  368. package/dist/src/runtime/context/semantic-compaction/format.js +105 -0
  369. package/dist/src/runtime/context/semantic-compaction/index.d.ts +5 -0
  370. package/dist/src/runtime/context/semantic-compaction/index.js +5 -0
  371. package/dist/src/runtime/context/semantic-compaction/parser.d.ts +12 -0
  372. package/dist/src/runtime/context/semantic-compaction/parser.js +153 -0
  373. package/dist/src/runtime/context/semantic-compaction/prompt.d.ts +1 -0
  374. package/dist/src/runtime/context/semantic-compaction/prompt.js +12 -0
  375. package/dist/src/runtime/context/semantic-compaction/repair-headroom.d.ts +31 -0
  376. package/dist/src/runtime/context/semantic-compaction/repair-headroom.js +50 -0
  377. package/dist/src/runtime/context/semantic-compaction/run.d.ts +25 -0
  378. package/dist/src/runtime/context/semantic-compaction/run.js +561 -0
  379. package/dist/src/runtime/context/semantic-compaction/store.d.ts +9 -0
  380. package/dist/src/runtime/context/semantic-compaction/store.js +82 -0
  381. package/dist/src/runtime/context/session-artifact-paths.d.ts +42 -0
  382. package/dist/src/runtime/context/session-artifact-paths.js +58 -0
  383. package/dist/src/runtime/context/session-memory/compaction/batching.d.ts +4 -0
  384. package/dist/src/runtime/context/session-memory/compaction/batching.js +17 -0
  385. package/dist/src/runtime/context/session-memory/compaction/format.d.ts +2 -0
  386. package/dist/src/runtime/context/session-memory/compaction/format.js +26 -0
  387. package/dist/src/runtime/context/session-memory/compaction/parser.d.ts +8 -0
  388. package/dist/src/runtime/context/session-memory/compaction/parser.js +30 -0
  389. package/dist/src/runtime/context/session-memory/compaction/prompt.d.ts +1 -0
  390. package/dist/src/runtime/context/session-memory/compaction/prompt.js +10 -0
  391. package/dist/src/runtime/context/session-memory/compaction/repair-headroom.d.ts +6 -0
  392. package/dist/src/runtime/context/session-memory/compaction/repair-headroom.js +24 -0
  393. package/dist/src/runtime/context/session-memory/compaction/run.d.ts +9 -0
  394. package/dist/src/runtime/context/session-memory/compaction/run.js +125 -0
  395. package/dist/src/runtime/context/session-memory/contracts.d.ts +38 -0
  396. package/dist/src/runtime/context/session-memory/contracts.js +1 -0
  397. package/dist/src/runtime/context/session-memory/controller.d.ts +2 -0
  398. package/dist/src/runtime/context/session-memory/controller.js +90 -0
  399. package/dist/src/runtime/context/session-memory/index.d.ts +4 -0
  400. package/dist/src/runtime/context/session-memory/index.js +3 -0
  401. package/dist/src/runtime/context/session-memory/message-replacement.d.ts +7 -0
  402. package/dist/src/runtime/context/session-memory/message-replacement.js +39 -0
  403. package/dist/src/runtime/context/session-memory/model-step-controller.d.ts +3 -0
  404. package/dist/src/runtime/context/session-memory/model-step-controller.js +42 -0
  405. package/dist/src/runtime/context/session-memory/projection.d.ts +5 -0
  406. package/dist/src/runtime/context/session-memory/projection.js +26 -0
  407. package/dist/src/runtime/context/session-memory/root-projection.d.ts +9 -0
  408. package/dist/src/runtime/context/session-memory/root-projection.js +14 -0
  409. package/dist/src/runtime/context/session-memory/selection.d.ts +8 -0
  410. package/dist/src/runtime/context/session-memory/selection.js +35 -0
  411. package/dist/src/runtime/context/skills-context.d.ts +12 -0
  412. package/dist/src/runtime/context/skills-context.js +27 -0
  413. package/dist/src/runtime/context/token-estimator.d.ts +6 -0
  414. package/dist/src/runtime/context/token-estimator.js +53 -0
  415. package/dist/src/runtime/context/workspace-context.d.ts +8 -0
  416. package/dist/src/runtime/context/workspace-context.js +49 -0
  417. package/dist/src/runtime/default-adapters.d.ts +29 -0
  418. package/dist/src/runtime/default-adapters.js +209 -0
  419. package/dist/src/runtime/events/event-status.d.ts +20 -0
  420. package/dist/src/runtime/events/event-status.js +298 -0
  421. package/dist/src/runtime/events/planner-event-status.d.ts +9 -0
  422. package/dist/src/runtime/events/planner-event-status.js +56 -0
  423. package/dist/src/runtime/events/runtime-emitter.d.ts +30 -0
  424. package/dist/src/runtime/events/runtime-emitter.js +186 -0
  425. package/dist/src/runtime/events/runtime-status.d.ts +5 -0
  426. package/dist/src/runtime/events/runtime-status.js +3 -0
  427. package/dist/src/runtime/index.d.ts +12 -0
  428. package/dist/src/runtime/index.js +12 -0
  429. package/dist/src/runtime/lifecycle/request-finalizer.d.ts +30 -0
  430. package/dist/src/runtime/lifecycle/request-finalizer.js +42 -0
  431. package/dist/src/runtime/model/input-token-count.d.ts +10 -0
  432. package/dist/src/runtime/model/input-token-count.js +42 -0
  433. package/dist/src/runtime/model/invoke-raw-step.d.ts +57 -0
  434. package/dist/src/runtime/model/invoke-raw-step.js +146 -0
  435. package/dist/src/runtime/model/invoke-step.d.ts +16 -0
  436. package/dist/src/runtime/model/invoke-step.js +535 -0
  437. package/dist/src/runtime/model/invoke-structured-step.d.ts +41 -0
  438. package/dist/src/runtime/model/invoke-structured-step.js +143 -0
  439. package/dist/src/runtime/model/json-schema-value.d.ts +9 -0
  440. package/dist/src/runtime/model/json-schema-value.js +261 -0
  441. package/dist/src/runtime/model/model-catalog.d.ts +18 -0
  442. package/dist/src/runtime/model/model-catalog.js +55 -0
  443. package/dist/src/runtime/model/model-context-budget.d.ts +25 -0
  444. package/dist/src/runtime/model/model-context-budget.js +51 -0
  445. package/dist/src/runtime/model/model-selection.d.ts +16 -0
  446. package/dist/src/runtime/model/model-selection.js +66 -0
  447. package/dist/src/runtime/model/model-step-capability-policy.d.ts +14 -0
  448. package/dist/src/runtime/model/model-step-capability-policy.js +49 -0
  449. package/dist/src/runtime/model/model-step-port.d.ts +37 -0
  450. package/dist/src/runtime/model/model-step-port.js +1 -0
  451. package/dist/src/runtime/model/model-step-timeout-policy.d.ts +15 -0
  452. package/dist/src/runtime/model/model-step-timeout-policy.js +34 -0
  453. package/dist/src/runtime/model/provider-completion.d.ts +13 -0
  454. package/dist/src/runtime/model/provider-completion.js +29 -0
  455. package/dist/src/runtime/model/repair-prompts.d.ts +13 -0
  456. package/dist/src/runtime/model/repair-prompts.js +22 -0
  457. package/dist/src/runtime/model/structured-decision-envelope.d.ts +4 -0
  458. package/dist/src/runtime/model/structured-decision-envelope.js +47 -0
  459. package/dist/src/runtime/model/thinking-trace.d.ts +6 -0
  460. package/dist/src/runtime/model/thinking-trace.js +1 -0
  461. package/dist/src/runtime/observability/debug-logger.d.ts +27 -0
  462. package/dist/src/runtime/observability/debug-logger.js +132 -0
  463. package/dist/src/runtime/observability/error-type.d.ts +1 -0
  464. package/dist/src/runtime/observability/error-type.js +33 -0
  465. package/dist/src/runtime/observability/log-rotation.d.ts +24 -0
  466. package/dist/src/runtime/observability/log-rotation.js +142 -0
  467. package/dist/src/runtime/orchestration/capability-adapters/descriptor.d.ts +13 -0
  468. package/dist/src/runtime/orchestration/capability-adapters/descriptor.js +54 -0
  469. package/dist/src/runtime/orchestration/capability-adapters/index.d.ts +14 -0
  470. package/dist/src/runtime/orchestration/capability-adapters/index.js +12 -0
  471. package/dist/src/runtime/orchestration/capability-adapters/result.d.ts +74 -0
  472. package/dist/src/runtime/orchestration/capability-adapters/result.js +307 -0
  473. package/dist/src/runtime/orchestration/capability-adapters/scope.d.ts +17 -0
  474. package/dist/src/runtime/orchestration/capability-adapters/scope.js +51 -0
  475. package/dist/src/runtime/orchestration/capability-adapters/working-directory.d.ts +4 -0
  476. package/dist/src/runtime/orchestration/capability-adapters/working-directory.js +7 -0
  477. package/dist/src/runtime/orchestration/final-response/finalization.d.ts +15 -0
  478. package/dist/src/runtime/orchestration/final-response/finalization.js +18 -0
  479. package/dist/src/runtime/orchestration/lifecycle/request-lifecycle.d.ts +37 -0
  480. package/dist/src/runtime/orchestration/lifecycle/request-lifecycle.js +109 -0
  481. package/dist/src/runtime/orchestration/request/request-attachment-prompt.d.ts +2 -0
  482. package/dist/src/runtime/orchestration/request/request-attachment-prompt.js +17 -0
  483. package/dist/src/runtime/orchestration/request/request-attachments.d.ts +18 -0
  484. package/dist/src/runtime/orchestration/request/request-attachments.js +81 -0
  485. package/dist/src/runtime/orchestration/role-calls/assignment-scope.d.ts +22 -0
  486. package/dist/src/runtime/orchestration/role-calls/assignment-scope.js +100 -0
  487. package/dist/src/runtime/orchestration/role-calls/candidate-validation.d.ts +5 -0
  488. package/dist/src/runtime/orchestration/role-calls/candidate-validation.js +328 -0
  489. package/dist/src/runtime/orchestration/role-calls/capability-selection-reconsideration.d.ts +25 -0
  490. package/dist/src/runtime/orchestration/role-calls/capability-selection-reconsideration.js +158 -0
  491. package/dist/src/runtime/orchestration/role-calls/child-return.d.ts +32 -0
  492. package/dist/src/runtime/orchestration/role-calls/child-return.js +85 -0
  493. package/dist/src/runtime/orchestration/role-calls/command-decoder.d.ts +9 -0
  494. package/dist/src/runtime/orchestration/role-calls/command-decoder.js +390 -0
  495. package/dist/src/runtime/orchestration/role-calls/command-dispatch.d.ts +2 -0
  496. package/dist/src/runtime/orchestration/role-calls/command-dispatch.js +606 -0
  497. package/dist/src/runtime/orchestration/role-calls/contracts.d.ts +418 -0
  498. package/dist/src/runtime/orchestration/role-calls/contracts.js +36 -0
  499. package/dist/src/runtime/orchestration/role-calls/dependency-results.d.ts +8 -0
  500. package/dist/src/runtime/orchestration/role-calls/dependency-results.js +73 -0
  501. package/dist/src/runtime/orchestration/role-calls/diagnostics.d.ts +38 -0
  502. package/dist/src/runtime/orchestration/role-calls/diagnostics.js +270 -0
  503. package/dist/src/runtime/orchestration/role-calls/index.d.ts +11 -0
  504. package/dist/src/runtime/orchestration/role-calls/index.js +11 -0
  505. package/dist/src/runtime/orchestration/role-calls/ledger.d.ts +5 -0
  506. package/dist/src/runtime/orchestration/role-calls/ledger.js +334 -0
  507. package/dist/src/runtime/orchestration/role-calls/plan-binding.d.ts +35 -0
  508. package/dist/src/runtime/orchestration/role-calls/plan-binding.js +179 -0
  509. package/dist/src/runtime/orchestration/role-calls/plan-child-objective.d.ts +12 -0
  510. package/dist/src/runtime/orchestration/role-calls/plan-child-objective.js +38 -0
  511. package/dist/src/runtime/orchestration/role-calls/plan-codec.d.ts +2 -0
  512. package/dist/src/runtime/orchestration/role-calls/plan-codec.js +91 -0
  513. package/dist/src/runtime/orchestration/role-calls/plan-validation.d.ts +22 -0
  514. package/dist/src/runtime/orchestration/role-calls/plan-validation.js +158 -0
  515. package/dist/src/runtime/orchestration/role-calls/plan.d.ts +4 -0
  516. package/dist/src/runtime/orchestration/role-calls/plan.js +4 -0
  517. package/dist/src/runtime/orchestration/role-calls/reducer-primitives.d.ts +31 -0
  518. package/dist/src/runtime/orchestration/role-calls/reducer-primitives.js +161 -0
  519. package/dist/src/runtime/orchestration/role-calls/reducer.d.ts +9 -0
  520. package/dist/src/runtime/orchestration/role-calls/reducer.js +50 -0
  521. package/dist/src/runtime/orchestration/role-calls/transactions.d.ts +5 -0
  522. package/dist/src/runtime/orchestration/role-calls/transactions.js +195 -0
  523. package/dist/src/runtime/orchestration/role-calls/worker-capability-scope.d.ts +4 -0
  524. package/dist/src/runtime/orchestration/role-calls/worker-capability-scope.js +28 -0
  525. package/dist/src/runtime/orchestration/role-calls/working-directory.d.ts +16 -0
  526. package/dist/src/runtime/orchestration/role-calls/working-directory.js +51 -0
  527. package/dist/src/runtime/orchestration/role-executors/activation/loop.d.ts +21 -0
  528. package/dist/src/runtime/orchestration/role-executors/activation/loop.js +245 -0
  529. package/dist/src/runtime/orchestration/role-executors/activation/result-normalization.d.ts +8 -0
  530. package/dist/src/runtime/orchestration/role-executors/activation/result-normalization.js +117 -0
  531. package/dist/src/runtime/orchestration/role-executors/activation/state-validation.d.ts +24 -0
  532. package/dist/src/runtime/orchestration/role-executors/activation/state-validation.js +137 -0
  533. package/dist/src/runtime/orchestration/role-executors/child-invocation/diagnostic-fields.d.ts +4 -0
  534. package/dist/src/runtime/orchestration/role-executors/child-invocation/diagnostic-fields.js +39 -0
  535. package/dist/src/runtime/orchestration/role-executors/child-invocation/state-validation.d.ts +41 -0
  536. package/dist/src/runtime/orchestration/role-executors/child-invocation/state-validation.js +80 -0
  537. package/dist/src/runtime/orchestration/role-executors/child-invocation/transaction.d.ts +22 -0
  538. package/dist/src/runtime/orchestration/role-executors/child-invocation/transaction.js +232 -0
  539. package/dist/src/runtime/orchestration/role-executors/contracts.d.ts +72 -0
  540. package/dist/src/runtime/orchestration/role-executors/contracts.js +1 -0
  541. package/dist/src/runtime/orchestration/role-executors/diagnostics.d.ts +100 -0
  542. package/dist/src/runtime/orchestration/role-executors/diagnostics.js +133 -0
  543. package/dist/src/runtime/orchestration/role-executors/index.d.ts +2 -0
  544. package/dist/src/runtime/orchestration/role-executors/index.js +2 -0
  545. package/dist/src/runtime/orchestration/role-executors/registry.d.ts +2 -0
  546. package/dist/src/runtime/orchestration/role-executors/registry.js +39 -0
  547. package/dist/src/runtime/orchestration/role-executors/shared/diagnostic-context.d.ts +9 -0
  548. package/dist/src/runtime/orchestration/role-executors/shared/diagnostic-context.js +16 -0
  549. package/dist/src/runtime/orchestration/role-executors/shared/runtime-invariants.d.ts +14 -0
  550. package/dist/src/runtime/orchestration/role-executors/shared/runtime-invariants.js +45 -0
  551. package/dist/src/runtime/orchestration/roles.d.ts +7 -0
  552. package/dist/src/runtime/orchestration/roles.js +15 -0
  553. package/dist/src/runtime/orchestration/state-head.d.ts +110 -0
  554. package/dist/src/runtime/orchestration/state-head.js +349 -0
  555. package/dist/src/runtime/orchestration/synchronous-boundary.d.ts +6 -0
  556. package/dist/src/runtime/orchestration/synchronous-boundary.js +26 -0
  557. package/dist/src/runtime/orchestration/worker-capabilities/binding.d.ts +13 -0
  558. package/dist/src/runtime/orchestration/worker-capabilities/binding.js +625 -0
  559. package/dist/src/runtime/orchestration/worker-capabilities/contracts.d.ts +178 -0
  560. package/dist/src/runtime/orchestration/worker-capabilities/contracts.js +18 -0
  561. package/dist/src/runtime/orchestration/worker-capabilities/controls.d.ts +18 -0
  562. package/dist/src/runtime/orchestration/worker-capabilities/controls.js +251 -0
  563. package/dist/src/runtime/orchestration/worker-capabilities/diagnostics.d.ts +33 -0
  564. package/dist/src/runtime/orchestration/worker-capabilities/diagnostics.js +117 -0
  565. package/dist/src/runtime/orchestration/worker-capabilities/execution.d.ts +38 -0
  566. package/dist/src/runtime/orchestration/worker-capabilities/execution.js +400 -0
  567. package/dist/src/runtime/orchestration/worker-capabilities/index.d.ts +8 -0
  568. package/dist/src/runtime/orchestration/worker-capabilities/index.js +8 -0
  569. package/dist/src/runtime/orchestration/worker-capabilities/payload-author.d.ts +8 -0
  570. package/dist/src/runtime/orchestration/worker-capabilities/payload-author.js +575 -0
  571. package/dist/src/runtime/orchestration/worker-capabilities/payload-contracts.d.ts +116 -0
  572. package/dist/src/runtime/orchestration/worker-capabilities/payload-contracts.js +27 -0
  573. package/dist/src/runtime/orchestration/worker-capabilities/payload-diagnostics.d.ts +33 -0
  574. package/dist/src/runtime/orchestration/worker-capabilities/payload-diagnostics.js +82 -0
  575. package/dist/src/runtime/orchestration/worker-capabilities/payload-instructions.d.ts +6 -0
  576. package/dist/src/runtime/orchestration/worker-capabilities/payload-instructions.js +56 -0
  577. package/dist/src/runtime/orchestration/worker-capabilities/scope.d.ts +35 -0
  578. package/dist/src/runtime/orchestration/worker-capabilities/scope.js +141 -0
  579. package/dist/src/runtime/orchestration/worker-capabilities/selection-controls.d.ts +37 -0
  580. package/dist/src/runtime/orchestration/worker-capabilities/selection-controls.js +95 -0
  581. package/dist/src/runtime/orchestration/worker-capabilities/settled-results.d.ts +15 -0
  582. package/dist/src/runtime/orchestration/worker-capabilities/settled-results.js +119 -0
  583. package/dist/src/runtime/plugins/bundled-root.d.ts +5 -0
  584. package/dist/src/runtime/plugins/bundled-root.js +35 -0
  585. package/dist/src/runtime/plugins/compiled-catalog.d.ts +16 -0
  586. package/dist/src/runtime/plugins/compiled-catalog.js +1 -0
  587. package/dist/src/runtime/plugins/discovered-manifest.d.ts +6 -0
  588. package/dist/src/runtime/plugins/discovered-manifest.js +1 -0
  589. package/dist/src/runtime/plugins/loader.d.ts +6 -0
  590. package/dist/src/runtime/plugins/loader.js +337 -0
  591. package/dist/src/runtime/plugins/manifest-discovery.d.ts +8 -0
  592. package/dist/src/runtime/plugins/manifest-discovery.js +125 -0
  593. package/dist/src/runtime/plugins/manifest-projection.d.ts +19 -0
  594. package/dist/src/runtime/plugins/manifest-projection.js +92 -0
  595. package/dist/src/runtime/plugins/manifest-validator.d.ts +2 -0
  596. package/dist/src/runtime/plugins/manifest-validator.js +459 -0
  597. package/dist/src/runtime/ports.d.ts +240 -0
  598. package/dist/src/runtime/ports.js +1 -0
  599. package/dist/src/runtime/request/contracts.d.ts +121 -0
  600. package/dist/src/runtime/request/contracts.js +6 -0
  601. package/dist/src/runtime/request/dependencies.d.ts +23 -0
  602. package/dist/src/runtime/request/dependencies.js +40 -0
  603. package/dist/src/runtime/request/execution-agent-root-execution.d.ts +2 -0
  604. package/dist/src/runtime/request/execution-agent-root-execution.js +117 -0
  605. package/dist/src/runtime/request/execution-facets.d.ts +11 -0
  606. package/dist/src/runtime/request/execution-facets.js +90 -0
  607. package/dist/src/runtime/request/execution-scope-surfaces.d.ts +14 -0
  608. package/dist/src/runtime/request/execution-scope-surfaces.js +138 -0
  609. package/dist/src/runtime/request/execution-scope.d.ts +43 -0
  610. package/dist/src/runtime/request/execution-scope.js +34 -0
  611. package/dist/src/runtime/request/handler.d.ts +3 -0
  612. package/dist/src/runtime/request/handler.js +244 -0
  613. package/dist/src/runtime/request/immutable-view.d.ts +4 -0
  614. package/dist/src/runtime/request/immutable-view.js +10 -0
  615. package/dist/src/runtime/request/input.d.ts +10 -0
  616. package/dist/src/runtime/request/input.js +21 -0
  617. package/dist/src/runtime/request/plan-event-projection.d.ts +61 -0
  618. package/dist/src/runtime/request/plan-event-projection.js +64 -0
  619. package/dist/src/runtime/request/planner-plan-events.d.ts +6 -0
  620. package/dist/src/runtime/request/planner-plan-events.js +44 -0
  621. package/dist/src/runtime/request/request-steering-context.d.ts +3 -0
  622. package/dist/src/runtime/request/request-steering-context.js +22 -0
  623. package/dist/src/runtime/request/request-steering.d.ts +36 -0
  624. package/dist/src/runtime/request/request-steering.js +193 -0
  625. package/dist/src/runtime/request/result.d.ts +15 -0
  626. package/dist/src/runtime/request/result.js +1 -0
  627. package/dist/src/runtime/request/role-call-planner-event-diagnostics.d.ts +17 -0
  628. package/dist/src/runtime/request/role-call-planner-event-diagnostics.js +78 -0
  629. package/dist/src/runtime/request/role-call-planner-events.d.ts +19 -0
  630. package/dist/src/runtime/request/role-call-planner-events.js +104 -0
  631. package/dist/src/runtime/request/role-executor-composition.d.ts +9 -0
  632. package/dist/src/runtime/request/role-executor-composition.js +150 -0
  633. package/dist/src/runtime/request/root-contract.d.ts +98 -0
  634. package/dist/src/runtime/request/root-contract.js +1 -0
  635. package/dist/src/runtime/request/root-execution-kernel.d.ts +11 -0
  636. package/dist/src/runtime/request/root-execution-kernel.js +472 -0
  637. package/dist/src/runtime/request/runner.d.ts +6 -0
  638. package/dist/src/runtime/request/runner.js +81 -0
  639. package/dist/src/runtime/request/session-artifact-path-persistence.d.ts +11 -0
  640. package/dist/src/runtime/request/session-artifact-path-persistence.js +78 -0
  641. package/dist/src/runtime/request/session-store.d.ts +2 -0
  642. package/dist/src/runtime/request/session-store.js +1 -0
  643. package/dist/src/runtime/request/supervisor-root-execution-diagnostics.d.ts +46 -0
  644. package/dist/src/runtime/request/supervisor-root-execution-diagnostics.js +82 -0
  645. package/dist/src/runtime/request/supervisor-root-execution.d.ts +10 -0
  646. package/dist/src/runtime/request/supervisor-root-execution.js +35 -0
  647. package/dist/src/runtime/request/worker-capability-composition.d.ts +18 -0
  648. package/dist/src/runtime/request/worker-capability-composition.js +61 -0
  649. package/dist/src/runtime/request/worker-capability-payload-prompts.d.ts +2 -0
  650. package/dist/src/runtime/request/worker-capability-payload-prompts.js +16 -0
  651. package/dist/src/runtime/request/worker-capability-payload.d.ts +7 -0
  652. package/dist/src/runtime/request/worker-capability-payload.js +420 -0
  653. package/dist/src/runtime/session/request-history.d.ts +3 -0
  654. package/dist/src/runtime/session/request-history.js +10 -0
  655. package/dist/src/runtime/session/request-session.d.ts +33 -0
  656. package/dist/src/runtime/session/request-session.js +40 -0
  657. package/dist/src/runtime/session/session-title.d.ts +12 -0
  658. package/dist/src/runtime/session/session-title.js +38 -0
  659. package/dist/src/runtime/steps/auditor-decision/contracts.d.ts +91 -0
  660. package/dist/src/runtime/steps/auditor-decision/contracts.js +79 -0
  661. package/dist/src/runtime/steps/auditor-decision/format.d.ts +3 -0
  662. package/dist/src/runtime/steps/auditor-decision/format.js +86 -0
  663. package/dist/src/runtime/steps/auditor-decision/index.d.ts +7 -0
  664. package/dist/src/runtime/steps/auditor-decision/index.js +7 -0
  665. package/dist/src/runtime/steps/auditor-decision/input.d.ts +11 -0
  666. package/dist/src/runtime/steps/auditor-decision/input.js +67 -0
  667. package/dist/src/runtime/steps/auditor-decision/parser.d.ts +2 -0
  668. package/dist/src/runtime/steps/auditor-decision/parser.js +146 -0
  669. package/dist/src/runtime/steps/auditor-decision/projection.d.ts +4 -0
  670. package/dist/src/runtime/steps/auditor-decision/projection.js +120 -0
  671. package/dist/src/runtime/steps/auditor-decision/prompt.d.ts +1 -0
  672. package/dist/src/runtime/steps/auditor-decision/prompt.js +11 -0
  673. package/dist/src/runtime/steps/auditor-decision/run.d.ts +4 -0
  674. package/dist/src/runtime/steps/auditor-decision/run.js +70 -0
  675. package/dist/src/runtime/steps/degraded-finalization/contract.d.ts +27 -0
  676. package/dist/src/runtime/steps/degraded-finalization/contract.js +26 -0
  677. package/dist/src/runtime/steps/degraded-finalization/fallback.d.ts +2 -0
  678. package/dist/src/runtime/steps/degraded-finalization/fallback.js +10 -0
  679. package/dist/src/runtime/steps/degraded-finalization/input.d.ts +10 -0
  680. package/dist/src/runtime/steps/degraded-finalization/input.js +20 -0
  681. package/dist/src/runtime/steps/degraded-finalization/parser.d.ts +2 -0
  682. package/dist/src/runtime/steps/degraded-finalization/parser.js +31 -0
  683. package/dist/src/runtime/steps/degraded-finalization/prompt.d.ts +5 -0
  684. package/dist/src/runtime/steps/degraded-finalization/prompt.js +32 -0
  685. package/dist/src/runtime/steps/degraded-finalization/render.d.ts +5 -0
  686. package/dist/src/runtime/steps/degraded-finalization/render.js +25 -0
  687. package/dist/src/runtime/steps/degraded-finalization/run.d.ts +6 -0
  688. package/dist/src/runtime/steps/degraded-finalization/run.js +77 -0
  689. package/dist/src/runtime/steps/execution-agent/compaction.d.ts +15 -0
  690. package/dist/src/runtime/steps/execution-agent/compaction.js +12 -0
  691. package/dist/src/runtime/steps/execution-agent/contracts.d.ts +98 -0
  692. package/dist/src/runtime/steps/execution-agent/contracts.js +22 -0
  693. package/dist/src/runtime/steps/execution-agent/format.d.ts +25 -0
  694. package/dist/src/runtime/steps/execution-agent/format.js +340 -0
  695. package/dist/src/runtime/steps/execution-agent/index.d.ts +11 -0
  696. package/dist/src/runtime/steps/execution-agent/index.js +11 -0
  697. package/dist/src/runtime/steps/execution-agent/input.d.ts +29 -0
  698. package/dist/src/runtime/steps/execution-agent/input.js +153 -0
  699. package/dist/src/runtime/steps/execution-agent/parser.d.ts +2 -0
  700. package/dist/src/runtime/steps/execution-agent/parser.js +466 -0
  701. package/dist/src/runtime/steps/execution-agent/prompt.d.ts +11 -0
  702. package/dist/src/runtime/steps/execution-agent/prompt.js +48 -0
  703. package/dist/src/runtime/steps/execution-agent/refinement-prompt.d.ts +5 -0
  704. package/dist/src/runtime/steps/execution-agent/refinement-prompt.js +16 -0
  705. package/dist/src/runtime/steps/execution-agent/refinement.d.ts +31 -0
  706. package/dist/src/runtime/steps/execution-agent/refinement.js +379 -0
  707. package/dist/src/runtime/steps/execution-agent/response-input.d.ts +16 -0
  708. package/dist/src/runtime/steps/execution-agent/response-input.js +70 -0
  709. package/dist/src/runtime/steps/execution-agent/response-prompt.d.ts +3 -0
  710. package/dist/src/runtime/steps/execution-agent/response-prompt.js +22 -0
  711. package/dist/src/runtime/steps/execution-agent/response-run.d.ts +8 -0
  712. package/dist/src/runtime/steps/execution-agent/response-run.js +50 -0
  713. package/dist/src/runtime/steps/execution-agent/run.d.ts +15 -0
  714. package/dist/src/runtime/steps/execution-agent/run.js +95 -0
  715. package/dist/src/runtime/steps/execution-agent/state-context.d.ts +19 -0
  716. package/dist/src/runtime/steps/execution-agent/state-context.js +205 -0
  717. package/dist/src/runtime/steps/model-step-timeout.d.ts +8 -0
  718. package/dist/src/runtime/steps/model-step-timeout.js +24 -0
  719. package/dist/src/runtime/steps/planner-decision/contracts.d.ts +79 -0
  720. package/dist/src/runtime/steps/planner-decision/contracts.js +37 -0
  721. package/dist/src/runtime/steps/planner-decision/diagnostics.d.ts +75 -0
  722. package/dist/src/runtime/steps/planner-decision/diagnostics.js +227 -0
  723. package/dist/src/runtime/steps/planner-decision/format.d.ts +10 -0
  724. package/dist/src/runtime/steps/planner-decision/format.js +251 -0
  725. package/dist/src/runtime/steps/planner-decision/index.d.ts +9 -0
  726. package/dist/src/runtime/steps/planner-decision/index.js +9 -0
  727. package/dist/src/runtime/steps/planner-decision/input.d.ts +35 -0
  728. package/dist/src/runtime/steps/planner-decision/input.js +218 -0
  729. package/dist/src/runtime/steps/planner-decision/parser.d.ts +9 -0
  730. package/dist/src/runtime/steps/planner-decision/parser.js +241 -0
  731. package/dist/src/runtime/steps/planner-decision/plan-parser.d.ts +7 -0
  732. package/dist/src/runtime/steps/planner-decision/plan-parser.js +178 -0
  733. package/dist/src/runtime/steps/planner-decision/plan.d.ts +8 -0
  734. package/dist/src/runtime/steps/planner-decision/plan.js +125 -0
  735. package/dist/src/runtime/steps/planner-decision/prompt.d.ts +10 -0
  736. package/dist/src/runtime/steps/planner-decision/prompt.js +98 -0
  737. package/dist/src/runtime/steps/planner-decision/resume.d.ts +16 -0
  738. package/dist/src/runtime/steps/planner-decision/resume.js +78 -0
  739. package/dist/src/runtime/steps/planner-decision/run.d.ts +18 -0
  740. package/dist/src/runtime/steps/planner-decision/run.js +141 -0
  741. package/dist/src/runtime/steps/planner-decision/tool-results.d.ts +16 -0
  742. package/dist/src/runtime/steps/planner-decision/tool-results.js +43 -0
  743. package/dist/src/runtime/steps/planner-graph/contracts.d.ts +51 -0
  744. package/dist/src/runtime/steps/planner-graph/contracts.js +25 -0
  745. package/dist/src/runtime/steps/planner-graph/format.d.ts +3 -0
  746. package/dist/src/runtime/steps/planner-graph/format.js +80 -0
  747. package/dist/src/runtime/steps/planner-graph/index.d.ts +6 -0
  748. package/dist/src/runtime/steps/planner-graph/index.js +6 -0
  749. package/dist/src/runtime/steps/planner-graph/input.d.ts +11 -0
  750. package/dist/src/runtime/steps/planner-graph/input.js +58 -0
  751. package/dist/src/runtime/steps/planner-graph/parser.d.ts +2 -0
  752. package/dist/src/runtime/steps/planner-graph/parser.js +227 -0
  753. package/dist/src/runtime/steps/planner-graph/prompt.d.ts +1 -0
  754. package/dist/src/runtime/steps/planner-graph/prompt.js +11 -0
  755. package/dist/src/runtime/steps/planner-graph/run.d.ts +7 -0
  756. package/dist/src/runtime/steps/planner-graph/run.js +72 -0
  757. package/dist/src/runtime/steps/reviewer-decision/contracts.d.ts +103 -0
  758. package/dist/src/runtime/steps/reviewer-decision/contracts.js +42 -0
  759. package/dist/src/runtime/steps/reviewer-decision/diagnostics.d.ts +98 -0
  760. package/dist/src/runtime/steps/reviewer-decision/diagnostics.js +246 -0
  761. package/dist/src/runtime/steps/reviewer-decision/final-evidence.d.ts +42 -0
  762. package/dist/src/runtime/steps/reviewer-decision/final-evidence.js +309 -0
  763. package/dist/src/runtime/steps/reviewer-decision/format.d.ts +3 -0
  764. package/dist/src/runtime/steps/reviewer-decision/format.js +97 -0
  765. package/dist/src/runtime/steps/reviewer-decision/index.d.ts +8 -0
  766. package/dist/src/runtime/steps/reviewer-decision/index.js +8 -0
  767. package/dist/src/runtime/steps/reviewer-decision/input.d.ts +32 -0
  768. package/dist/src/runtime/steps/reviewer-decision/input.js +464 -0
  769. package/dist/src/runtime/steps/reviewer-decision/model-context.d.ts +17 -0
  770. package/dist/src/runtime/steps/reviewer-decision/model-context.js +95 -0
  771. package/dist/src/runtime/steps/reviewer-decision/parser.d.ts +5 -0
  772. package/dist/src/runtime/steps/reviewer-decision/parser.js +242 -0
  773. package/dist/src/runtime/steps/reviewer-decision/projection.d.ts +18 -0
  774. package/dist/src/runtime/steps/reviewer-decision/projection.js +296 -0
  775. package/dist/src/runtime/steps/reviewer-decision/prompt.d.ts +1 -0
  776. package/dist/src/runtime/steps/reviewer-decision/prompt.js +18 -0
  777. package/dist/src/runtime/steps/reviewer-decision/run.d.ts +13 -0
  778. package/dist/src/runtime/steps/reviewer-decision/run.js +158 -0
  779. package/dist/src/runtime/steps/supervisor-decision/contracts.d.ts +107 -0
  780. package/dist/src/runtime/steps/supervisor-decision/contracts.js +19 -0
  781. package/dist/src/runtime/steps/supervisor-decision/diagnostics.d.ts +111 -0
  782. package/dist/src/runtime/steps/supervisor-decision/diagnostics.js +277 -0
  783. package/dist/src/runtime/steps/supervisor-decision/format.d.ts +9 -0
  784. package/dist/src/runtime/steps/supervisor-decision/format.js +151 -0
  785. package/dist/src/runtime/steps/supervisor-decision/index.d.ts +10 -0
  786. package/dist/src/runtime/steps/supervisor-decision/index.js +10 -0
  787. package/dist/src/runtime/steps/supervisor-decision/input.d.ts +26 -0
  788. package/dist/src/runtime/steps/supervisor-decision/input.js +176 -0
  789. package/dist/src/runtime/steps/supervisor-decision/ledger-projection.d.ts +4 -0
  790. package/dist/src/runtime/steps/supervisor-decision/ledger-projection.js +32 -0
  791. package/dist/src/runtime/steps/supervisor-decision/parser.d.ts +9 -0
  792. package/dist/src/runtime/steps/supervisor-decision/parser.js +259 -0
  793. package/dist/src/runtime/steps/supervisor-decision/prompt.d.ts +12 -0
  794. package/dist/src/runtime/steps/supervisor-decision/prompt.js +140 -0
  795. package/dist/src/runtime/steps/supervisor-decision/resume.d.ts +11 -0
  796. package/dist/src/runtime/steps/supervisor-decision/resume.js +113 -0
  797. package/dist/src/runtime/steps/supervisor-decision/run.d.ts +14 -0
  798. package/dist/src/runtime/steps/supervisor-decision/run.js +221 -0
  799. package/dist/src/runtime/steps/supervisor-decision/worker-affordances.d.ts +7 -0
  800. package/dist/src/runtime/steps/supervisor-decision/worker-affordances.js +10 -0
  801. package/dist/src/runtime/steps/supervisor-decision/working-directory.d.ts +17 -0
  802. package/dist/src/runtime/steps/supervisor-decision/working-directory.js +174 -0
  803. package/dist/src/runtime/steps/supervisor-response/contracts.d.ts +13 -0
  804. package/dist/src/runtime/steps/supervisor-response/contracts.js +2 -0
  805. package/dist/src/runtime/steps/supervisor-response/diagnostics.d.ts +27 -0
  806. package/dist/src/runtime/steps/supervisor-response/diagnostics.js +55 -0
  807. package/dist/src/runtime/steps/supervisor-response/index.d.ts +4 -0
  808. package/dist/src/runtime/steps/supervisor-response/index.js +4 -0
  809. package/dist/src/runtime/steps/supervisor-response/input.d.ts +13 -0
  810. package/dist/src/runtime/steps/supervisor-response/input.js +73 -0
  811. package/dist/src/runtime/steps/supervisor-response/prompt.d.ts +6 -0
  812. package/dist/src/runtime/steps/supervisor-response/prompt.js +33 -0
  813. package/dist/src/runtime/steps/supervisor-response/run.d.ts +8 -0
  814. package/dist/src/runtime/steps/supervisor-response/run.js +108 -0
  815. package/dist/src/runtime/steps/worker-capability-scope-decision.d.ts +9 -0
  816. package/dist/src/runtime/steps/worker-capability-scope-decision.js +38 -0
  817. package/dist/src/runtime/steps/worker-decision/capability-affordances.d.ts +12 -0
  818. package/dist/src/runtime/steps/worker-decision/capability-affordances.js +8 -0
  819. package/dist/src/runtime/steps/worker-decision/capability-catalog.d.ts +28 -0
  820. package/dist/src/runtime/steps/worker-decision/capability-catalog.js +52 -0
  821. package/dist/src/runtime/steps/worker-decision/capability-selection-rejection.d.ts +15 -0
  822. package/dist/src/runtime/steps/worker-decision/capability-selection-rejection.js +41 -0
  823. package/dist/src/runtime/steps/worker-decision/contracts.d.ts +92 -0
  824. package/dist/src/runtime/steps/worker-decision/contracts.js +34 -0
  825. package/dist/src/runtime/steps/worker-decision/diagnostics.d.ts +110 -0
  826. package/dist/src/runtime/steps/worker-decision/diagnostics.js +298 -0
  827. package/dist/src/runtime/steps/worker-decision/format.d.ts +18 -0
  828. package/dist/src/runtime/steps/worker-decision/format.js +306 -0
  829. package/dist/src/runtime/steps/worker-decision/index.d.ts +8 -0
  830. package/dist/src/runtime/steps/worker-decision/index.js +8 -0
  831. package/dist/src/runtime/steps/worker-decision/input/canonical-state.d.ts +19 -0
  832. package/dist/src/runtime/steps/worker-decision/input/canonical-state.js +167 -0
  833. package/dist/src/runtime/steps/worker-decision/input/capability-selection.d.ts +9 -0
  834. package/dist/src/runtime/steps/worker-decision/input/capability-selection.js +135 -0
  835. package/dist/src/runtime/steps/worker-decision/input/contract.d.ts +9 -0
  836. package/dist/src/runtime/steps/worker-decision/input/contract.js +92 -0
  837. package/dist/src/runtime/steps/worker-decision/input/diagnostic-projection.d.ts +4 -0
  838. package/dist/src/runtime/steps/worker-decision/input/diagnostic-projection.js +114 -0
  839. package/dist/src/runtime/steps/worker-decision/input/prompt-context.d.ts +3 -0
  840. package/dist/src/runtime/steps/worker-decision/input/prompt-context.js +189 -0
  841. package/dist/src/runtime/steps/worker-decision/input/reference-context.d.ts +2 -0
  842. package/dist/src/runtime/steps/worker-decision/input/reference-context.js +50 -0
  843. package/dist/src/runtime/steps/worker-decision/input/session.d.ts +3 -0
  844. package/dist/src/runtime/steps/worker-decision/input/session.js +55 -0
  845. package/dist/src/runtime/steps/worker-decision/input/types.d.ts +122 -0
  846. package/dist/src/runtime/steps/worker-decision/input/types.js +1 -0
  847. package/dist/src/runtime/steps/worker-decision/input.d.ts +21 -0
  848. package/dist/src/runtime/steps/worker-decision/input.js +31 -0
  849. package/dist/src/runtime/steps/worker-decision/ledger-projection.d.ts +9 -0
  850. package/dist/src/runtime/steps/worker-decision/ledger-projection.js +40 -0
  851. package/dist/src/runtime/steps/worker-decision/parser.d.ts +17 -0
  852. package/dist/src/runtime/steps/worker-decision/parser.js +495 -0
  853. package/dist/src/runtime/steps/worker-decision/prompt.d.ts +21 -0
  854. package/dist/src/runtime/steps/worker-decision/prompt.js +167 -0
  855. package/dist/src/runtime/steps/worker-decision/result-author.d.ts +6 -0
  856. package/dist/src/runtime/steps/worker-decision/result-author.js +177 -0
  857. package/dist/src/runtime/steps/worker-decision/run.d.ts +20 -0
  858. package/dist/src/runtime/steps/worker-decision/run.js +433 -0
  859. package/dist/src/runtime/steps/worker-decision/runtime-path-refinement.d.ts +5 -0
  860. package/dist/src/runtime/steps/worker-decision/runtime-path-refinement.js +30 -0
  861. package/dist/src/runtime/streaming/request-callbacks.d.ts +25 -0
  862. package/dist/src/runtime/streaming/request-callbacks.js +52 -0
  863. package/dist/src/sessions/artifact-paths.d.ts +9 -0
  864. package/dist/src/sessions/artifact-paths.js +51 -0
  865. package/dist/src/sessions/context-window.d.ts +20 -0
  866. package/dist/src/sessions/context-window.js +214 -0
  867. package/dist/src/sessions/index.d.ts +49 -0
  868. package/dist/src/sessions/index.js +64 -0
  869. package/dist/src/sessions/memory/contracts.d.ts +29 -0
  870. package/dist/src/sessions/memory/contracts.js +2 -0
  871. package/dist/src/sessions/memory/rules.d.ts +5 -0
  872. package/dist/src/sessions/memory/rules.js +77 -0
  873. package/dist/src/sessions/memory/source.d.ts +14 -0
  874. package/dist/src/sessions/memory/source.js +116 -0
  875. package/dist/src/sessions/record/projection.d.ts +25 -0
  876. package/dist/src/sessions/record/projection.js +212 -0
  877. package/dist/src/sessions/record/rules.d.ts +6 -0
  878. package/dist/src/sessions/record/rules.js +45 -0
  879. package/dist/src/sessions/session-service.d.ts +61 -0
  880. package/dist/src/sessions/session-service.js +435 -0
  881. package/dist/src/sessions/session-store.d.ts +6 -0
  882. package/dist/src/sessions/session-store.js +61 -0
  883. package/dist/src/sessions/types.d.ts +169 -0
  884. package/dist/src/sessions/types.js +1 -0
  885. package/dist/src/shared/agent.d.ts +4 -0
  886. package/dist/src/shared/agent.js +18 -0
  887. package/dist/src/shared/attachments.d.ts +64 -0
  888. package/dist/src/shared/attachments.js +26 -0
  889. package/dist/src/shared/constants.d.ts +4 -0
  890. package/dist/src/shared/constants.js +4 -0
  891. package/dist/src/shared/invocation-profile-selection.d.ts +42 -0
  892. package/dist/src/shared/invocation-profile-selection.js +125 -0
  893. package/dist/src/shared/load-dotenv.d.ts +1 -0
  894. package/dist/src/shared/load-dotenv.js +40 -0
  895. package/dist/src/shared/model-role-policy.d.ts +3 -0
  896. package/dist/src/shared/model-role-policy.js +12 -0
  897. package/dist/src/shared/model-step-registry-data.json +125 -0
  898. package/dist/src/shared/model-step-registry.d.ts +133 -0
  899. package/dist/src/shared/model-step-registry.generated.d.ts +123 -0
  900. package/dist/src/shared/model-step-registry.generated.js +123 -0
  901. package/dist/src/shared/model-step-registry.js +36 -0
  902. package/dist/src/shared/model-step-registry.types.d.ts +19 -0
  903. package/dist/src/shared/model-step-registry.types.js +1 -0
  904. package/dist/src/shared/model-steps.d.ts +5 -0
  905. package/dist/src/shared/model-steps.js +12 -0
  906. package/dist/src/shared/types.d.ts +17 -0
  907. package/dist/src/shared/types.js +1 -0
  908. package/dist/src/web-ui/app/ARCHITECTURE.md +52 -0
  909. package/dist/src/web-ui/app/app.js +749 -0
  910. package/dist/src/web-ui/app/components/composer-actions.d.ts +26 -0
  911. package/dist/src/web-ui/app/components/composer-actions.js +118 -0
  912. package/dist/src/web-ui/app/components/config-workspace.js +875 -0
  913. package/dist/src/web-ui/app/components/conversation-activity.d.ts +72 -0
  914. package/dist/src/web-ui/app/components/conversation-activity.js +523 -0
  915. package/dist/src/web-ui/app/components/conversation-view.js +278 -0
  916. package/dist/src/web-ui/app/components/menu-navigation.js +39 -0
  917. package/dist/src/web-ui/app/components/message-attachments.d.ts +27 -0
  918. package/dist/src/web-ui/app/components/message-attachments.js +114 -0
  919. package/dist/src/web-ui/app/components/message-timestamp.d.ts +22 -0
  920. package/dist/src/web-ui/app/components/message-timestamp.js +44 -0
  921. package/dist/src/web-ui/app/components/model-selector.d.ts +15 -0
  922. package/dist/src/web-ui/app/components/model-selector.js +142 -0
  923. package/dist/src/web-ui/app/components/runtime-setup-guide.js +519 -0
  924. package/dist/src/web-ui/app/components/session-actions-menu.d.ts +17 -0
  925. package/dist/src/web-ui/app/components/session-actions-menu.js +121 -0
  926. package/dist/src/web-ui/app/components/tool-approval-card.js +58 -0
  927. package/dist/src/web-ui/app/components/workspace-shell.js +236 -0
  928. package/dist/src/web-ui/app/controllers/app-event-bindings.js +280 -0
  929. package/dist/src/web-ui/app/controllers/chat-request-controller.js +79 -0
  930. package/dist/src/web-ui/app/controllers/composer-attachments-controller.js +227 -0
  931. package/dist/src/web-ui/app/controllers/composer-queue-controller.js +273 -0
  932. package/dist/src/web-ui/app/controllers/composer-submit-controller.js +108 -0
  933. package/dist/src/web-ui/app/controllers/conversation-session-controller.js +556 -0
  934. package/dist/src/web-ui/app/controllers/operations-controller.js +137 -0
  935. package/dist/src/web-ui/app/controllers/realtime-event-controller.js +444 -0
  936. package/dist/src/web-ui/app/controllers/runtime-onboarding-controller.js +134 -0
  937. package/dist/src/web-ui/app/controllers/runtime-selection-controller.js +419 -0
  938. package/dist/src/web-ui/app/controllers/session-controller.js +312 -0
  939. package/dist/src/web-ui/app/controllers/steer-controller.d.ts +21 -0
  940. package/dist/src/web-ui/app/controllers/steer-controller.js +97 -0
  941. package/dist/src/web-ui/app/controllers/tool-approval-controller.js +64 -0
  942. package/dist/src/web-ui/app/index.html +513 -0
  943. package/dist/src/web-ui/app/lib/attachment-policy.d.ts +15 -0
  944. package/dist/src/web-ui/app/lib/attachment-policy.js +49 -0
  945. package/dist/src/web-ui/app/lib/event-presentation.d.ts +23 -0
  946. package/dist/src/web-ui/app/lib/event-presentation.js +248 -0
  947. package/dist/src/web-ui/app/lib/realtime-message.js +25 -0
  948. package/dist/src/web-ui/app/lib/session-composer-queue.d.ts +76 -0
  949. package/dist/src/web-ui/app/lib/session-composer-queue.js +318 -0
  950. package/dist/src/web-ui/app/lib/text-format.d.ts +13 -0
  951. package/dist/src/web-ui/app/lib/text-format.js +197 -0
  952. package/dist/src/web-ui/app/services/client-preferences.js +117 -0
  953. package/dist/src/web-ui/app/services/realtime-transport.d.ts +17 -0
  954. package/dist/src/web-ui/app/services/realtime-transport.js +65 -0
  955. package/dist/src/web-ui/app/services/runtime-web-client.d.ts +96 -0
  956. package/dist/src/web-ui/app/services/runtime-web-client.js +270 -0
  957. package/dist/src/web-ui/app/styles/00-tokens-base.css +151 -0
  958. package/dist/src/web-ui/app/styles/10-shell-sessions.css +867 -0
  959. package/dist/src/web-ui/app/styles/20-chat-composer.css +1936 -0
  960. package/dist/src/web-ui/app/styles/30-inspector-config.css +2108 -0
  961. package/dist/src/web-ui/app/styles/90-responsive.css +451 -0
  962. package/dist/src/web-ui/app/styles/foundation.css +173 -0
  963. package/dist/src/web-ui/app/styles.css +6 -0
  964. package/dist/src/web-ui/app/ui-behavior.d.ts +55 -0
  965. package/dist/src/web-ui/app/ui-behavior.js +82 -0
  966. package/dist/src/web-ui/config-dashboard-backend.d.ts +41 -0
  967. package/dist/src/web-ui/config-dashboard-backend.js +276 -0
  968. package/dist/src/web-ui/external-bridge-backend.d.ts +20 -0
  969. package/dist/src/web-ui/external-bridge-backend.js +292 -0
  970. package/dist/src/web-ui/local-runtime/api-router.d.ts +13 -0
  971. package/dist/src/web-ui/local-runtime/api-router.js +253 -0
  972. package/dist/src/web-ui/local-runtime/attachment-routes.d.ts +10 -0
  973. package/dist/src/web-ui/local-runtime/attachment-routes.js +122 -0
  974. package/dist/src/web-ui/local-runtime/contracts.d.ts +33 -0
  975. package/dist/src/web-ui/local-runtime/contracts.js +1 -0
  976. package/dist/src/web-ui/local-runtime/control-routes.d.ts +11 -0
  977. package/dist/src/web-ui/local-runtime/control-routes.js +52 -0
  978. package/dist/src/web-ui/local-runtime/environment-registry.d.ts +12 -0
  979. package/dist/src/web-ui/local-runtime/environment-registry.js +58 -0
  980. package/dist/src/web-ui/local-runtime/http.d.ts +14 -0
  981. package/dist/src/web-ui/local-runtime/http.js +78 -0
  982. package/dist/src/web-ui/local-runtime/realtime-controller.d.ts +15 -0
  983. package/dist/src/web-ui/local-runtime/realtime-controller.js +69 -0
  984. package/dist/src/web-ui/local-runtime/realtime-hub.d.ts +8 -0
  985. package/dist/src/web-ui/local-runtime/realtime-hub.js +18 -0
  986. package/dist/src/web-ui/local-runtime/request-execution.d.ts +18 -0
  987. package/dist/src/web-ui/local-runtime/request-execution.js +199 -0
  988. package/dist/src/web-ui/local-runtime/runtime-availability.d.ts +3 -0
  989. package/dist/src/web-ui/local-runtime/runtime-availability.js +45 -0
  990. package/dist/src/web-ui/local-runtime-backend.d.ts +14 -0
  991. package/dist/src/web-ui/local-runtime-backend.js +60 -0
  992. package/dist/src/web-ui/runtime-service-auto-open.d.ts +58 -0
  993. package/dist/src/web-ui/runtime-service-auto-open.js +167 -0
  994. package/dist/src/web-ui/server.d.ts +36 -0
  995. package/dist/src/web-ui/server.js +326 -0
  996. package/dist/src/web-ui/web-ui-address.d.ts +7 -0
  997. package/dist/src/web-ui/web-ui-address.js +33 -0
  998. package/dist/src/workspace/files.d.ts +4 -0
  999. package/dist/src/workspace/files.js +49 -0
  1000. package/dist/src/workspace/types.d.ts +10 -0
  1001. package/dist/src/workspace/types.js +1 -0
  1002. package/docs/architecture.md +134 -0
  1003. package/docs/bridge-compatibility.md +128 -0
  1004. package/docs/configuration.md +462 -0
  1005. package/docs/installation.md +207 -0
  1006. package/docs/known-limitations.md +89 -0
  1007. package/docs/plugins.md +324 -0
  1008. package/docs/publishing.md +140 -0
  1009. package/docs/running-locally.md +184 -0
  1010. package/docs/runtime-invariant-coverage.md +39 -0
  1011. package/docs/runtime-library.md +289 -0
  1012. package/docs/runtime-prompt-policy-contracts.md +70 -0
  1013. package/docs/runtime-public-contracts.md +304 -0
  1014. package/docs/tool-execution-result-evidence-contract.md +151 -0
  1015. package/docs/troubleshooting.md +115 -0
  1016. package/examples/env.example +9 -0
  1017. package/examples/minimal-runtime-composition.ts +24 -0
  1018. package/examples/models/default.config.json +28 -0
  1019. package/examples/request-runner.config.example.json +42 -0
  1020. package/examples/runtime-library-host.ts +24 -0
  1021. package/examples/runtime.config.example.json +63 -0
  1022. package/package.json +169 -0
  1023. package/plugins/capability-brief/plugin.json +33 -0
  1024. package/plugins/capability-brief/source/index.ts +84 -0
  1025. package/plugins/capability-brief/src/index.cjs +194 -0
  1026. package/plugins/code-outline/plugin.json +56 -0
  1027. package/plugins/code-outline/skills/code_outline_skill/SKILL.md +9 -0
  1028. package/plugins/code-outline/source/index.ts +125 -0
  1029. package/plugins/code-outline/source/parser.ts +234 -0
  1030. package/plugins/code-outline/src/index.cjs +572 -0
  1031. package/plugins/document-reader/plugin.json +67 -0
  1032. package/plugins/document-reader/skills/document_reader_skill/SKILL.md +26 -0
  1033. package/plugins/document-reader/source/archive.ts +245 -0
  1034. package/plugins/document-reader/source/constants.ts +41 -0
  1035. package/plugins/document-reader/source/errors.ts +75 -0
  1036. package/plugins/document-reader/source/extract.ts +53 -0
  1037. package/plugins/document-reader/source/handler.ts +288 -0
  1038. package/plugins/document-reader/source/index.ts +11 -0
  1039. package/plugins/document-reader/source/ooxml.ts +182 -0
  1040. package/plugins/document-reader/source/pdf-worker.ts +425 -0
  1041. package/plugins/document-reader/source/pdf.ts +13 -0
  1042. package/plugins/document-reader/source/reader.ts +55 -0
  1043. package/plugins/document-reader/source/source-resolution.ts +137 -0
  1044. package/plugins/document-reader/source/text-accumulator.ts +53 -0
  1045. package/plugins/document-reader/source/types.ts +73 -0
  1046. package/plugins/document-reader/src/index.cjs +1455 -0
  1047. package/plugins/exec/plugin.json +113 -0
  1048. package/plugins/exec/skills/exec_process_skill/SKILL.md +7 -0
  1049. package/plugins/exec/skills/exec_skill/SKILL.md +12 -0
  1050. package/plugins/exec/source/errors.ts +33 -0
  1051. package/plugins/exec/source/filesystem-observer.ts +362 -0
  1052. package/plugins/exec/source/handlers.ts +402 -0
  1053. package/plugins/exec/source/index.ts +12 -0
  1054. package/plugins/exec/source/paths.ts +97 -0
  1055. package/plugins/exec/source/process-manager.ts +430 -0
  1056. package/plugins/exec/source/settings.ts +46 -0
  1057. package/plugins/exec/source/types.ts +77 -0
  1058. package/plugins/exec/source/validation.ts +214 -0
  1059. package/plugins/exec/src/index.cjs +1362 -0
  1060. package/plugins/filesystem/plugin.json +259 -0
  1061. package/plugins/filesystem/skills/edit_file_skill/SKILL.md +8 -0
  1062. package/plugins/filesystem/skills/follow_up_existing_file_edit_skill/SKILL.md +9 -0
  1063. package/plugins/filesystem/skills/read_file_skill/SKILL.md +6 -0
  1064. package/plugins/filesystem/source/adapters.ts +44 -0
  1065. package/plugins/filesystem/source/atomic-write.ts +115 -0
  1066. package/plugins/filesystem/source/bounded-io.ts +514 -0
  1067. package/plugins/filesystem/source/dev-view.ts +262 -0
  1068. package/plugins/filesystem/source/draft/grounding.ts +171 -0
  1069. package/plugins/filesystem/source/draft/prepare.ts +176 -0
  1070. package/plugins/filesystem/source/draft/repair.ts +218 -0
  1071. package/plugins/filesystem/source/draft/types.ts +36 -0
  1072. package/plugins/filesystem/source/draft/validators.ts +237 -0
  1073. package/plugins/filesystem/source/edit-file.ts +298 -0
  1074. package/plugins/filesystem/source/errors.ts +61 -0
  1075. package/plugins/filesystem/source/index.ts +59 -0
  1076. package/plugins/filesystem/source/mutation-coordinator.ts +37 -0
  1077. package/plugins/filesystem/source/mutation-parent.ts +164 -0
  1078. package/plugins/filesystem/source/path-service.ts +73 -0
  1079. package/plugins/filesystem/source/read-file.ts +63 -0
  1080. package/plugins/filesystem/source/view-window.ts +95 -0
  1081. package/plugins/filesystem/source/write-file.ts +146 -0
  1082. package/plugins/filesystem/src/index.cjs +2187 -0
  1083. package/plugins/json-inspector/plugin.json +52 -0
  1084. package/plugins/json-inspector/skills/json_inspector_skill/SKILL.md +9 -0
  1085. package/plugins/json-inspector/source/index.ts +145 -0
  1086. package/plugins/json-inspector/source/shape.ts +144 -0
  1087. package/plugins/json-inspector/src/index.cjs +536 -0
  1088. package/plugins/local-search/plugin.json +65 -0
  1089. package/plugins/local-search/skills/local_search_skill/SKILL.md +20 -0
  1090. package/plugins/local-search/source/errors.ts +21 -0
  1091. package/plugins/local-search/source/index.ts +195 -0
  1092. package/plugins/local-search/source/output.ts +101 -0
  1093. package/plugins/local-search/source/paths.ts +194 -0
  1094. package/plugins/local-search/source/ripgrep.ts +353 -0
  1095. package/plugins/local-search/src/index.cjs +840 -0
  1096. package/plugins/memory/plugin.json +149 -0
  1097. package/plugins/memory/skills/memory_lookup_skill/SKILL.md +12 -0
  1098. package/plugins/memory/skills/memory_mutation_skill/SKILL.md +9 -0
  1099. package/plugins/memory/source/format.ts +51 -0
  1100. package/plugins/memory/source/index.ts +199 -0
  1101. package/plugins/memory/source/search.ts +47 -0
  1102. package/plugins/memory/source/store-lock.ts +482 -0
  1103. package/plugins/memory/source/store.ts +331 -0
  1104. package/plugins/memory/source/types.ts +31 -0
  1105. package/plugins/memory/src/index.cjs +1082 -0
  1106. package/plugins/project-orientation/plugin.json +63 -0
  1107. package/plugins/project-orientation/skills/project_orientation_skill/SKILL.md +11 -0
  1108. package/plugins/project-orientation/source/index.ts +118 -0
  1109. package/plugins/project-orientation/source/manifest-summary.ts +153 -0
  1110. package/plugins/project-orientation/source/tree.ts +126 -0
  1111. package/plugins/project-orientation/src/index.cjs +584 -0
  1112. package/plugins/system-probe/plugin.json +60 -0
  1113. package/plugins/system-probe/source/index.ts +125 -0
  1114. package/plugins/system-probe/source/metrics.ts +39 -0
  1115. package/plugins/system-probe/src/index.cjs +309 -0
  1116. package/plugins/web/plugin.json +146 -0
  1117. package/plugins/web/skills/web_fetch_skill/SKILL.md +9 -0
  1118. package/plugins/web/skills/web_search_skill/SKILL.md +16 -0
  1119. package/plugins/web/source/aggregate-gate.ts +141 -0
  1120. package/plugins/web/source/brave-client.ts +251 -0
  1121. package/plugins/web/source/concurrency.ts +23 -0
  1122. package/plugins/web/source/content.ts +291 -0
  1123. package/plugins/web/source/deadline.ts +61 -0
  1124. package/plugins/web/source/errors.ts +31 -0
  1125. package/plugins/web/source/fetch-service.ts +81 -0
  1126. package/plugins/web/source/index.ts +5 -0
  1127. package/plugins/web/source/limits.ts +29 -0
  1128. package/plugins/web/source/network-policy.ts +242 -0
  1129. package/plugins/web/source/output-budget.ts +42 -0
  1130. package/plugins/web/source/parameters.ts +145 -0
  1131. package/plugins/web/source/plugin.ts +149 -0
  1132. package/plugins/web/source/public-http.ts +142 -0
  1133. package/plugins/web/source/request-hop.ts +196 -0
  1134. package/plugins/web/source/research.ts +109 -0
  1135. package/plugins/web/source/search-presentation.ts +111 -0
  1136. package/plugins/web/source/search-service.ts +139 -0
  1137. package/plugins/web/source/search-types.ts +47 -0
  1138. package/plugins/web/source/untrusted-text.ts +8 -0
  1139. package/plugins/web/src/index.cjs +1906 -0
  1140. package/runtime.config.schema.json +791 -0
  1141. package/src/runtime/README.md +411 -0
@@ -0,0 +1,1362 @@
1
+ // GENERATED FILE - DO NOT EDIT.
2
+ // Source: plugins/exec/source/index.ts
3
+ // Run "npm run build:plugins" after editing plugin source.
4
+ "use strict";
5
+ var __defProp = Object.defineProperty;
6
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
7
+ var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
+
23
+ // plugins/exec/source/index.ts
24
+ var index_exports = {};
25
+ __export(index_exports, {
26
+ default: () => index_default
27
+ });
28
+ module.exports = __toCommonJS(index_exports);
29
+
30
+ // src/plugin-sdk/bounds.ts
31
+ function boundText(value, options) {
32
+ if (!Number.isSafeInteger(options.maxChars) || options.maxChars < 0) {
33
+ throw new RangeError("maxChars must be a non-negative safe integer");
34
+ }
35
+ const marker = options.marker ?? "\n[truncated]";
36
+ const truncated = value.length > options.maxChars;
37
+ const boundedMarker = marker.slice(0, options.maxChars);
38
+ const sourceChars = truncated ? Math.max(options.maxChars - boundedMarker.length, 0) : value.length;
39
+ const text = truncated ? value.slice(0, sourceChars) + boundedMarker : value;
40
+ return Object.freeze({
41
+ text,
42
+ metadata: Object.freeze({
43
+ truncated,
44
+ originalChars: value.length,
45
+ returnedChars: text.length,
46
+ omittedChars: Math.max(value.length - sourceChars, 0)
47
+ })
48
+ });
49
+ }
50
+ function sanitizeJsonText(value) {
51
+ return [...value].map((character) => {
52
+ const codePoint = character.codePointAt(0) ?? 0;
53
+ const preservedWhitespace = codePoint === 9 || codePoint === 10 || codePoint === 13;
54
+ const unsafeControl = codePoint < 32 && !preservedWhitespace || codePoint >= 127 && codePoint <= 159;
55
+ const unpairedSurrogate = codePoint >= 55296 && codePoint <= 57343;
56
+ return unsafeControl || unpairedSurrogate ? "�" : character;
57
+ }).join("");
58
+ }
59
+
60
+ // src/plugin-sdk/parameters.ts
61
+ var PluginParameterError = class extends TypeError {
62
+ code;
63
+ parameter;
64
+ constructor(params) {
65
+ super(params.message ?? `${params.parameter}: ${params.code}`);
66
+ this.name = "PluginParameterError";
67
+ this.code = params.code;
68
+ this.parameter = params.parameter;
69
+ }
70
+ };
71
+ function isPluginParameterError(error) {
72
+ return error instanceof PluginParameterError;
73
+ }
74
+ function stringOptions(input) {
75
+ return typeof input === "string" ? { name: input } : input;
76
+ }
77
+ function parameterName(options) {
78
+ return options.name ?? options.parameter ?? "value";
79
+ }
80
+ function parseString(value, options) {
81
+ if (value === void 0 || value === null) return void 0;
82
+ const parameter = parameterName(options);
83
+ if (typeof value !== "string") {
84
+ throw new PluginParameterError({
85
+ code: "plugin_parameter_invalid",
86
+ parameter
87
+ });
88
+ }
89
+ const parsed = options.trim === false ? value : value.trim();
90
+ if (options.minLength !== void 0 && parsed.length < options.minLength || options.maxLength !== void 0 && parsed.length > options.maxLength) {
91
+ throw new PluginParameterError({
92
+ code: "plugin_parameter_invalid",
93
+ parameter
94
+ });
95
+ }
96
+ return parsed;
97
+ }
98
+ function readRequiredString(value, input = {}) {
99
+ const options = stringOptions(input);
100
+ const parameter = parameterName(options);
101
+ const parsed = parseString(value, {
102
+ ...options,
103
+ minLength: Math.max(options.minLength ?? 1, 1)
104
+ });
105
+ if (parsed === void 0) {
106
+ throw new PluginParameterError({
107
+ code: "plugin_parameter_required",
108
+ parameter
109
+ });
110
+ }
111
+ return parsed;
112
+ }
113
+ function readBoundedInteger(value, options) {
114
+ const parameter = parameterName(options);
115
+ const candidate = value === void 0 ? options.defaultValue : value;
116
+ if (!Number.isSafeInteger(candidate) || candidate < options.minimum || candidate > options.maximum) {
117
+ throw new PluginParameterError({
118
+ code: candidate === void 0 ? "plugin_parameter_required" : "plugin_parameter_invalid",
119
+ parameter
120
+ });
121
+ }
122
+ return candidate;
123
+ }
124
+
125
+ // src/plugin-sdk/paths.ts
126
+ function resolvePluginPath(context, rawPath, options = {}) {
127
+ return context.runtimePathResolver.resolve(rawPath, options);
128
+ }
129
+ function runtimeToolPathErrorCode(error) {
130
+ if (!(error instanceof Error) || !("code" in error) || typeof error.code !== "string" || !error.code.startsWith("runtime_tool_path_")) {
131
+ return void 0;
132
+ }
133
+ return error.code;
134
+ }
135
+
136
+ // src/plugin-sdk/plugin.ts
137
+ function defineRuntimePlugin(definition) {
138
+ return definition;
139
+ }
140
+
141
+ // src/plugin-sdk/results.ts
142
+ var PLUGIN_RESULT_SERIALIZED_MAX_BYTES = 128 * 1024;
143
+ function resultBoundsFailure(code, message) {
144
+ return {
145
+ ok: false,
146
+ output: message,
147
+ producedNewInformation: false,
148
+ error: message,
149
+ errorCode: code
150
+ };
151
+ }
152
+ function enforcePluginResultByteBudget(result) {
153
+ let serialized;
154
+ try {
155
+ const candidate = JSON.stringify(result);
156
+ if (candidate === void 0) {
157
+ return resultBoundsFailure(
158
+ "plugin_result_not_json_safe",
159
+ "The plugin produced a result that is not JSON-safe."
160
+ );
161
+ }
162
+ serialized = candidate;
163
+ } catch {
164
+ return resultBoundsFailure(
165
+ "plugin_result_not_json_safe",
166
+ "The plugin produced a result that is not JSON-safe."
167
+ );
168
+ }
169
+ if (Buffer.byteLength(serialized, "utf8") > PLUGIN_RESULT_SERIALIZED_MAX_BYTES) {
170
+ return resultBoundsFailure(
171
+ "plugin_result_too_large",
172
+ `The plugin result exceeds the ${PLUGIN_RESULT_SERIALIZED_MAX_BYTES}-byte safety limit.`
173
+ );
174
+ }
175
+ return result;
176
+ }
177
+ function failureResult(input) {
178
+ return enforcePluginResultByteBudget({
179
+ ok: false,
180
+ output: input.output ?? input.message,
181
+ producedNewInformation: false,
182
+ ...input.progress !== void 0 ? { progress: input.progress } : {},
183
+ ...input.actions !== void 0 ? { actions: input.actions } : {},
184
+ ...input.exitCode !== void 0 ? { exitCode: input.exitCode } : {},
185
+ ...input.stdout !== void 0 ? { stdout: input.stdout } : {},
186
+ ...input.stderr !== void 0 ? { stderr: input.stderr } : {},
187
+ ...input.data !== void 0 ? { data: input.data } : {},
188
+ error: input.message,
189
+ errorCode: input.errorCode
190
+ });
191
+ }
192
+ function failureFromError(error, options) {
193
+ const pathCode = runtimeToolPathErrorCode(error);
194
+ const parameterCode = isPluginParameterError(error) ? error.code : void 0;
195
+ const errorCode = pathCode ?? parameterCode ?? options.fallbackCode;
196
+ const message = pathCode ?? parameterCode ?? options.fallbackMessage;
197
+ return failureResult({
198
+ errorCode,
199
+ message,
200
+ output: options.operation ? `${options.operation} failed: ${message}` : message
201
+ });
202
+ }
203
+
204
+ // plugins/exec/source/errors.ts
205
+ var ExecPluginError = class extends Error {
206
+ code;
207
+ constructor(code, message) {
208
+ super(message);
209
+ this.name = "ExecPluginError";
210
+ this.code = code;
211
+ }
212
+ };
213
+ function execFailureFromError(error, operation) {
214
+ if (error instanceof ExecPluginError) {
215
+ return failureResult({
216
+ errorCode: error.code,
217
+ message: error.message,
218
+ output: `${operation} failed: ${error.message}`
219
+ });
220
+ }
221
+ return failureFromError(error, {
222
+ fallbackCode: `${operation}_failed`,
223
+ fallbackMessage: `${operation} failed without a safe diagnostic.`,
224
+ operation
225
+ });
226
+ }
227
+
228
+ // plugins/exec/source/filesystem-observer.ts
229
+ var import_node_crypto = require("node:crypto");
230
+ var import_node_fs = require("node:fs");
231
+ var import_promises = require("node:fs/promises");
232
+ var import_node_path = require("node:path");
233
+ var SNAPSHOT_MAX_ENTRIES = 4096;
234
+ var SNAPSHOT_MAX_HASHED_BYTES = 16 * 1024 * 1024;
235
+ var SNAPSHOT_MAX_HASHED_FILE_BYTES = 2 * 1024 * 1024;
236
+ var DELTA_ACTION_LIMIT = 64;
237
+ var ACTION_TARGET_MAX_CHARS = 96;
238
+ function isMissingPathError(error) {
239
+ return error instanceof Error && "code" in error && (error.code === "ENOENT" || error.code === "ENOTDIR");
240
+ }
241
+ function hashBuffer(content) {
242
+ return (0, import_node_crypto.createHash)("sha256").update(content).digest("hex");
243
+ }
244
+ async function readBoundedDirectory(absoluteDirectory, maxItems) {
245
+ let directory;
246
+ try {
247
+ directory = await (0, import_promises.opendir)(absoluteDirectory);
248
+ } catch (error) {
249
+ if (isMissingPathError(error)) {
250
+ return Object.freeze({ children: Object.freeze([]), complete: true });
251
+ }
252
+ throw error;
253
+ }
254
+ const children = [];
255
+ let complete = true;
256
+ try {
257
+ while (true) {
258
+ const child = await directory.read();
259
+ if (!child) break;
260
+ if (children.length >= maxItems) {
261
+ complete = false;
262
+ break;
263
+ }
264
+ children.push(child);
265
+ }
266
+ } finally {
267
+ await directory.close().catch((error) => {
268
+ if (!(error instanceof Error) || !("code" in error) || error.code !== "ERR_DIR_CLOSED") {
269
+ throw error;
270
+ }
271
+ });
272
+ }
273
+ children.sort((left, right) => left.name.localeCompare(right.name));
274
+ return Object.freeze({ children: Object.freeze(children), complete });
275
+ }
276
+ async function inspectRegularFile(absolutePath, remainingHashBytes) {
277
+ const noFollow = import_node_fs.constants.O_NOFOLLOW;
278
+ if (!Number.isInteger(noFollow)) return void 0;
279
+ let file;
280
+ try {
281
+ file = await (0, import_promises.open)(absolutePath, import_node_fs.constants.O_RDONLY | noFollow);
282
+ } catch (error) {
283
+ if (isMissingPathError(error) || error instanceof Error && "code" in error && error.code === "ELOOP") {
284
+ return void 0;
285
+ }
286
+ throw error;
287
+ }
288
+ try {
289
+ const info = await file.stat();
290
+ if (!info.isFile()) return void 0;
291
+ let contentHash;
292
+ let hashedBytes = 0;
293
+ if (info.size <= SNAPSHOT_MAX_HASHED_FILE_BYTES && info.size <= remainingHashBytes) {
294
+ const length = Math.max(0, Math.floor(info.size));
295
+ const content = Buffer.alloc(length);
296
+ while (hashedBytes < length) {
297
+ const { bytesRead } = await file.read(
298
+ content,
299
+ hashedBytes,
300
+ length - hashedBytes,
301
+ hashedBytes
302
+ );
303
+ if (bytesRead === 0) break;
304
+ hashedBytes += bytesRead;
305
+ }
306
+ contentHash = hashBuffer(content.subarray(0, hashedBytes));
307
+ }
308
+ return Object.freeze({
309
+ entry: Object.freeze({
310
+ kind: "file",
311
+ mode: info.mode,
312
+ size: info.size,
313
+ mtimeMs: info.mtimeMs,
314
+ ...contentHash === void 0 ? {} : { contentHash }
315
+ }),
316
+ hashedBytes
317
+ });
318
+ } finally {
319
+ await file.close();
320
+ }
321
+ }
322
+ async function captureExecFilesystemSnapshot(absoluteRoot, logicalRoot) {
323
+ const entries = /* @__PURE__ */ new Map();
324
+ let remainingHashBytes = SNAPSHOT_MAX_HASHED_BYTES;
325
+ let complete = true;
326
+ const rootInfo = await (0, import_promises.lstat)(absoluteRoot).catch((error) => {
327
+ if (isMissingPathError(error)) return null;
328
+ throw error;
329
+ });
330
+ if (!rootInfo) {
331
+ return Object.freeze({
332
+ absoluteRoot,
333
+ logicalRoot,
334
+ rootExists: false,
335
+ complete: true,
336
+ entries
337
+ });
338
+ }
339
+ const pendingDirectories = [""];
340
+ while (pendingDirectories.length > 0 && complete) {
341
+ const relativeDirectory = pendingDirectories.pop() ?? "";
342
+ const absoluteDirectory = relativeDirectory ? (0, import_node_path.join)(absoluteRoot, relativeDirectory) : absoluteRoot;
343
+ const directory = await readBoundedDirectory(
344
+ absoluteDirectory,
345
+ SNAPSHOT_MAX_ENTRIES - entries.size
346
+ );
347
+ for (const child of directory.children) {
348
+ const relativePath = relativeDirectory ? (0, import_node_path.join)(relativeDirectory, child.name) : child.name;
349
+ const absolutePath = (0, import_node_path.join)(absoluteRoot, relativePath);
350
+ const info = await (0, import_promises.lstat)(absolutePath).catch((error) => {
351
+ if (isMissingPathError(error)) return null;
352
+ throw error;
353
+ });
354
+ if (!info) continue;
355
+ if (info.isDirectory()) {
356
+ entries.set(
357
+ relativePath,
358
+ Object.freeze({
359
+ kind: "directory",
360
+ mode: info.mode,
361
+ size: info.size,
362
+ mtimeMs: info.mtimeMs
363
+ })
364
+ );
365
+ pendingDirectories.push(relativePath);
366
+ continue;
367
+ }
368
+ if (info.isSymbolicLink()) {
369
+ const linkTarget = await (0, import_promises.readlink)(absolutePath).catch(() => void 0);
370
+ entries.set(
371
+ relativePath,
372
+ Object.freeze({
373
+ kind: "symlink",
374
+ mode: info.mode,
375
+ size: info.size,
376
+ mtimeMs: info.mtimeMs,
377
+ ...linkTarget === void 0 ? {} : { linkTarget }
378
+ })
379
+ );
380
+ continue;
381
+ }
382
+ if (info.isFile()) {
383
+ const inspected = await inspectRegularFile(
384
+ absolutePath,
385
+ remainingHashBytes
386
+ );
387
+ if (!inspected) {
388
+ complete = false;
389
+ continue;
390
+ }
391
+ entries.set(relativePath, inspected.entry);
392
+ remainingHashBytes -= inspected.hashedBytes;
393
+ continue;
394
+ }
395
+ entries.set(
396
+ relativePath,
397
+ Object.freeze({
398
+ kind: "other",
399
+ mode: info.mode,
400
+ size: info.size,
401
+ mtimeMs: info.mtimeMs
402
+ })
403
+ );
404
+ }
405
+ if (!directory.complete) complete = false;
406
+ }
407
+ return Object.freeze({
408
+ absoluteRoot,
409
+ logicalRoot,
410
+ rootExists: true,
411
+ complete,
412
+ entries
413
+ });
414
+ }
415
+ function entryChanged(before, after) {
416
+ if (before.kind !== after.kind || before.mode !== after.mode) return true;
417
+ if (before.kind === "directory") return false;
418
+ if (before.kind === "symlink") return before.linkTarget !== after.linkTarget;
419
+ if (before.kind === "file" && before.contentHash !== void 0 && after.contentHash !== void 0) {
420
+ return before.contentHash !== after.contentHash;
421
+ }
422
+ return before.size !== after.size || before.mtimeMs !== after.mtimeMs;
423
+ }
424
+ function logicalChild(root, relativePath) {
425
+ const target = sanitizeJsonText(
426
+ root === "." ? relativePath.replaceAll("\\", "/") : import_node_path.posix.join(root, relativePath.replaceAll("\\", "/"))
427
+ );
428
+ const characters = [...target];
429
+ if (characters.length <= ACTION_TARGET_MAX_CHARS) return target;
430
+ const separator = "…";
431
+ const sideChars = Math.floor(
432
+ (ACTION_TARGET_MAX_CHARS - separator.length) / 2
433
+ );
434
+ return `${characters.slice(0, sideChars).join("")}${separator}${characters.slice(-sideChars).join("")}`;
435
+ }
436
+ function actionForDelta(params) {
437
+ const target = logicalChild(params.logicalRoot, params.relativePath);
438
+ if (!params.before && params.after?.kind === "directory") {
439
+ return { type: "mkdir", target, details: "exec_filesystem_created" };
440
+ }
441
+ if (!params.before && params.after?.kind === "file") {
442
+ return { type: "write_file", target, details: "exec_filesystem_created" };
443
+ }
444
+ return {
445
+ type: "refine_target",
446
+ target,
447
+ details: params.after ? "exec_filesystem_modified" : "exec_filesystem_removed"
448
+ };
449
+ }
450
+ function diffExecFilesystemSnapshots(before, after) {
451
+ if (before.absoluteRoot !== after.absoluteRoot || before.logicalRoot !== after.logicalRoot) {
452
+ throw new TypeError(
453
+ "Exec filesystem snapshots must share one observation root."
454
+ );
455
+ }
456
+ let changes;
457
+ if (before.rootExists !== after.rootExists) {
458
+ changes = [{ relativePath: "" }];
459
+ } else if (!before.rootExists) {
460
+ changes = [];
461
+ } else {
462
+ const candidatePaths = before.complete && after.complete ? /* @__PURE__ */ new Set([...before.entries.keys(), ...after.entries.keys()]) : new Set(
463
+ [...before.entries.keys()].filter(
464
+ (entry) => after.entries.has(entry)
465
+ )
466
+ );
467
+ changes = [...candidatePaths].sort((left, right) => left.localeCompare(right)).flatMap((relativePath) => {
468
+ const beforeEntry = before.entries.get(relativePath);
469
+ const afterEntry = after.entries.get(relativePath);
470
+ return beforeEntry === void 0 || afterEntry === void 0 || entryChanged(beforeEntry, afterEntry) ? [
471
+ {
472
+ relativePath,
473
+ ...beforeEntry === void 0 ? {} : { before: beforeEntry },
474
+ ...afterEntry === void 0 ? {} : { after: afterEntry }
475
+ }
476
+ ] : [];
477
+ });
478
+ }
479
+ const actions = changes.slice(0, DELTA_ACTION_LIMIT).map(
480
+ (entry) => entry.relativePath ? actionForDelta({ logicalRoot: before.logicalRoot, ...entry }) : {
481
+ type: "refine_target",
482
+ target: logicalChild(".", before.logicalRoot),
483
+ details: after.rootExists ? "exec_filesystem_created" : "exec_filesystem_removed"
484
+ }
485
+ );
486
+ return Object.freeze({
487
+ observedStateChange: changes.length > 0,
488
+ changedEntryCount: changes.length,
489
+ actions: Object.freeze(actions),
490
+ observation: Object.freeze({
491
+ complete: before.complete && after.complete,
492
+ actionLimit: DELTA_ACTION_LIMIT,
493
+ actionsTruncated: changes.length > actions.length
494
+ })
495
+ });
496
+ }
497
+
498
+ // plugins/exec/source/paths.ts
499
+ var import_promises2 = require("node:fs/promises");
500
+ var import_node_path2 = require("node:path");
501
+ var EXEC_ALLOWED_LOCATIONS = Object.freeze([
502
+ "agent_work",
503
+ "workspace"
504
+ ]);
505
+ function resolverContext(pluginContext, executionContext) {
506
+ return {
507
+ runtimePathResolver: executionContext?.runtimePathResolver ?? pluginContext.runtimePathResolver
508
+ };
509
+ }
510
+ function resolveExecPath(pluginContext, executionContext, rawPath) {
511
+ return resolvePluginPath(
512
+ resolverContext(pluginContext, executionContext),
513
+ rawPath,
514
+ {
515
+ requirePath: true,
516
+ allowedLocations: EXEC_ALLOWED_LOCATIONS
517
+ }
518
+ );
519
+ }
520
+ async function resolveExecWorkingDirectory(pluginContext, executionContext, rawPath) {
521
+ const requestedPath = readRequiredString(rawPath, {
522
+ name: "cwd",
523
+ maxLength: 4096
524
+ });
525
+ const target = resolveExecPath(
526
+ pluginContext,
527
+ executionContext,
528
+ requestedPath
529
+ );
530
+ let info;
531
+ try {
532
+ info = await (0, import_promises2.stat)(target.absolutePath);
533
+ } catch (error) {
534
+ if (error instanceof Error && "code" in error && error.code === "ENOENT") {
535
+ throw new ExecPluginError(
536
+ "exec_cwd_not_found",
537
+ "The selected cwd does not exist. Select an existing agent-work or workspace directory."
538
+ );
539
+ }
540
+ throw new ExecPluginError(
541
+ "exec_cwd_inaccessible",
542
+ "The selected cwd cannot be accessed by the runtime."
543
+ );
544
+ }
545
+ if (!info.isDirectory()) {
546
+ throw new ExecPluginError(
547
+ "exec_cwd_not_directory",
548
+ "The selected cwd is not a directory."
549
+ );
550
+ }
551
+ return target;
552
+ }
553
+ function resolveExecScopedPath(pluginContext, executionContext, rawPath, cwd) {
554
+ const normalized = rawPath.replaceAll("\\", "/");
555
+ const requested = (0, import_node_path2.isAbsolute)(rawPath) || normalized === "workspace" || normalized.startsWith("workspace/") ? rawPath : import_node_path2.posix.join(cwd.logicalPath, normalized || ".");
556
+ return resolveExecPath(pluginContext, executionContext, requested);
557
+ }
558
+
559
+ // plugins/exec/source/process-manager.ts
560
+ var import_node_child_process = require("node:child_process");
561
+ var import_node_fs2 = require("node:fs");
562
+ var import_promises3 = require("node:fs/promises");
563
+ var import_node_crypto2 = require("node:crypto");
564
+ var import_node_string_decoder = require("node:string_decoder");
565
+ var EXEC_SHELL = "/bin/bash";
566
+ var COMPLETED_PROCESS_RETENTION_MS = 5 * 6e4;
567
+ var MAX_ACTIVE_PROCESSES_PER_SCOPE = 4;
568
+ var CappedTextBuffer = class {
569
+ constructor(maxChars) {
570
+ this.maxChars = maxChars;
571
+ }
572
+ maxChars;
573
+ text = "";
574
+ originalChars = 0;
575
+ omittedChars = 0;
576
+ sawOutput = false;
577
+ append(chunk) {
578
+ if (!chunk) return;
579
+ const safeChunk = sanitizeJsonText(chunk);
580
+ this.sawOutput = true;
581
+ this.originalChars += safeChunk.length;
582
+ const available = Math.max(this.maxChars - this.text.length, 0);
583
+ this.text += safeChunk.slice(0, available);
584
+ this.omittedChars += Math.max(safeChunk.length - available, 0);
585
+ }
586
+ consume() {
587
+ const text = this.text;
588
+ const originalChars = this.originalChars;
589
+ const omittedChars = this.omittedChars;
590
+ this.text = "";
591
+ this.originalChars = 0;
592
+ this.omittedChars = 0;
593
+ return Object.freeze({
594
+ text,
595
+ sawOutput: this.sawOutput,
596
+ metadata: Object.freeze({
597
+ truncated: omittedChars > 0,
598
+ originalChars,
599
+ returnedChars: text.length,
600
+ omittedChars
601
+ })
602
+ });
603
+ }
604
+ };
605
+ async function assertSupportedShell() {
606
+ if (process.platform !== "linux") {
607
+ throw new ExecPluginError(
608
+ "exec_platform_unsupported",
609
+ "The exec plugin v1 requires Linux and /bin/bash."
610
+ );
611
+ }
612
+ try {
613
+ await (0, import_promises3.access)(EXEC_SHELL, import_node_fs2.constants.X_OK);
614
+ } catch {
615
+ throw new ExecPluginError(
616
+ "exec_shell_unavailable",
617
+ "The exec plugin cannot start because executable /bin/bash is unavailable."
618
+ );
619
+ }
620
+ }
621
+ function createExecProcessManager() {
622
+ const processes = /* @__PURE__ */ new Map();
623
+ const unknownProcess = () => new ExecPluginError(
624
+ "unknown_exec_process",
625
+ "The exec process is unknown to this plugin instance and session."
626
+ );
627
+ const dispose = (managed) => {
628
+ if (managed.retentionTimeout) clearTimeout(managed.retentionTimeout);
629
+ processes.delete(managed.processId);
630
+ managed.onDisposed?.(managed.processId);
631
+ };
632
+ const activeProcessCount = (scope) => [...processes.values()].filter(
633
+ (managed) => managed.scope === scope && !managed.settled
634
+ ).length;
635
+ const killProcessTree = (managed) => {
636
+ const pid = managed.child.pid;
637
+ if (typeof pid === "number") {
638
+ try {
639
+ process.kill(-pid, "SIGKILL");
640
+ return;
641
+ } catch {
642
+ }
643
+ }
644
+ managed.child.kill("SIGKILL");
645
+ };
646
+ const requestTermination = (managed, reason) => {
647
+ if (managed.settled || managed.terminationReason) return;
648
+ managed.terminationReason = reason;
649
+ killProcessTree(managed);
650
+ };
651
+ const scheduleIdleTimeout = (managed, idleTimeoutMs) => {
652
+ if (managed.idleTimeout) clearTimeout(managed.idleTimeout);
653
+ managed.idleTimeout = setTimeout(
654
+ () => requestTermination(managed, "idle_timeout"),
655
+ idleTimeoutMs
656
+ );
657
+ managed.idleTimeout.unref?.();
658
+ };
659
+ const settle = (managed, exitCode, fallbackReason) => {
660
+ if (managed.settled) return;
661
+ managed.settled = true;
662
+ managed.terminationReason ??= fallbackReason;
663
+ managed.exitCode = managed.terminationReason === "hard_timeout" || managed.terminationReason === "idle_timeout" ? 124 : managed.terminationReason === "cancelled" || managed.terminationReason === "aborted" ? 130 : exitCode;
664
+ if (managed.hardTimeout) clearTimeout(managed.hardTimeout);
665
+ if (managed.idleTimeout) clearTimeout(managed.idleTimeout);
666
+ if (managed.abortSignal && managed.abortListener) {
667
+ managed.abortSignal.removeEventListener("abort", managed.abortListener);
668
+ }
669
+ managed.resolveSettled();
670
+ if (managed.terminationReason === "aborted") {
671
+ dispose(managed);
672
+ return;
673
+ }
674
+ managed.retentionTimeout = setTimeout(
675
+ () => dispose(managed),
676
+ COMPLETED_PROCESS_RETENTION_MS
677
+ );
678
+ managed.retentionTimeout.unref?.();
679
+ };
680
+ const consumeSnapshot = (managed) => {
681
+ if (managed.settled) {
682
+ if (managed.terminalSnapshotClaimed) throw unknownProcess();
683
+ managed.terminalSnapshotClaimed = true;
684
+ }
685
+ return Object.freeze({
686
+ processId: managed.processId,
687
+ status: managed.settled ? "settled" : "running",
688
+ ...!managed.settled ? { nextCursor: managed.cursor } : {},
689
+ ...managed.exitCode === void 0 ? {} : { exitCode: managed.exitCode },
690
+ stdout: managed.stdout.consume(),
691
+ stderr: managed.stderr.consume(),
692
+ ...managed.terminationReason ? { terminationReason: managed.terminationReason } : {},
693
+ elapsedMs: Date.now() - managed.startedAt
694
+ });
695
+ };
696
+ const waitForSettlement = async (managed, waitMs) => {
697
+ if (managed.settled) return;
698
+ let timeout;
699
+ await Promise.race([
700
+ managed.settlePromise,
701
+ new Promise((resolve) => {
702
+ timeout = setTimeout(resolve, waitMs);
703
+ timeout.unref?.();
704
+ })
705
+ ]);
706
+ if (timeout) clearTimeout(timeout);
707
+ };
708
+ const getScopedProcess = (processId, scope) => {
709
+ const managed = processes.get(processId);
710
+ if (!managed || managed.scope !== scope) {
711
+ throw unknownProcess();
712
+ }
713
+ return managed;
714
+ };
715
+ const withProcessTransition = async (managed, operation) => {
716
+ const previous = managed.transitionTail;
717
+ let releaseTransition = () => void 0;
718
+ managed.transitionTail = new Promise((resolve) => {
719
+ releaseTransition = resolve;
720
+ });
721
+ await previous;
722
+ try {
723
+ if (processes.get(managed.processId) !== managed) throw unknownProcess();
724
+ return await operation();
725
+ } finally {
726
+ releaseTransition();
727
+ }
728
+ };
729
+ return Object.freeze({
730
+ async start(params) {
731
+ await assertSupportedShell();
732
+ if (activeProcessCount(params.scope) >= MAX_ACTIVE_PROCESSES_PER_SCOPE) {
733
+ throw new ExecPluginError(
734
+ "exec_process_limit_reached",
735
+ `The session already has ${MAX_ACTIVE_PROCESSES_PER_SCOPE} active exec processes.`
736
+ );
737
+ }
738
+ let resolveSettled = () => void 0;
739
+ const settlePromise = new Promise((resolve) => {
740
+ resolveSettled = resolve;
741
+ });
742
+ let child;
743
+ try {
744
+ child = (0, import_node_child_process.spawn)(EXEC_SHELL, ["-lc", params.shellCommand], {
745
+ cwd: params.cwd,
746
+ detached: true,
747
+ stdio: ["ignore", "pipe", "pipe"]
748
+ });
749
+ } catch {
750
+ throw new ExecPluginError(
751
+ "exec_spawn_failed",
752
+ "The runtime could not start the configured non-interactive shell."
753
+ );
754
+ }
755
+ const managed = {
756
+ processId: `exec_${(0, import_node_crypto2.randomUUID)()}`,
757
+ scope: params.scope,
758
+ child,
759
+ startedAt: Date.now(),
760
+ cursor: 1,
761
+ stdout: new CappedTextBuffer(params.outputMaxChars),
762
+ stderr: new CappedTextBuffer(params.outputMaxChars),
763
+ stdoutDecoder: new import_node_string_decoder.StringDecoder("utf8"),
764
+ stderrDecoder: new import_node_string_decoder.StringDecoder("utf8"),
765
+ settled: false,
766
+ settlePromise,
767
+ resolveSettled,
768
+ transitionTail: Promise.resolve(),
769
+ terminalSnapshotClaimed: false,
770
+ waitInFlight: false,
771
+ ...params.abortSignal ? { abortSignal: params.abortSignal } : {},
772
+ ...params.onDisposed ? { onDisposed: params.onDisposed } : {}
773
+ };
774
+ processes.set(managed.processId, managed);
775
+ const observe = (stream, chunk) => {
776
+ if (managed.settled || !chunk) return;
777
+ if (stream === "stdout") managed.stdout.append(chunk);
778
+ else managed.stderr.append(chunk);
779
+ scheduleIdleTimeout(managed, params.idleTimeoutMs);
780
+ };
781
+ child.stdout.on(
782
+ "data",
783
+ (chunk) => observe("stdout", managed.stdoutDecoder.write(chunk))
784
+ );
785
+ child.stderr.on(
786
+ "data",
787
+ (chunk) => observe("stderr", managed.stderrDecoder.write(chunk))
788
+ );
789
+ child.on("error", () => settle(managed, -1, "spawn_failed"));
790
+ child.on("close", (code) => {
791
+ observe("stdout", managed.stdoutDecoder.end());
792
+ observe("stderr", managed.stderrDecoder.end());
793
+ settle(managed, typeof code === "number" ? code : -1, "completed");
794
+ });
795
+ managed.hardTimeout = setTimeout(
796
+ () => requestTermination(managed, "hard_timeout"),
797
+ params.hardTimeoutMs
798
+ );
799
+ managed.hardTimeout.unref?.();
800
+ scheduleIdleTimeout(managed, params.idleTimeoutMs);
801
+ if (params.abortSignal) {
802
+ managed.abortListener = () => requestTermination(managed, "aborted");
803
+ if (params.abortSignal.aborted) managed.abortListener();
804
+ else {
805
+ params.abortSignal.addEventListener("abort", managed.abortListener, {
806
+ once: true
807
+ });
808
+ }
809
+ }
810
+ if (params.yieldAfterMs === null || params.yieldAfterMs >= params.hardTimeoutMs) {
811
+ await managed.settlePromise;
812
+ } else {
813
+ await waitForSettlement(managed, params.yieldAfterMs);
814
+ }
815
+ return consumeSnapshot(managed);
816
+ },
817
+ async wait(params) {
818
+ const managed = getScopedProcess(params.processId, params.scope);
819
+ await withProcessTransition(managed, () => {
820
+ if (managed.terminalSnapshotClaimed) throw unknownProcess();
821
+ if (managed.waitInFlight) {
822
+ throw new ExecPluginError(
823
+ "exec_wait_in_progress",
824
+ "Another wait is already observing this exec process."
825
+ );
826
+ }
827
+ if (params.cursor !== managed.cursor) {
828
+ throw new ExecPluginError(
829
+ "stale_exec_process_cursor",
830
+ `The exec cursor is stale; expected ${managed.cursor}.`
831
+ );
832
+ }
833
+ managed.waitInFlight = true;
834
+ if (!managed.settled) managed.cursor += 1;
835
+ });
836
+ await waitForSettlement(managed, params.waitMs);
837
+ return withProcessTransition(managed, () => {
838
+ managed.waitInFlight = false;
839
+ if (managed.terminalSnapshotClaimed) throw unknownProcess();
840
+ return consumeSnapshot(managed);
841
+ });
842
+ },
843
+ async cancel(params) {
844
+ const managed = getScopedProcess(params.processId, params.scope);
845
+ return withProcessTransition(managed, async () => {
846
+ if (managed.terminalSnapshotClaimed) throw unknownProcess();
847
+ if (!managed.settled) {
848
+ requestTermination(managed, "cancelled");
849
+ await managed.settlePromise;
850
+ }
851
+ return consumeSnapshot(managed);
852
+ });
853
+ },
854
+ async release(processId, scope) {
855
+ const managed = processes.get(processId);
856
+ if (!managed) return;
857
+ if (managed.scope !== scope) {
858
+ throw unknownProcess();
859
+ }
860
+ await withProcessTransition(managed, () => {
861
+ if (managed.settled) dispose(managed);
862
+ });
863
+ }
864
+ });
865
+ }
866
+
867
+ // plugins/exec/source/settings.ts
868
+ var DEFAULT_EXEC_HARD_TIMEOUT_MS = 6e5;
869
+ var DEFAULT_EXEC_YIELD_AFTER_MS = 15e3;
870
+ var DEFAULT_EXEC_IDLE_TIMEOUT_MS = 12e4;
871
+ var DEFAULT_EXEC_OUTPUT_MAX_CHARS = 8e3;
872
+ var EXEC_OUTPUT_MAX_CHARS = 8e3;
873
+ var EXEC_COMMAND_MAX_CHARS = 4096;
874
+ function readExecSettings(config) {
875
+ return Object.freeze({
876
+ hardTimeoutMs: readBoundedInteger(config?.timeoutMs, {
877
+ defaultValue: DEFAULT_EXEC_HARD_TIMEOUT_MS,
878
+ minimum: 1,
879
+ maximum: 36e5,
880
+ name: "timeoutMs"
881
+ }),
882
+ yieldAfterMs: readBoundedInteger(config?.yieldAfterMs, {
883
+ defaultValue: DEFAULT_EXEC_YIELD_AFTER_MS,
884
+ minimum: 1,
885
+ maximum: 6e5,
886
+ name: "yieldAfterMs"
887
+ }),
888
+ idleTimeoutMs: readBoundedInteger(config?.idleTimeoutMs, {
889
+ defaultValue: DEFAULT_EXEC_IDLE_TIMEOUT_MS,
890
+ minimum: 1,
891
+ maximum: 36e5,
892
+ name: "idleTimeoutMs"
893
+ }),
894
+ outputMaxChars: readBoundedInteger(config?.outputMaxChars, {
895
+ defaultValue: DEFAULT_EXEC_OUTPUT_MAX_CHARS,
896
+ minimum: 64,
897
+ maximum: EXEC_OUTPUT_MAX_CHARS,
898
+ name: "outputMaxChars"
899
+ })
900
+ });
901
+ }
902
+
903
+ // plugins/exec/source/validation.ts
904
+ var INVALID_COMMAND_CHARS = /[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F\uFFFD]/gu;
905
+ var INTERACTIVE_COMMANDS = /* @__PURE__ */ new Set([
906
+ "gio",
907
+ "gnome-open",
908
+ "htop",
909
+ "kde-open",
910
+ "less",
911
+ "more",
912
+ "nano",
913
+ "open",
914
+ "screen",
915
+ "ssh",
916
+ "start",
917
+ "tmux",
918
+ "top",
919
+ "vi",
920
+ "vim",
921
+ "watch",
922
+ "xdg-open"
923
+ ]);
924
+ function sanitizeExecCommand(value) {
925
+ const raw = value.trim();
926
+ const command = raw.replace(/\r\n?/gu, "\n").replace(INVALID_COMMAND_CHARS, "").trim();
927
+ return Object.freeze({ command, normalized: command !== raw });
928
+ }
929
+ function isInteractiveCommand(command) {
930
+ const firstToken = command.split(/\s+/u)[0]?.toLowerCase() ?? "";
931
+ return INTERACTIVE_COMMANDS.has(firstToken) ? firstToken : void 0;
932
+ }
933
+ function isWhitespace(char) {
934
+ return char === " " || char === " " || char === "\r";
935
+ }
936
+ function isShellSeparator(char) {
937
+ return ["\n", ";", "|", "&", "<", ">"].includes(char);
938
+ }
939
+ function isShellTokenBoundary(char) {
940
+ return isWhitespace(char) || isShellSeparator(char) || char === "(" || char === ")";
941
+ }
942
+ function readShellTokenSpan(command, start) {
943
+ let index = start;
944
+ let token = "";
945
+ let inSingleQuote = false;
946
+ let inDoubleQuote = false;
947
+ let substitutionDepth = 0;
948
+ while (index < command.length) {
949
+ const char = command[index] ?? "";
950
+ if (!inSingleQuote && !inDoubleQuote) {
951
+ if (substitutionDepth === 0 && isShellTokenBoundary(char)) break;
952
+ if (char === "$" && command[index + 1] === "(") {
953
+ token += "$(";
954
+ substitutionDepth += 1;
955
+ index += 2;
956
+ continue;
957
+ }
958
+ if (char === ")" && substitutionDepth > 0) {
959
+ token += char;
960
+ substitutionDepth -= 1;
961
+ index += 1;
962
+ continue;
963
+ }
964
+ if (char === "\\") {
965
+ index += 1;
966
+ if (index < command.length) {
967
+ token += command[index];
968
+ index += 1;
969
+ }
970
+ continue;
971
+ }
972
+ if (char === "'") {
973
+ inSingleQuote = true;
974
+ index += 1;
975
+ continue;
976
+ }
977
+ if (char === '"') {
978
+ inDoubleQuote = true;
979
+ index += 1;
980
+ continue;
981
+ }
982
+ token += char;
983
+ index += 1;
984
+ continue;
985
+ }
986
+ index += 1;
987
+ if (inSingleQuote) {
988
+ if (char === "'") inSingleQuote = false;
989
+ else token += char;
990
+ continue;
991
+ }
992
+ if (char === '"') {
993
+ inDoubleQuote = false;
994
+ continue;
995
+ }
996
+ if (char === "\\" && index < command.length) {
997
+ token += command[index];
998
+ index += 1;
999
+ continue;
1000
+ }
1001
+ token += char;
1002
+ }
1003
+ return Object.freeze({ token: token.trim(), nextIndex: index });
1004
+ }
1005
+ function readShellToken(command, start) {
1006
+ let index = start;
1007
+ while (index < command.length && isWhitespace(command[index] ?? "")) {
1008
+ index += 1;
1009
+ }
1010
+ return readShellTokenSpan(command, index);
1011
+ }
1012
+ function readHereDocDelimiters(line) {
1013
+ const delimiters = [];
1014
+ const pattern = /<<(-)?\s*(?:"([^"]+)"|'([^']+)'|([A-Za-z0-9_./-]+))/gu;
1015
+ for (const match of line.matchAll(pattern)) {
1016
+ const delimiter = match[2] ?? match[3] ?? match[4] ?? "";
1017
+ if (delimiter) {
1018
+ delimiters.push({ delimiter, stripTabs: Boolean(match[1]) });
1019
+ }
1020
+ }
1021
+ return delimiters;
1022
+ }
1023
+ function stripHereDocBodies(command) {
1024
+ const pending = [];
1025
+ return command.split("\n").map((line) => {
1026
+ const active = pending[0];
1027
+ if (active) {
1028
+ const comparable = active.stripTabs ? line.replace(/^\t+/u, "") : line;
1029
+ if (comparable === active.delimiter) {
1030
+ pending.shift();
1031
+ return line;
1032
+ }
1033
+ return "";
1034
+ }
1035
+ pending.push(...readHereDocDelimiters(line));
1036
+ return line;
1037
+ }).join("\n");
1038
+ }
1039
+ function scopedPathTokens(command) {
1040
+ const tokens = [];
1041
+ let index = 0;
1042
+ while (index < command.length) {
1043
+ while (index < command.length && isShellTokenBoundary(command[index] ?? "")) {
1044
+ index += 1;
1045
+ }
1046
+ if (index >= command.length) break;
1047
+ const span = readShellToken(command, index);
1048
+ index = Math.max(span.nextIndex, index + 1);
1049
+ const token = span.token;
1050
+ if (token === "." || token === ".." || token.startsWith("./") || token.startsWith("../") || token === "workspace" || token.startsWith("workspace/") || token.startsWith("workspace\\") || token.startsWith("/")) {
1051
+ tokens.push(token);
1052
+ }
1053
+ }
1054
+ return Object.freeze(tokens);
1055
+ }
1056
+ function createExecAdapter() {
1057
+ return {
1058
+ validateCall(input) {
1059
+ const invalid = ["command", "cwd"].filter((name) => {
1060
+ const value = input.params[name];
1061
+ return typeof value !== "string" || value.trim().length === 0;
1062
+ });
1063
+ if (invalid.length === 0) return null;
1064
+ return {
1065
+ error: `invalid params for exec: invalid ${invalid.join(", ")}`,
1066
+ repairHint: "Provide one non-interactive command and one explicit existing agent-work or workspace cwd."
1067
+ };
1068
+ }
1069
+ };
1070
+ }
1071
+
1072
+ // plugins/exec/source/handlers.ts
1073
+ var COMMAND_PREVIEW_MAX_CHARS = 768;
1074
+ function processScope(context) {
1075
+ const sessionId = context?.sharedState?.currentSessionId?.trim();
1076
+ return sessionId || "anonymous";
1077
+ }
1078
+ function streamDisplay(snapshot) {
1079
+ if (snapshot.text) return snapshot.text;
1080
+ return snapshot.sawOutput ? "(no new output; earlier output was already returned)" : "(empty)";
1081
+ }
1082
+ function renderedOutput(lines, outputMaxChars) {
1083
+ const bounded = boundText(lines.join("\n"), {
1084
+ maxChars: outputMaxChars,
1085
+ marker: "\n[exec output truncated]"
1086
+ });
1087
+ return Object.freeze({ output: bounded.text, metadata: bounded.metadata });
1088
+ }
1089
+ function outputBoundsData(snapshot, rendered, maxChars) {
1090
+ return Object.freeze({
1091
+ maxChars,
1092
+ stdout: snapshot.stdout.metadata,
1093
+ stderr: snapshot.stderr.metadata,
1094
+ rendered
1095
+ });
1096
+ }
1097
+ function runningResult(snapshot, execution) {
1098
+ const nextCursor = snapshot.nextCursor ?? 1;
1099
+ const rendered = renderedOutput(
1100
+ [
1101
+ `Command: ${execution.commandPreview}`,
1102
+ ...execution.commandWasNormalized ? ["Command normalization: invalid control characters were removed."] : [],
1103
+ `CWD: ${execution.cwd.logicalPath}`,
1104
+ "Process status: running",
1105
+ `Process ID: ${snapshot.processId}`,
1106
+ `Next cursor: ${nextCursor}`,
1107
+ "STDOUT since the previous observation:",
1108
+ streamDisplay(snapshot.stdout),
1109
+ "STDERR since the previous observation:",
1110
+ streamDisplay(snapshot.stderr),
1111
+ "Continue this exact process with exec_wait; do not run the command again."
1112
+ ],
1113
+ execution.outputMaxChars
1114
+ );
1115
+ return failureResult({
1116
+ errorCode: "exec_process_running",
1117
+ message: "The command is still running. Continue it with exec_wait using the returned process ID and cursor.",
1118
+ output: rendered.output,
1119
+ stdout: snapshot.stdout.text,
1120
+ stderr: snapshot.stderr.text,
1121
+ data: {
1122
+ processId: snapshot.processId,
1123
+ processStatus: "running",
1124
+ nextCursor,
1125
+ outputBounds: outputBoundsData(
1126
+ snapshot,
1127
+ rendered.metadata,
1128
+ execution.outputMaxChars
1129
+ ),
1130
+ observationMeta: {
1131
+ kind: "volatile_external",
1132
+ carryPolicy: "never"
1133
+ }
1134
+ }
1135
+ });
1136
+ }
1137
+ async function captureFilesystemDelta(execution) {
1138
+ if (!execution.filesystemStateBefore) return null;
1139
+ try {
1140
+ const after = await captureExecFilesystemSnapshot(
1141
+ execution.cwd.absolutePath,
1142
+ execution.cwd.logicalPath
1143
+ );
1144
+ return diffExecFilesystemSnapshots(execution.filesystemStateBefore, after);
1145
+ } catch {
1146
+ return null;
1147
+ }
1148
+ }
1149
+ async function finalizeExecResult(params) {
1150
+ const { snapshot, execution } = params;
1151
+ const exitCode = snapshot.exitCode ?? -1;
1152
+ const cancellationIsSuccess = params.cancellationIsSuccess === true && snapshot.terminationReason === "cancelled";
1153
+ const filesystemDelta = await captureFilesystemDelta(execution);
1154
+ const observedStateChange = filesystemDelta?.observedStateChange === true;
1155
+ const commandHasData = snapshot.stdout.sawOutput || snapshot.stderr.sawOutput;
1156
+ const ok = exitCode === 0 || cancellationIsSuccess;
1157
+ const inconclusiveSuccess = exitCode === 0 && !commandHasData && !observedStateChange;
1158
+ const producedNewInformation = observedStateChange || cancellationIsSuccess || ok && commandHasData;
1159
+ const actions = filesystemDelta?.actions ?? [];
1160
+ const resultSummary = cancellationIsSuccess ? "Result summary: the running command was cancelled." : inconclusiveSuccess ? "Result summary: the command completed without observable output or filesystem change. Inspect a concrete target or use a dedicated creation capability." : "";
1161
+ const rendered = renderedOutput(
1162
+ [
1163
+ `Command: ${execution.commandPreview}`,
1164
+ ...execution.commandWasNormalized ? ["Command normalization: invalid control characters were removed."] : [],
1165
+ `CWD: ${execution.cwd.logicalPath}`,
1166
+ `Process ID: ${snapshot.processId}`,
1167
+ `Process status: ${snapshot.terminationReason ?? "completed"}`,
1168
+ `Exit code: ${exitCode}`,
1169
+ ...filesystemDelta?.observedStateChange ? [
1170
+ `Filesystem changes observed: ${filesystemDelta.changedEntryCount}${filesystemDelta.observation.complete ? "" : " (bounded observation)"}`
1171
+ ] : [],
1172
+ "STDOUT:",
1173
+ streamDisplay(snapshot.stdout),
1174
+ "STDERR:",
1175
+ streamDisplay(snapshot.stderr),
1176
+ ...resultSummary ? [resultSummary] : []
1177
+ ],
1178
+ execution.outputMaxChars
1179
+ );
1180
+ const processStatus = snapshot.terminationReason ?? "completed";
1181
+ const data = {
1182
+ ...commandHasData ? { hasData: true } : {},
1183
+ ...observedStateChange ? { mutationEvidence: true } : {},
1184
+ processId: snapshot.processId,
1185
+ processStatus,
1186
+ outputBounds: outputBoundsData(
1187
+ snapshot,
1188
+ rendered.metadata,
1189
+ execution.outputMaxChars
1190
+ ),
1191
+ ...filesystemDelta ? { filesystemObservation: filesystemDelta.observation } : { filesystemObservation: { available: false } },
1192
+ observationMeta: {
1193
+ kind: "volatile_external",
1194
+ carryPolicy: "never"
1195
+ }
1196
+ };
1197
+ const common = {
1198
+ output: rendered.output,
1199
+ progress: observedStateChange || cancellationIsSuccess,
1200
+ producedNewInformation,
1201
+ actions: [...actions],
1202
+ exitCode,
1203
+ stdout: snapshot.stdout.text,
1204
+ stderr: snapshot.stderr.text,
1205
+ data
1206
+ };
1207
+ if (ok && (!inconclusiveSuccess || cancellationIsSuccess)) {
1208
+ return enforcePluginResultByteBudget({ ok: true, ...common });
1209
+ }
1210
+ const errorCode = inconclusiveSuccess ? "no_observable_result" : snapshot.terminationReason === "aborted" ? "exec_aborted" : snapshot.terminationReason === "spawn_failed" ? "exec_spawn_failed" : snapshot.terminationReason === "idle_timeout" ? "exec_idle_timeout" : snapshot.terminationReason === "hard_timeout" ? "exec_hard_timeout" : "non_zero_exit";
1211
+ const error = inconclusiveSuccess ? resultSummary : errorCode === "exec_aborted" ? "The exec request was aborted." : errorCode === "exec_spawn_failed" ? "The runtime could not start the configured non-interactive shell." : errorCode === "exec_idle_timeout" ? `The command produced no output for ${execution.idleTimeoutMs}ms.` : errorCode === "exec_hard_timeout" ? `The command exceeded the ${execution.hardTimeoutMs}ms hard timeout.` : `The command exited with code ${exitCode}.`;
1212
+ return enforcePluginResultByteBudget({
1213
+ ok: false,
1214
+ ...common,
1215
+ error,
1216
+ errorCode
1217
+ });
1218
+ }
1219
+ function createExecHandlers(pluginContext, settings) {
1220
+ const processManager = createExecProcessManager();
1221
+ const pendingExecutions = /* @__PURE__ */ new Map();
1222
+ const finalizeAndRelease = async (params) => {
1223
+ try {
1224
+ return await finalizeExecResult(params);
1225
+ } finally {
1226
+ pendingExecutions.delete(params.snapshot.processId);
1227
+ await processManager.release(params.snapshot.processId, params.scope);
1228
+ }
1229
+ };
1230
+ const exec = async (params, context) => {
1231
+ try {
1232
+ const rawCommand = readRequiredString(params.command, {
1233
+ name: "command",
1234
+ trim: false,
1235
+ maxLength: EXEC_COMMAND_MAX_CHARS
1236
+ });
1237
+ const { command, normalized } = sanitizeExecCommand(rawCommand);
1238
+ if (!command) {
1239
+ throw new ExecPluginError(
1240
+ "exec_command_invalid",
1241
+ "The command is empty after invalid control characters are removed."
1242
+ );
1243
+ }
1244
+ const interactive = isInteractiveCommand(command);
1245
+ if (interactive) {
1246
+ throw new ExecPluginError(
1247
+ "exec_interactive_command_blocked",
1248
+ `Interactive command ${interactive} is not supported by the non-interactive exec plugin.`
1249
+ );
1250
+ }
1251
+ const cwd = await resolveExecWorkingDirectory(
1252
+ pluginContext,
1253
+ context,
1254
+ params.cwd
1255
+ );
1256
+ const staticCommand = stripHereDocBodies(command);
1257
+ for (const token of scopedPathTokens(staticCommand)) {
1258
+ resolveExecScopedPath(pluginContext, context, token, cwd);
1259
+ }
1260
+ const filesystemStateBefore = await captureExecFilesystemSnapshot(
1261
+ cwd.absolutePath,
1262
+ cwd.logicalPath
1263
+ ).catch(() => null);
1264
+ const commandPreview = boundText(command, {
1265
+ maxChars: COMMAND_PREVIEW_MAX_CHARS,
1266
+ marker: "\n[command preview truncated]"
1267
+ }).text;
1268
+ const execution = Object.freeze({
1269
+ commandPreview,
1270
+ commandWasNormalized: normalized,
1271
+ cwd,
1272
+ filesystemStateBefore,
1273
+ hardTimeoutMs: settings.hardTimeoutMs,
1274
+ idleTimeoutMs: Math.min(settings.idleTimeoutMs, settings.hardTimeoutMs),
1275
+ outputMaxChars: settings.outputMaxChars
1276
+ });
1277
+ const scope = processScope(context);
1278
+ const snapshot = await processManager.start({
1279
+ scope,
1280
+ shellCommand: command,
1281
+ cwd: cwd.absolutePath,
1282
+ outputMaxChars: settings.outputMaxChars,
1283
+ yieldAfterMs: Math.min(settings.yieldAfterMs, settings.hardTimeoutMs),
1284
+ idleTimeoutMs: execution.idleTimeoutMs,
1285
+ hardTimeoutMs: execution.hardTimeoutMs,
1286
+ ...context?.abortSignal ? { abortSignal: context.abortSignal } : {},
1287
+ onDisposed: (processId) => pendingExecutions.delete(processId)
1288
+ });
1289
+ if (snapshot.status === "running") {
1290
+ pendingExecutions.set(snapshot.processId, execution);
1291
+ return runningResult(snapshot, execution);
1292
+ }
1293
+ return finalizeAndRelease({ snapshot, execution, scope });
1294
+ } catch (error) {
1295
+ return execFailureFromError(error, "exec");
1296
+ }
1297
+ };
1298
+ const execWait = async (params, context) => {
1299
+ try {
1300
+ const processId = readRequiredString(params.process_id, {
1301
+ name: "process_id",
1302
+ maxLength: 128
1303
+ });
1304
+ const cursor = readBoundedInteger(params.cursor, {
1305
+ name: "cursor",
1306
+ minimum: 1,
1307
+ maximum: 1e6
1308
+ });
1309
+ const execution = pendingExecutions.get(processId);
1310
+ if (!execution) {
1311
+ throw new ExecPluginError(
1312
+ "unknown_exec_process",
1313
+ "The exec process is unknown to this plugin instance and session."
1314
+ );
1315
+ }
1316
+ const scope = processScope(context);
1317
+ const snapshot = await processManager.wait({
1318
+ processId,
1319
+ scope,
1320
+ cursor,
1321
+ waitMs: settings.yieldAfterMs
1322
+ });
1323
+ return snapshot.status === "running" ? runningResult(snapshot, execution) : finalizeAndRelease({ snapshot, execution, scope });
1324
+ } catch (error) {
1325
+ return execFailureFromError(error, "exec_wait");
1326
+ }
1327
+ };
1328
+ const execCancel = async (params, context) => {
1329
+ try {
1330
+ const processId = readRequiredString(params.process_id, {
1331
+ name: "process_id",
1332
+ maxLength: 128
1333
+ });
1334
+ const execution = pendingExecutions.get(processId);
1335
+ if (!execution) {
1336
+ throw new ExecPluginError(
1337
+ "unknown_exec_process",
1338
+ "The exec process is unknown to this plugin instance and session."
1339
+ );
1340
+ }
1341
+ const scope = processScope(context);
1342
+ const snapshot = await processManager.cancel({ processId, scope });
1343
+ return finalizeAndRelease({
1344
+ snapshot,
1345
+ execution,
1346
+ scope,
1347
+ cancellationIsSuccess: true
1348
+ });
1349
+ } catch (error) {
1350
+ return execFailureFromError(error, "exec_cancel");
1351
+ }
1352
+ };
1353
+ return Object.freeze({ exec, exec_wait: execWait, exec_cancel: execCancel });
1354
+ }
1355
+
1356
+ // plugins/exec/source/index.ts
1357
+ var index_default = defineRuntimePlugin((context) => ({
1358
+ handlers: createExecHandlers(context, readExecSettings(context.config)),
1359
+ adapters: {
1360
+ exec: createExecAdapter()
1361
+ }
1362
+ }));