@evalops/maestro 0.10.18 → 0.10.20

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 (922) hide show
  1. package/README.md +56 -1
  2. package/dist/agent/action-approval.d.ts +12 -2
  3. package/dist/agent/action-approval.d.ts.map +1 -1
  4. package/dist/agent/action-approval.js +19 -32
  5. package/dist/agent/action-approval.js.map +1 -1
  6. package/dist/agent/agent.d.ts +1 -0
  7. package/dist/agent/agent.d.ts.map +1 -1
  8. package/dist/agent/agent.js +26 -0
  9. package/dist/agent/agent.js.map +1 -1
  10. package/dist/agent/compaction.d.ts +2 -0
  11. package/dist/agent/compaction.d.ts.map +1 -1
  12. package/dist/agent/compaction.js +4 -2
  13. package/dist/agent/compaction.js.map +1 -1
  14. package/dist/agent/index.d.ts +1 -1
  15. package/dist/agent/index.d.ts.map +1 -1
  16. package/dist/agent/index.js +1 -1
  17. package/dist/agent/index.js.map +1 -1
  18. package/dist/agent/modes.d.ts +56 -4
  19. package/dist/agent/modes.d.ts.map +1 -1
  20. package/dist/agent/modes.js +163 -2
  21. package/dist/agent/modes.js.map +1 -1
  22. package/dist/agent/prompt-recovery.d.ts.map +1 -1
  23. package/dist/agent/prompt-recovery.js +1 -3
  24. package/dist/agent/prompt-recovery.js.map +1 -1
  25. package/dist/agent/providers/anthropic.d.ts.map +1 -1
  26. package/dist/agent/providers/anthropic.js +9 -1
  27. package/dist/agent/providers/anthropic.js.map +1 -1
  28. package/dist/agent/providers/codex-app-server.d.ts +12 -0
  29. package/dist/agent/providers/codex-app-server.d.ts.map +1 -0
  30. package/dist/agent/providers/codex-app-server.js +788 -0
  31. package/dist/agent/providers/codex-app-server.js.map +1 -0
  32. package/dist/agent/providers/google-gemini-cli.js +14 -3
  33. package/dist/agent/providers/google.js +22 -3
  34. package/dist/agent/providers/scripted.d.ts +11 -0
  35. package/dist/agent/providers/scripted.d.ts.map +1 -0
  36. package/dist/agent/providers/scripted.js +399 -0
  37. package/dist/agent/providers/scripted.js.map +1 -0
  38. package/dist/agent/providers/vertex.js +14 -3
  39. package/dist/agent/scenario-source.d.ts +19 -0
  40. package/dist/agent/scenario-source.d.ts.map +1 -0
  41. package/dist/agent/scenario-source.js +112 -0
  42. package/dist/agent/scenario-source.js.map +1 -0
  43. package/dist/agent/subagent-specs.d.ts +1 -1
  44. package/dist/agent/subagent-specs.js +1 -1
  45. package/dist/agent/subagent-specs.js.map +1 -1
  46. package/dist/agent/swarm/executor.d.ts +25 -0
  47. package/dist/agent/swarm/executor.d.ts.map +1 -1
  48. package/dist/agent/swarm/executor.js +795 -20
  49. package/dist/agent/swarm/executor.js.map +1 -1
  50. package/dist/agent/swarm/runtime-events.d.ts +11 -0
  51. package/dist/agent/swarm/runtime-events.d.ts.map +1 -0
  52. package/dist/agent/swarm/runtime-events.js +26 -0
  53. package/dist/agent/swarm/runtime-events.js.map +1 -0
  54. package/dist/agent/swarm/types.d.ts +78 -0
  55. package/dist/agent/swarm/types.d.ts.map +1 -1
  56. package/dist/agent/swarm/types.js.map +1 -1
  57. package/dist/agent/tracing.d.ts +1 -1
  58. package/dist/agent/tracing.d.ts.map +1 -1
  59. package/dist/agent/tracing.js +17 -9
  60. package/dist/agent/tracing.js.map +1 -1
  61. package/dist/agent/transport/create-provider-stream.d.ts.map +1 -1
  62. package/dist/agent/transport/create-provider-stream.js +14 -0
  63. package/dist/agent/transport/create-provider-stream.js.map +1 -1
  64. package/dist/agent/transport/stable-stringify.d.ts +2 -0
  65. package/dist/agent/transport/stable-stringify.d.ts.map +1 -0
  66. package/dist/agent/transport/stable-stringify.js +14 -0
  67. package/dist/agent/transport/stable-stringify.js.map +1 -0
  68. package/dist/agent/transport/tool-execution-bridge.d.ts.map +1 -1
  69. package/dist/agent/transport/tool-execution-bridge.js +2 -15
  70. package/dist/agent/transport/tool-execution-bridge.js.map +1 -1
  71. package/dist/agent/transport/tool-safety-pipeline.d.ts +5 -1
  72. package/dist/agent/transport/tool-safety-pipeline.d.ts.map +1 -1
  73. package/dist/agent/transport/tool-safety-pipeline.js +184 -36
  74. package/dist/agent/transport/tool-safety-pipeline.js.map +1 -1
  75. package/dist/agent/transport.d.ts +8 -0
  76. package/dist/agent/transport.d.ts.map +1 -1
  77. package/dist/agent/transport.js +1613 -68
  78. package/dist/agent/transport.js.map +1 -1
  79. package/dist/agent/types.d.ts +170 -2
  80. package/dist/agent/types.d.ts.map +1 -1
  81. package/dist/agent/types.js.map +1 -1
  82. package/dist/api/enterprise-routes.d.ts.map +1 -1
  83. package/dist/api/enterprise-routes.js +34 -3
  84. package/dist/api/enterprise-routes.js.map +1 -1
  85. package/dist/app-server/in-process-client.d.ts +32 -0
  86. package/dist/app-server/in-process-client.d.ts.map +1 -0
  87. package/dist/app-server/in-process-client.js +73 -0
  88. package/dist/app-server/in-process-client.js.map +1 -0
  89. package/dist/app-server/session-api.d.ts +36 -0
  90. package/dist/app-server/session-api.d.ts.map +1 -0
  91. package/dist/app-server/session-api.js +713 -0
  92. package/dist/app-server/session-api.js.map +1 -0
  93. package/dist/approvals/platform-action-approval.d.ts +3 -1
  94. package/dist/approvals/platform-action-approval.d.ts.map +1 -1
  95. package/dist/approvals/platform-action-approval.js +16 -9
  96. package/dist/approvals/platform-action-approval.js.map +1 -1
  97. package/dist/approvals/service-client.d.ts.map +1 -1
  98. package/dist/approvals/service-client.js +7 -7
  99. package/dist/approvals/service-client.js.map +1 -1
  100. package/dist/audit/logger.d.ts +4 -4
  101. package/dist/bootstrap/agent-creation-setup.d.ts +4 -0
  102. package/dist/bootstrap/agent-creation-setup.d.ts.map +1 -1
  103. package/dist/bootstrap/agent-creation-setup.js +3 -1
  104. package/dist/bootstrap/agent-creation-setup.js.map +1 -1
  105. package/dist/bootstrap/auth-setup.js +1 -1
  106. package/dist/bootstrap/auth-setup.js.map +1 -1
  107. package/dist/bootstrap/event-subscriptions-setup.d.ts +6 -0
  108. package/dist/bootstrap/event-subscriptions-setup.d.ts.map +1 -1
  109. package/dist/bootstrap/event-subscriptions-setup.js +26 -2
  110. package/dist/bootstrap/event-subscriptions-setup.js.map +1 -1
  111. package/dist/bootstrap/model-resolution-setup.d.ts.map +1 -1
  112. package/dist/bootstrap/model-resolution-setup.js +4 -1
  113. package/dist/bootstrap/model-resolution-setup.js.map +1 -1
  114. package/dist/bootstrap/tools-setup.d.ts +2 -1
  115. package/dist/bootstrap/tools-setup.d.ts.map +1 -1
  116. package/dist/bootstrap/tools-setup.js +5 -1
  117. package/dist/bootstrap/tools-setup.js.map +1 -1
  118. package/dist/cli/args.d.ts +9 -1
  119. package/dist/cli/args.d.ts.map +1 -1
  120. package/dist/cli/args.js +130 -5
  121. package/dist/cli/args.js.map +1 -1
  122. package/dist/cli/commands/a2a.d.ts +9 -0
  123. package/dist/cli/commands/a2a.d.ts.map +1 -0
  124. package/dist/cli/commands/a2a.js +1714 -0
  125. package/dist/cli/commands/a2a.js.map +1 -0
  126. package/dist/cli/commands/agents.d.ts +16 -2
  127. package/dist/cli/commands/agents.d.ts.map +1 -1
  128. package/dist/cli/commands/agents.js +223 -35
  129. package/dist/cli/commands/agents.js.map +1 -1
  130. package/dist/cli/commands/codex.d.ts +1 -1
  131. package/dist/cli/commands/codex.d.ts.map +1 -1
  132. package/dist/cli/commands/codex.js +145 -39
  133. package/dist/cli/commands/codex.js.map +1 -1
  134. package/dist/cli/commands/context.d.ts +10 -0
  135. package/dist/cli/commands/context.d.ts.map +1 -0
  136. package/dist/cli/commands/context.js +176 -0
  137. package/dist/cli/commands/context.js.map +1 -0
  138. package/dist/cli/commands/hosted-runner.d.ts +1 -0
  139. package/dist/cli/commands/hosted-runner.d.ts.map +1 -1
  140. package/dist/cli/commands/hosted-runner.js +9 -1
  141. package/dist/cli/commands/hosted-runner.js.map +1 -1
  142. package/dist/cli/commands/modes.d.ts +8 -0
  143. package/dist/cli/commands/modes.d.ts.map +1 -0
  144. package/dist/cli/commands/modes.js +151 -0
  145. package/dist/cli/commands/modes.js.map +1 -0
  146. package/dist/cli/commands/operating-plane.d.ts +14 -0
  147. package/dist/cli/commands/operating-plane.d.ts.map +1 -0
  148. package/dist/cli/commands/operating-plane.js +160 -0
  149. package/dist/cli/commands/operating-plane.js.map +1 -0
  150. package/dist/cli/commands/run.d.ts +87 -0
  151. package/dist/cli/commands/run.d.ts.map +1 -0
  152. package/dist/cli/commands/run.js +356 -0
  153. package/dist/cli/commands/run.js.map +1 -0
  154. package/dist/cli/commands/scenario.d.ts +7 -0
  155. package/dist/cli/commands/scenario.d.ts.map +1 -0
  156. package/dist/cli/commands/scenario.js +195 -0
  157. package/dist/cli/commands/scenario.js.map +1 -0
  158. package/dist/cli/commands/skill.d.ts +7 -0
  159. package/dist/cli/commands/skill.d.ts.map +1 -0
  160. package/dist/cli/commands/skill.js +286 -0
  161. package/dist/cli/commands/skill.js.map +1 -0
  162. package/dist/cli/headless-protocol.d.ts +55 -1
  163. package/dist/cli/headless-protocol.d.ts.map +1 -1
  164. package/dist/cli/headless-protocol.js +446 -7
  165. package/dist/cli/headless-protocol.js.map +1 -1
  166. package/dist/cli/headless-runtime-selection.d.ts +38 -0
  167. package/dist/cli/headless-runtime-selection.d.ts.map +1 -0
  168. package/dist/cli/headless-runtime-selection.js +48 -0
  169. package/dist/cli/headless-runtime-selection.js.map +1 -0
  170. package/dist/cli/headless.d.ts +5 -1
  171. package/dist/cli/headless.d.ts.map +1 -1
  172. package/dist/cli/headless.js +11 -1
  173. package/dist/cli/headless.js.map +1 -1
  174. package/dist/cli/help.d.ts +3 -1
  175. package/dist/cli/help.d.ts.map +1 -1
  176. package/dist/cli/help.js +135 -30
  177. package/dist/cli/help.js.map +1 -1
  178. package/dist/cli/system-prompt.d.ts +22 -4
  179. package/dist/cli/system-prompt.d.ts.map +1 -1
  180. package/dist/cli/system-prompt.js +224 -127
  181. package/dist/cli/system-prompt.js.map +1 -1
  182. package/dist/cli-tui/commands/a2a-handlers.d.ts +7 -0
  183. package/dist/cli-tui/commands/a2a-handlers.d.ts.map +1 -0
  184. package/dist/cli-tui/commands/a2a-handlers.js +160 -0
  185. package/dist/cli-tui/commands/a2a-handlers.js.map +1 -0
  186. package/dist/cli-tui/commands/command-catalog.d.ts.map +1 -1
  187. package/dist/cli-tui/commands/command-catalog.js +15 -0
  188. package/dist/cli-tui/commands/command-catalog.js.map +1 -1
  189. package/dist/cli-tui/commands/command-registry-adapter.js +10 -1
  190. package/dist/cli-tui/commands/command-registry-adapter.js.map +1 -1
  191. package/dist/cli-tui/commands/handlers/mode-handler.d.ts.map +1 -1
  192. package/dist/cli-tui/commands/handlers/mode-handler.js +22 -10
  193. package/dist/cli-tui/commands/handlers/mode-handler.js.map +1 -1
  194. package/dist/cli-tui/commands/mcp-handlers.d.ts.map +1 -1
  195. package/dist/cli-tui/commands/mcp-handlers.js +6 -5
  196. package/dist/cli-tui/commands/mcp-handlers.js.map +1 -1
  197. package/dist/cli-tui/commands/types.d.ts +1 -0
  198. package/dist/cli-tui/commands/types.d.ts.map +1 -1
  199. package/dist/cli-tui/commands/types.js.map +1 -1
  200. package/dist/cli-tui/commands/utility-handlers.d.ts +4 -0
  201. package/dist/cli-tui/commands/utility-handlers.d.ts.map +1 -1
  202. package/dist/cli-tui/commands/utility-handlers.js +45 -6
  203. package/dist/cli-tui/commands/utility-handlers.js.map +1 -1
  204. package/dist/cli-tui/run/run-shell-command.d.ts.map +1 -1
  205. package/dist/cli-tui/run/run-shell-command.js +14 -5
  206. package/dist/cli-tui/run/run-shell-command.js.map +1 -1
  207. package/dist/cli-tui/run/streaming-shell-command.d.ts.map +1 -1
  208. package/dist/cli-tui/run/streaming-shell-command.js +14 -5
  209. package/dist/cli-tui/run/streaming-shell-command.js.map +1 -1
  210. package/dist/cli-tui/selectors/model-selector.d.ts +1 -0
  211. package/dist/cli-tui/selectors/model-selector.d.ts.map +1 -1
  212. package/dist/cli-tui/selectors/model-selector.js +6 -2
  213. package/dist/cli-tui/selectors/model-selector.js.map +1 -1
  214. package/dist/cli-tui/tui-renderer/command-registry-options.d.ts.map +1 -1
  215. package/dist/cli-tui/tui-renderer/command-registry-options.js +5 -0
  216. package/dist/cli-tui/tui-renderer/command-registry-options.js.map +1 -1
  217. package/dist/cli-tui/utils/commands/review-prompt.d.ts +1 -1
  218. package/dist/cli-tui/utils/commands/review-prompt.d.ts.map +1 -1
  219. package/dist/cli-tui/utils/commands/review-prompt.js +8 -3
  220. package/dist/cli-tui/utils/commands/review-prompt.js.map +1 -1
  221. package/dist/cli-tui/utils/runtime-badges.d.ts +1 -0
  222. package/dist/cli-tui/utils/runtime-badges.d.ts.map +1 -1
  223. package/dist/cli-tui/utils/runtime-badges.js +7 -0
  224. package/dist/cli-tui/utils/runtime-badges.js.map +1 -1
  225. package/dist/cli-tui/utils/text-formatting.d.ts +1 -0
  226. package/dist/cli-tui/utils/text-formatting.d.ts.map +1 -1
  227. package/dist/cli-tui/utils/text-formatting.js +5 -0
  228. package/dist/cli-tui/utils/text-formatting.js.map +1 -1
  229. package/dist/cli.js +49158 -26161
  230. package/dist/cli.js.map +1 -1
  231. package/dist/codex/app-server-client.d.ts +139 -0
  232. package/dist/codex/app-server-client.d.ts.map +1 -0
  233. package/dist/codex/app-server-client.js +352 -0
  234. package/dist/codex/app-server-client.js.map +1 -0
  235. package/dist/codex/compatibility.d.ts +48 -0
  236. package/dist/codex/compatibility.d.ts.map +1 -0
  237. package/dist/codex/compatibility.js +344 -0
  238. package/dist/codex/compatibility.js.map +1 -0
  239. package/dist/codex/subagent-dispatch-table.d.ts +66 -0
  240. package/dist/codex/subagent-dispatch-table.d.ts.map +1 -0
  241. package/dist/codex/subagent-dispatch-table.js +127 -0
  242. package/dist/codex/subagent-dispatch-table.js.map +1 -0
  243. package/dist/codex/subagent-workgraph.d.ts +56 -0
  244. package/dist/codex/subagent-workgraph.d.ts.map +1 -0
  245. package/dist/codex/subagent-workgraph.js +89 -0
  246. package/dist/codex/subagent-workgraph.js.map +1 -0
  247. package/dist/config/constants.d.ts +3 -1
  248. package/dist/config/constants.d.ts.map +1 -1
  249. package/dist/config/constants.js +9 -0
  250. package/dist/config/constants.js.map +1 -1
  251. package/dist/config/feature-flags.d.ts +10 -1
  252. package/dist/config/feature-flags.d.ts.map +1 -1
  253. package/dist/config/feature-flags.js +17 -6
  254. package/dist/config/feature-flags.js.map +1 -1
  255. package/dist/config/index.d.ts +1 -1
  256. package/dist/config/index.d.ts.map +1 -1
  257. package/dist/config/index.js +1 -1
  258. package/dist/config/index.js.map +1 -1
  259. package/dist/config/toml-config.d.ts +32 -0
  260. package/dist/config/toml-config.d.ts.map +1 -1
  261. package/dist/config/toml-config.js +152 -43
  262. package/dist/config/toml-config.js.map +1 -1
  263. package/dist/connectors/service-client.d.ts.map +1 -1
  264. package/dist/connectors/service-client.js +4 -7
  265. package/dist/connectors/service-client.js.map +1 -1
  266. package/dist/context/manifest-types.d.ts +59 -0
  267. package/dist/context/manifest-types.d.ts.map +1 -0
  268. package/dist/context/manifest-types.js +2 -0
  269. package/dist/context/manifest-types.js.map +1 -0
  270. package/dist/context/manifest.d.ts +16 -0
  271. package/dist/context/manifest.d.ts.map +1 -0
  272. package/dist/context/manifest.js +503 -0
  273. package/dist/context/manifest.js.map +1 -0
  274. package/dist/db/schema.d.ts +10 -1
  275. package/dist/db/schema.d.ts.map +1 -1
  276. package/dist/db/schema.js.map +1 -1
  277. package/dist/evalops/env-aliases.d.ts +13 -0
  278. package/dist/evalops/env-aliases.d.ts.map +1 -0
  279. package/dist/evalops/env-aliases.js +60 -0
  280. package/dist/evalops/env-aliases.js.map +1 -0
  281. package/dist/evalops/managed-context.d.ts.map +1 -1
  282. package/dist/evalops/managed-context.js +28 -62
  283. package/dist/evalops/managed-context.js.map +1 -1
  284. package/dist/guardian/config.d.ts.map +1 -1
  285. package/dist/guardian/config.js +1 -0
  286. package/dist/guardian/config.js.map +1 -1
  287. package/dist/guardian/runner.d.ts +2 -0
  288. package/dist/guardian/runner.d.ts.map +1 -1
  289. package/dist/guardian/runner.js +105 -2
  290. package/dist/guardian/runner.js.map +1 -1
  291. package/dist/guardian/types.d.ts +1 -0
  292. package/dist/guardian/types.d.ts.map +1 -1
  293. package/dist/guardian/types.js.map +1 -1
  294. package/dist/index.d.ts +5 -1
  295. package/dist/index.d.ts.map +1 -1
  296. package/dist/index.js +5 -1
  297. package/dist/index.js.map +1 -1
  298. package/dist/main.d.ts.map +1 -1
  299. package/dist/main.js +267 -55
  300. package/dist/main.js.map +1 -1
  301. package/dist/mcp/config.d.ts.map +1 -1
  302. package/dist/mcp/config.js +89 -7
  303. package/dist/mcp/config.js.map +1 -1
  304. package/dist/mcp/manager.d.ts +5 -1
  305. package/dist/mcp/manager.d.ts.map +1 -1
  306. package/dist/mcp/manager.js +159 -4
  307. package/dist/mcp/manager.js.map +1 -1
  308. package/dist/mcp/platform-plugin.d.ts.map +1 -1
  309. package/dist/mcp/platform-plugin.js +9 -26
  310. package/dist/mcp/platform-plugin.js.map +1 -1
  311. package/dist/mcp/schema.d.ts +15 -0
  312. package/dist/mcp/schema.d.ts.map +1 -1
  313. package/dist/mcp/schema.js +24 -0
  314. package/dist/mcp/schema.js.map +1 -1
  315. package/dist/mcp/tool-bridge.d.ts +39 -10
  316. package/dist/mcp/tool-bridge.d.ts.map +1 -1
  317. package/dist/mcp/tool-bridge.js +101 -24
  318. package/dist/mcp/tool-bridge.js.map +1 -1
  319. package/dist/mcp/types.d.ts +27 -0
  320. package/dist/mcp/types.d.ts.map +1 -1
  321. package/dist/mcp/types.js.map +1 -1
  322. package/dist/mcp/workspace-trust.d.ts +10 -0
  323. package/dist/mcp/workspace-trust.d.ts.map +1 -0
  324. package/dist/mcp/workspace-trust.js +295 -0
  325. package/dist/mcp/workspace-trust.js.map +1 -0
  326. package/dist/memory/service-client.d.ts +1 -0
  327. package/dist/memory/service-client.d.ts.map +1 -1
  328. package/dist/memory/service-client.js +194 -9
  329. package/dist/memory/service-client.js.map +1 -1
  330. package/dist/models/builtin.d.ts.map +1 -1
  331. package/dist/models/builtin.js +66 -25
  332. package/dist/models/builtin.js.map +1 -1
  333. package/dist/models/config-loader.d.ts +10 -10
  334. package/dist/models/config-loader.d.ts.map +1 -1
  335. package/dist/models/config-loader.js +2 -0
  336. package/dist/models/config-loader.js.map +1 -1
  337. package/dist/models/registry.d.ts +1 -0
  338. package/dist/models/registry.d.ts.map +1 -1
  339. package/dist/models/registry.js +1 -0
  340. package/dist/models/registry.js.map +1 -1
  341. package/dist/oauth/device-identity.d.ts.map +1 -1
  342. package/dist/oauth/device-identity.js +1 -3
  343. package/dist/oauth/device-identity.js.map +1 -1
  344. package/dist/oauth/evalops.d.ts.map +1 -1
  345. package/dist/oauth/evalops.js +2 -5
  346. package/dist/oauth/evalops.js.map +1 -1
  347. package/dist/opentelemetry.d.ts.map +1 -1
  348. package/dist/opentelemetry.js +12 -12
  349. package/dist/opentelemetry.js.map +1 -1
  350. package/dist/package-version.d.ts +2 -0
  351. package/dist/package-version.d.ts.map +1 -0
  352. package/dist/package-version.js +11 -0
  353. package/dist/package-version.js.map +1 -0
  354. package/dist/packages/constants.d.ts +3 -0
  355. package/dist/packages/constants.d.ts.map +1 -0
  356. package/dist/packages/constants.js +3 -0
  357. package/dist/packages/constants.js.map +1 -0
  358. package/dist/packages/inspection.d.ts.map +1 -1
  359. package/dist/packages/inspection.js +2 -1
  360. package/dist/packages/inspection.js.map +1 -1
  361. package/dist/packages/search.d.ts.map +1 -1
  362. package/dist/packages/search.js +1 -1
  363. package/dist/packages/search.js.map +1 -1
  364. package/dist/platform/a2a-capability-market.d.ts +21 -0
  365. package/dist/platform/a2a-capability-market.d.ts.map +1 -0
  366. package/dist/platform/a2a-capability-market.js +176 -0
  367. package/dist/platform/a2a-capability-market.js.map +1 -0
  368. package/dist/platform/a2a-client.d.ts +119 -0
  369. package/dist/platform/a2a-client.d.ts.map +1 -1
  370. package/dist/platform/a2a-client.js +413 -24
  371. package/dist/platform/a2a-client.js.map +1 -1
  372. package/dist/platform/a2a-fleet.d.ts +41 -0
  373. package/dist/platform/a2a-fleet.d.ts.map +1 -0
  374. package/dist/platform/a2a-fleet.js +109 -0
  375. package/dist/platform/a2a-fleet.js.map +1 -0
  376. package/dist/platform/a2a-maestro-peer.d.ts +20 -0
  377. package/dist/platform/a2a-maestro-peer.d.ts.map +1 -0
  378. package/dist/platform/a2a-maestro-peer.js +176 -0
  379. package/dist/platform/a2a-maestro-peer.js.map +1 -0
  380. package/dist/platform/a2a-peer-pairing.d.ts +107 -0
  381. package/dist/platform/a2a-peer-pairing.d.ts.map +1 -0
  382. package/dist/platform/a2a-peer-pairing.js +489 -0
  383. package/dist/platform/a2a-peer-pairing.js.map +1 -0
  384. package/dist/platform/a2a-peer-registry.d.ts +68 -0
  385. package/dist/platform/a2a-peer-registry.d.ts.map +1 -0
  386. package/dist/platform/a2a-peer-registry.js +320 -0
  387. package/dist/platform/a2a-peer-registry.js.map +1 -0
  388. package/dist/platform/a2a-task-ledger.d.ts +86 -0
  389. package/dist/platform/a2a-task-ledger.d.ts.map +1 -0
  390. package/dist/platform/a2a-task-ledger.js +546 -0
  391. package/dist/platform/a2a-task-ledger.js.map +1 -0
  392. package/dist/platform/a2a-work-graph.d.ts +43 -0
  393. package/dist/platform/a2a-work-graph.d.ts.map +1 -0
  394. package/dist/platform/a2a-work-graph.js +267 -0
  395. package/dist/platform/a2a-work-graph.js.map +1 -0
  396. package/dist/platform/agent-registry-client.d.ts +327 -0
  397. package/dist/platform/agent-registry-client.d.ts.map +1 -0
  398. package/dist/platform/agent-registry-client.js +803 -0
  399. package/dist/platform/agent-registry-client.js.map +1 -0
  400. package/dist/platform/agent-runtime-client.d.ts +135 -1
  401. package/dist/platform/agent-runtime-client.d.ts.map +1 -1
  402. package/dist/platform/agent-runtime-client.js +467 -10
  403. package/dist/platform/agent-runtime-client.js.map +1 -1
  404. package/dist/platform/cerebro-facts-client.d.ts.map +1 -1
  405. package/dist/platform/cerebro-facts-client.js +4 -7
  406. package/dist/platform/cerebro-facts-client.js.map +1 -1
  407. package/dist/platform/client.d.ts.map +1 -1
  408. package/dist/platform/client.js +3 -12
  409. package/dist/platform/client.js.map +1 -1
  410. package/dist/platform/core-services.d.ts +68 -0
  411. package/dist/platform/core-services.d.ts.map +1 -1
  412. package/dist/platform/core-services.js +68 -0
  413. package/dist/platform/core-services.js.map +1 -1
  414. package/dist/platform/fermata-eval-client.d.ts +195 -0
  415. package/dist/platform/fermata-eval-client.d.ts.map +1 -0
  416. package/dist/platform/fermata-eval-client.js +146 -0
  417. package/dist/platform/fermata-eval-client.js.map +1 -0
  418. package/dist/platform/fermata-scenario-suite.d.ts +99 -0
  419. package/dist/platform/fermata-scenario-suite.d.ts.map +1 -0
  420. package/dist/platform/fermata-scenario-suite.js +459 -0
  421. package/dist/platform/fermata-scenario-suite.js.map +1 -0
  422. package/dist/platform/maestro-timeline-client.d.ts.map +1 -1
  423. package/dist/platform/maestro-timeline-client.js +5 -11
  424. package/dist/platform/maestro-timeline-client.js.map +1 -1
  425. package/dist/platform/operating-plane-client.d.ts +156 -0
  426. package/dist/platform/operating-plane-client.d.ts.map +1 -0
  427. package/dist/platform/operating-plane-client.js +131 -0
  428. package/dist/platform/operating-plane-client.js.map +1 -0
  429. package/dist/platform/operating-plane-summary.d.ts +47 -0
  430. package/dist/platform/operating-plane-summary.d.ts.map +1 -0
  431. package/dist/platform/operating-plane-summary.js +209 -0
  432. package/dist/platform/operating-plane-summary.js.map +1 -0
  433. package/dist/platform/tool-execution-client.d.ts.map +1 -1
  434. package/dist/platform/tool-execution-client.js +4 -11
  435. package/dist/platform/tool-execution-client.js.map +1 -1
  436. package/dist/prompts/service-client.d.ts.map +1 -1
  437. package/dist/prompts/service-client.js +3 -5
  438. package/dist/prompts/service-client.js.map +1 -1
  439. package/dist/prompts/system-prompt.d.ts +3 -0
  440. package/dist/prompts/system-prompt.d.ts.map +1 -1
  441. package/dist/prompts/system-prompt.js +13 -3
  442. package/dist/prompts/system-prompt.js.map +1 -1
  443. package/dist/prompts/types.d.ts +2 -0
  444. package/dist/prompts/types.d.ts.map +1 -1
  445. package/dist/prompts/types.js.map +1 -1
  446. package/dist/providers/api-keys.d.ts +1 -1
  447. package/dist/providers/api-keys.d.ts.map +1 -1
  448. package/dist/providers/api-keys.js +2 -1
  449. package/dist/providers/api-keys.js.map +1 -1
  450. package/dist/providers/auth.d.ts.map +1 -1
  451. package/dist/providers/auth.js +48 -25
  452. package/dist/providers/auth.js.map +1 -1
  453. package/dist/remote-runner/attach-client.d.ts.map +1 -1
  454. package/dist/remote-runner/attach-client.js +1 -0
  455. package/dist/remote-runner/attach-client.js.map +1 -1
  456. package/dist/remote-runner/client.d.ts.map +1 -1
  457. package/dist/remote-runner/client.js +4 -7
  458. package/dist/remote-runner/client.js.map +1 -1
  459. package/dist/rpc/rpc-types.d.ts.map +1 -1
  460. package/dist/rpc/rpc-types.js +1 -0
  461. package/dist/rpc/rpc-types.js.map +1 -1
  462. package/dist/safety/action-firewall.d.ts.map +1 -1
  463. package/dist/safety/action-firewall.js +69 -6
  464. package/dist/safety/action-firewall.js.map +1 -1
  465. package/dist/safety/attack-patterns.d.ts.map +1 -1
  466. package/dist/safety/attack-patterns.js +31 -14
  467. package/dist/safety/attack-patterns.js.map +1 -1
  468. package/dist/safety/bash-parser.d.ts.map +1 -1
  469. package/dist/safety/bash-parser.js +4 -3
  470. package/dist/safety/bash-parser.js.map +1 -1
  471. package/dist/safety/execpolicy.d.ts +15 -3
  472. package/dist/safety/execpolicy.d.ts.map +1 -1
  473. package/dist/safety/execpolicy.js +248 -37
  474. package/dist/safety/execpolicy.js.map +1 -1
  475. package/dist/safety/governance-service-client.d.ts.map +1 -1
  476. package/dist/safety/governance-service-client.js +4 -7
  477. package/dist/safety/governance-service-client.js.map +1 -1
  478. package/dist/safety/guarded-files.d.ts +34 -0
  479. package/dist/safety/guarded-files.d.ts.map +1 -0
  480. package/dist/safety/guarded-files.js +372 -0
  481. package/dist/safety/guarded-files.js.map +1 -0
  482. package/dist/safety/loop-detector.d.ts.map +1 -1
  483. package/dist/safety/loop-detector.js +6 -1
  484. package/dist/safety/loop-detector.js.map +1 -1
  485. package/dist/safety/permission-profile.d.ts +47 -0
  486. package/dist/safety/permission-profile.d.ts.map +1 -0
  487. package/dist/safety/permission-profile.js +349 -0
  488. package/dist/safety/permission-profile.js.map +1 -0
  489. package/dist/safety/safety-middleware.d.ts +5 -1
  490. package/dist/safety/safety-middleware.d.ts.map +1 -1
  491. package/dist/safety/safety-middleware.js +3 -2
  492. package/dist/safety/safety-middleware.js.map +1 -1
  493. package/dist/safety/suspicious-patterns.d.ts.map +1 -1
  494. package/dist/safety/suspicious-patterns.js +12 -7
  495. package/dist/safety/suspicious-patterns.js.map +1 -1
  496. package/dist/safety/tool-categorization.js +1 -1
  497. package/dist/safety/tool-categorization.js.map +1 -1
  498. package/dist/safety/validators/path-policy-validator.d.ts.map +1 -1
  499. package/dist/safety/validators/path-policy-validator.js +7 -0
  500. package/dist/safety/validators/path-policy-validator.js.map +1 -1
  501. package/dist/sandbox/index.d.ts +6 -1
  502. package/dist/sandbox/index.d.ts.map +1 -1
  503. package/dist/sandbox/index.js +30 -4
  504. package/dist/sandbox/index.js.map +1 -1
  505. package/dist/sandbox/native-sandbox.d.ts +3 -0
  506. package/dist/sandbox/native-sandbox.d.ts.map +1 -1
  507. package/dist/sandbox/native-sandbox.js +139 -18
  508. package/dist/sandbox/native-sandbox.js.map +1 -1
  509. package/dist/sentry.d.ts +17 -0
  510. package/dist/sentry.d.ts.map +1 -0
  511. package/dist/sentry.js +91 -0
  512. package/dist/sentry.js.map +1 -0
  513. package/dist/server/agent-runtime-ledger.d.ts +141 -0
  514. package/dist/server/agent-runtime-ledger.d.ts.map +1 -0
  515. package/dist/server/agent-runtime-ledger.js +334 -0
  516. package/dist/server/agent-runtime-ledger.js.map +1 -0
  517. package/dist/server/agent-trajectory-inspection.d.ts +104 -0
  518. package/dist/server/agent-trajectory-inspection.d.ts.map +1 -0
  519. package/dist/server/agent-trajectory-inspection.js +168 -0
  520. package/dist/server/agent-trajectory-inspection.js.map +1 -0
  521. package/dist/server/agent-trajectory-replay.d.ts +56 -0
  522. package/dist/server/agent-trajectory-replay.d.ts.map +1 -0
  523. package/dist/server/agent-trajectory-replay.js +214 -0
  524. package/dist/server/agent-trajectory-replay.js.map +1 -0
  525. package/dist/server/agent-trajectory-scenarios.d.ts +109 -0
  526. package/dist/server/agent-trajectory-scenarios.d.ts.map +1 -0
  527. package/dist/server/agent-trajectory-scenarios.js +822 -0
  528. package/dist/server/agent-trajectory-scenarios.js.map +1 -0
  529. package/dist/server/agent-trajectory-scorers.d.ts +61 -0
  530. package/dist/server/agent-trajectory-scorers.d.ts.map +1 -0
  531. package/dist/server/agent-trajectory-scorers.js +162 -0
  532. package/dist/server/agent-trajectory-scorers.js.map +1 -0
  533. package/dist/server/agent-trajectory-validation.d.ts +7 -0
  534. package/dist/server/agent-trajectory-validation.d.ts.map +1 -0
  535. package/dist/server/agent-trajectory-validation.js +101 -0
  536. package/dist/server/agent-trajectory-validation.js.map +1 -0
  537. package/dist/server/agent-trajectory.d.ts +50 -0
  538. package/dist/server/agent-trajectory.d.ts.map +1 -0
  539. package/dist/server/agent-trajectory.js +159 -0
  540. package/dist/server/agent-trajectory.js.map +1 -0
  541. package/dist/server/app-context.d.ts +18 -0
  542. package/dist/server/app-context.d.ts.map +1 -1
  543. package/dist/server/app-context.js.map +1 -1
  544. package/dist/server/handlers/headless-sessions.d.ts.map +1 -1
  545. package/dist/server/handlers/headless-sessions.js +64 -27
  546. package/dist/server/handlers/headless-sessions.js.map +1 -1
  547. package/dist/server/handlers/health.d.ts +6 -0
  548. package/dist/server/handlers/health.d.ts.map +1 -1
  549. package/dist/server/handlers/health.js +6 -0
  550. package/dist/server/handlers/health.js.map +1 -1
  551. package/dist/server/handlers/hosted-runner-drain.d.ts +69 -1
  552. package/dist/server/handlers/hosted-runner-drain.d.ts.map +1 -1
  553. package/dist/server/handlers/hosted-runner-drain.js +309 -18
  554. package/dist/server/handlers/hosted-runner-drain.js.map +1 -1
  555. package/dist/server/handlers/hosted-runner-identity.d.ts +16 -0
  556. package/dist/server/handlers/hosted-runner-identity.d.ts.map +1 -1
  557. package/dist/server/handlers/hosted-runner-identity.js +43 -0
  558. package/dist/server/handlers/hosted-runner-identity.js.map +1 -1
  559. package/dist/server/handlers/mode.d.ts.map +1 -1
  560. package/dist/server/handlers/mode.js +3 -1
  561. package/dist/server/handlers/mode.js.map +1 -1
  562. package/dist/server/handlers/pending-requests.d.ts.map +1 -1
  563. package/dist/server/handlers/pending-requests.js +336 -51
  564. package/dist/server/handlers/pending-requests.js.map +1 -1
  565. package/dist/server/handlers/platform-a2a-push.d.ts +6 -0
  566. package/dist/server/handlers/platform-a2a-push.d.ts.map +1 -0
  567. package/dist/server/handlers/platform-a2a-push.js +136 -0
  568. package/dist/server/handlers/platform-a2a-push.js.map +1 -0
  569. package/dist/server/handlers/sessions.d.ts.map +1 -1
  570. package/dist/server/handlers/sessions.js +21 -1
  571. package/dist/server/handlers/sessions.js.map +1 -1
  572. package/dist/server/headless-runtime-service.d.ts +9 -2
  573. package/dist/server/headless-runtime-service.d.ts.map +1 -1
  574. package/dist/server/headless-runtime-service.js +39 -0
  575. package/dist/server/headless-runtime-service.js.map +1 -1
  576. package/dist/server/hosted-agent-runtime-progress.d.ts +144 -0
  577. package/dist/server/hosted-agent-runtime-progress.d.ts.map +1 -0
  578. package/dist/server/hosted-agent-runtime-progress.js +1650 -0
  579. package/dist/server/hosted-agent-runtime-progress.js.map +1 -0
  580. package/dist/server/hosted-runner-lease.d.ts +41 -0
  581. package/dist/server/hosted-runner-lease.d.ts.map +1 -0
  582. package/dist/server/hosted-runner-lease.js +140 -0
  583. package/dist/server/hosted-runner-lease.js.map +1 -0
  584. package/dist/server/hosted-session-manager.d.ts +16 -8
  585. package/dist/server/hosted-session-manager.d.ts.map +1 -1
  586. package/dist/server/hosted-session-manager.js +98 -76
  587. package/dist/server/hosted-session-manager.js.map +1 -1
  588. package/dist/server/junit-xml.d.ts +2 -0
  589. package/dist/server/junit-xml.d.ts.map +1 -0
  590. package/dist/server/junit-xml.js +9 -0
  591. package/dist/server/junit-xml.js.map +1 -0
  592. package/dist/server/routes.d.ts.map +1 -1
  593. package/dist/server/routes.js +6 -0
  594. package/dist/server/routes.js.map +1 -1
  595. package/dist/server/scenario-recorder.d.ts +56 -0
  596. package/dist/server/scenario-recorder.d.ts.map +1 -0
  597. package/dist/server/scenario-recorder.js +109 -0
  598. package/dist/server/scenario-recorder.js.map +1 -0
  599. package/dist/server/scripted-scenario-runner.d.ts +46 -0
  600. package/dist/server/scripted-scenario-runner.d.ts.map +1 -0
  601. package/dist/server/scripted-scenario-runner.js +190 -0
  602. package/dist/server/scripted-scenario-runner.js.map +1 -0
  603. package/dist/server/server-middlewares.d.ts +6 -2
  604. package/dist/server/server-middlewares.d.ts.map +1 -1
  605. package/dist/server/server-middlewares.js +8 -2
  606. package/dist/server/server-middlewares.js.map +1 -1
  607. package/dist/server/server-request-manager.d.ts +9 -1
  608. package/dist/server/server-request-manager.d.ts.map +1 -1
  609. package/dist/server/server-request-manager.js +49 -4
  610. package/dist/server/server-request-manager.js.map +1 -1
  611. package/dist/services/intelligent-router/service.d.ts +2 -0
  612. package/dist/services/intelligent-router/service.d.ts.map +1 -1
  613. package/dist/services/intelligent-router/service.js +4 -0
  614. package/dist/services/intelligent-router/service.js.map +1 -1
  615. package/dist/services/service-authority.d.ts +25 -0
  616. package/dist/services/service-authority.d.ts.map +1 -0
  617. package/dist/services/service-authority.js +143 -0
  618. package/dist/services/service-authority.js.map +1 -0
  619. package/dist/services/workspace-config/service.d.ts +2 -0
  620. package/dist/services/workspace-config/service.d.ts.map +1 -1
  621. package/dist/services/workspace-config/service.js +4 -0
  622. package/dist/services/workspace-config/service.js.map +1 -1
  623. package/dist/session/manager.d.ts +8 -2
  624. package/dist/session/manager.d.ts.map +1 -1
  625. package/dist/session/manager.js +19 -4
  626. package/dist/session/manager.js.map +1 -1
  627. package/dist/session/session-branch.d.ts.map +1 -1
  628. package/dist/session/session-branch.js +5 -1
  629. package/dist/session/session-branch.js.map +1 -1
  630. package/dist/session/session-catalog.d.ts +7 -2
  631. package/dist/session/session-catalog.d.ts.map +1 -1
  632. package/dist/session/session-catalog.js +13 -2
  633. package/dist/session/session-catalog.js.map +1 -1
  634. package/dist/session/session-context.d.ts +6 -2
  635. package/dist/session/session-context.d.ts.map +1 -1
  636. package/dist/session/session-context.js +44 -4
  637. package/dist/session/session-context.js.map +1 -1
  638. package/dist/session/session-graph-projection.d.ts +32 -0
  639. package/dist/session/session-graph-projection.d.ts.map +1 -0
  640. package/dist/session/session-graph-projection.js +133 -0
  641. package/dist/session/session-graph-projection.js.map +1 -0
  642. package/dist/session/types.d.ts +18 -0
  643. package/dist/session/types.d.ts.map +1 -1
  644. package/dist/session/types.js +8 -0
  645. package/dist/session/types.js.map +1 -1
  646. package/dist/session/wire-format.generated.d.ts +3 -0
  647. package/dist/session/wire-format.generated.d.ts.map +1 -1
  648. package/dist/session/wire-format.generated.js +20 -0
  649. package/dist/session/wire-format.generated.js.map +1 -1
  650. package/dist/skills/eval-harness.d.ts +38 -0
  651. package/dist/skills/eval-harness.d.ts.map +1 -0
  652. package/dist/skills/eval-harness.js +112 -0
  653. package/dist/skills/eval-harness.js.map +1 -0
  654. package/dist/skills/index.d.ts +5 -1
  655. package/dist/skills/index.d.ts.map +1 -1
  656. package/dist/skills/index.js +5 -1
  657. package/dist/skills/index.js.map +1 -1
  658. package/dist/skills/linter.d.ts +36 -0
  659. package/dist/skills/linter.d.ts.map +1 -0
  660. package/dist/skills/linter.js +398 -0
  661. package/dist/skills/linter.js.map +1 -0
  662. package/dist/skills/loader.d.ts +36 -6
  663. package/dist/skills/loader.d.ts.map +1 -1
  664. package/dist/skills/loader.js +169 -86
  665. package/dist/skills/loader.js.map +1 -1
  666. package/dist/skills/package-contract.d.ts +45 -0
  667. package/dist/skills/package-contract.d.ts.map +1 -0
  668. package/dist/skills/package-contract.js +153 -0
  669. package/dist/skills/package-contract.js.map +1 -0
  670. package/dist/skills/runtime-activation.d.ts +68 -0
  671. package/dist/skills/runtime-activation.d.ts.map +1 -0
  672. package/dist/skills/runtime-activation.js +228 -0
  673. package/dist/skills/runtime-activation.js.map +1 -0
  674. package/dist/skills/service-client.d.ts.map +1 -1
  675. package/dist/skills/service-client.js +3 -4
  676. package/dist/skills/service-client.js.map +1 -1
  677. package/dist/skills/tool.d.ts.map +1 -1
  678. package/dist/skills/tool.js +2 -0
  679. package/dist/skills/tool.js.map +1 -1
  680. package/dist/skills/types.d.ts +14 -0
  681. package/dist/skills/types.d.ts.map +1 -1
  682. package/dist/skills/types.js.map +1 -1
  683. package/dist/telemetry/agent-operating-plane-context.d.ts +24 -0
  684. package/dist/telemetry/agent-operating-plane-context.d.ts.map +1 -0
  685. package/dist/telemetry/agent-operating-plane-context.js +54 -0
  686. package/dist/telemetry/agent-operating-plane-context.js.map +1 -0
  687. package/dist/telemetry/beacon.d.ts +24 -0
  688. package/dist/telemetry/beacon.d.ts.map +1 -0
  689. package/dist/telemetry/beacon.js +115 -0
  690. package/dist/telemetry/beacon.js.map +1 -0
  691. package/dist/telemetry/cli-command-aggregator.d.ts +36 -0
  692. package/dist/telemetry/cli-command-aggregator.d.ts.map +1 -0
  693. package/dist/telemetry/cli-command-aggregator.js +251 -0
  694. package/dist/telemetry/cli-command-aggregator.js.map +1 -0
  695. package/dist/telemetry/cli-startup.d.ts +21 -0
  696. package/dist/telemetry/cli-startup.d.ts.map +1 -0
  697. package/dist/telemetry/cli-startup.js +83 -0
  698. package/dist/telemetry/cli-startup.js.map +1 -0
  699. package/dist/telemetry/disablement.d.ts +13 -0
  700. package/dist/telemetry/disablement.d.ts.map +1 -0
  701. package/dist/telemetry/disablement.js +19 -0
  702. package/dist/telemetry/disablement.js.map +1 -0
  703. package/dist/telemetry/index.d.ts +6 -2
  704. package/dist/telemetry/index.d.ts.map +1 -1
  705. package/dist/telemetry/index.js +6 -2
  706. package/dist/telemetry/index.js.map +1 -1
  707. package/dist/telemetry/maestro-event-bus.d.ts +52 -0
  708. package/dist/telemetry/maestro-event-bus.d.ts.map +1 -1
  709. package/dist/telemetry/maestro-event-bus.js +179 -3
  710. package/dist/telemetry/maestro-event-bus.js.map +1 -1
  711. package/dist/telemetry/maestro-event-catalog.d.ts +3 -1
  712. package/dist/telemetry/maestro-event-catalog.d.ts.map +1 -1
  713. package/dist/telemetry/maestro-event-catalog.js +2 -0
  714. package/dist/telemetry/maestro-event-catalog.js.map +1 -1
  715. package/dist/telemetry/maestro-platform-replay-fixture.d.ts.map +1 -1
  716. package/dist/telemetry/maestro-platform-replay-fixture.js +74 -9
  717. package/dist/telemetry/maestro-platform-replay-fixture.js.map +1 -1
  718. package/dist/telemetry/maestro-publisher-conformance-fixture.d.ts +1 -1
  719. package/dist/telemetry/maestro-publisher-conformance-fixture.d.ts.map +1 -1
  720. package/dist/telemetry/maestro-publisher-conformance-fixture.js +46 -11
  721. package/dist/telemetry/maestro-publisher-conformance-fixture.js.map +1 -1
  722. package/dist/telemetry/mcp-beacon.d.ts +20 -0
  723. package/dist/telemetry/mcp-beacon.d.ts.map +1 -0
  724. package/dist/telemetry/mcp-beacon.js +54 -0
  725. package/dist/telemetry/mcp-beacon.js.map +1 -0
  726. package/dist/telemetry/metadata-normalization.d.ts +7 -0
  727. package/dist/telemetry/metadata-normalization.d.ts.map +1 -0
  728. package/dist/telemetry/metadata-normalization.js +189 -0
  729. package/dist/telemetry/metadata-normalization.js.map +1 -0
  730. package/dist/telemetry/meter-service-client.d.ts.map +1 -1
  731. package/dist/telemetry/meter-service-client.js +5 -10
  732. package/dist/telemetry/meter-service-client.js.map +1 -1
  733. package/dist/telemetry/metrics.d.ts +123 -0
  734. package/dist/telemetry/metrics.d.ts.map +1 -0
  735. package/dist/telemetry/metrics.js +184 -0
  736. package/dist/telemetry/metrics.js.map +1 -0
  737. package/dist/telemetry/turn-tracker.d.ts +1 -0
  738. package/dist/telemetry/turn-tracker.d.ts.map +1 -1
  739. package/dist/telemetry/turn-tracker.js +22 -1
  740. package/dist/telemetry/turn-tracker.js.map +1 -1
  741. package/dist/telemetry/wide-events.d.ts +31 -1
  742. package/dist/telemetry/wide-events.d.ts.map +1 -1
  743. package/dist/telemetry/wide-events.js +229 -1
  744. package/dist/telemetry/wide-events.js.map +1 -1
  745. package/dist/telemetry.d.ts +39 -3
  746. package/dist/telemetry.d.ts.map +1 -1
  747. package/dist/telemetry.js +160 -3
  748. package/dist/telemetry.js.map +1 -1
  749. package/dist/testing/test-verification-hook.d.ts.map +1 -1
  750. package/dist/testing/test-verification-hook.js +34 -21
  751. package/dist/testing/test-verification-hook.js.map +1 -1
  752. package/dist/tools/apply-patch-parser.d.ts +26 -0
  753. package/dist/tools/apply-patch-parser.d.ts.map +1 -0
  754. package/dist/tools/apply-patch-parser.js +146 -0
  755. package/dist/tools/apply-patch-parser.js.map +1 -0
  756. package/dist/tools/apply-patch.d.ts +42 -0
  757. package/dist/tools/apply-patch.d.ts.map +1 -0
  758. package/dist/tools/apply-patch.js +648 -0
  759. package/dist/tools/apply-patch.js.map +1 -0
  760. package/dist/tools/ask-user.d.ts +1 -0
  761. package/dist/tools/ask-user.d.ts.map +1 -1
  762. package/dist/tools/background/tool-handler.d.ts +1 -0
  763. package/dist/tools/background/tool-handler.d.ts.map +1 -1
  764. package/dist/tools/bash.d.ts +1 -0
  765. package/dist/tools/bash.d.ts.map +1 -1
  766. package/dist/tools/codesearch.d.ts +1 -0
  767. package/dist/tools/codesearch.d.ts.map +1 -1
  768. package/dist/tools/conductor-client.d.ts +1 -0
  769. package/dist/tools/conductor-client.d.ts.map +1 -1
  770. package/dist/tools/conductor-client.js +63 -0
  771. package/dist/tools/conductor-client.js.map +1 -1
  772. package/dist/tools/diff.d.ts +1 -0
  773. package/dist/tools/diff.d.ts.map +1 -1
  774. package/dist/tools/edit.d.ts +1 -0
  775. package/dist/tools/edit.d.ts.map +1 -1
  776. package/dist/tools/extract-document.d.ts +1 -0
  777. package/dist/tools/extract-document.d.ts.map +1 -1
  778. package/dist/tools/find.d.ts +10 -0
  779. package/dist/tools/find.d.ts.map +1 -1
  780. package/dist/tools/find.js +236 -27
  781. package/dist/tools/find.js.map +1 -1
  782. package/dist/tools/gh.d.ts +3 -0
  783. package/dist/tools/gh.d.ts.map +1 -1
  784. package/dist/tools/index.d.ts +50 -0
  785. package/dist/tools/index.d.ts.map +1 -1
  786. package/dist/tools/index.js +4 -0
  787. package/dist/tools/index.js.map +1 -1
  788. package/dist/tools/list.d.ts +1 -0
  789. package/dist/tools/list.d.ts.map +1 -1
  790. package/dist/tools/notebook.d.ts +1 -0
  791. package/dist/tools/notebook.d.ts.map +1 -1
  792. package/dist/tools/oracle.d.ts +1 -0
  793. package/dist/tools/oracle.d.ts.map +1 -1
  794. package/dist/tools/oracle.js +17 -32
  795. package/dist/tools/oracle.js.map +1 -1
  796. package/dist/tools/parallel-execution.d.ts +13 -2
  797. package/dist/tools/parallel-execution.d.ts.map +1 -1
  798. package/dist/tools/parallel-execution.js +178 -7
  799. package/dist/tools/parallel-execution.js.map +1 -1
  800. package/dist/tools/parallel-ripgrep.d.ts +1 -0
  801. package/dist/tools/parallel-ripgrep.d.ts.map +1 -1
  802. package/dist/tools/pipeline.d.ts +4 -0
  803. package/dist/tools/pipeline.d.ts.map +1 -1
  804. package/dist/tools/read.d.ts +1 -0
  805. package/dist/tools/read.d.ts.map +1 -1
  806. package/dist/tools/search.d.ts +1 -0
  807. package/dist/tools/search.d.ts.map +1 -1
  808. package/dist/tools/status.d.ts +1 -0
  809. package/dist/tools/status.d.ts.map +1 -1
  810. package/dist/tools/todo.d.ts +1 -0
  811. package/dist/tools/todo.d.ts.map +1 -1
  812. package/dist/tools/tool-dsl.d.ts +5 -1
  813. package/dist/tools/tool-dsl.d.ts.map +1 -1
  814. package/dist/tools/tool-dsl.js +1 -0
  815. package/dist/tools/tool-dsl.js.map +1 -1
  816. package/dist/tools/tool-result-cache.d.ts.map +1 -1
  817. package/dist/tools/tool-result-cache.js +1 -0
  818. package/dist/tools/tool-result-cache.js.map +1 -1
  819. package/dist/tools/typebox-tool.d.ts.map +1 -1
  820. package/dist/tools/typebox-tool.js +3 -0
  821. package/dist/tools/typebox-tool.js.map +1 -1
  822. package/dist/tools/webfetch.d.ts +1 -0
  823. package/dist/tools/webfetch.d.ts.map +1 -1
  824. package/dist/tools/websearch.d.ts +1 -0
  825. package/dist/tools/websearch.d.ts.map +1 -1
  826. package/dist/tools/write.d.ts +1 -0
  827. package/dist/tools/write.d.ts.map +1 -1
  828. package/dist/utils/abort-error.d.ts +2 -0
  829. package/dist/utils/abort-error.d.ts.map +1 -0
  830. package/dist/utils/abort-error.js +7 -0
  831. package/dist/utils/abort-error.js.map +1 -0
  832. package/dist/utils/downstream.d.ts.map +1 -1
  833. package/dist/utils/downstream.js +4 -0
  834. package/dist/utils/downstream.js.map +1 -1
  835. package/dist/utils/logger.d.ts +3 -0
  836. package/dist/utils/logger.d.ts.map +1 -1
  837. package/dist/utils/logger.js +14 -3
  838. package/dist/utils/logger.js.map +1 -1
  839. package/dist/utils/path-containment.d.ts +2 -0
  840. package/dist/utils/path-containment.d.ts.map +1 -0
  841. package/dist/utils/path-containment.js +14 -0
  842. package/dist/utils/path-containment.js.map +1 -0
  843. package/dist/utils/prompt-safe-text.d.ts +7 -0
  844. package/dist/utils/prompt-safe-text.d.ts.map +1 -0
  845. package/dist/utils/prompt-safe-text.js +44 -0
  846. package/dist/utils/prompt-safe-text.js.map +1 -0
  847. package/dist/version.json +2 -2
  848. package/dist/web-server.d.ts.map +1 -1
  849. package/dist/web-server.js +32 -7
  850. package/dist/web-server.js.map +1 -1
  851. package/dist/workspace/root-resolver.d.ts +4 -1
  852. package/dist/workspace/root-resolver.d.ts.map +1 -1
  853. package/dist/workspace/root-resolver.js +16 -6
  854. package/dist/workspace/root-resolver.js.map +1 -1
  855. package/node_modules/@evalops/contracts/dist/advisor-effort.d.ts +8 -0
  856. package/node_modules/@evalops/contracts/dist/advisor-effort.d.ts.map +1 -0
  857. package/node_modules/@evalops/contracts/dist/advisor-effort.js +35 -0
  858. package/node_modules/@evalops/contracts/dist/advisor-effort.js.map +1 -0
  859. package/node_modules/@evalops/contracts/dist/delegation-prompt.d.ts +10 -0
  860. package/node_modules/@evalops/contracts/dist/delegation-prompt.d.ts.map +1 -0
  861. package/node_modules/@evalops/contracts/dist/delegation-prompt.js +48 -0
  862. package/node_modules/@evalops/contracts/dist/delegation-prompt.js.map +1 -0
  863. package/node_modules/@evalops/contracts/dist/guarded-files-settings.d.ts +20 -0
  864. package/node_modules/@evalops/contracts/dist/guarded-files-settings.d.ts.map +1 -0
  865. package/node_modules/@evalops/contracts/dist/guarded-files-settings.js +147 -0
  866. package/node_modules/@evalops/contracts/dist/guarded-files-settings.js.map +1 -0
  867. package/node_modules/@evalops/contracts/dist/headless-protocol-generated.d.ts +2 -0
  868. package/node_modules/@evalops/contracts/dist/headless-protocol-generated.d.ts.map +1 -1
  869. package/node_modules/@evalops/contracts/dist/headless-protocol-generated.js +1 -0
  870. package/node_modules/@evalops/contracts/dist/headless-protocol-generated.js.map +1 -1
  871. package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.d.ts +280 -5
  872. package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.d.ts.map +1 -1
  873. package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.js +36 -1
  874. package/node_modules/@evalops/contracts/dist/headless-protocol-schemas.generated.js.map +1 -1
  875. package/node_modules/@evalops/contracts/dist/index.d.ts +15 -1
  876. package/node_modules/@evalops/contracts/dist/index.d.ts.map +1 -1
  877. package/node_modules/@evalops/contracts/dist/index.js +6 -0
  878. package/node_modules/@evalops/contracts/dist/index.js.map +1 -1
  879. package/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts +593 -0
  880. package/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts.map +1 -0
  881. package/node_modules/@evalops/contracts/dist/maestro-app-server.js +218 -0
  882. package/node_modules/@evalops/contracts/dist/maestro-app-server.js.map +1 -0
  883. package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.d.ts +91 -0
  884. package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.d.ts.map +1 -1
  885. package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.js +92 -61
  886. package/node_modules/@evalops/contracts/dist/proto/maestro/v1/headless_pb.js.map +1 -1
  887. package/node_modules/@evalops/contracts/dist/runtime-app-server.d.ts +3 -0
  888. package/node_modules/@evalops/contracts/dist/runtime-app-server.d.ts.map +1 -1
  889. package/node_modules/@evalops/contracts/dist/runtime-constraints.d.ts +28 -0
  890. package/node_modules/@evalops/contracts/dist/runtime-constraints.d.ts.map +1 -0
  891. package/node_modules/@evalops/contracts/dist/runtime-constraints.js +71 -0
  892. package/node_modules/@evalops/contracts/dist/runtime-constraints.js.map +1 -0
  893. package/node_modules/@evalops/contracts/dist/runtime-server-request.d.ts +7 -0
  894. package/node_modules/@evalops/contracts/dist/runtime-server-request.d.ts.map +1 -1
  895. package/node_modules/@evalops/contracts/dist/runtime-server-request.js +2 -0
  896. package/node_modules/@evalops/contracts/dist/runtime-server-request.js.map +1 -1
  897. package/node_modules/@evalops/contracts/dist/scenario.d.ts +191 -0
  898. package/node_modules/@evalops/contracts/dist/scenario.d.ts.map +1 -0
  899. package/node_modules/@evalops/contracts/dist/scenario.js +4 -0
  900. package/node_modules/@evalops/contracts/dist/scenario.js.map +1 -0
  901. package/node_modules/@evalops/contracts/dist/schemas.d.ts +17 -3
  902. package/node_modules/@evalops/contracts/dist/schemas.d.ts.map +1 -1
  903. package/node_modules/@evalops/contracts/dist/schemas.js +16 -0
  904. package/node_modules/@evalops/contracts/dist/schemas.js.map +1 -1
  905. package/node_modules/@evalops/contracts/package.json +1 -1
  906. package/node_modules/@evalops/tui/package.json +1 -1
  907. package/package.json +41 -7
  908. package/skills/incident-triage/SKILL.md +40 -0
  909. package/skills/incident-triage/mcp.json +14 -0
  910. package/skills/incident-triage/reference/triage.md +20 -0
  911. package/skills/incident-triage/toolbox/incident-timeline +22 -0
  912. package/skills/incident-triage/toolbox/incident-timeline.cmd +16 -0
  913. package/skills/pr-review/SKILL.md +40 -0
  914. package/skills/pr-review/mcp.json +14 -0
  915. package/skills/pr-review/reference/rubric.md +20 -0
  916. package/skills/pr-review/toolbox/review-summary +20 -0
  917. package/skills/pr-review/toolbox/review-summary.cmd +14 -0
  918. package/skills/release-verification/SKILL.md +40 -0
  919. package/skills/release-verification/mcp.json +15 -0
  920. package/skills/release-verification/reference/checklist.md +21 -0
  921. package/skills/release-verification/toolbox/release-readiness +18 -0
  922. package/skills/release-verification/toolbox/release-readiness.cmd +12 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scenario-source.js","sourceRoot":"","sources":["../../src/agent/scenario-source.ts"],"names":[],"mappings":"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","sourcesContent":["import { execFile } from \"node:child_process\";\nimport { readFileSync } from \"node:fs\";\nimport { dirname, resolve } from \"node:path\";\n\nconst SCENARIO_SOURCE_MAX_BUFFER_BYTES = 64 * 1024 * 1024;\n\nexport interface ScenarioSourceExecFileOptions {\n\tencoding: \"utf8\";\n\tmaxBuffer: number;\n}\n\nexport type ScenarioSourceExecFile = (\n\tfile: string,\n\targs: string[],\n\toptions: ScenarioSourceExecFileOptions,\n) => Promise<{ stdout: string; stderr: string }>;\n\nexport interface ScenarioSourceReadOptions {\n\texecFile?: ScenarioSourceExecFile;\n\tfetch?: typeof fetch;\n}\n\nfunction isHttpScenarioSource(source: string): boolean {\n\treturn source.startsWith(\"http://\") || source.startsWith(\"https://\");\n}\n\nfunction isGcsScenarioSource(source: string): boolean {\n\treturn source.startsWith(\"gs://\");\n}\n\nexport function isRemoteScenarioSource(source: string): boolean {\n\treturn isHttpScenarioSource(source) || isGcsScenarioSource(source);\n}\n\nexport function scenarioSourceLabel(source: string): string {\n\tif (!isRemoteScenarioSource(source)) {\n\t\treturn source;\n\t}\n\ttry {\n\t\tconst url = new URL(source);\n\t\treturn `${url.protocol}//${url.host}${url.pathname}`;\n\t} catch {\n\t\treturn isGcsScenarioSource(source)\n\t\t\t? \"gs://scenario-fixture\"\n\t\t\t: \"remote-scenario-fixture\";\n\t}\n}\n\nexport function scenarioSourceBaseDir(source: string): string {\n\treturn isRemoteScenarioSource(source)\n\t\t? process.cwd()\n\t\t: dirname(resolve(source));\n}\n\nexport function readScenarioJsonSourceSync(source: string): unknown {\n\tif (isRemoteScenarioSource(source)) {\n\t\tthrow new Error(`Remote scenario source requires async loading: ${source}`);\n\t}\n\treturn JSON.parse(readFileSync(resolve(source), \"utf8\"));\n}\n\nfunction defaultExecFile(\n\tfile: string,\n\targs: string[],\n\toptions: ScenarioSourceExecFileOptions,\n): Promise<{ stdout: string; stderr: string }> {\n\treturn new Promise((resolvePromise, reject) => {\n\t\texecFile(file, args, options, (error, stdout, stderr) => {\n\t\t\tif (error) {\n\t\t\t\tObject.assign(error, { stdout, stderr });\n\t\t\t\treject(error);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tresolvePromise({ stdout, stderr });\n\t\t});\n\t});\n}\n\nfunction validateGcsScenarioSource(source: string): void {\n\tlet parsed: URL;\n\ttry {\n\t\tparsed = new URL(source);\n\t} catch (error) {\n\t\tthrow new Error(`Invalid GCS scenario source: ${source}`, {\n\t\t\tcause: error,\n\t\t});\n\t}\n\tif (\n\t\tparsed.protocol !== \"gs:\" ||\n\t\t!parsed.hostname ||\n\t\t!parsed.pathname ||\n\t\tparsed.pathname === \"/\"\n\t) {\n\t\tthrow new Error(\n\t\t\t`GCS scenario source must include a bucket and object path: ${source}`,\n\t\t);\n\t}\n}\n\nasync function readHttpScenarioSource(\n\tsource: string,\n\tfetchImpl: typeof fetch,\n): Promise<string> {\n\tconst label = scenarioSourceLabel(source);\n\tconst response = await fetchImpl(source, {\n\t\theaders: { Accept: \"application/json\" },\n\t});\n\tif (!response.ok) {\n\t\tconst status = [response.status, response.statusText]\n\t\t\t.filter(Boolean)\n\t\t\t.join(\" \");\n\t\tthrow new Error(`Failed to read scenario ${label}: HTTP ${status}`);\n\t}\n\treturn response.text();\n}\n\nasync function readGcsScenarioSource(\n\tsource: string,\n\texecFileImpl: ScenarioSourceExecFile,\n): Promise<string> {\n\tvalidateGcsScenarioSource(source);\n\ttry {\n\t\tconst { stdout } = await execFileImpl(\n\t\t\t\"gcloud\",\n\t\t\t[\"storage\", \"cat\", source],\n\t\t\t{ encoding: \"utf8\", maxBuffer: SCENARIO_SOURCE_MAX_BUFFER_BYTES },\n\t\t);\n\t\treturn stdout;\n\t} catch (error) {\n\t\tconst maybeError = error as NodeJS.ErrnoException & { stderr?: string };\n\t\tif (maybeError.code === \"ENOENT\") {\n\t\t\tthrow new Error(\n\t\t\t\t\"Reading gs:// scenario fixtures requires Google Cloud SDK (`gcloud`) on PATH, or use an HTTPS signed URL.\",\n\t\t\t\t{ cause: error },\n\t\t\t);\n\t\t}\n\t\tconst stderr = maybeError.stderr?.trim();\n\t\tthrow new Error(\n\t\t\t`Failed to read scenario ${source} with gcloud storage cat${stderr ? `: ${stderr}` : \"\"}`,\n\t\t\t{ cause: error },\n\t\t);\n\t}\n}\n\nexport async function readScenarioTextSource(\n\tsource: string,\n\toptions: ScenarioSourceReadOptions = {},\n): Promise<string> {\n\tif (isHttpScenarioSource(source)) {\n\t\tconst fetchImpl = options.fetch ?? globalThis.fetch;\n\t\tif (!fetchImpl) {\n\t\t\tthrow new Error(\n\t\t\t\t`Reading HTTP scenario fixtures requires fetch support: ${source}`,\n\t\t\t);\n\t\t}\n\t\treturn readHttpScenarioSource(source, fetchImpl);\n\t}\n\tif (isGcsScenarioSource(source)) {\n\t\treturn readGcsScenarioSource(source, options.execFile ?? defaultExecFile);\n\t}\n\treturn readFileSync(resolve(source), \"utf8\");\n}\n\nexport async function readScenarioJsonSource(\n\tsource: string,\n\toptions: ScenarioSourceReadOptions = {},\n): Promise<unknown> {\n\treturn JSON.parse(await readScenarioTextSource(source, options));\n}\n"]}
@@ -22,7 +22,7 @@ export declare const TOOL_CATEGORIES: {
22
22
  /** Read-only file system tools */
23
23
  readonly read: readonly ["read", "list", "find", "search", "parallel_ripgrep", "diff", "status"];
24
24
  /** File modification tools */
25
- readonly write: readonly ["edit", "write", "notebook_edit"];
25
+ readonly write: readonly ["apply_patch", "edit", "write", "notebook_edit"];
26
26
  /** Shell execution */
27
27
  readonly shell: readonly ["bash", "background_tasks"];
28
28
  /** Web and external tools */
@@ -28,7 +28,7 @@ export const TOOL_CATEGORIES = {
28
28
  "status",
29
29
  ],
30
30
  /** File modification tools */
31
- write: ["edit", "write", "notebook_edit"],
31
+ write: ["apply_patch", "edit", "write", "notebook_edit"],
32
32
  /** Shell execution */
33
33
  shell: ["bash", "background_tasks"],
34
34
  /** Web and external tools */
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-specs.js","sourceRoot":"","sources":["../../src/agent/subagent-specs.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Subagent Tool Specifications\n *\n * Defines different subagent types and what tools they have access to.\n * This enables fine-grained control over capabilities for different agent contexts:\n * - explorer: Read-only exploration of codebase\n * - planner: Can read and use todo, but no file modifications\n * - coder: Full coding capabilities\n * - reviewer: Read-only with web access for reviewing code\n * - researcher: Web search and fetch focused\n *\n * Inspired by Amp's subagentSpec/subagentType system.\n */\n\nimport { createLogger } from \"../utils/logger.js\";\n\nconst logger = createLogger(\"agent:subagent-specs\");\n\n/**\n * Available subagent types.\n */\nexport type SubagentType =\n\t| \"explorer\"\n\t| \"planner\"\n\t| \"coder\"\n\t| \"reviewer\"\n\t| \"researcher\"\n\t| \"minimal\"\n\t| \"custom\";\n\n/**\n * Tool categories for easier specification.\n */\nexport const TOOL_CATEGORIES = {\n\t/** Read-only file system tools */\n\tread: [\n\t\t\"read\",\n\t\t\"list\",\n\t\t\"find\",\n\t\t\"search\",\n\t\t\"parallel_ripgrep\",\n\t\t\"diff\",\n\t\t\"status\",\n\t],\n\t/** File modification tools */\n\twrite: [\"edit\", \"write\", \"notebook_edit\"],\n\t/** Shell execution */\n\tshell: [\"bash\", \"background_tasks\"],\n\t/** Web and external tools */\n\tweb: [\"websearch\", \"webfetch\", \"codesearch\"],\n\t/** Interactive tools */\n\tinteractive: [\"ask_user\", \"todo\"],\n\t/** GitHub tools */\n\tgithub: [\"gh_pr\", \"gh_issue\", \"gh_repo\"],\n\t/** Advanced tools */\n\tadvanced: [\"oracle\"],\n} as const;\n\n/**\n * Get all tool names from categories.\n */\nfunction toolsFromCategories(\n\t...categories: (keyof typeof TOOL_CATEGORIES)[]\n): string[] {\n\tconst tools: string[] = [];\n\tfor (const cat of categories) {\n\t\ttools.push(...TOOL_CATEGORIES[cat]);\n\t}\n\treturn [...new Set(tools)];\n}\n\n/**\n * Subagent specification defining capabilities.\n */\nexport interface SubagentSpec {\n\t/** Display name */\n\tdisplayName: string;\n\t/** Description of what this subagent is for */\n\tdescription: string;\n\t/** Tools that are allowed (whitelist) */\n\tallowedTools: string[];\n\t/** Tools that are explicitly denied (takes precedence) */\n\tdeniedTools?: string[];\n\t/** Whether MCP servers can provide additional tools */\n\tallowMcp: boolean;\n\t/** Whether toolbox tools are allowed */\n\tallowToolbox: boolean;\n\t/** Maximum number of tool calls per turn */\n\tmaxToolCallsPerTurn?: number;\n\t/** Whether dangerous operations require extra confirmation */\n\trequireConfirmation?: boolean;\n}\n\n/**\n * Default subagent specifications.\n */\nexport const SUBAGENT_SPECS: Record<SubagentType, SubagentSpec> = {\n\texplorer: {\n\t\tdisplayName: \"Explorer\",\n\t\tdescription: \"Read-only codebase exploration - can search and read files\",\n\t\tallowedTools: toolsFromCategories(\"read\", \"advanced\"),\n\t\tdeniedTools: [\"oracle\"], // Explorers shouldn't invoke oracle\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 20,\n\t\trequireConfirmation: false,\n\t},\n\tplanner: {\n\t\tdisplayName: \"Planner\",\n\t\tdescription: \"Planning mode - can read files and manage todos\",\n\t\tallowedTools: [...toolsFromCategories(\"read\", \"interactive\")],\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 15,\n\t\trequireConfirmation: false,\n\t},\n\tcoder: {\n\t\tdisplayName: \"Coder\",\n\t\tdescription: \"Full coding capabilities - can read, write, and execute\",\n\t\tallowedTools: toolsFromCategories(\n\t\t\t\"read\",\n\t\t\t\"write\",\n\t\t\t\"shell\",\n\t\t\t\"interactive\",\n\t\t\t\"github\",\n\t\t\t\"advanced\",\n\t\t),\n\t\tallowMcp: true,\n\t\tallowToolbox: true,\n\t\tmaxToolCallsPerTurn: 30,\n\t\trequireConfirmation: true,\n\t},\n\treviewer: {\n\t\tdisplayName: \"Reviewer\",\n\t\tdescription: \"Code review mode - can read files and search web\",\n\t\tallowedTools: [...toolsFromCategories(\"read\", \"web\"), \"ask_user\"],\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 15,\n\t\trequireConfirmation: false,\n\t},\n\tresearcher: {\n\t\tdisplayName: \"Researcher\",\n\t\tdescription: \"Research mode - focused on web search and analysis\",\n\t\tallowedTools: [...toolsFromCategories(\"web\", \"read\"), \"ask_user\", \"todo\"],\n\t\tallowMcp: true,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 20,\n\t\trequireConfirmation: false,\n\t},\n\tminimal: {\n\t\tdisplayName: \"Minimal\",\n\t\tdescription: \"Minimal capabilities - only basic read operations\",\n\t\tallowedTools: [\"read\", \"list\", \"search\"],\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 10,\n\t\trequireConfirmation: false,\n\t},\n\tcustom: {\n\t\tdisplayName: \"Custom\",\n\t\tdescription: \"User-defined tool specification\",\n\t\tallowedTools: toolsFromCategories(\n\t\t\t\"read\",\n\t\t\t\"write\",\n\t\t\t\"shell\",\n\t\t\t\"interactive\",\n\t\t\t\"advanced\",\n\t\t),\n\t\tallowMcp: true,\n\t\tallowToolbox: true,\n\t\trequireConfirmation: true,\n\t},\n};\n\n/**\n * Get specification for a subagent type.\n */\nexport function getSubagentSpec(type: SubagentType): SubagentSpec {\n\treturn SUBAGENT_SPECS[type];\n}\n\n/**\n * Check if a tool is allowed for a subagent type.\n */\nexport function isToolAllowed(\n\ttoolName: string,\n\ttype: SubagentType,\n\tcustomSpec?: Partial<SubagentSpec>,\n): boolean {\n\tconst spec = customSpec\n\t\t? { ...SUBAGENT_SPECS[type], ...customSpec }\n\t\t: SUBAGENT_SPECS[type];\n\n\t// Denied tools take precedence\n\tif (spec.deniedTools?.includes(toolName)) {\n\t\treturn false;\n\t}\n\n\t// Check if in allowed list\n\treturn spec.allowedTools.includes(toolName);\n}\n\n/**\n * Get the list of allowed tools for a subagent type.\n */\nexport function getAllowedTools(\n\ttype: SubagentType,\n\tcustomSpec?: Partial<SubagentSpec>,\n): string[] {\n\tconst spec = customSpec\n\t\t? { ...SUBAGENT_SPECS[type], ...customSpec }\n\t\t: SUBAGENT_SPECS[type];\n\n\tlet tools = [...spec.allowedTools];\n\n\t// Remove denied tools\n\tif (spec.deniedTools) {\n\t\ttools = tools.filter((t) => !spec.deniedTools?.includes(t));\n\t}\n\n\treturn tools;\n}\n\n/**\n * Filter a list of tools based on subagent spec.\n */\nexport function filterToolsForSubagent<T extends { name: string }>(\n\ttools: T[],\n\ttype: SubagentType,\n\tcustomSpec?: Partial<SubagentSpec>,\n): T[] {\n\tconst allowedTools = getAllowedTools(type, customSpec);\n\n\treturn tools.filter((tool) => {\n\t\tconst toolName = tool.name.toLowerCase().replace(/-/g, \"_\");\n\t\treturn allowedTools.includes(toolName);\n\t});\n}\n\n/**\n * Current subagent type for the session.\n */\nlet currentSubagentType: SubagentType = \"coder\";\n\n/**\n * Get the current subagent type.\n */\nexport function getCurrentSubagentType(): SubagentType {\n\treturn currentSubagentType;\n}\n\n/**\n * Set the current subagent type.\n */\nexport function setCurrentSubagentType(type: SubagentType): void {\n\tlogger.info(\"Setting subagent type\", { type });\n\tcurrentSubagentType = type;\n}\n\n/**\n * Parse subagent type from string.\n */\nexport function parseSubagentType(typeStr: string): SubagentType | null {\n\tconst normalized = typeStr.toLowerCase().trim();\n\tif (normalized in SUBAGENT_SPECS) {\n\t\treturn normalized as SubagentType;\n\t}\n\treturn null;\n}\n\n/**\n * Get subagent type from environment variable.\n */\nexport function getSubagentTypeFromEnv(): SubagentType {\n\tconst envType = process.env.MAESTRO_SUBAGENT_TYPE?.toLowerCase();\n\tif (envType && envType in SUBAGENT_SPECS) {\n\t\treturn envType as SubagentType;\n\t}\n\treturn \"coder\";\n}\n\n/**\n * Format subagent type for display.\n */\nexport function formatSubagentDisplay(type: SubagentType): string {\n\tconst spec = getSubagentSpec(type);\n\treturn `${spec.displayName} - ${spec.description}`;\n}\n\n/**\n * Get all available subagent types with their specs.\n */\nexport function getAllSubagentTypes(): Array<{\n\ttype: SubagentType;\n\tspec: SubagentSpec;\n}> {\n\treturn (Object.entries(SUBAGENT_SPECS) as [SubagentType, SubagentSpec][]).map(\n\t\t([type, spec]) => ({\n\t\t\ttype,\n\t\t\tspec,\n\t\t}),\n\t);\n}\n\n/**\n * Create a custom subagent spec by merging with a base type.\n */\nexport function createCustomSpec(\n\tbaseType: SubagentType,\n\toverrides: Partial<SubagentSpec>,\n): SubagentSpec {\n\treturn {\n\t\t...SUBAGENT_SPECS[baseType],\n\t\t...overrides,\n\t\tdisplayName: overrides.displayName ?? \"Custom\",\n\t\tdescription: overrides.description ?? \"Custom configuration\",\n\t};\n}\n\n/**\n * Validate a subagent spec.\n */\nexport function validateSpec(spec: Partial<SubagentSpec>): string[] {\n\tconst errors: string[] = [];\n\n\tif (spec.allowedTools && spec.allowedTools.length === 0) {\n\t\terrors.push(\"allowedTools cannot be empty\");\n\t}\n\n\tif (spec.maxToolCallsPerTurn !== undefined && spec.maxToolCallsPerTurn < 1) {\n\t\terrors.push(\"maxToolCallsPerTurn must be at least 1\");\n\t}\n\n\treturn errors;\n}\n"]}
1
+ {"version":3,"file":"subagent-specs.js","sourceRoot":"","sources":["../../src/agent/subagent-specs.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Subagent Tool Specifications\n *\n * Defines different subagent types and what tools they have access to.\n * This enables fine-grained control over capabilities for different agent contexts:\n * - explorer: Read-only exploration of codebase\n * - planner: Can read and use todo, but no file modifications\n * - coder: Full coding capabilities\n * - reviewer: Read-only with web access for reviewing code\n * - researcher: Web search and fetch focused\n *\n * Inspired by Amp's subagentSpec/subagentType system.\n */\n\nimport { createLogger } from \"../utils/logger.js\";\n\nconst logger = createLogger(\"agent:subagent-specs\");\n\n/**\n * Available subagent types.\n */\nexport type SubagentType =\n\t| \"explorer\"\n\t| \"planner\"\n\t| \"coder\"\n\t| \"reviewer\"\n\t| \"researcher\"\n\t| \"minimal\"\n\t| \"custom\";\n\n/**\n * Tool categories for easier specification.\n */\nexport const TOOL_CATEGORIES = {\n\t/** Read-only file system tools */\n\tread: [\n\t\t\"read\",\n\t\t\"list\",\n\t\t\"find\",\n\t\t\"search\",\n\t\t\"parallel_ripgrep\",\n\t\t\"diff\",\n\t\t\"status\",\n\t],\n\t/** File modification tools */\n\twrite: [\"apply_patch\", \"edit\", \"write\", \"notebook_edit\"],\n\t/** Shell execution */\n\tshell: [\"bash\", \"background_tasks\"],\n\t/** Web and external tools */\n\tweb: [\"websearch\", \"webfetch\", \"codesearch\"],\n\t/** Interactive tools */\n\tinteractive: [\"ask_user\", \"todo\"],\n\t/** GitHub tools */\n\tgithub: [\"gh_pr\", \"gh_issue\", \"gh_repo\"],\n\t/** Advanced tools */\n\tadvanced: [\"oracle\"],\n} as const;\n\n/**\n * Get all tool names from categories.\n */\nfunction toolsFromCategories(\n\t...categories: (keyof typeof TOOL_CATEGORIES)[]\n): string[] {\n\tconst tools: string[] = [];\n\tfor (const cat of categories) {\n\t\ttools.push(...TOOL_CATEGORIES[cat]);\n\t}\n\treturn [...new Set(tools)];\n}\n\n/**\n * Subagent specification defining capabilities.\n */\nexport interface SubagentSpec {\n\t/** Display name */\n\tdisplayName: string;\n\t/** Description of what this subagent is for */\n\tdescription: string;\n\t/** Tools that are allowed (whitelist) */\n\tallowedTools: string[];\n\t/** Tools that are explicitly denied (takes precedence) */\n\tdeniedTools?: string[];\n\t/** Whether MCP servers can provide additional tools */\n\tallowMcp: boolean;\n\t/** Whether toolbox tools are allowed */\n\tallowToolbox: boolean;\n\t/** Maximum number of tool calls per turn */\n\tmaxToolCallsPerTurn?: number;\n\t/** Whether dangerous operations require extra confirmation */\n\trequireConfirmation?: boolean;\n}\n\n/**\n * Default subagent specifications.\n */\nexport const SUBAGENT_SPECS: Record<SubagentType, SubagentSpec> = {\n\texplorer: {\n\t\tdisplayName: \"Explorer\",\n\t\tdescription: \"Read-only codebase exploration - can search and read files\",\n\t\tallowedTools: toolsFromCategories(\"read\", \"advanced\"),\n\t\tdeniedTools: [\"oracle\"], // Explorers shouldn't invoke oracle\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 20,\n\t\trequireConfirmation: false,\n\t},\n\tplanner: {\n\t\tdisplayName: \"Planner\",\n\t\tdescription: \"Planning mode - can read files and manage todos\",\n\t\tallowedTools: [...toolsFromCategories(\"read\", \"interactive\")],\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 15,\n\t\trequireConfirmation: false,\n\t},\n\tcoder: {\n\t\tdisplayName: \"Coder\",\n\t\tdescription: \"Full coding capabilities - can read, write, and execute\",\n\t\tallowedTools: toolsFromCategories(\n\t\t\t\"read\",\n\t\t\t\"write\",\n\t\t\t\"shell\",\n\t\t\t\"interactive\",\n\t\t\t\"github\",\n\t\t\t\"advanced\",\n\t\t),\n\t\tallowMcp: true,\n\t\tallowToolbox: true,\n\t\tmaxToolCallsPerTurn: 30,\n\t\trequireConfirmation: true,\n\t},\n\treviewer: {\n\t\tdisplayName: \"Reviewer\",\n\t\tdescription: \"Code review mode - can read files and search web\",\n\t\tallowedTools: [...toolsFromCategories(\"read\", \"web\"), \"ask_user\"],\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 15,\n\t\trequireConfirmation: false,\n\t},\n\tresearcher: {\n\t\tdisplayName: \"Researcher\",\n\t\tdescription: \"Research mode - focused on web search and analysis\",\n\t\tallowedTools: [...toolsFromCategories(\"web\", \"read\"), \"ask_user\", \"todo\"],\n\t\tallowMcp: true,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 20,\n\t\trequireConfirmation: false,\n\t},\n\tminimal: {\n\t\tdisplayName: \"Minimal\",\n\t\tdescription: \"Minimal capabilities - only basic read operations\",\n\t\tallowedTools: [\"read\", \"list\", \"search\"],\n\t\tallowMcp: false,\n\t\tallowToolbox: false,\n\t\tmaxToolCallsPerTurn: 10,\n\t\trequireConfirmation: false,\n\t},\n\tcustom: {\n\t\tdisplayName: \"Custom\",\n\t\tdescription: \"User-defined tool specification\",\n\t\tallowedTools: toolsFromCategories(\n\t\t\t\"read\",\n\t\t\t\"write\",\n\t\t\t\"shell\",\n\t\t\t\"interactive\",\n\t\t\t\"advanced\",\n\t\t),\n\t\tallowMcp: true,\n\t\tallowToolbox: true,\n\t\trequireConfirmation: true,\n\t},\n};\n\n/**\n * Get specification for a subagent type.\n */\nexport function getSubagentSpec(type: SubagentType): SubagentSpec {\n\treturn SUBAGENT_SPECS[type];\n}\n\n/**\n * Check if a tool is allowed for a subagent type.\n */\nexport function isToolAllowed(\n\ttoolName: string,\n\ttype: SubagentType,\n\tcustomSpec?: Partial<SubagentSpec>,\n): boolean {\n\tconst spec = customSpec\n\t\t? { ...SUBAGENT_SPECS[type], ...customSpec }\n\t\t: SUBAGENT_SPECS[type];\n\n\t// Denied tools take precedence\n\tif (spec.deniedTools?.includes(toolName)) {\n\t\treturn false;\n\t}\n\n\t// Check if in allowed list\n\treturn spec.allowedTools.includes(toolName);\n}\n\n/**\n * Get the list of allowed tools for a subagent type.\n */\nexport function getAllowedTools(\n\ttype: SubagentType,\n\tcustomSpec?: Partial<SubagentSpec>,\n): string[] {\n\tconst spec = customSpec\n\t\t? { ...SUBAGENT_SPECS[type], ...customSpec }\n\t\t: SUBAGENT_SPECS[type];\n\n\tlet tools = [...spec.allowedTools];\n\n\t// Remove denied tools\n\tif (spec.deniedTools) {\n\t\ttools = tools.filter((t) => !spec.deniedTools?.includes(t));\n\t}\n\n\treturn tools;\n}\n\n/**\n * Filter a list of tools based on subagent spec.\n */\nexport function filterToolsForSubagent<T extends { name: string }>(\n\ttools: T[],\n\ttype: SubagentType,\n\tcustomSpec?: Partial<SubagentSpec>,\n): T[] {\n\tconst allowedTools = getAllowedTools(type, customSpec);\n\n\treturn tools.filter((tool) => {\n\t\tconst toolName = tool.name.toLowerCase().replace(/-/g, \"_\");\n\t\treturn allowedTools.includes(toolName);\n\t});\n}\n\n/**\n * Current subagent type for the session.\n */\nlet currentSubagentType: SubagentType = \"coder\";\n\n/**\n * Get the current subagent type.\n */\nexport function getCurrentSubagentType(): SubagentType {\n\treturn currentSubagentType;\n}\n\n/**\n * Set the current subagent type.\n */\nexport function setCurrentSubagentType(type: SubagentType): void {\n\tlogger.info(\"Setting subagent type\", { type });\n\tcurrentSubagentType = type;\n}\n\n/**\n * Parse subagent type from string.\n */\nexport function parseSubagentType(typeStr: string): SubagentType | null {\n\tconst normalized = typeStr.toLowerCase().trim();\n\tif (normalized in SUBAGENT_SPECS) {\n\t\treturn normalized as SubagentType;\n\t}\n\treturn null;\n}\n\n/**\n * Get subagent type from environment variable.\n */\nexport function getSubagentTypeFromEnv(): SubagentType {\n\tconst envType = process.env.MAESTRO_SUBAGENT_TYPE?.toLowerCase();\n\tif (envType && envType in SUBAGENT_SPECS) {\n\t\treturn envType as SubagentType;\n\t}\n\treturn \"coder\";\n}\n\n/**\n * Format subagent type for display.\n */\nexport function formatSubagentDisplay(type: SubagentType): string {\n\tconst spec = getSubagentSpec(type);\n\treturn `${spec.displayName} - ${spec.description}`;\n}\n\n/**\n * Get all available subagent types with their specs.\n */\nexport function getAllSubagentTypes(): Array<{\n\ttype: SubagentType;\n\tspec: SubagentSpec;\n}> {\n\treturn (Object.entries(SUBAGENT_SPECS) as [SubagentType, SubagentSpec][]).map(\n\t\t([type, spec]) => ({\n\t\t\ttype,\n\t\t\tspec,\n\t\t}),\n\t);\n}\n\n/**\n * Create a custom subagent spec by merging with a base type.\n */\nexport function createCustomSpec(\n\tbaseType: SubagentType,\n\toverrides: Partial<SubagentSpec>,\n): SubagentSpec {\n\treturn {\n\t\t...SUBAGENT_SPECS[baseType],\n\t\t...overrides,\n\t\tdisplayName: overrides.displayName ?? \"Custom\",\n\t\tdescription: overrides.description ?? \"Custom configuration\",\n\t};\n}\n\n/**\n * Validate a subagent spec.\n */\nexport function validateSpec(spec: Partial<SubagentSpec>): string[] {\n\tconst errors: string[] = [];\n\n\tif (spec.allowedTools && spec.allowedTools.length === 0) {\n\t\terrors.push(\"allowedTools cannot be empty\");\n\t}\n\n\tif (spec.maxToolCallsPerTurn !== undefined && spec.maxToolCallsPerTurn < 1) {\n\t\terrors.push(\"maxToolCallsPerTurn must be at least 1\");\n\t}\n\n\treturn errors;\n}\n"]}
@@ -12,6 +12,8 @@ import type { SwarmConfig, SwarmEventHandler, SwarmState } from "./types.js";
12
12
  export declare class SwarmExecutor {
13
13
  private state;
14
14
  private processes;
15
+ private remoteA2ATasks;
16
+ private a2aRouteCursor;
15
17
  private eventHandlers;
16
18
  private abortController;
17
19
  constructor(config: SwarmConfig);
@@ -31,6 +33,7 @@ export declare class SwarmExecutor {
31
33
  * Cancel the swarm execution.
32
34
  */
33
35
  cancel(): void;
36
+ private cancelRemoteA2ATask;
34
37
  /**
35
38
  * Execute the swarm - runs all tasks with available teammates.
36
39
  */
@@ -43,11 +46,33 @@ export declare class SwarmExecutor {
43
46
  * Get the next task that can be executed (dependencies satisfied).
44
47
  */
45
48
  private getNextTask;
49
+ private skipTasksBlockedByFailedDependencies;
46
50
  /**
47
51
  * Spawn a subprocess agent for a teammate.
48
52
  */
49
53
  private buildTeammateEnv;
54
+ private resolveTaskDispatch;
55
+ private recordTaskDispatch;
56
+ private resolveParentMode;
57
+ private resolveParentModelProvider;
58
+ private resolveA2AConfig;
59
+ private resolveA2ATeammateRoute;
60
+ private resolvePlatformDiscoveredA2ATeammateRoute;
61
+ private a2aConfigForPlatformCandidate;
62
+ private selectA2APeerName;
63
+ private resolveA2ASkillId;
64
+ private resolveA2ATaskClass;
65
+ private teammateIndex;
66
+ private nextA2ARouteIndex;
67
+ private defaultA2ADiscoveryLimit;
50
68
  private spawnTeammate;
69
+ private spawnA2ATeammate;
70
+ private buildA2ASwarmMessageMetadata;
71
+ private waitForA2ASwarmTask;
72
+ private completeA2ATeammate;
73
+ private failA2ATeammate;
74
+ private recordA2ASwarmTaskStart;
75
+ private updateA2ASwarmTaskLedger;
51
76
  /**
52
77
  * Wait for any active task to complete.
53
78
  */
@@ -1 +1 @@
1
- {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/agent/swarm/executor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH,OAAO,KAAK,EACX,WAAW,EAEX,iBAAiB,EACjB,UAAU,EAKV,MAAM,YAAY,CAAC;AAoEpB;;GAEG;AACH,qBAAa,aAAa;IACzB,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,aAAa,CAAqC;IAC1D,OAAO,CAAC,eAAe,CAAkB;gBAE7B,MAAM,EAAE,WAAW;IAwC/B;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAK/C;;OAEG;IACH,OAAO,CAAC,IAAI;IAaZ;;OAEG;IACH,QAAQ,IAAI,UAAU;IAItB;;OAEG;IACH,MAAM,IAAI,IAAI;IA+Bd;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC;IAoEpC;;OAEG;YACW,WAAW;IAyCzB;;OAEG;IACH,OAAO,CAAC,WAAW;IAgBnB;;OAEG;YACW,gBAAgB;YAmDhB,aAAa;IAqO3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAe5B;AAED;;GAEG;AACH,wBAAsB,YAAY,CACjC,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,UAAU,CAAC,CAMrB"}
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/agent/swarm/executor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAkDH,OAAO,KAAK,EAEX,WAAW,EAEX,iBAAiB,EACjB,UAAU,EAKV,MAAM,YAAY,CAAC;AA4NpB;;GAEG;AACH,qBAAa,aAAa;IACzB,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,SAAS,CAAwC;IACzD,OAAO,CAAC,cAAc,CAAgD;IACtE,OAAO,CAAC,cAAc,CAAK;IAC3B,OAAO,CAAC,aAAa,CAAqC;IAC1D,OAAO,CAAC,eAAe,CAAkB;gBAE7B,MAAM,EAAE,WAAW;IAwC/B;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAK/C;;OAEG;IACH,OAAO,CAAC,IAAI;IAmBZ;;OAEG;IACH,QAAQ,IAAI,UAAU;IAItB;;OAEG;IACH,MAAM,IAAI,IAAI;YAoCA,mBAAmB;IAuBjC;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC;IAsEpC;;OAEG;YACW,WAAW;IAyCzB;;OAEG;IACH,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,oCAAoC;IA6B5C;;OAEG;YACW,gBAAgB;IA8D9B,OAAO,CAAC,mBAAmB;IA2C3B,OAAO,CAAC,kBAAkB;IA0C1B,OAAO,CAAC,iBAAiB;IAQzB,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,gBAAgB;YAsDV,uBAAuB;YA6BvB,yCAAyC;YA8EzC,6BAA6B;IA2B3C,OAAO,CAAC,iBAAiB;IAmBzB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,aAAa;IAOrB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,wBAAwB;YAQlB,aAAa;YAqSb,gBAAgB;IAwF9B,OAAO,CAAC,4BAA4B;YA+CtB,mBAAmB;IA+BjC,OAAO,CAAC,mBAAmB;IA8D3B,OAAO,CAAC,eAAe;YAkDT,uBAAuB;YAsCvB,wBAAwB;IAoBtC;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAe5B;AAwCD;;GAEG;AACH,wBAAsB,YAAY,CACjC,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,UAAU,CAAC,CAMrB"}