@evalops/maestro 0.10.50 → 0.10.53

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 (1825) hide show
  1. package/README.md +1 -3
  2. package/dist/agent/agent-outcome.d.ts +54 -0
  3. package/dist/agent/agent-outcome.d.ts.map +1 -0
  4. package/dist/agent/agent-outcome.js +142 -0
  5. package/dist/agent/agent-outcome.js.map +1 -0
  6. package/dist/agent/agent-resume.d.ts.map +1 -1
  7. package/dist/agent/agent-resume.js +3 -3
  8. package/dist/agent/agent-resume.js.map +1 -1
  9. package/dist/agent/agent-run-summary.d.ts +37 -0
  10. package/dist/agent/agent-run-summary.d.ts.map +1 -0
  11. package/dist/agent/agent-run-summary.js +15 -0
  12. package/dist/agent/agent-run-summary.js.map +1 -0
  13. package/dist/agent/agent-work-board.d.ts +82 -0
  14. package/dist/agent/agent-work-board.d.ts.map +1 -0
  15. package/dist/agent/agent-work-board.js +312 -0
  16. package/dist/agent/agent-work-board.js.map +1 -0
  17. package/dist/agent/agent.d.ts.map +1 -1
  18. package/dist/agent/agent.js.map +1 -1
  19. package/dist/agent/auto-compaction.d.ts +7 -2
  20. package/dist/agent/auto-compaction.d.ts.map +1 -1
  21. package/dist/agent/auto-compaction.js +23 -10
  22. package/dist/agent/auto-compaction.js.map +1 -1
  23. package/dist/agent/compaction.d.ts.map +1 -1
  24. package/dist/agent/compaction.js +1 -1
  25. package/dist/agent/compaction.js.map +1 -1
  26. package/dist/agent/context-handoff.d.ts.map +1 -1
  27. package/dist/agent/context-handoff.js +2 -1
  28. package/dist/agent/context-handoff.js.map +1 -1
  29. package/dist/agent/index.d.ts +8 -1
  30. package/dist/agent/index.d.ts.map +1 -1
  31. package/dist/agent/index.js +8 -1
  32. package/dist/agent/index.js.map +1 -1
  33. package/dist/agent/mission-artifacts.d.ts +62 -0
  34. package/dist/agent/mission-artifacts.d.ts.map +1 -0
  35. package/dist/agent/mission-artifacts.js +438 -0
  36. package/dist/agent/mission-artifacts.js.map +1 -0
  37. package/dist/agent/mission-manifest.d.ts +139 -3
  38. package/dist/agent/mission-manifest.d.ts.map +1 -1
  39. package/dist/agent/mission-manifest.js +549 -3
  40. package/dist/agent/mission-manifest.js.map +1 -1
  41. package/dist/agent/mission-store.d.ts +80 -0
  42. package/dist/agent/mission-store.d.ts.map +1 -0
  43. package/dist/agent/mission-store.js +603 -0
  44. package/dist/agent/mission-store.js.map +1 -0
  45. package/dist/agent/modes.d.ts +3 -3
  46. package/dist/agent/modes.d.ts.map +1 -1
  47. package/dist/agent/modes.js +66 -3
  48. package/dist/agent/modes.js.map +1 -1
  49. package/dist/agent/oracle-consultation-policy.d.ts +22 -0
  50. package/dist/agent/oracle-consultation-policy.d.ts.map +1 -0
  51. package/dist/agent/oracle-consultation-policy.js +72 -0
  52. package/dist/agent/oracle-consultation-policy.js.map +1 -0
  53. package/dist/agent/oracle-policy-experiment.d.ts +27 -0
  54. package/dist/agent/oracle-policy-experiment.d.ts.map +1 -0
  55. package/dist/agent/oracle-policy-experiment.js +59 -0
  56. package/dist/agent/oracle-policy-experiment.js.map +1 -0
  57. package/dist/agent/oracle-policy-rollout.d.ts +42 -0
  58. package/dist/agent/oracle-policy-rollout.d.ts.map +1 -0
  59. package/dist/agent/oracle-policy-rollout.js +80 -0
  60. package/dist/agent/oracle-policy-rollout.js.map +1 -0
  61. package/dist/agent/plugin-agent-api.d.ts +13 -0
  62. package/dist/agent/plugin-agent-api.d.ts.map +1 -0
  63. package/dist/agent/plugin-agent-api.js +11 -0
  64. package/dist/agent/plugin-agent-api.js.map +1 -0
  65. package/dist/agent/plugin-agent-loader.d.ts +17 -0
  66. package/dist/agent/plugin-agent-loader.d.ts.map +1 -0
  67. package/dist/agent/plugin-agent-loader.js +81 -0
  68. package/dist/agent/plugin-agent-loader.js.map +1 -0
  69. package/dist/agent/plugin-agent-registry.d.ts +62 -0
  70. package/dist/agent/plugin-agent-registry.d.ts.map +1 -0
  71. package/dist/agent/plugin-agent-registry.js +109 -0
  72. package/dist/agent/plugin-agent-registry.js.map +1 -0
  73. package/dist/agent/profile-loader.d.ts +7 -0
  74. package/dist/agent/profile-loader.d.ts.map +1 -0
  75. package/dist/agent/profile-loader.js +115 -0
  76. package/dist/agent/profile-loader.js.map +1 -0
  77. package/dist/agent/profiles.d.ts +30 -0
  78. package/dist/agent/profiles.d.ts.map +1 -0
  79. package/dist/agent/profiles.js +146 -0
  80. package/dist/agent/profiles.js.map +1 -0
  81. package/dist/agent/prompt-cache.d.ts +0 -4
  82. package/dist/agent/prompt-cache.d.ts.map +1 -1
  83. package/dist/agent/prompt-cache.js +1 -7
  84. package/dist/agent/prompt-cache.js.map +1 -1
  85. package/dist/agent/providers/codex-app-server.d.ts.map +1 -1
  86. package/dist/agent/providers/codex-app-server.js +1 -3
  87. package/dist/agent/providers/codex-app-server.js.map +1 -1
  88. package/dist/agent/providers/google-gemini-cli.js +204 -107
  89. package/dist/agent/providers/google.js +101 -41
  90. package/dist/agent/providers/scripted.d.ts.map +1 -1
  91. package/dist/agent/providers/scripted.js +1 -3
  92. package/dist/agent/providers/scripted.js.map +1 -1
  93. package/dist/agent/providers/validation.d.ts.map +1 -1
  94. package/dist/agent/providers/validation.js +1 -3
  95. package/dist/agent/providers/validation.js.map +1 -1
  96. package/dist/agent/providers/vertex.js +204 -107
  97. package/dist/agent/routing-receipt.d.ts +34 -0
  98. package/dist/agent/routing-receipt.d.ts.map +1 -0
  99. package/dist/agent/routing-receipt.js +55 -0
  100. package/dist/agent/routing-receipt.js.map +1 -0
  101. package/dist/agent/skill-artifact-metadata.d.ts +14 -0
  102. package/dist/agent/skill-artifact-metadata.d.ts.map +1 -0
  103. package/dist/agent/skill-artifact-metadata.js +49 -0
  104. package/dist/agent/skill-artifact-metadata.js.map +1 -0
  105. package/dist/agent/snapshot-store.d.ts +32 -0
  106. package/dist/agent/snapshot-store.d.ts.map +1 -0
  107. package/dist/agent/snapshot-store.js +195 -0
  108. package/dist/agent/snapshot-store.js.map +1 -0
  109. package/dist/agent/specialist-profiles.d.ts +36 -0
  110. package/dist/agent/specialist-profiles.d.ts.map +1 -0
  111. package/dist/agent/specialist-profiles.js +159 -0
  112. package/dist/agent/specialist-profiles.js.map +1 -0
  113. package/dist/agent/subagent-specs.d.ts +5 -2
  114. package/dist/agent/subagent-specs.d.ts.map +1 -1
  115. package/dist/agent/subagent-specs.js +83 -10
  116. package/dist/agent/subagent-specs.js.map +1 -1
  117. package/dist/agent/swarm/coverage-gate.d.ts +37 -0
  118. package/dist/agent/swarm/coverage-gate.d.ts.map +1 -0
  119. package/dist/agent/swarm/coverage-gate.js +48 -0
  120. package/dist/agent/swarm/coverage-gate.js.map +1 -0
  121. package/dist/agent/swarm/executor.d.ts +1 -0
  122. package/dist/agent/swarm/executor.d.ts.map +1 -1
  123. package/dist/agent/swarm/executor.js +151 -15
  124. package/dist/agent/swarm/executor.js.map +1 -1
  125. package/dist/agent/swarm/orchestrator-prompt.d.ts +25 -0
  126. package/dist/agent/swarm/orchestrator-prompt.d.ts.map +1 -0
  127. package/dist/agent/swarm/orchestrator-prompt.js +48 -0
  128. package/dist/agent/swarm/orchestrator-prompt.js.map +1 -0
  129. package/dist/agent/swarm/plan-parser.d.ts.map +1 -1
  130. package/dist/agent/swarm/plan-parser.js +27 -2
  131. package/dist/agent/swarm/plan-parser.js.map +1 -1
  132. package/dist/agent/swarm/types.d.ts +17 -0
  133. package/dist/agent/swarm/types.d.ts.map +1 -1
  134. package/dist/agent/swarm/types.js.map +1 -1
  135. package/dist/agent/swarm/validation-directive.d.ts +21 -0
  136. package/dist/agent/swarm/validation-directive.d.ts.map +1 -0
  137. package/dist/agent/swarm/validation-directive.js +25 -0
  138. package/dist/agent/swarm/validation-directive.js.map +1 -0
  139. package/dist/agent/token-counter.d.ts +40 -0
  140. package/dist/agent/token-counter.d.ts.map +1 -0
  141. package/dist/agent/token-counter.js +74 -0
  142. package/dist/agent/token-counter.js.map +1 -0
  143. package/dist/agent/transport/events.d.ts +1 -1
  144. package/dist/agent/transport/events.d.ts.map +1 -1
  145. package/dist/agent/transport/events.js +1 -1
  146. package/dist/agent/transport/events.js.map +1 -1
  147. package/dist/agent/transport/tool-execution-bridge.d.ts.map +1 -1
  148. package/dist/agent/transport/tool-execution-bridge.js +4 -1
  149. package/dist/agent/transport/tool-execution-bridge.js.map +1 -1
  150. package/dist/agent/types.d.ts +4 -2
  151. package/dist/agent/types.d.ts.map +1 -1
  152. package/dist/agent/types.js.map +1 -1
  153. package/dist/api/enterprise-routes.d.ts.map +1 -1
  154. package/dist/api/enterprise-routes.js +87 -10
  155. package/dist/api/enterprise-routes.js.map +1 -1
  156. package/dist/api/org-settings-merge.d.ts +12 -0
  157. package/dist/api/org-settings-merge.d.ts.map +1 -0
  158. package/dist/api/org-settings-merge.js +38 -0
  159. package/dist/api/org-settings-merge.js.map +1 -0
  160. package/dist/api/user-settings-merge.d.ts +16 -0
  161. package/dist/api/user-settings-merge.d.ts.map +1 -0
  162. package/dist/api/user-settings-merge.js +37 -0
  163. package/dist/api/user-settings-merge.js.map +1 -0
  164. package/dist/app-server/daemon-lifecycle-api.d.ts.map +1 -1
  165. package/dist/app-server/daemon-lifecycle-api.js +1 -3
  166. package/dist/app-server/daemon-lifecycle-api.js.map +1 -1
  167. package/dist/app-server/external-agent-import-api.d.ts.map +1 -1
  168. package/dist/app-server/external-agent-import-api.js +1 -3
  169. package/dist/app-server/external-agent-import-api.js.map +1 -1
  170. package/dist/app-server/network-governance-api.d.ts.map +1 -1
  171. package/dist/app-server/network-governance-api.js +1 -3
  172. package/dist/app-server/network-governance-api.js.map +1 -1
  173. package/dist/app-server/plugin-bundle-api.d.ts.map +1 -1
  174. package/dist/app-server/plugin-bundle-api.js +2 -3
  175. package/dist/app-server/plugin-bundle-api.js.map +1 -1
  176. package/dist/app-server/policy-control-api.d.ts.map +1 -1
  177. package/dist/app-server/policy-control-api.js +1 -3
  178. package/dist/app-server/policy-control-api.js.map +1 -1
  179. package/dist/app-server/protocol-modes-api.d.ts.map +1 -1
  180. package/dist/app-server/protocol-modes-api.js +1 -3
  181. package/dist/app-server/protocol-modes-api.js.map +1 -1
  182. package/dist/app-server/session-api.d.ts.map +1 -1
  183. package/dist/app-server/session-api.js +15 -2
  184. package/dist/app-server/session-api.js.map +1 -1
  185. package/dist/audit/logger.d.ts +5 -5
  186. package/dist/cli/args.d.ts +4 -0
  187. package/dist/cli/args.d.ts.map +1 -1
  188. package/dist/cli/args.js +33 -1
  189. package/dist/cli/args.js.map +1 -1
  190. package/dist/cli/commands/a2a.d.ts.map +1 -1
  191. package/dist/cli/commands/a2a.js +1 -3
  192. package/dist/cli/commands/a2a.js.map +1 -1
  193. package/dist/cli/commands/mission.d.ts +4 -0
  194. package/dist/cli/commands/mission.d.ts.map +1 -0
  195. package/dist/cli/commands/mission.js +196 -0
  196. package/dist/cli/commands/mission.js.map +1 -0
  197. package/dist/cli/commands/value.d.ts +10 -0
  198. package/dist/cli/commands/value.d.ts.map +1 -0
  199. package/dist/cli/commands/value.js +33 -0
  200. package/dist/cli/commands/value.js.map +1 -0
  201. package/dist/cli/direct-runtime-command.d.ts +1 -0
  202. package/dist/cli/direct-runtime-command.d.ts.map +1 -1
  203. package/dist/cli/direct-runtime-command.js +25 -3
  204. package/dist/cli/direct-runtime-command.js.map +1 -1
  205. package/dist/cli/headless-protocol.d.ts.map +1 -1
  206. package/dist/cli/headless-protocol.js +1 -3
  207. package/dist/cli/headless-protocol.js.map +1 -1
  208. package/dist/cli/headless.d.ts +3 -19
  209. package/dist/cli/headless.d.ts.map +1 -1
  210. package/dist/cli/headless.js +8 -619
  211. package/dist/cli/headless.js.map +1 -1
  212. package/dist/cli/help.d.ts.map +1 -1
  213. package/dist/cli/help.js +13 -0
  214. package/dist/cli/help.js.map +1 -1
  215. package/dist/cli/native-tui-launcher.d.ts +126 -0
  216. package/dist/cli/native-tui-launcher.d.ts.map +1 -0
  217. package/dist/cli/native-tui-launcher.js +425 -0
  218. package/dist/cli/native-tui-launcher.js.map +1 -0
  219. package/dist/cli/rpc-mode.d.ts +3 -27
  220. package/dist/cli/rpc-mode.d.ts.map +1 -1
  221. package/dist/cli/rpc-mode.js +8 -177
  222. package/dist/cli/rpc-mode.js.map +1 -1
  223. package/dist/cli/session.d.ts +11 -19
  224. package/dist/cli/session.d.ts.map +1 -1
  225. package/dist/cli/session.js +6 -64
  226. package/dist/cli/session.js.map +1 -1
  227. package/dist/cli/system-prompt.d.ts.map +1 -1
  228. package/dist/cli/system-prompt.js +38 -7
  229. package/dist/cli/system-prompt.js.map +1 -1
  230. package/dist/cli-command-runtime.d.ts.map +1 -1
  231. package/dist/cli-command-runtime.js +26 -24
  232. package/dist/cli-command-runtime.js.map +1 -1
  233. package/dist/cli-runtime.js +41729 -121859
  234. package/dist/codex/app-server-client.d.ts.map +1 -1
  235. package/dist/codex/app-server-client.js +1 -3
  236. package/dist/codex/app-server-client.js.map +1 -1
  237. package/dist/codex/compatibility.d.ts.map +1 -1
  238. package/dist/codex/compatibility.js +1 -3
  239. package/dist/codex/compatibility.js.map +1 -1
  240. package/dist/codex/subagent-dispatch-table.d.ts +8 -0
  241. package/dist/codex/subagent-dispatch-table.d.ts.map +1 -1
  242. package/dist/codex/subagent-dispatch-table.js +23 -0
  243. package/dist/codex/subagent-dispatch-table.js.map +1 -1
  244. package/dist/config/env-vars.d.ts +12 -0
  245. package/dist/config/env-vars.d.ts.map +1 -1
  246. package/dist/config/env-vars.js +12 -0
  247. package/dist/config/env-vars.js.map +1 -1
  248. package/dist/config/ui-state.d.ts +32 -0
  249. package/dist/config/ui-state.d.ts.map +1 -0
  250. package/dist/config/ui-state.js +88 -0
  251. package/dist/config/ui-state.js.map +1 -0
  252. package/dist/context/manifest.d.ts.map +1 -1
  253. package/dist/context/manifest.js +1 -3
  254. package/dist/context/manifest.js.map +1 -1
  255. package/dist/context/repo-map.d.ts.map +1 -1
  256. package/dist/context/repo-map.js +1 -7
  257. package/dist/context/repo-map.js.map +1 -1
  258. package/dist/context/token-optimizer.d.ts.map +1 -1
  259. package/dist/context/token-optimizer.js +1 -8
  260. package/dist/context/token-optimizer.js.map +1 -1
  261. package/dist/conversation/render-model.d.ts +0 -36
  262. package/dist/conversation/render-model.d.ts.map +1 -1
  263. package/dist/conversation/render-model.js +1 -3
  264. package/dist/conversation/render-model.js.map +1 -1
  265. package/dist/customer-value/ambient-learning.d.ts +75 -0
  266. package/dist/customer-value/ambient-learning.d.ts.map +1 -0
  267. package/dist/customer-value/ambient-learning.js +472 -0
  268. package/dist/customer-value/ambient-learning.js.map +1 -0
  269. package/dist/customer-value/internal-helpers.d.ts +13 -0
  270. package/dist/customer-value/internal-helpers.d.ts.map +1 -0
  271. package/dist/customer-value/internal-helpers.js +70 -0
  272. package/dist/customer-value/internal-helpers.js.map +1 -0
  273. package/dist/customer-value/report.d.ts +282 -0
  274. package/dist/customer-value/report.d.ts.map +1 -0
  275. package/dist/customer-value/report.js +2085 -0
  276. package/dist/customer-value/report.js.map +1 -0
  277. package/dist/db/schema.d.ts +7 -3
  278. package/dist/db/schema.d.ts.map +1 -1
  279. package/dist/db/schema.js.map +1 -1
  280. package/dist/evalops/agent-bootstrap.d.ts.map +1 -1
  281. package/dist/evalops/agent-bootstrap.js +1 -3
  282. package/dist/evalops/agent-bootstrap.js.map +1 -1
  283. package/dist/evalops/agent-mcp-metadata.d.ts.map +1 -1
  284. package/dist/evalops/agent-mcp-metadata.js +1 -3
  285. package/dist/evalops/agent-mcp-metadata.js.map +1 -1
  286. package/dist/hooks/notification-hooks.d.ts +1 -1
  287. package/dist/hooks/notification-hooks.d.ts.map +1 -1
  288. package/dist/hooks/notification-hooks.js.map +1 -1
  289. package/dist/hooks/tui-surface.d.ts +35 -0
  290. package/dist/hooks/tui-surface.d.ts.map +1 -0
  291. package/dist/hooks/tui-surface.js +11 -0
  292. package/dist/hooks/tui-surface.js.map +1 -0
  293. package/dist/hooks/types.d.ts +2 -1
  294. package/dist/hooks/types.d.ts.map +1 -1
  295. package/dist/hooks/types.js.map +1 -1
  296. package/dist/hooks/typescript-loader.d.ts.map +1 -1
  297. package/dist/hooks/typescript-loader.js.map +1 -1
  298. package/dist/hooks/ui-context.d.ts.map +1 -1
  299. package/dist/hooks/ui-context.js.map +1 -1
  300. package/dist/index.d.ts +1 -0
  301. package/dist/index.d.ts.map +1 -1
  302. package/dist/index.js +1 -0
  303. package/dist/index.js.map +1 -1
  304. package/dist/installers/maestro-review-workflow.d.ts +38 -0
  305. package/dist/installers/maestro-review-workflow.d.ts.map +1 -0
  306. package/dist/installers/maestro-review-workflow.js +163 -0
  307. package/dist/installers/maestro-review-workflow.js.map +1 -0
  308. package/dist/load-env.d.ts.map +1 -1
  309. package/dist/load-env.js +2 -1
  310. package/dist/load-env.js.map +1 -1
  311. package/dist/main.d.ts.map +1 -1
  312. package/dist/main.js +201 -840
  313. package/dist/main.js.map +1 -1
  314. package/dist/mcp/config.d.ts.map +1 -1
  315. package/dist/mcp/config.js +1 -3
  316. package/dist/mcp/config.js.map +1 -1
  317. package/dist/mcp/elicitation.d.ts.map +1 -1
  318. package/dist/mcp/elicitation.js +1 -3
  319. package/dist/mcp/elicitation.js.map +1 -1
  320. package/dist/mcp/official-registry.d.ts.map +1 -1
  321. package/dist/mcp/official-registry.js +1 -3
  322. package/dist/mcp/official-registry.js.map +1 -1
  323. package/dist/mcp/workspace-trust.d.ts.map +1 -1
  324. package/dist/mcp/workspace-trust.js +1 -3
  325. package/dist/mcp/workspace-trust.js.map +1 -1
  326. package/dist/memory/service-client.d.ts.map +1 -1
  327. package/dist/memory/service-client.js +1 -3
  328. package/dist/memory/service-client.js.map +1 -1
  329. package/dist/models/config-loader.d.ts +5 -5
  330. package/dist/models/config-loader.d.ts.map +1 -1
  331. package/dist/models/config-loader.js +1 -3
  332. package/dist/models/config-loader.js.map +1 -1
  333. package/dist/node_modules/@evalops/contracts/dist/index.d.ts +46 -0
  334. package/dist/node_modules/@evalops/contracts/dist/index.d.ts.map +1 -1
  335. package/dist/node_modules/@evalops/contracts/dist/index.js +3 -0
  336. package/dist/node_modules/@evalops/contracts/dist/index.js.map +1 -1
  337. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts +284 -0
  338. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.d.ts.map +1 -1
  339. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js +41 -0
  340. package/dist/node_modules/@evalops/contracts/dist/maestro-app-server.js.map +1 -1
  341. package/dist/node_modules/@evalops/contracts/dist/maestro-settings.d.ts +61 -0
  342. package/dist/node_modules/@evalops/contracts/dist/maestro-settings.d.ts.map +1 -0
  343. package/dist/node_modules/@evalops/contracts/dist/maestro-settings.js +183 -0
  344. package/dist/node_modules/@evalops/contracts/dist/maestro-settings.js.map +1 -0
  345. package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts +986 -0
  346. package/dist/node_modules/@evalops/contracts/dist/schemas.d.ts.map +1 -1
  347. package/dist/node_modules/@evalops/contracts/dist/schemas.js +49 -0
  348. package/dist/node_modules/@evalops/contracts/dist/schemas.js.map +1 -1
  349. package/dist/node_modules/@evalops/contracts/dist/token-estimation.d.ts +56 -0
  350. package/dist/node_modules/@evalops/contracts/dist/token-estimation.d.ts.map +1 -0
  351. package/dist/node_modules/@evalops/contracts/dist/token-estimation.js +86 -0
  352. package/dist/node_modules/@evalops/contracts/dist/token-estimation.js.map +1 -0
  353. package/dist/node_modules/@evalops/contracts/package.json +1 -1
  354. package/dist/oauth/connectors.d.ts.map +1 -1
  355. package/dist/oauth/connectors.js +1 -3
  356. package/dist/oauth/connectors.js.map +1 -1
  357. package/dist/oauth/evalops.d.ts.map +1 -1
  358. package/dist/oauth/evalops.js +1 -3
  359. package/dist/oauth/evalops.js.map +1 -1
  360. package/dist/packages/discovery.d.ts.map +1 -1
  361. package/dist/packages/discovery.js +1 -0
  362. package/dist/packages/discovery.js.map +1 -1
  363. package/dist/packages/inspection.d.ts.map +1 -1
  364. package/dist/packages/inspection.js +7 -1
  365. package/dist/packages/inspection.js.map +1 -1
  366. package/dist/packages/loader.d.ts.map +1 -1
  367. package/dist/packages/loader.js +8 -1
  368. package/dist/packages/loader.js.map +1 -1
  369. package/dist/packages/runtime.d.ts +1 -0
  370. package/dist/packages/runtime.d.ts.map +1 -1
  371. package/dist/packages/runtime.js +9 -1
  372. package/dist/packages/runtime.js.map +1 -1
  373. package/dist/packages/types.d.ts +6 -0
  374. package/dist/packages/types.d.ts.map +1 -1
  375. package/dist/packages/types.js.map +1 -1
  376. package/dist/platform/a2a-client.d.ts.map +1 -1
  377. package/dist/platform/a2a-client.js +1 -3
  378. package/dist/platform/a2a-client.js.map +1 -1
  379. package/dist/platform/a2a-cockpit.d.ts +1 -0
  380. package/dist/platform/a2a-cockpit.d.ts.map +1 -1
  381. package/dist/platform/a2a-cockpit.js +42 -11
  382. package/dist/platform/a2a-cockpit.js.map +1 -1
  383. package/dist/platform/a2a-completion-audit.d.ts +1 -1
  384. package/dist/platform/a2a-completion-audit.d.ts.map +1 -1
  385. package/dist/platform/a2a-completion-audit.js +7 -11
  386. package/dist/platform/a2a-completion-audit.js.map +1 -1
  387. package/dist/platform/a2a-maestro-peer.js +16 -0
  388. package/dist/platform/a2a-maestro-peer.js.map +1 -1
  389. package/dist/platform/a2a-peer-pairing.d.ts.map +1 -1
  390. package/dist/platform/a2a-peer-pairing.js +1 -3
  391. package/dist/platform/a2a-peer-pairing.js.map +1 -1
  392. package/dist/platform/a2a-peer-registry.d.ts.map +1 -1
  393. package/dist/platform/a2a-peer-registry.js +1 -3
  394. package/dist/platform/a2a-peer-registry.js.map +1 -1
  395. package/dist/platform/a2a-task-ledger.d.ts +20 -0
  396. package/dist/platform/a2a-task-ledger.d.ts.map +1 -1
  397. package/dist/platform/a2a-task-ledger.js +207 -11
  398. package/dist/platform/a2a-task-ledger.js.map +1 -1
  399. package/dist/platform/a2a-work-graph.d.ts.map +1 -1
  400. package/dist/platform/a2a-work-graph.js +1 -3
  401. package/dist/platform/a2a-work-graph.js.map +1 -1
  402. package/dist/platform/operating-layer.d.ts.map +1 -1
  403. package/dist/platform/operating-layer.js +14 -8
  404. package/dist/platform/operating-layer.js.map +1 -1
  405. package/dist/platform/tool-execution-client.d.ts.map +1 -1
  406. package/dist/platform/tool-execution-client.js +19 -2
  407. package/dist/platform/tool-execution-client.js.map +1 -1
  408. package/dist/providers/auth.d.ts.map +1 -1
  409. package/dist/providers/auth.js +1 -3
  410. package/dist/providers/auth.js.map +1 -1
  411. package/dist/runtime/agent-runtime.d.ts +22 -6
  412. package/dist/runtime/agent-runtime.d.ts.map +1 -1
  413. package/dist/runtime/agent-runtime.js +1 -1
  414. package/dist/runtime/agent-runtime.js.map +1 -1
  415. package/dist/runtime/env.d.ts +10 -1
  416. package/dist/runtime/env.d.ts.map +1 -1
  417. package/dist/runtime/env.js +64 -1
  418. package/dist/runtime/env.js.map +1 -1
  419. package/dist/runtime/prompt-queue.d.ts.map +1 -0
  420. package/dist/runtime/prompt-queue.js.map +1 -0
  421. package/dist/safety/policy.d.ts.map +1 -1
  422. package/dist/safety/policy.js +1 -4
  423. package/dist/safety/policy.js.map +1 -1
  424. package/dist/sandbox/docker-sandbox.d.ts.map +1 -1
  425. package/dist/sandbox/docker-sandbox.js +6 -1
  426. package/dist/sandbox/docker-sandbox.js.map +1 -1
  427. package/dist/server/handlers/chat-ws.d.ts +2 -1
  428. package/dist/server/handlers/chat-ws.d.ts.map +1 -1
  429. package/dist/server/handlers/chat-ws.js +150 -5
  430. package/dist/server/handlers/chat-ws.js.map +1 -1
  431. package/dist/server/handlers/chat.d.ts.map +1 -1
  432. package/dist/server/handlers/chat.js +78 -5
  433. package/dist/server/handlers/chat.js.map +1 -1
  434. package/dist/server/handlers/hosted-runner-drain.d.ts.map +1 -1
  435. package/dist/server/handlers/hosted-runner-drain.js +1 -3
  436. package/dist/server/handlers/hosted-runner-drain.js.map +1 -1
  437. package/dist/server/handlers/package.d.ts.map +1 -1
  438. package/dist/server/handlers/package.js +1 -0
  439. package/dist/server/handlers/package.js.map +1 -1
  440. package/dist/server/handlers/platform-a2a-push.d.ts.map +1 -1
  441. package/dist/server/handlers/platform-a2a-push.js +53 -2
  442. package/dist/server/handlers/platform-a2a-push.js.map +1 -1
  443. package/dist/server/handlers/queue.js +1 -1
  444. package/dist/server/handlers/queue.js.map +1 -1
  445. package/dist/server/handlers/runtime-app-server-ws.d.ts.map +1 -1
  446. package/dist/server/handlers/runtime-app-server-ws.js +1 -3
  447. package/dist/server/handlers/runtime-app-server-ws.js.map +1 -1
  448. package/dist/server/handlers/ui.js +1 -1
  449. package/dist/server/handlers/ui.js.map +1 -1
  450. package/dist/server/handlers/zen.js +1 -1
  451. package/dist/server/handlers/zen.js.map +1 -1
  452. package/dist/server/headless-runtime-service.d.ts +16 -0
  453. package/dist/server/headless-runtime-service.d.ts.map +1 -1
  454. package/dist/server/headless-runtime-service.js +232 -206
  455. package/dist/server/headless-runtime-service.js.map +1 -1
  456. package/dist/server/hosted-agent-runtime-progress.d.ts.map +1 -1
  457. package/dist/server/hosted-agent-runtime-progress.js +12 -3
  458. package/dist/server/hosted-agent-runtime-progress.js.map +1 -1
  459. package/dist/server/hosted-session-manager.d.ts +3 -0
  460. package/dist/server/hosted-session-manager.d.ts.map +1 -1
  461. package/dist/server/hosted-session-manager.js +26 -0
  462. package/dist/server/hosted-session-manager.js.map +1 -1
  463. package/dist/server/model-selection.d.ts +1 -0
  464. package/dist/server/model-selection.d.ts.map +1 -1
  465. package/dist/server/model-selection.js +4 -0
  466. package/dist/server/model-selection.js.map +1 -1
  467. package/dist/server/pending-request-payload.d.ts.map +1 -1
  468. package/dist/server/pending-request-payload.js +1 -3
  469. package/dist/server/pending-request-payload.js.map +1 -1
  470. package/dist/server/route-auth.d.ts.map +1 -1
  471. package/dist/server/route-auth.js +2 -0
  472. package/dist/server/route-auth.js.map +1 -1
  473. package/dist/server/session-serialization.d.ts.map +1 -1
  474. package/dist/server/session-serialization.js +4 -3
  475. package/dist/server/session-serialization.js.map +1 -1
  476. package/dist/server/session-timeline.d.ts.map +1 -1
  477. package/dist/server/session-timeline.js +1 -1
  478. package/dist/server/session-timeline.js.map +1 -1
  479. package/dist/server/sse-session.d.ts +2 -0
  480. package/dist/server/sse-session.d.ts.map +1 -1
  481. package/dist/server/sse-session.js +3 -0
  482. package/dist/server/sse-session.js.map +1 -1
  483. package/dist/server/stores/ui-store.d.ts +1 -1
  484. package/dist/server/stores/ui-store.d.ts.map +1 -1
  485. package/dist/server/stores/ui-store.js.map +1 -1
  486. package/dist/server/utils/token-estimator.d.ts +2 -2
  487. package/dist/server/utils/token-estimator.d.ts.map +1 -1
  488. package/dist/server/utils/token-estimator.js +2 -12
  489. package/dist/server/utils/token-estimator.js.map +1 -1
  490. package/dist/server/validation.d.ts +54 -0
  491. package/dist/server/validation.d.ts.map +1 -1
  492. package/dist/services/compliance/normalize.d.ts.map +1 -1
  493. package/dist/services/compliance/normalize.js +1 -3
  494. package/dist/services/compliance/normalize.js.map +1 -1
  495. package/dist/services/image-providers/cost.d.ts +70 -0
  496. package/dist/services/image-providers/cost.d.ts.map +1 -0
  497. package/dist/services/image-providers/cost.js +164 -0
  498. package/dist/services/image-providers/cost.js.map +1 -0
  499. package/dist/services/image-providers/flux.d.ts +40 -0
  500. package/dist/services/image-providers/flux.d.ts.map +1 -0
  501. package/dist/services/image-providers/flux.js +99 -0
  502. package/dist/services/image-providers/flux.js.map +1 -0
  503. package/dist/services/image-providers/index.d.ts +24 -0
  504. package/dist/services/image-providers/index.d.ts.map +1 -0
  505. package/dist/services/image-providers/index.js +27 -0
  506. package/dist/services/image-providers/index.js.map +1 -0
  507. package/dist/services/image-providers/masks.d.ts +51 -0
  508. package/dist/services/image-providers/masks.d.ts.map +1 -0
  509. package/dist/services/image-providers/masks.js +132 -0
  510. package/dist/services/image-providers/masks.js.map +1 -0
  511. package/dist/services/image-providers/openai.d.ts +35 -0
  512. package/dist/services/image-providers/openai.d.ts.map +1 -0
  513. package/dist/services/image-providers/openai.js +93 -0
  514. package/dist/services/image-providers/openai.js.map +1 -0
  515. package/dist/services/image-providers/types.d.ts +61 -0
  516. package/dist/services/image-providers/types.d.ts.map +1 -0
  517. package/dist/services/image-providers/types.js +17 -0
  518. package/dist/services/image-providers/types.js.map +1 -0
  519. package/dist/services/intelligent-router/index.d.ts +1 -0
  520. package/dist/services/intelligent-router/index.d.ts.map +1 -1
  521. package/dist/services/intelligent-router/index.js +1 -0
  522. package/dist/services/intelligent-router/index.js.map +1 -1
  523. package/dist/services/intelligent-router/normalize.d.ts +1 -0
  524. package/dist/services/intelligent-router/normalize.d.ts.map +1 -1
  525. package/dist/services/intelligent-router/normalize.js +18 -3
  526. package/dist/services/intelligent-router/normalize.js.map +1 -1
  527. package/dist/services/intelligent-router/outcome.d.ts +19 -0
  528. package/dist/services/intelligent-router/outcome.d.ts.map +1 -0
  529. package/dist/services/intelligent-router/outcome.js +51 -0
  530. package/dist/services/intelligent-router/outcome.js.map +1 -0
  531. package/dist/services/intelligent-router/recorder.d.ts +2 -0
  532. package/dist/services/intelligent-router/recorder.d.ts.map +1 -1
  533. package/dist/services/intelligent-router/recorder.js +72 -1
  534. package/dist/services/intelligent-router/recorder.js.map +1 -1
  535. package/dist/services/intelligent-router/service.d.ts +1 -0
  536. package/dist/services/intelligent-router/service.d.ts.map +1 -1
  537. package/dist/services/intelligent-router/service.js +60 -11
  538. package/dist/services/intelligent-router/service.js.map +1 -1
  539. package/dist/services/intelligent-router/types.d.ts +18 -0
  540. package/dist/services/intelligent-router/types.d.ts.map +1 -1
  541. package/dist/services/intelligent-router/types.js.map +1 -1
  542. package/dist/services/revenue-attribution/normalize.d.ts.map +1 -1
  543. package/dist/services/revenue-attribution/normalize.js +1 -3
  544. package/dist/services/revenue-attribution/normalize.js.map +1 -1
  545. package/dist/services/traces/normalize.d.ts.map +1 -1
  546. package/dist/services/traces/normalize.js +1 -3
  547. package/dist/services/traces/normalize.js.map +1 -1
  548. package/dist/services/workspace-config/middleware.d.ts +2 -0
  549. package/dist/services/workspace-config/middleware.d.ts.map +1 -1
  550. package/dist/services/workspace-config/middleware.js +25 -28
  551. package/dist/services/workspace-config/middleware.js.map +1 -1
  552. package/dist/services/workspace-config/normalize.d.ts.map +1 -1
  553. package/dist/services/workspace-config/normalize.js +1 -3
  554. package/dist/services/workspace-config/normalize.js.map +1 -1
  555. package/dist/session/agent-lineage-projection.d.ts +30 -0
  556. package/dist/session/agent-lineage-projection.d.ts.map +1 -0
  557. package/dist/session/agent-lineage-projection.js +109 -0
  558. package/dist/session/agent-lineage-projection.js.map +1 -0
  559. package/dist/session/manager.d.ts +3 -0
  560. package/dist/session/manager.d.ts.map +1 -1
  561. package/dist/session/manager.js +24 -0
  562. package/dist/session/manager.js.map +1 -1
  563. package/dist/session/session-graph-projection.d.ts +11 -0
  564. package/dist/session/session-graph-projection.d.ts.map +1 -1
  565. package/dist/session/session-graph-projection.js +28 -0
  566. package/dist/session/session-graph-projection.js.map +1 -1
  567. package/dist/session/types.d.ts +2 -0
  568. package/dist/session/types.d.ts.map +1 -1
  569. package/dist/session/types.js.map +1 -1
  570. package/dist/telemetry/agent-workforce-native-event.d.ts.map +1 -1
  571. package/dist/telemetry/agent-workforce-native-event.js +1 -3
  572. package/dist/telemetry/agent-workforce-native-event.js.map +1 -1
  573. package/dist/telemetry/maestro-event-bus.d.ts +1 -1
  574. package/dist/telemetry/maestro-event-bus.d.ts.map +1 -1
  575. package/dist/telemetry/maestro-event-bus.js +42 -81
  576. package/dist/telemetry/maestro-event-bus.js.map +1 -1
  577. package/dist/telemetry/maestro-platform-replay-fixture.d.ts.map +1 -1
  578. package/dist/telemetry/maestro-platform-replay-fixture.js +1 -3
  579. package/dist/telemetry/maestro-platform-replay-fixture.js.map +1 -1
  580. package/dist/telemetry/maestro-publisher-conformance-fixture.js.map +1 -1
  581. package/dist/telemetry/oracle-policy.d.ts +6 -0
  582. package/dist/telemetry/oracle-policy.d.ts.map +1 -0
  583. package/dist/telemetry/oracle-policy.js +17 -0
  584. package/dist/telemetry/oracle-policy.js.map +1 -0
  585. package/dist/telemetry/wide-events.d.ts +1 -1
  586. package/dist/telemetry/wide-events.d.ts.map +1 -1
  587. package/dist/telemetry/wide-events.js.map +1 -1
  588. package/dist/telemetry.d.ts.map +1 -1
  589. package/dist/telemetry.js +54 -43
  590. package/dist/telemetry.js.map +1 -1
  591. package/dist/theme/theme-loader.d.ts.map +1 -1
  592. package/dist/theme/theme-loader.js +1 -3
  593. package/dist/theme/theme-loader.js.map +1 -1
  594. package/dist/theme/theme.d.ts +2 -8
  595. package/dist/theme/theme.d.ts.map +1 -1
  596. package/dist/theme/theme.js +7 -0
  597. package/dist/theme/theme.js.map +1 -1
  598. package/dist/theme/tui-theme-helpers.d.ts +2 -1
  599. package/dist/theme/tui-theme-helpers.d.ts.map +1 -1
  600. package/dist/theme/tui-theme-helpers.js.map +1 -1
  601. package/dist/theme/tui-theme-types.d.ts +39 -0
  602. package/dist/theme/tui-theme-types.d.ts.map +1 -0
  603. package/dist/theme/tui-theme-types.js +10 -0
  604. package/dist/theme/tui-theme-types.js.map +1 -0
  605. package/dist/tools/apply-patch.d.ts.map +1 -1
  606. package/dist/tools/apply-patch.js +76 -8
  607. package/dist/tools/apply-patch.js.map +1 -1
  608. package/dist/tools/diff-preview.d.ts.map +1 -1
  609. package/dist/tools/diff-preview.js +10 -1
  610. package/dist/tools/diff-preview.js.map +1 -1
  611. package/dist/tools/edit.d.ts.map +1 -1
  612. package/dist/tools/edit.js +17 -0
  613. package/dist/tools/edit.js.map +1 -1
  614. package/dist/tools/index.d.ts +199 -160
  615. package/dist/tools/index.d.ts.map +1 -1
  616. package/dist/tools/index.js +4 -0
  617. package/dist/tools/index.js.map +1 -1
  618. package/dist/tools/lazy-registry.d.ts.map +1 -1
  619. package/dist/tools/lazy-registry.js +1 -0
  620. package/dist/tools/lazy-registry.js.map +1 -1
  621. package/dist/tools/oracle.d.ts +9 -0
  622. package/dist/tools/oracle.d.ts.map +1 -1
  623. package/dist/tools/oracle.js +26 -24
  624. package/dist/tools/oracle.js.map +1 -1
  625. package/dist/tools/painter.d.ts +73 -0
  626. package/dist/tools/painter.d.ts.map +1 -0
  627. package/dist/tools/painter.js +283 -0
  628. package/dist/tools/painter.js.map +1 -0
  629. package/dist/tools/typebox-tool.d.ts.map +1 -1
  630. package/dist/tools/typebox-tool.js +1 -1
  631. package/dist/tools/typebox-tool.js.map +1 -1
  632. package/dist/tools/write.d.ts.map +1 -1
  633. package/dist/tools/write.js +9 -0
  634. package/dist/tools/write.js.map +1 -1
  635. package/dist/undo/tracker.d.ts +5 -0
  636. package/dist/undo/tracker.d.ts.map +1 -1
  637. package/dist/undo/tracker.js +13 -0
  638. package/dist/undo/tracker.js.map +1 -1
  639. package/dist/utils/fs.d.ts +1 -1
  640. package/dist/utils/fs.d.ts.map +1 -1
  641. package/dist/utils/fs.js +29 -2
  642. package/dist/utils/fs.js.map +1 -1
  643. package/dist/utils/git-stash.d.ts.map +1 -1
  644. package/dist/utils/git-stash.js +15 -8
  645. package/dist/utils/git-stash.js.map +1 -1
  646. package/dist/utils/json.d.ts +11 -0
  647. package/dist/utils/json.d.ts.map +1 -1
  648. package/dist/utils/json.js +9 -0
  649. package/dist/utils/json.js.map +1 -1
  650. package/dist/utils/shell-env.d.ts.map +1 -1
  651. package/dist/utils/shell-env.js +2 -0
  652. package/dist/utils/shell-env.js.map +1 -1
  653. package/dist/utils/terminal-image.d.ts +52 -0
  654. package/dist/utils/terminal-image.d.ts.map +1 -0
  655. package/dist/utils/terminal-image.js +95 -0
  656. package/dist/utils/terminal-image.js.map +1 -0
  657. package/dist/utils/terminal-text.d.ts +11 -0
  658. package/dist/utils/terminal-text.d.ts.map +1 -0
  659. package/dist/utils/terminal-text.js +21 -0
  660. package/dist/utils/terminal-text.js.map +1 -0
  661. package/dist/utils/url-extractor-git.d.ts +26 -0
  662. package/dist/utils/url-extractor-git.d.ts.map +1 -0
  663. package/dist/utils/url-extractor-git.js +259 -0
  664. package/dist/utils/url-extractor-git.js.map +1 -0
  665. package/dist/utils/url-extractor.d.ts.map +1 -1
  666. package/dist/utils/url-extractor.js +23 -251
  667. package/dist/utils/url-extractor.js.map +1 -1
  668. package/dist/version.json +2 -2
  669. package/dist/web-server.d.ts.map +1 -1
  670. package/dist/web-server.js +24 -2
  671. package/dist/web-server.js.map +1 -1
  672. package/package.json +312 -306
  673. package/skills/incident-triage/SKILL.md +20 -1
  674. package/skills/install-code-review/SKILL.md +69 -0
  675. package/skills/security-review/SKILL.md +68 -0
  676. package/skills/security-review/reference/rubric.md +85 -0
  677. package/dist/cli/commands/agents.d.ts +0 -20
  678. package/dist/cli/commands/agents.d.ts.map +0 -1
  679. package/dist/cli/commands/agents.js +0 -280
  680. package/dist/cli/commands/agents.js.map +0 -1
  681. package/dist/cli/commands/anthropic.d.ts +0 -2
  682. package/dist/cli/commands/anthropic.d.ts.map +0 -1
  683. package/dist/cli/commands/anthropic.js +0 -6
  684. package/dist/cli/commands/anthropic.js.map +0 -1
  685. package/dist/cli/commands/cost.d.ts +0 -13
  686. package/dist/cli/commands/cost.d.ts.map +0 -1
  687. package/dist/cli/commands/cost.js +0 -143
  688. package/dist/cli/commands/cost.js.map +0 -1
  689. package/dist/cli/commands/exec-constants.d.ts +0 -3
  690. package/dist/cli/commands/exec-constants.d.ts.map +0 -1
  691. package/dist/cli/commands/exec-constants.js +0 -3
  692. package/dist/cli/commands/exec-constants.js.map +0 -1
  693. package/dist/cli/commands/exec.d.ts +0 -19
  694. package/dist/cli/commands/exec.d.ts.map +0 -1
  695. package/dist/cli/commands/exec.js +0 -207
  696. package/dist/cli/commands/exec.js.map +0 -1
  697. package/dist/cli/commands/hooks.d.ts +0 -2
  698. package/dist/cli/commands/hooks.d.ts.map +0 -1
  699. package/dist/cli/commands/hooks.js +0 -25
  700. package/dist/cli/commands/hooks.js.map +0 -1
  701. package/dist/cli/commands/hosted-runner.d.ts +0 -25
  702. package/dist/cli/commands/hosted-runner.d.ts.map +0 -1
  703. package/dist/cli/commands/hosted-runner.js +0 -278
  704. package/dist/cli/commands/hosted-runner.js.map +0 -1
  705. package/dist/cli/commands/memory.d.ts +0 -2
  706. package/dist/cli/commands/memory.d.ts.map +0 -1
  707. package/dist/cli/commands/memory.js +0 -208
  708. package/dist/cli/commands/memory.js.map +0 -1
  709. package/dist/cli/commands/models.d.ts +0 -3
  710. package/dist/cli/commands/models.d.ts.map +0 -1
  711. package/dist/cli/commands/models.js +0 -154
  712. package/dist/cli/commands/models.js.map +0 -1
  713. package/dist/cli/commands/modes.d.ts +0 -8
  714. package/dist/cli/commands/modes.d.ts.map +0 -1
  715. package/dist/cli/commands/modes.js +0 -151
  716. package/dist/cli/commands/modes.js.map +0 -1
  717. package/dist/cli/commands/openai.d.ts +0 -2
  718. package/dist/cli/commands/openai.d.ts.map +0 -1
  719. package/dist/cli/commands/openai.js +0 -116
  720. package/dist/cli/commands/openai.js.map +0 -1
  721. package/dist/cli/commands/session-transfer.d.ts +0 -5
  722. package/dist/cli/commands/session-transfer.d.ts.map +0 -1
  723. package/dist/cli/commands/session-transfer.js +0 -43
  724. package/dist/cli/commands/session-transfer.js.map +0 -1
  725. package/dist/cli/commands/sessions.d.ts +0 -8
  726. package/dist/cli/commands/sessions.d.ts.map +0 -1
  727. package/dist/cli/commands/sessions.js +0 -152
  728. package/dist/cli/commands/sessions.js.map +0 -1
  729. package/dist/cli/commands/skill.d.ts +0 -10
  730. package/dist/cli/commands/skill.d.ts.map +0 -1
  731. package/dist/cli/commands/skill.js +0 -303
  732. package/dist/cli/commands/skill.js.map +0 -1
  733. package/dist/cli/commands/stats.d.ts +0 -7
  734. package/dist/cli/commands/stats.d.ts.map +0 -1
  735. package/dist/cli/commands/stats.js +0 -167
  736. package/dist/cli/commands/stats.js.map +0 -1
  737. package/dist/cli/commands/status.d.ts +0 -2
  738. package/dist/cli/commands/status.d.ts.map +0 -1
  739. package/dist/cli/commands/status.js +0 -11
  740. package/dist/cli/commands/status.js.map +0 -1
  741. package/dist/cli/commands/update.d.ts +0 -12
  742. package/dist/cli/commands/update.d.ts.map +0 -1
  743. package/dist/cli/commands/update.js +0 -148
  744. package/dist/cli/commands/update.js.map +0 -1
  745. package/dist/cli-tui/about-view.d.ts +0 -48
  746. package/dist/cli-tui/about-view.d.ts.map +0 -1
  747. package/dist/cli-tui/about-view.js +0 -206
  748. package/dist/cli-tui/about-view.js.map +0 -1
  749. package/dist/cli-tui/agent-event-router.d.ts +0 -28
  750. package/dist/cli-tui/agent-event-router.d.ts.map +0 -1
  751. package/dist/cli-tui/agent-event-router.js +0 -126
  752. package/dist/cli-tui/agent-event-router.js.map +0 -1
  753. package/dist/cli-tui/approval/approval-controller.d.ts +0 -28
  754. package/dist/cli-tui/approval/approval-controller.d.ts.map +0 -1
  755. package/dist/cli-tui/approval/approval-controller.js +0 -99
  756. package/dist/cli-tui/approval/approval-controller.js.map +0 -1
  757. package/dist/cli-tui/approval/approval-modal.d.ts +0 -26
  758. package/dist/cli-tui/approval/approval-modal.d.ts.map +0 -1
  759. package/dist/cli-tui/approval/approval-modal.js +0 -143
  760. package/dist/cli-tui/approval/approval-modal.js.map +0 -1
  761. package/dist/cli-tui/assistant-message.d.ts +0 -41
  762. package/dist/cli-tui/assistant-message.d.ts.map +0 -1
  763. package/dist/cli-tui/assistant-message.js +0 -236
  764. package/dist/cli-tui/assistant-message.js.map +0 -1
  765. package/dist/cli-tui/auth-state.d.ts +0 -7
  766. package/dist/cli-tui/auth-state.d.ts.map +0 -1
  767. package/dist/cli-tui/auth-state.js +0 -46
  768. package/dist/cli-tui/auth-state.js.map +0 -1
  769. package/dist/cli-tui/background/background-tasks-controller.d.ts +0 -31
  770. package/dist/cli-tui/background/background-tasks-controller.d.ts.map +0 -1
  771. package/dist/cli-tui/background/background-tasks-controller.js +0 -84
  772. package/dist/cli-tui/background/background-tasks-controller.js.map +0 -1
  773. package/dist/cli-tui/base-view.d.ts +0 -111
  774. package/dist/cli-tui/base-view.d.ts.map +0 -1
  775. package/dist/cli-tui/base-view.js +0 -145
  776. package/dist/cli-tui/base-view.js.map +0 -1
  777. package/dist/cli-tui/bash/background-launcher.d.ts +0 -14
  778. package/dist/cli-tui/bash/background-launcher.d.ts.map +0 -1
  779. package/dist/cli-tui/bash/background-launcher.js +0 -50
  780. package/dist/cli-tui/bash/background-launcher.js.map +0 -1
  781. package/dist/cli-tui/bash/bash-autocomplete.d.ts +0 -40
  782. package/dist/cli-tui/bash/bash-autocomplete.d.ts.map +0 -1
  783. package/dist/cli-tui/bash/bash-autocomplete.js +0 -347
  784. package/dist/cli-tui/bash/bash-autocomplete.js.map +0 -1
  785. package/dist/cli-tui/bash/bash-history.d.ts +0 -21
  786. package/dist/cli-tui/bash/bash-history.d.ts.map +0 -1
  787. package/dist/cli-tui/bash/bash-history.js +0 -72
  788. package/dist/cli-tui/bash/bash-history.js.map +0 -1
  789. package/dist/cli-tui/bash/bash-syntax.d.ts +0 -5
  790. package/dist/cli-tui/bash/bash-syntax.d.ts.map +0 -1
  791. package/dist/cli-tui/bash/bash-syntax.js +0 -176
  792. package/dist/cli-tui/bash/bash-syntax.js.map +0 -1
  793. package/dist/cli-tui/bash/index.d.ts +0 -4
  794. package/dist/cli-tui/bash/index.d.ts.map +0 -1
  795. package/dist/cli-tui/bash/index.js +0 -4
  796. package/dist/cli-tui/bash/index.js.map +0 -1
  797. package/dist/cli-tui/bash-mode-view.d.ts +0 -86
  798. package/dist/cli-tui/bash-mode-view.d.ts.map +0 -1
  799. package/dist/cli-tui/bash-mode-view.js +0 -560
  800. package/dist/cli-tui/bash-mode-view.js.map +0 -1
  801. package/dist/cli-tui/bash-shell-block.d.ts +0 -50
  802. package/dist/cli-tui/bash-shell-block.d.ts.map +0 -1
  803. package/dist/cli-tui/bash-shell-block.js +0 -119
  804. package/dist/cli-tui/bash-shell-block.js.map +0 -1
  805. package/dist/cli-tui/changelog-view.d.ts +0 -13
  806. package/dist/cli-tui/changelog-view.d.ts.map +0 -1
  807. package/dist/cli-tui/changelog-view.js +0 -34
  808. package/dist/cli-tui/changelog-view.js.map +0 -1
  809. package/dist/cli-tui/clean-mode.d.ts +0 -13
  810. package/dist/cli-tui/clean-mode.d.ts.map +0 -1
  811. package/dist/cli-tui/clean-mode.js +0 -32
  812. package/dist/cli-tui/clean-mode.js.map +0 -1
  813. package/dist/cli-tui/client-tools/client-tool-controller.d.ts +0 -41
  814. package/dist/cli-tui/client-tools/client-tool-controller.d.ts.map +0 -1
  815. package/dist/cli-tui/client-tools/client-tool-controller.js +0 -862
  816. package/dist/cli-tui/client-tools/client-tool-controller.js.map +0 -1
  817. package/dist/cli-tui/client-tools/local-client-tool-service.d.ts +0 -33
  818. package/dist/cli-tui/client-tools/local-client-tool-service.d.ts.map +0 -1
  819. package/dist/cli-tui/client-tools/local-client-tool-service.js +0 -94
  820. package/dist/cli-tui/client-tools/local-client-tool-service.js.map +0 -1
  821. package/dist/cli-tui/commands/a2a-handlers.d.ts +0 -7
  822. package/dist/cli-tui/commands/a2a-handlers.d.ts.map +0 -1
  823. package/dist/cli-tui/commands/a2a-handlers.js +0 -215
  824. package/dist/cli-tui/commands/a2a-handlers.js.map +0 -1
  825. package/dist/cli-tui/commands/access-command.d.ts +0 -3
  826. package/dist/cli-tui/commands/access-command.d.ts.map +0 -1
  827. package/dist/cli-tui/commands/access-command.js +0 -89
  828. package/dist/cli-tui/commands/access-command.js.map +0 -1
  829. package/dist/cli-tui/commands/argument-parser.d.ts +0 -12
  830. package/dist/cli-tui/commands/argument-parser.d.ts.map +0 -1
  831. package/dist/cli-tui/commands/argument-parser.js +0 -135
  832. package/dist/cli-tui/commands/argument-parser.js.map +0 -1
  833. package/dist/cli-tui/commands/audit-command.d.ts +0 -5
  834. package/dist/cli-tui/commands/audit-command.d.ts.map +0 -1
  835. package/dist/cli-tui/commands/audit-command.js +0 -35
  836. package/dist/cli-tui/commands/audit-command.js.map +0 -1
  837. package/dist/cli-tui/commands/background-handlers.d.ts +0 -14
  838. package/dist/cli-tui/commands/background-handlers.d.ts.map +0 -1
  839. package/dist/cli-tui/commands/background-handlers.js +0 -115
  840. package/dist/cli-tui/commands/background-handlers.js.map +0 -1
  841. package/dist/cli-tui/commands/command-catalog.d.ts +0 -29
  842. package/dist/cli-tui/commands/command-catalog.d.ts.map +0 -1
  843. package/dist/cli-tui/commands/command-catalog.js +0 -666
  844. package/dist/cli-tui/commands/command-catalog.js.map +0 -1
  845. package/dist/cli-tui/commands/command-registry-adapter.d.ts +0 -12
  846. package/dist/cli-tui/commands/command-registry-adapter.d.ts.map +0 -1
  847. package/dist/cli-tui/commands/command-registry-adapter.js +0 -129
  848. package/dist/cli-tui/commands/command-registry-adapter.js.map +0 -1
  849. package/dist/cli-tui/commands/command-suite-catalog.d.ts +0 -14
  850. package/dist/cli-tui/commands/command-suite-catalog.d.ts.map +0 -1
  851. package/dist/cli-tui/commands/command-suite-catalog.js +0 -147
  852. package/dist/cli-tui/commands/command-suite-catalog.js.map +0 -1
  853. package/dist/cli-tui/commands/command-suite-handlers.d.ts +0 -111
  854. package/dist/cli-tui/commands/command-suite-handlers.d.ts.map +0 -1
  855. package/dist/cli-tui/commands/command-suite-handlers.js +0 -110
  856. package/dist/cli-tui/commands/command-suite-handlers.js.map +0 -1
  857. package/dist/cli-tui/commands/composer-handlers.d.ts +0 -8
  858. package/dist/cli-tui/commands/composer-handlers.d.ts.map +0 -1
  859. package/dist/cli-tui/commands/composer-handlers.js +0 -90
  860. package/dist/cli-tui/commands/composer-handlers.js.map +0 -1
  861. package/dist/cli-tui/commands/framework-handlers.d.ts +0 -18
  862. package/dist/cli-tui/commands/framework-handlers.d.ts.map +0 -1
  863. package/dist/cli-tui/commands/framework-handlers.js +0 -57
  864. package/dist/cli-tui/commands/framework-handlers.js.map +0 -1
  865. package/dist/cli-tui/commands/guardian-handlers.d.ts +0 -20
  866. package/dist/cli-tui/commands/guardian-handlers.d.ts.map +0 -1
  867. package/dist/cli-tui/commands/guardian-handlers.js +0 -48
  868. package/dist/cli-tui/commands/guardian-handlers.js.map +0 -1
  869. package/dist/cli-tui/commands/handlers/mode-handler.d.ts +0 -32
  870. package/dist/cli-tui/commands/handlers/mode-handler.d.ts.map +0 -1
  871. package/dist/cli-tui/commands/handlers/mode-handler.js +0 -153
  872. package/dist/cli-tui/commands/handlers/mode-handler.js.map +0 -1
  873. package/dist/cli-tui/commands/hotkeys-command.d.ts +0 -8
  874. package/dist/cli-tui/commands/hotkeys-command.d.ts.map +0 -1
  875. package/dist/cli-tui/commands/hotkeys-command.js +0 -61
  876. package/dist/cli-tui/commands/hotkeys-command.js.map +0 -1
  877. package/dist/cli-tui/commands/limits-command.d.ts +0 -3
  878. package/dist/cli-tui/commands/limits-command.d.ts.map +0 -1
  879. package/dist/cli-tui/commands/limits-command.js +0 -88
  880. package/dist/cli-tui/commands/limits-command.js.map +0 -1
  881. package/dist/cli-tui/commands/mcp-handlers.d.ts +0 -12
  882. package/dist/cli-tui/commands/mcp-handlers.d.ts.map +0 -1
  883. package/dist/cli-tui/commands/mcp-handlers.js +0 -1306
  884. package/dist/cli-tui/commands/mcp-handlers.js.map +0 -1
  885. package/dist/cli-tui/commands/memory-handlers.d.ts +0 -28
  886. package/dist/cli-tui/commands/memory-handlers.d.ts.map +0 -1
  887. package/dist/cli-tui/commands/memory-handlers.js +0 -414
  888. package/dist/cli-tui/commands/memory-handlers.js.map +0 -1
  889. package/dist/cli-tui/commands/otel-handlers.d.ts +0 -11
  890. package/dist/cli-tui/commands/otel-handlers.d.ts.map +0 -1
  891. package/dist/cli-tui/commands/otel-handlers.js +0 -20
  892. package/dist/cli-tui/commands/otel-handlers.js.map +0 -1
  893. package/dist/cli-tui/commands/package-handlers.d.ts +0 -30
  894. package/dist/cli-tui/commands/package-handlers.d.ts.map +0 -1
  895. package/dist/cli-tui/commands/package-handlers.js +0 -499
  896. package/dist/cli-tui/commands/package-handlers.js.map +0 -1
  897. package/dist/cli-tui/commands/pii-command.d.ts +0 -3
  898. package/dist/cli-tui/commands/pii-command.d.ts.map +0 -1
  899. package/dist/cli-tui/commands/pii-command.js +0 -54
  900. package/dist/cli-tui/commands/pii-command.js.map +0 -1
  901. package/dist/cli-tui/commands/registry.d.ts +0 -3
  902. package/dist/cli-tui/commands/registry.d.ts.map +0 -1
  903. package/dist/cli-tui/commands/registry.js +0 -36
  904. package/dist/cli-tui/commands/registry.js.map +0 -1
  905. package/dist/cli-tui/commands/safety-handlers.d.ts +0 -36
  906. package/dist/cli-tui/commands/safety-handlers.d.ts.map +0 -1
  907. package/dist/cli-tui/commands/safety-handlers.js +0 -62
  908. package/dist/cli-tui/commands/safety-handlers.js.map +0 -1
  909. package/dist/cli-tui/commands/subcommands/auth-commands.d.ts +0 -26
  910. package/dist/cli-tui/commands/subcommands/auth-commands.d.ts.map +0 -1
  911. package/dist/cli-tui/commands/subcommands/auth-commands.js +0 -79
  912. package/dist/cli-tui/commands/subcommands/auth-commands.js.map +0 -1
  913. package/dist/cli-tui/commands/subcommands/config-commands.d.ts +0 -23
  914. package/dist/cli-tui/commands/subcommands/config-commands.d.ts.map +0 -1
  915. package/dist/cli-tui/commands/subcommands/config-commands.js +0 -61
  916. package/dist/cli-tui/commands/subcommands/config-commands.js.map +0 -1
  917. package/dist/cli-tui/commands/subcommands/diag-commands.d.ts +0 -46
  918. package/dist/cli-tui/commands/subcommands/diag-commands.d.ts.map +0 -1
  919. package/dist/cli-tui/commands/subcommands/diag-commands.js +0 -163
  920. package/dist/cli-tui/commands/subcommands/diag-commands.js.map +0 -1
  921. package/dist/cli-tui/commands/subcommands/git-commands.d.ts +0 -18
  922. package/dist/cli-tui/commands/subcommands/git-commands.d.ts.map +0 -1
  923. package/dist/cli-tui/commands/subcommands/git-commands.js +0 -50
  924. package/dist/cli-tui/commands/subcommands/git-commands.js.map +0 -1
  925. package/dist/cli-tui/commands/subcommands/index.d.ts +0 -18
  926. package/dist/cli-tui/commands/subcommands/index.d.ts.map +0 -1
  927. package/dist/cli-tui/commands/subcommands/index.js +0 -18
  928. package/dist/cli-tui/commands/subcommands/index.js.map +0 -1
  929. package/dist/cli-tui/commands/subcommands/safety-commands.d.ts +0 -26
  930. package/dist/cli-tui/commands/subcommands/safety-commands.d.ts.map +0 -1
  931. package/dist/cli-tui/commands/subcommands/safety-commands.js +0 -149
  932. package/dist/cli-tui/commands/subcommands/safety-commands.js.map +0 -1
  933. package/dist/cli-tui/commands/subcommands/session-commands.d.ts +0 -36
  934. package/dist/cli-tui/commands/subcommands/session-commands.d.ts.map +0 -1
  935. package/dist/cli-tui/commands/subcommands/session-commands.js +0 -112
  936. package/dist/cli-tui/commands/subcommands/session-commands.js.map +0 -1
  937. package/dist/cli-tui/commands/subcommands/tools-commands.d.ts +0 -27
  938. package/dist/cli-tui/commands/subcommands/tools-commands.d.ts.map +0 -1
  939. package/dist/cli-tui/commands/subcommands/tools-commands.js +0 -80
  940. package/dist/cli-tui/commands/subcommands/tools-commands.js.map +0 -1
  941. package/dist/cli-tui/commands/subcommands/ui-commands.d.ts +0 -30
  942. package/dist/cli-tui/commands/subcommands/ui-commands.d.ts.map +0 -1
  943. package/dist/cli-tui/commands/subcommands/ui-commands.js +0 -74
  944. package/dist/cli-tui/commands/subcommands/ui-commands.js.map +0 -1
  945. package/dist/cli-tui/commands/subcommands/undo-commands.d.ts +0 -25
  946. package/dist/cli-tui/commands/subcommands/undo-commands.d.ts.map +0 -1
  947. package/dist/cli-tui/commands/subcommands/undo-commands.js +0 -74
  948. package/dist/cli-tui/commands/subcommands/undo-commands.js.map +0 -1
  949. package/dist/cli-tui/commands/subcommands/usage-commands.d.ts +0 -19
  950. package/dist/cli-tui/commands/subcommands/usage-commands.d.ts.map +0 -1
  951. package/dist/cli-tui/commands/subcommands/usage-commands.js +0 -63
  952. package/dist/cli-tui/commands/subcommands/usage-commands.js.map +0 -1
  953. package/dist/cli-tui/commands/subcommands/utils.d.ts +0 -127
  954. package/dist/cli-tui/commands/subcommands/utils.d.ts.map +0 -1
  955. package/dist/cli-tui/commands/subcommands/utils.js +0 -395
  956. package/dist/cli-tui/commands/subcommands/utils.js.map +0 -1
  957. package/dist/cli-tui/commands/types.d.ts +0 -105
  958. package/dist/cli-tui/commands/types.d.ts.map +0 -1
  959. package/dist/cli-tui/commands/types.js +0 -2
  960. package/dist/cli-tui/commands/types.js.map +0 -1
  961. package/dist/cli-tui/commands/undo-handlers.d.ts +0 -29
  962. package/dist/cli-tui/commands/undo-handlers.d.ts.map +0 -1
  963. package/dist/cli-tui/commands/undo-handlers.js +0 -300
  964. package/dist/cli-tui/commands/undo-handlers.js.map +0 -1
  965. package/dist/cli-tui/commands/utility-handlers.d.ts +0 -55
  966. package/dist/cli-tui/commands/utility-handlers.d.ts.map +0 -1
  967. package/dist/cli-tui/commands/utility-handlers.js +0 -137
  968. package/dist/cli-tui/commands/utility-handlers.js.map +0 -1
  969. package/dist/cli-tui/commands/workflow-handlers.d.ts +0 -22
  970. package/dist/cli-tui/commands/workflow-handlers.d.ts.map +0 -1
  971. package/dist/cli-tui/commands/workflow-handlers.js +0 -227
  972. package/dist/cli-tui/commands/workflow-handlers.js.map +0 -1
  973. package/dist/cli-tui/compact-boundary-message.d.ts +0 -9
  974. package/dist/cli-tui/compact-boundary-message.d.ts.map +0 -1
  975. package/dist/cli-tui/compact-boundary-message.js +0 -18
  976. package/dist/cli-tui/compact-boundary-message.js.map +0 -1
  977. package/dist/cli-tui/compaction-recovery.d.ts +0 -6
  978. package/dist/cli-tui/compaction-recovery.d.ts.map +0 -1
  979. package/dist/cli-tui/compaction-recovery.js +0 -13
  980. package/dist/cli-tui/compaction-recovery.js.map +0 -1
  981. package/dist/cli-tui/config-view.d.ts +0 -30
  982. package/dist/cli-tui/config-view.d.ts.map +0 -1
  983. package/dist/cli-tui/config-view.js +0 -255
  984. package/dist/cli-tui/config-view.js.map +0 -1
  985. package/dist/cli-tui/context-view.d.ts +0 -20
  986. package/dist/cli-tui/context-view.d.ts.map +0 -1
  987. package/dist/cli-tui/context-view.js +0 -191
  988. package/dist/cli-tui/context-view.js.map +0 -1
  989. package/dist/cli-tui/custom-editor.d.ts +0 -25
  990. package/dist/cli-tui/custom-editor.d.ts.map +0 -1
  991. package/dist/cli-tui/custom-editor.js +0 -241
  992. package/dist/cli-tui/custom-editor.js.map +0 -1
  993. package/dist/cli-tui/editor-view.d.ts +0 -34
  994. package/dist/cli-tui/editor-view.d.ts.map +0 -1
  995. package/dist/cli-tui/editor-view.js +0 -102
  996. package/dist/cli-tui/editor-view.js.map +0 -1
  997. package/dist/cli-tui/feedback-view.d.ts +0 -35
  998. package/dist/cli-tui/feedback-view.d.ts.map +0 -1
  999. package/dist/cli-tui/feedback-view.js +0 -271
  1000. package/dist/cli-tui/feedback-view.js.map +0 -1
  1001. package/dist/cli-tui/footer.d.ts +0 -56
  1002. package/dist/cli-tui/footer.d.ts.map +0 -1
  1003. package/dist/cli-tui/footer.js +0 -228
  1004. package/dist/cli-tui/footer.js.map +0 -1
  1005. package/dist/cli-tui/git/commit-modal.d.ts +0 -14
  1006. package/dist/cli-tui/git/commit-modal.d.ts.map +0 -1
  1007. package/dist/cli-tui/git/commit-modal.js +0 -56
  1008. package/dist/cli-tui/git/commit-modal.js.map +0 -1
  1009. package/dist/cli-tui/git/git-preview-modal.d.ts +0 -40
  1010. package/dist/cli-tui/git/git-preview-modal.d.ts.map +0 -1
  1011. package/dist/cli-tui/git/git-preview-modal.js +0 -123
  1012. package/dist/cli-tui/git/git-preview-modal.js.map +0 -1
  1013. package/dist/cli-tui/git/git-view.d.ts +0 -65
  1014. package/dist/cli-tui/git/git-view.d.ts.map +0 -1
  1015. package/dist/cli-tui/git/git-view.js +0 -529
  1016. package/dist/cli-tui/git/git-view.js.map +0 -1
  1017. package/dist/cli-tui/history/history-config.d.ts +0 -7
  1018. package/dist/cli-tui/history/history-config.d.ts.map +0 -1
  1019. package/dist/cli-tui/history/history-config.js +0 -49
  1020. package/dist/cli-tui/history/history-config.js.map +0 -1
  1021. package/dist/cli-tui/history/prompt-history.d.ts +0 -33
  1022. package/dist/cli-tui/history/prompt-history.d.ts.map +0 -1
  1023. package/dist/cli-tui/history/prompt-history.js +0 -185
  1024. package/dist/cli-tui/history/prompt-history.js.map +0 -1
  1025. package/dist/cli-tui/history/tool-history.d.ts +0 -50
  1026. package/dist/cli-tui/history/tool-history.d.ts.map +0 -1
  1027. package/dist/cli-tui/history/tool-history.js +0 -253
  1028. package/dist/cli-tui/history/tool-history.js.map +0 -1
  1029. package/dist/cli-tui/hook-message.d.ts +0 -13
  1030. package/dist/cli-tui/hook-message.d.ts.map +0 -1
  1031. package/dist/cli-tui/hook-message.js +0 -56
  1032. package/dist/cli-tui/hook-message.js.map +0 -1
  1033. package/dist/cli-tui/hooks/hook-input-modal.d.ts +0 -22
  1034. package/dist/cli-tui/hooks/hook-input-modal.d.ts.map +0 -1
  1035. package/dist/cli-tui/hooks/hook-input-modal.js +0 -63
  1036. package/dist/cli-tui/hooks/hook-input-modal.js.map +0 -1
  1037. package/dist/cli-tui/hotkeys-view.d.ts +0 -13
  1038. package/dist/cli-tui/hotkeys-view.d.ts.map +0 -1
  1039. package/dist/cli-tui/hotkeys-view.js +0 -96
  1040. package/dist/cli-tui/hotkeys-view.js.map +0 -1
  1041. package/dist/cli-tui/import-view.d.ts +0 -28
  1042. package/dist/cli-tui/import-view.d.ts.map +0 -1
  1043. package/dist/cli-tui/import-view.js +0 -184
  1044. package/dist/cli-tui/import-view.js.map +0 -1
  1045. package/dist/cli-tui/info-view.d.ts +0 -18
  1046. package/dist/cli-tui/info-view.d.ts.map +0 -1
  1047. package/dist/cli-tui/info-view.js +0 -107
  1048. package/dist/cli-tui/info-view.js.map +0 -1
  1049. package/dist/cli-tui/instruction-panel.d.ts +0 -11
  1050. package/dist/cli-tui/instruction-panel.d.ts.map +0 -1
  1051. package/dist/cli-tui/instruction-panel.js +0 -86
  1052. package/dist/cli-tui/instruction-panel.js.map +0 -1
  1053. package/dist/cli-tui/interrupt-controller.d.ts +0 -78
  1054. package/dist/cli-tui/interrupt-controller.d.ts.map +0 -1
  1055. package/dist/cli-tui/interrupt-controller.js +0 -104
  1056. package/dist/cli-tui/interrupt-controller.js.map +0 -1
  1057. package/dist/cli-tui/keybindings-config.d.ts +0 -27
  1058. package/dist/cli-tui/keybindings-config.d.ts.map +0 -1
  1059. package/dist/cli-tui/keybindings-config.js +0 -372
  1060. package/dist/cli-tui/keybindings-config.js.map +0 -1
  1061. package/dist/cli-tui/keybindings-watcher.d.ts +0 -8
  1062. package/dist/cli-tui/keybindings-watcher.d.ts.map +0 -1
  1063. package/dist/cli-tui/keybindings-watcher.js +0 -56
  1064. package/dist/cli-tui/keybindings-watcher.js.map +0 -1
  1065. package/dist/cli-tui/keybindings.d.ts +0 -13
  1066. package/dist/cli-tui/keybindings.d.ts.map +0 -1
  1067. package/dist/cli-tui/keybindings.js +0 -223
  1068. package/dist/cli-tui/keybindings.js.map +0 -1
  1069. package/dist/cli-tui/loader/loader-stage-manager.d.ts +0 -43
  1070. package/dist/cli-tui/loader/loader-stage-manager.d.ts.map +0 -1
  1071. package/dist/cli-tui/loader/loader-stage-manager.js +0 -241
  1072. package/dist/cli-tui/loader/loader-stage-manager.js.map +0 -1
  1073. package/dist/cli-tui/loader/loader-stage-telemetry.d.ts +0 -14
  1074. package/dist/cli-tui/loader/loader-stage-telemetry.d.ts.map +0 -1
  1075. package/dist/cli-tui/loader/loader-stage-telemetry.js +0 -34
  1076. package/dist/cli-tui/loader/loader-stage-telemetry.js.map +0 -1
  1077. package/dist/cli-tui/loader/loader-view.d.ts +0 -41
  1078. package/dist/cli-tui/loader/loader-view.d.ts.map +0 -1
  1079. package/dist/cli-tui/loader/loader-view.js +0 -162
  1080. package/dist/cli-tui/loader/loader-view.js.map +0 -1
  1081. package/dist/cli-tui/lsp-view.d.ts +0 -21
  1082. package/dist/cli-tui/lsp-view.d.ts.map +0 -1
  1083. package/dist/cli-tui/lsp-view.js +0 -183
  1084. package/dist/cli-tui/lsp-view.js.map +0 -1
  1085. package/dist/cli-tui/mermaid-renderer.d.ts +0 -2
  1086. package/dist/cli-tui/mermaid-renderer.d.ts.map +0 -1
  1087. package/dist/cli-tui/mermaid-renderer.js +0 -391
  1088. package/dist/cli-tui/mermaid-renderer.js.map +0 -1
  1089. package/dist/cli-tui/message-view.d.ts +0 -27
  1090. package/dist/cli-tui/message-view.d.ts.map +0 -1
  1091. package/dist/cli-tui/message-view.js +0 -169
  1092. package/dist/cli-tui/message-view.js.map +0 -1
  1093. package/dist/cli-tui/modal-manager.d.ts +0 -77
  1094. package/dist/cli-tui/modal-manager.d.ts.map +0 -1
  1095. package/dist/cli-tui/modal-manager.js +0 -131
  1096. package/dist/cli-tui/modal-manager.js.map +0 -1
  1097. package/dist/cli-tui/notification-view.d.ts +0 -16
  1098. package/dist/cli-tui/notification-view.d.ts.map +0 -1
  1099. package/dist/cli-tui/notification-view.js +0 -53
  1100. package/dist/cli-tui/notification-view.js.map +0 -1
  1101. package/dist/cli-tui/oauth/index.d.ts +0 -2
  1102. package/dist/cli-tui/oauth/index.d.ts.map +0 -1
  1103. package/dist/cli-tui/oauth/index.js +0 -2
  1104. package/dist/cli-tui/oauth/index.js.map +0 -1
  1105. package/dist/cli-tui/oauth/oauth-flow-controller.d.ts +0 -65
  1106. package/dist/cli-tui/oauth/oauth-flow-controller.d.ts.map +0 -1
  1107. package/dist/cli-tui/oauth/oauth-flow-controller.js +0 -400
  1108. package/dist/cli-tui/oauth/oauth-flow-controller.js.map +0 -1
  1109. package/dist/cli-tui/ollama-view.d.ts +0 -38
  1110. package/dist/cli-tui/ollama-view.d.ts.map +0 -1
  1111. package/dist/cli-tui/ollama-view.js +0 -395
  1112. package/dist/cli-tui/ollama-view.js.map +0 -1
  1113. package/dist/cli-tui/paste/index.d.ts +0 -2
  1114. package/dist/cli-tui/paste/index.d.ts.map +0 -1
  1115. package/dist/cli-tui/paste/index.js +0 -2
  1116. package/dist/cli-tui/paste/index.js.map +0 -1
  1117. package/dist/cli-tui/paste/paste-handler.d.ts +0 -54
  1118. package/dist/cli-tui/paste/paste-handler.d.ts.map +0 -1
  1119. package/dist/cli-tui/paste/paste-handler.js +0 -128
  1120. package/dist/cli-tui/paste/paste-handler.js.map +0 -1
  1121. package/dist/cli-tui/plan/plan-controller.d.ts +0 -28
  1122. package/dist/cli-tui/plan/plan-controller.d.ts.map +0 -1
  1123. package/dist/cli-tui/plan/plan-controller.js +0 -66
  1124. package/dist/cli-tui/plan/plan-controller.js.map +0 -1
  1125. package/dist/cli-tui/plan-panel-modal.d.ts +0 -28
  1126. package/dist/cli-tui/plan-panel-modal.d.ts.map +0 -1
  1127. package/dist/cli-tui/plan-panel-modal.js +0 -193
  1128. package/dist/cli-tui/plan-panel-modal.js.map +0 -1
  1129. package/dist/cli-tui/plan-view.d.ts +0 -57
  1130. package/dist/cli-tui/plan-view.d.ts.map +0 -1
  1131. package/dist/cli-tui/plan-view.js +0 -404
  1132. package/dist/cli-tui/plan-view.js.map +0 -1
  1133. package/dist/cli-tui/prompt-queue.d.ts.map +0 -1
  1134. package/dist/cli-tui/prompt-queue.js.map +0 -1
  1135. package/dist/cli-tui/queue/follow-up-shortcut.d.ts +0 -6
  1136. package/dist/cli-tui/queue/follow-up-shortcut.d.ts.map +0 -1
  1137. package/dist/cli-tui/queue/follow-up-shortcut.js +0 -12
  1138. package/dist/cli-tui/queue/follow-up-shortcut.js.map +0 -1
  1139. package/dist/cli-tui/queue/index.d.ts +0 -3
  1140. package/dist/cli-tui/queue/index.d.ts.map +0 -1
  1141. package/dist/cli-tui/queue/index.js +0 -3
  1142. package/dist/cli-tui/queue/index.js.map +0 -1
  1143. package/dist/cli-tui/queue/queue-controller.d.ts +0 -109
  1144. package/dist/cli-tui/queue/queue-controller.d.ts.map +0 -1
  1145. package/dist/cli-tui/queue/queue-controller.js +0 -327
  1146. package/dist/cli-tui/queue/queue-controller.js.map +0 -1
  1147. package/dist/cli-tui/queue/queue-panel-controller.d.ts +0 -34
  1148. package/dist/cli-tui/queue/queue-panel-controller.d.ts.map +0 -1
  1149. package/dist/cli-tui/queue/queue-panel-controller.js +0 -163
  1150. package/dist/cli-tui/queue/queue-panel-controller.js.map +0 -1
  1151. package/dist/cli-tui/queue/queued-follow-up-edit-binding.d.ts +0 -7
  1152. package/dist/cli-tui/queue/queued-follow-up-edit-binding.d.ts.map +0 -1
  1153. package/dist/cli-tui/queue/queued-follow-up-edit-binding.js +0 -14
  1154. package/dist/cli-tui/queue/queued-follow-up-edit-binding.js.map +0 -1
  1155. package/dist/cli-tui/queue-panel-modal.d.ts +0 -26
  1156. package/dist/cli-tui/queue-panel-modal.d.ts.map +0 -1
  1157. package/dist/cli-tui/queue-panel-modal.js +0 -159
  1158. package/dist/cli-tui/queue-panel-modal.js.map +0 -1
  1159. package/dist/cli-tui/run/run-command-view.d.ts +0 -17
  1160. package/dist/cli-tui/run/run-command-view.d.ts.map +0 -1
  1161. package/dist/cli-tui/run/run-command-view.js +0 -62
  1162. package/dist/cli-tui/run/run-command-view.js.map +0 -1
  1163. package/dist/cli-tui/run/run-controller.d.ts +0 -24
  1164. package/dist/cli-tui/run/run-controller.d.ts.map +0 -1
  1165. package/dist/cli-tui/run/run-controller.js +0 -38
  1166. package/dist/cli-tui/run/run-controller.js.map +0 -1
  1167. package/dist/cli-tui/run/run-shell-command.d.ts +0 -13
  1168. package/dist/cli-tui/run/run-shell-command.d.ts.map +0 -1
  1169. package/dist/cli-tui/run/run-shell-command.js +0 -51
  1170. package/dist/cli-tui/run/run-shell-command.js.map +0 -1
  1171. package/dist/cli-tui/run/streaming-shell-command.d.ts +0 -19
  1172. package/dist/cli-tui/run/streaming-shell-command.d.ts.map +0 -1
  1173. package/dist/cli-tui/run/streaming-shell-command.js +0 -107
  1174. package/dist/cli-tui/run/streaming-shell-command.js.map +0 -1
  1175. package/dist/cli-tui/search/file-search-view.d.ts +0 -22
  1176. package/dist/cli-tui/search/file-search-view.d.ts.map +0 -1
  1177. package/dist/cli-tui/search/file-search-view.js +0 -68
  1178. package/dist/cli-tui/search/file-search-view.js.map +0 -1
  1179. package/dist/cli-tui/search/file-search.d.ts +0 -13
  1180. package/dist/cli-tui/search/file-search.d.ts.map +0 -1
  1181. package/dist/cli-tui/search/file-search.js +0 -52
  1182. package/dist/cli-tui/search/file-search.js.map +0 -1
  1183. package/dist/cli-tui/security-status.d.ts +0 -83
  1184. package/dist/cli-tui/security-status.d.ts.map +0 -1
  1185. package/dist/cli-tui/security-status.js +0 -214
  1186. package/dist/cli-tui/security-status.js.map +0 -1
  1187. package/dist/cli-tui/selectors/base-selector.d.ts +0 -27
  1188. package/dist/cli-tui/selectors/base-selector.d.ts.map +0 -1
  1189. package/dist/cli-tui/selectors/base-selector.js +0 -47
  1190. package/dist/cli-tui/selectors/base-selector.js.map +0 -1
  1191. package/dist/cli-tui/selectors/branch-summary-modal.d.ts +0 -18
  1192. package/dist/cli-tui/selectors/branch-summary-modal.d.ts.map +0 -1
  1193. package/dist/cli-tui/selectors/branch-summary-modal.js +0 -24
  1194. package/dist/cli-tui/selectors/branch-summary-modal.js.map +0 -1
  1195. package/dist/cli-tui/selectors/model-selector-view.d.ts +0 -22
  1196. package/dist/cli-tui/selectors/model-selector-view.d.ts.map +0 -1
  1197. package/dist/cli-tui/selectors/model-selector-view.js +0 -31
  1198. package/dist/cli-tui/selectors/model-selector-view.js.map +0 -1
  1199. package/dist/cli-tui/selectors/model-selector.d.ts +0 -30
  1200. package/dist/cli-tui/selectors/model-selector.d.ts.map +0 -1
  1201. package/dist/cli-tui/selectors/model-selector.js +0 -218
  1202. package/dist/cli-tui/selectors/model-selector.js.map +0 -1
  1203. package/dist/cli-tui/selectors/oauth-selector-view.d.ts +0 -20
  1204. package/dist/cli-tui/selectors/oauth-selector-view.d.ts.map +0 -1
  1205. package/dist/cli-tui/selectors/oauth-selector-view.js +0 -28
  1206. package/dist/cli-tui/selectors/oauth-selector-view.js.map +0 -1
  1207. package/dist/cli-tui/selectors/oauth-selector.d.ts +0 -19
  1208. package/dist/cli-tui/selectors/oauth-selector.d.ts.map +0 -1
  1209. package/dist/cli-tui/selectors/oauth-selector.js +0 -120
  1210. package/dist/cli-tui/selectors/oauth-selector.js.map +0 -1
  1211. package/dist/cli-tui/selectors/queue-mode-selector-view.d.ts +0 -19
  1212. package/dist/cli-tui/selectors/queue-mode-selector-view.d.ts.map +0 -1
  1213. package/dist/cli-tui/selectors/queue-mode-selector-view.js +0 -29
  1214. package/dist/cli-tui/selectors/queue-mode-selector-view.js.map +0 -1
  1215. package/dist/cli-tui/selectors/queue-mode-selector.d.ts +0 -5
  1216. package/dist/cli-tui/selectors/queue-mode-selector.d.ts.map +0 -1
  1217. package/dist/cli-tui/selectors/queue-mode-selector.js +0 -34
  1218. package/dist/cli-tui/selectors/queue-mode-selector.js.map +0 -1
  1219. package/dist/cli-tui/selectors/report-selector-view.d.ts +0 -17
  1220. package/dist/cli-tui/selectors/report-selector-view.d.ts.map +0 -1
  1221. package/dist/cli-tui/selectors/report-selector-view.js +0 -29
  1222. package/dist/cli-tui/selectors/report-selector-view.js.map +0 -1
  1223. package/dist/cli-tui/selectors/report-selector.d.ts +0 -7
  1224. package/dist/cli-tui/selectors/report-selector.d.ts.map +0 -1
  1225. package/dist/cli-tui/selectors/report-selector.js +0 -31
  1226. package/dist/cli-tui/selectors/report-selector.js.map +0 -1
  1227. package/dist/cli-tui/selectors/theme-selector-view.d.ts +0 -19
  1228. package/dist/cli-tui/selectors/theme-selector-view.d.ts.map +0 -1
  1229. package/dist/cli-tui/selectors/theme-selector-view.js +0 -41
  1230. package/dist/cli-tui/selectors/theme-selector-view.js.map +0 -1
  1231. package/dist/cli-tui/selectors/theme-selector.d.ts +0 -14
  1232. package/dist/cli-tui/selectors/theme-selector.d.ts.map +0 -1
  1233. package/dist/cli-tui/selectors/theme-selector.js +0 -46
  1234. package/dist/cli-tui/selectors/theme-selector.js.map +0 -1
  1235. package/dist/cli-tui/selectors/thinking-selector-view.d.ts +0 -20
  1236. package/dist/cli-tui/selectors/thinking-selector-view.d.ts.map +0 -1
  1237. package/dist/cli-tui/selectors/thinking-selector-view.js +0 -31
  1238. package/dist/cli-tui/selectors/thinking-selector-view.js.map +0 -1
  1239. package/dist/cli-tui/selectors/thinking-selector.d.ts +0 -9
  1240. package/dist/cli-tui/selectors/thinking-selector.d.ts.map +0 -1
  1241. package/dist/cli-tui/selectors/thinking-selector.js +0 -47
  1242. package/dist/cli-tui/selectors/thinking-selector.js.map +0 -1
  1243. package/dist/cli-tui/selectors/tree-selector-view.d.ts +0 -32
  1244. package/dist/cli-tui/selectors/tree-selector-view.d.ts.map +0 -1
  1245. package/dist/cli-tui/selectors/tree-selector-view.js +0 -407
  1246. package/dist/cli-tui/selectors/tree-selector-view.js.map +0 -1
  1247. package/dist/cli-tui/selectors/tree-selector.d.ts +0 -27
  1248. package/dist/cli-tui/selectors/tree-selector.d.ts.map +0 -1
  1249. package/dist/cli-tui/selectors/tree-selector.js +0 -194
  1250. package/dist/cli-tui/selectors/tree-selector.js.map +0 -1
  1251. package/dist/cli-tui/selectors/user-message-selector-view.d.ts +0 -25
  1252. package/dist/cli-tui/selectors/user-message-selector-view.d.ts.map +0 -1
  1253. package/dist/cli-tui/selectors/user-message-selector-view.js +0 -101
  1254. package/dist/cli-tui/selectors/user-message-selector-view.js.map +0 -1
  1255. package/dist/cli-tui/selectors/user-message-selector.d.ts +0 -30
  1256. package/dist/cli-tui/selectors/user-message-selector.d.ts.map +0 -1
  1257. package/dist/cli-tui/selectors/user-message-selector.js +0 -114
  1258. package/dist/cli-tui/selectors/user-message-selector.js.map +0 -1
  1259. package/dist/cli-tui/session/branch-controller.d.ts +0 -65
  1260. package/dist/cli-tui/session/branch-controller.d.ts.map +0 -1
  1261. package/dist/cli-tui/session/branch-controller.js +0 -125
  1262. package/dist/cli-tui/session/branch-controller.js.map +0 -1
  1263. package/dist/cli-tui/session/conversation-compactor.d.ts +0 -64
  1264. package/dist/cli-tui/session/conversation-compactor.d.ts.map +0 -1
  1265. package/dist/cli-tui/session/conversation-compactor.js +0 -77
  1266. package/dist/cli-tui/session/conversation-compactor.js.map +0 -1
  1267. package/dist/cli-tui/session/session-context.d.ts +0 -59
  1268. package/dist/cli-tui/session/session-context.d.ts.map +0 -1
  1269. package/dist/cli-tui/session/session-context.js +0 -79
  1270. package/dist/cli-tui/session/session-context.js.map +0 -1
  1271. package/dist/cli-tui/session/session-data-provider.d.ts +0 -23
  1272. package/dist/cli-tui/session/session-data-provider.d.ts.map +0 -1
  1273. package/dist/cli-tui/session/session-data-provider.js +0 -22
  1274. package/dist/cli-tui/session/session-data-provider.js.map +0 -1
  1275. package/dist/cli-tui/session/session-list.d.ts +0 -18
  1276. package/dist/cli-tui/session/session-list.d.ts.map +0 -1
  1277. package/dist/cli-tui/session/session-list.js +0 -103
  1278. package/dist/cli-tui/session/session-list.js.map +0 -1
  1279. package/dist/cli-tui/session/session-selector.d.ts +0 -12
  1280. package/dist/cli-tui/session/session-selector.d.ts.map +0 -1
  1281. package/dist/cli-tui/session/session-selector.js +0 -37
  1282. package/dist/cli-tui/session/session-selector.js.map +0 -1
  1283. package/dist/cli-tui/session/session-summary-controller.d.ts +0 -24
  1284. package/dist/cli-tui/session/session-summary-controller.d.ts.map +0 -1
  1285. package/dist/cli-tui/session/session-summary-controller.js +0 -96
  1286. package/dist/cli-tui/session/session-summary-controller.js.map +0 -1
  1287. package/dist/cli-tui/session/session-switcher-view.d.ts +0 -20
  1288. package/dist/cli-tui/session/session-switcher-view.d.ts.map +0 -1
  1289. package/dist/cli-tui/session/session-switcher-view.js +0 -43
  1290. package/dist/cli-tui/session/session-switcher-view.js.map +0 -1
  1291. package/dist/cli-tui/session/session-switcher.d.ts +0 -38
  1292. package/dist/cli-tui/session/session-switcher.d.ts.map +0 -1
  1293. package/dist/cli-tui/session/session-switcher.js +0 -204
  1294. package/dist/cli-tui/session/session-switcher.js.map +0 -1
  1295. package/dist/cli-tui/session/session-view.d.ts +0 -46
  1296. package/dist/cli-tui/session/session-view.d.ts.map +0 -1
  1297. package/dist/cli-tui/session/session-view.js +0 -311
  1298. package/dist/cli-tui/session/session-view.js.map +0 -1
  1299. package/dist/cli-tui/slash/index.d.ts +0 -2
  1300. package/dist/cli-tui/slash/index.d.ts.map +0 -1
  1301. package/dist/cli-tui/slash/index.js +0 -2
  1302. package/dist/cli-tui/slash/index.js.map +0 -1
  1303. package/dist/cli-tui/slash/slash-command-matcher.d.ts +0 -55
  1304. package/dist/cli-tui/slash/slash-command-matcher.d.ts.map +0 -1
  1305. package/dist/cli-tui/slash/slash-command-matcher.js +0 -113
  1306. package/dist/cli-tui/slash/slash-command-matcher.js.map +0 -1
  1307. package/dist/cli-tui/smart-autocomplete-provider.d.ts +0 -5
  1308. package/dist/cli-tui/smart-autocomplete-provider.d.ts.map +0 -1
  1309. package/dist/cli-tui/smart-autocomplete-provider.js +0 -44
  1310. package/dist/cli-tui/smart-autocomplete-provider.js.map +0 -1
  1311. package/dist/cli-tui/startup-announcements.d.ts +0 -15
  1312. package/dist/cli-tui/startup-announcements.d.ts.map +0 -1
  1313. package/dist/cli-tui/startup-announcements.js +0 -75
  1314. package/dist/cli-tui/startup-announcements.js.map +0 -1
  1315. package/dist/cli-tui/status/cost-view.d.ts +0 -27
  1316. package/dist/cli-tui/status/cost-view.d.ts.map +0 -1
  1317. package/dist/cli-tui/status/cost-view.js +0 -212
  1318. package/dist/cli-tui/status/cost-view.js.map +0 -1
  1319. package/dist/cli-tui/status/diagnostics-templates.d.ts +0 -34
  1320. package/dist/cli-tui/status/diagnostics-templates.d.ts.map +0 -1
  1321. package/dist/cli-tui/status/diagnostics-templates.js +0 -167
  1322. package/dist/cli-tui/status/diagnostics-templates.js.map +0 -1
  1323. package/dist/cli-tui/status/diagnostics-view.d.ts +0 -48
  1324. package/dist/cli-tui/status/diagnostics-view.d.ts.map +0 -1
  1325. package/dist/cli-tui/status/diagnostics-view.js +0 -249
  1326. package/dist/cli-tui/status/diagnostics-view.js.map +0 -1
  1327. package/dist/cli-tui/status/diagnostics.d.ts +0 -39
  1328. package/dist/cli-tui/status/diagnostics.d.ts.map +0 -1
  1329. package/dist/cli-tui/status/diagnostics.js +0 -286
  1330. package/dist/cli-tui/status/diagnostics.js.map +0 -1
  1331. package/dist/cli-tui/status/health-snapshot.d.ts +0 -17
  1332. package/dist/cli-tui/status/health-snapshot.d.ts.map +0 -1
  1333. package/dist/cli-tui/status/health-snapshot.js +0 -28
  1334. package/dist/cli-tui/status/health-snapshot.js.map +0 -1
  1335. package/dist/cli-tui/status/quota-view.d.ts +0 -37
  1336. package/dist/cli-tui/status/quota-view.d.ts.map +0 -1
  1337. package/dist/cli-tui/status/quota-view.js +0 -309
  1338. package/dist/cli-tui/status/quota-view.js.map +0 -1
  1339. package/dist/cli-tui/status/telemetry-view.d.ts +0 -23
  1340. package/dist/cli-tui/status/telemetry-view.d.ts.map +0 -1
  1341. package/dist/cli-tui/status/telemetry-view.js +0 -77
  1342. package/dist/cli-tui/status/telemetry-view.js.map +0 -1
  1343. package/dist/cli-tui/status/training-view.d.ts +0 -23
  1344. package/dist/cli-tui/status/training-view.d.ts.map +0 -1
  1345. package/dist/cli-tui/status/training-view.js +0 -71
  1346. package/dist/cli-tui/status/training-view.js.map +0 -1
  1347. package/dist/cli-tui/streaming-view.d.ts +0 -43
  1348. package/dist/cli-tui/streaming-view.d.ts.map +0 -1
  1349. package/dist/cli-tui/streaming-view.js +0 -176
  1350. package/dist/cli-tui/streaming-view.js.map +0 -1
  1351. package/dist/cli-tui/terminal/index.d.ts +0 -2
  1352. package/dist/cli-tui/terminal/index.d.ts.map +0 -1
  1353. package/dist/cli-tui/terminal/index.js +0 -2
  1354. package/dist/cli-tui/terminal/index.js.map +0 -1
  1355. package/dist/cli-tui/terminal/terminal-utils.d.ts +0 -44
  1356. package/dist/cli-tui/terminal/terminal-utils.d.ts.map +0 -1
  1357. package/dist/cli-tui/terminal/terminal-utils.js +0 -145
  1358. package/dist/cli-tui/terminal/terminal-utils.js.map +0 -1
  1359. package/dist/cli-tui/tips/tip-scheduler.d.ts +0 -19
  1360. package/dist/cli-tui/tips/tip-scheduler.d.ts.map +0 -1
  1361. package/dist/cli-tui/tips/tip-scheduler.js +0 -135
  1362. package/dist/cli-tui/tips/tip-scheduler.js.map +0 -1
  1363. package/dist/cli-tui/tool-execution.d.ts +0 -76
  1364. package/dist/cli-tui/tool-execution.d.ts.map +0 -1
  1365. package/dist/cli-tui/tool-execution.js +0 -217
  1366. package/dist/cli-tui/tool-execution.js.map +0 -1
  1367. package/dist/cli-tui/tool-output-view.d.ts +0 -22
  1368. package/dist/cli-tui/tool-output-view.d.ts.map +0 -1
  1369. package/dist/cli-tui/tool-output-view.js +0 -71
  1370. package/dist/cli-tui/tool-output-view.js.map +0 -1
  1371. package/dist/cli-tui/tool-renderers/index.d.ts +0 -4
  1372. package/dist/cli-tui/tool-renderers/index.d.ts.map +0 -1
  1373. package/dist/cli-tui/tool-renderers/index.js +0 -19
  1374. package/dist/cli-tui/tool-renderers/index.js.map +0 -1
  1375. package/dist/cli-tui/tool-renderers/render-bash.d.ts +0 -6
  1376. package/dist/cli-tui/tool-renderers/render-bash.d.ts.map +0 -1
  1377. package/dist/cli-tui/tool-renderers/render-bash.js +0 -90
  1378. package/dist/cli-tui/tool-renderers/render-bash.js.map +0 -1
  1379. package/dist/cli-tui/tool-renderers/render-batch.d.ts +0 -12
  1380. package/dist/cli-tui/tool-renderers/render-batch.d.ts.map +0 -1
  1381. package/dist/cli-tui/tool-renderers/render-batch.js +0 -133
  1382. package/dist/cli-tui/tool-renderers/render-batch.js.map +0 -1
  1383. package/dist/cli-tui/tool-renderers/render-edit.d.ts +0 -6
  1384. package/dist/cli-tui/tool-renderers/render-edit.d.ts.map +0 -1
  1385. package/dist/cli-tui/tool-renderers/render-edit.js +0 -125
  1386. package/dist/cli-tui/tool-renderers/render-edit.js.map +0 -1
  1387. package/dist/cli-tui/tool-renderers/render-generic.d.ts +0 -6
  1388. package/dist/cli-tui/tool-renderers/render-generic.d.ts.map +0 -1
  1389. package/dist/cli-tui/tool-renderers/render-generic.js +0 -66
  1390. package/dist/cli-tui/tool-renderers/render-generic.js.map +0 -1
  1391. package/dist/cli-tui/tool-renderers/render-read.d.ts +0 -9
  1392. package/dist/cli-tui/tool-renderers/render-read.d.ts.map +0 -1
  1393. package/dist/cli-tui/tool-renderers/render-read.js +0 -108
  1394. package/dist/cli-tui/tool-renderers/render-read.js.map +0 -1
  1395. package/dist/cli-tui/tool-renderers/render-style.d.ts +0 -21
  1396. package/dist/cli-tui/tool-renderers/render-style.d.ts.map +0 -1
  1397. package/dist/cli-tui/tool-renderers/render-style.js +0 -51
  1398. package/dist/cli-tui/tool-renderers/render-style.js.map +0 -1
  1399. package/dist/cli-tui/tool-renderers/render-write.d.ts +0 -5
  1400. package/dist/cli-tui/tool-renderers/render-write.d.ts.map +0 -1
  1401. package/dist/cli-tui/tool-renderers/render-write.js +0 -60
  1402. package/dist/cli-tui/tool-renderers/render-write.js.map +0 -1
  1403. package/dist/cli-tui/tool-renderers/types.d.ts +0 -20
  1404. package/dist/cli-tui/tool-renderers/types.d.ts.map +0 -1
  1405. package/dist/cli-tui/tool-renderers/types.js +0 -2
  1406. package/dist/cli-tui/tool-renderers/types.js.map +0 -1
  1407. package/dist/cli-tui/tool-retry/tool-retry-controller.d.ts +0 -29
  1408. package/dist/cli-tui/tool-retry/tool-retry-controller.d.ts.map +0 -1
  1409. package/dist/cli-tui/tool-retry/tool-retry-controller.js +0 -110
  1410. package/dist/cli-tui/tool-retry/tool-retry-controller.js.map +0 -1
  1411. package/dist/cli-tui/tool-retry/tool-retry-modal.d.ts +0 -27
  1412. package/dist/cli-tui/tool-retry/tool-retry-modal.d.ts.map +0 -1
  1413. package/dist/cli-tui/tool-retry/tool-retry-modal.js +0 -118
  1414. package/dist/cli-tui/tool-retry/tool-retry-modal.js.map +0 -1
  1415. package/dist/cli-tui/tool-status-view.d.ts +0 -32
  1416. package/dist/cli-tui/tool-status-view.d.ts.map +0 -1
  1417. package/dist/cli-tui/tool-status-view.js +0 -86
  1418. package/dist/cli-tui/tool-status-view.js.map +0 -1
  1419. package/dist/cli-tui/tui-renderer/agent-event-bridge.d.ts +0 -59
  1420. package/dist/cli-tui/tui-renderer/agent-event-bridge.d.ts.map +0 -1
  1421. package/dist/cli-tui/tui-renderer/agent-event-bridge.js +0 -129
  1422. package/dist/cli-tui/tui-renderer/agent-event-bridge.js.map +0 -1
  1423. package/dist/cli-tui/tui-renderer/approval-setup.d.ts +0 -13
  1424. package/dist/cli-tui/tui-renderer/approval-setup.d.ts.map +0 -1
  1425. package/dist/cli-tui/tui-renderer/approval-setup.js +0 -5
  1426. package/dist/cli-tui/tui-renderer/approval-setup.js.map +0 -1
  1427. package/dist/cli-tui/tui-renderer/attachment-controller.d.ts +0 -54
  1428. package/dist/cli-tui/tui-renderer/attachment-controller.d.ts.map +0 -1
  1429. package/dist/cli-tui/tui-renderer/attachment-controller.js +0 -160
  1430. package/dist/cli-tui/tui-renderer/attachment-controller.js.map +0 -1
  1431. package/dist/cli-tui/tui-renderer/background-tasks-setup.d.ts +0 -9
  1432. package/dist/cli-tui/tui-renderer/background-tasks-setup.d.ts.map +0 -1
  1433. package/dist/cli-tui/tui-renderer/background-tasks-setup.js +0 -7
  1434. package/dist/cli-tui/tui-renderer/background-tasks-setup.js.map +0 -1
  1435. package/dist/cli-tui/tui-renderer/branch-controller.d.ts +0 -41
  1436. package/dist/cli-tui/tui-renderer/branch-controller.d.ts.map +0 -1
  1437. package/dist/cli-tui/tui-renderer/branch-controller.js +0 -102
  1438. package/dist/cli-tui/tui-renderer/branch-controller.js.map +0 -1
  1439. package/dist/cli-tui/tui-renderer/clear-controller.d.ts +0 -75
  1440. package/dist/cli-tui/tui-renderer/clear-controller.d.ts.map +0 -1
  1441. package/dist/cli-tui/tui-renderer/clear-controller.js +0 -75
  1442. package/dist/cli-tui/tui-renderer/clear-controller.js.map +0 -1
  1443. package/dist/cli-tui/tui-renderer/client-tools-setup.d.ts +0 -14
  1444. package/dist/cli-tui/tui-renderer/client-tools-setup.d.ts.map +0 -1
  1445. package/dist/cli-tui/tui-renderer/client-tools-setup.js +0 -5
  1446. package/dist/cli-tui/tui-renderer/client-tools-setup.js.map +0 -1
  1447. package/dist/cli-tui/tui-renderer/command-registry-options.d.ts +0 -111
  1448. package/dist/cli-tui/tui-renderer/command-registry-options.d.ts.map +0 -1
  1449. package/dist/cli-tui/tui-renderer/command-registry-options.js +0 -163
  1450. package/dist/cli-tui/tui-renderer/command-registry-options.js.map +0 -1
  1451. package/dist/cli-tui/tui-renderer/command-registry.d.ts +0 -16
  1452. package/dist/cli-tui/tui-renderer/command-registry.d.ts.map +0 -1
  1453. package/dist/cli-tui/tui-renderer/command-registry.js +0 -23
  1454. package/dist/cli-tui/tui-renderer/command-registry.js.map +0 -1
  1455. package/dist/cli-tui/tui-renderer/command-suite-wiring.d.ts +0 -29
  1456. package/dist/cli-tui/tui-renderer/command-suite-wiring.d.ts.map +0 -1
  1457. package/dist/cli-tui/tui-renderer/command-suite-wiring.js +0 -108
  1458. package/dist/cli-tui/tui-renderer/command-suite-wiring.js.map +0 -1
  1459. package/dist/cli-tui/tui-renderer/compaction-controller.d.ts +0 -100
  1460. package/dist/cli-tui/tui-renderer/compaction-controller.d.ts.map +0 -1
  1461. package/dist/cli-tui/tui-renderer/compaction-controller.js +0 -160
  1462. package/dist/cli-tui/tui-renderer/compaction-controller.js.map +0 -1
  1463. package/dist/cli-tui/tui-renderer/custom-commands-controller.d.ts +0 -42
  1464. package/dist/cli-tui/tui-renderer/custom-commands-controller.d.ts.map +0 -1
  1465. package/dist/cli-tui/tui-renderer/custom-commands-controller.js +0 -106
  1466. package/dist/cli-tui/tui-renderer/custom-commands-controller.js.map +0 -1
  1467. package/dist/cli-tui/tui-renderer/delegating-command-handlers.d.ts +0 -37
  1468. package/dist/cli-tui/tui-renderer/delegating-command-handlers.d.ts.map +0 -1
  1469. package/dist/cli-tui/tui-renderer/delegating-command-handlers.js +0 -139
  1470. package/dist/cli-tui/tui-renderer/delegating-command-handlers.js.map +0 -1
  1471. package/dist/cli-tui/tui-renderer/editor-bindings.d.ts +0 -21
  1472. package/dist/cli-tui/tui-renderer/editor-bindings.d.ts.map +0 -1
  1473. package/dist/cli-tui/tui-renderer/editor-bindings.js +0 -76
  1474. package/dist/cli-tui/tui-renderer/editor-bindings.js.map +0 -1
  1475. package/dist/cli-tui/tui-renderer/footer-hints-controller.d.ts +0 -90
  1476. package/dist/cli-tui/tui-renderer/footer-hints-controller.d.ts.map +0 -1
  1477. package/dist/cli-tui/tui-renderer/footer-hints-controller.js +0 -152
  1478. package/dist/cli-tui/tui-renderer/footer-hints-controller.js.map +0 -1
  1479. package/dist/cli-tui/tui-renderer/history-controller.d.ts +0 -35
  1480. package/dist/cli-tui/tui-renderer/history-controller.d.ts.map +0 -1
  1481. package/dist/cli-tui/tui-renderer/history-controller.js +0 -153
  1482. package/dist/cli-tui/tui-renderer/history-controller.js.map +0 -1
  1483. package/dist/cli-tui/tui-renderer/hook-ui-controller.d.ts +0 -83
  1484. package/dist/cli-tui/tui-renderer/hook-ui-controller.d.ts.map +0 -1
  1485. package/dist/cli-tui/tui-renderer/hook-ui-controller.js +0 -309
  1486. package/dist/cli-tui/tui-renderer/hook-ui-controller.js.map +0 -1
  1487. package/dist/cli-tui/tui-renderer/initial-preferences.d.ts +0 -19
  1488. package/dist/cli-tui/tui-renderer/initial-preferences.d.ts.map +0 -1
  1489. package/dist/cli-tui/tui-renderer/initial-preferences.js +0 -54
  1490. package/dist/cli-tui/tui-renderer/initial-preferences.js.map +0 -1
  1491. package/dist/cli-tui/tui-renderer/input-controller.d.ts +0 -56
  1492. package/dist/cli-tui/tui-renderer/input-controller.d.ts.map +0 -1
  1493. package/dist/cli-tui/tui-renderer/input-controller.js +0 -104
  1494. package/dist/cli-tui/tui-renderer/input-controller.js.map +0 -1
  1495. package/dist/cli-tui/tui-renderer/interrupt-setup.d.ts +0 -19
  1496. package/dist/cli-tui/tui-renderer/interrupt-setup.d.ts.map +0 -1
  1497. package/dist/cli-tui/tui-renderer/interrupt-setup.js +0 -18
  1498. package/dist/cli-tui/tui-renderer/interrupt-setup.js.map +0 -1
  1499. package/dist/cli-tui/tui-renderer/loader-setup.d.ts +0 -14
  1500. package/dist/cli-tui/tui-renderer/loader-setup.d.ts.map +0 -1
  1501. package/dist/cli-tui/tui-renderer/loader-setup.js +0 -13
  1502. package/dist/cli-tui/tui-renderer/loader-setup.js.map +0 -1
  1503. package/dist/cli-tui/tui-renderer/mcp-events-setup.d.ts +0 -55
  1504. package/dist/cli-tui/tui-renderer/mcp-events-setup.d.ts.map +0 -1
  1505. package/dist/cli-tui/tui-renderer/mcp-events-setup.js +0 -143
  1506. package/dist/cli-tui/tui-renderer/mcp-events-setup.js.map +0 -1
  1507. package/dist/cli-tui/tui-renderer/misc-handlers.d.ts +0 -59
  1508. package/dist/cli-tui/tui-renderer/misc-handlers.d.ts.map +0 -1
  1509. package/dist/cli-tui/tui-renderer/misc-handlers.js +0 -143
  1510. package/dist/cli-tui/tui-renderer/misc-handlers.js.map +0 -1
  1511. package/dist/cli-tui/tui-renderer/oauth-setup.d.ts +0 -14
  1512. package/dist/cli-tui/tui-renderer/oauth-setup.d.ts.map +0 -1
  1513. package/dist/cli-tui/tui-renderer/oauth-setup.js +0 -26
  1514. package/dist/cli-tui/tui-renderer/oauth-setup.js.map +0 -1
  1515. package/dist/cli-tui/tui-renderer/plan-setup.d.ts +0 -19
  1516. package/dist/cli-tui/tui-renderer/plan-setup.d.ts.map +0 -1
  1517. package/dist/cli-tui/tui-renderer/plan-setup.js +0 -23
  1518. package/dist/cli-tui/tui-renderer/plan-setup.js.map +0 -1
  1519. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.d.ts +0 -21
  1520. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.d.ts.map +0 -1
  1521. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.js +0 -64
  1522. package/dist/cli-tui/tui-renderer/prompt-template-slash-commands.js.map +0 -1
  1523. package/dist/cli-tui/tui-renderer/queue-setup.d.ts +0 -18
  1524. package/dist/cli-tui/tui-renderer/queue-setup.d.ts.map +0 -1
  1525. package/dist/cli-tui/tui-renderer/queue-setup.js +0 -42
  1526. package/dist/cli-tui/tui-renderer/queue-setup.js.map +0 -1
  1527. package/dist/cli-tui/tui-renderer/quick-settings-controller.d.ts +0 -53
  1528. package/dist/cli-tui/tui-renderer/quick-settings-controller.d.ts.map +0 -1
  1529. package/dist/cli-tui/tui-renderer/quick-settings-controller.js +0 -100
  1530. package/dist/cli-tui/tui-renderer/quick-settings-controller.js.map +0 -1
  1531. package/dist/cli-tui/tui-renderer/session-setup.d.ts +0 -31
  1532. package/dist/cli-tui/tui-renderer/session-setup.d.ts.map +0 -1
  1533. package/dist/cli-tui/tui-renderer/session-setup.js +0 -45
  1534. package/dist/cli-tui/tui-renderer/session-setup.js.map +0 -1
  1535. package/dist/cli-tui/tui-renderer/session-state-controller.d.ts +0 -66
  1536. package/dist/cli-tui/tui-renderer/session-state-controller.d.ts.map +0 -1
  1537. package/dist/cli-tui/tui-renderer/session-state-controller.js +0 -139
  1538. package/dist/cli-tui/tui-renderer/session-state-controller.js.map +0 -1
  1539. package/dist/cli-tui/tui-renderer/skills-controller.d.ts +0 -70
  1540. package/dist/cli-tui/tui-renderer/skills-controller.d.ts.map +0 -1
  1541. package/dist/cli-tui/tui-renderer/skills-controller.js +0 -411
  1542. package/dist/cli-tui/tui-renderer/skills-controller.js.map +0 -1
  1543. package/dist/cli-tui/tui-renderer/slash-hint-controller.d.ts +0 -90
  1544. package/dist/cli-tui/tui-renderer/slash-hint-controller.d.ts.map +0 -1
  1545. package/dist/cli-tui/tui-renderer/slash-hint-controller.js +0 -131
  1546. package/dist/cli-tui/tui-renderer/slash-hint-controller.js.map +0 -1
  1547. package/dist/cli-tui/tui-renderer/tool-retry-setup.d.ts +0 -13
  1548. package/dist/cli-tui/tui-renderer/tool-retry-setup.d.ts.map +0 -1
  1549. package/dist/cli-tui/tui-renderer/tool-retry-setup.js +0 -5
  1550. package/dist/cli-tui/tui-renderer/tool-retry-setup.js.map +0 -1
  1551. package/dist/cli-tui/tui-renderer/tooling-views-setup.d.ts +0 -38
  1552. package/dist/cli-tui/tui-renderer/tooling-views-setup.d.ts.map +0 -1
  1553. package/dist/cli-tui/tui-renderer/tooling-views-setup.js +0 -48
  1554. package/dist/cli-tui/tui-renderer/tooling-views-setup.js.map +0 -1
  1555. package/dist/cli-tui/tui-renderer/ui-state-controller.d.ts +0 -70
  1556. package/dist/cli-tui/tui-renderer/ui-state-controller.d.ts.map +0 -1
  1557. package/dist/cli-tui/tui-renderer/ui-state-controller.js +0 -184
  1558. package/dist/cli-tui/tui-renderer/ui-state-controller.js.map +0 -1
  1559. package/dist/cli-tui/tui-renderer/ui-state-setup.d.ts +0 -13
  1560. package/dist/cli-tui/tui-renderer/ui-state-setup.d.ts.map +0 -1
  1561. package/dist/cli-tui/tui-renderer/ui-state-setup.js +0 -11
  1562. package/dist/cli-tui/tui-renderer/ui-state-setup.js.map +0 -1
  1563. package/dist/cli-tui/tui-renderer/utility-views-setup.d.ts +0 -26
  1564. package/dist/cli-tui/tui-renderer/utility-views-setup.d.ts.map +0 -1
  1565. package/dist/cli-tui/tui-renderer/utility-views-setup.js +0 -23
  1566. package/dist/cli-tui/tui-renderer/utility-views-setup.js.map +0 -1
  1567. package/dist/cli-tui/tui-renderer/viewport-controller.d.ts +0 -33
  1568. package/dist/cli-tui/tui-renderer/viewport-controller.d.ts.map +0 -1
  1569. package/dist/cli-tui/tui-renderer/viewport-controller.js +0 -98
  1570. package/dist/cli-tui/tui-renderer/viewport-controller.js.map +0 -1
  1571. package/dist/cli-tui/tui-renderer.d.ts +0 -268
  1572. package/dist/cli-tui/tui-renderer.d.ts.map +0 -1
  1573. package/dist/cli-tui/tui-renderer.js +0 -2131
  1574. package/dist/cli-tui/tui-renderer.js.map +0 -1
  1575. package/dist/cli-tui/ui-state.d.ts +0 -27
  1576. package/dist/cli-tui/ui-state.d.ts.map +0 -1
  1577. package/dist/cli-tui/ui-state.js +0 -88
  1578. package/dist/cli-tui/ui-state.js.map +0 -1
  1579. package/dist/cli-tui/update-view.d.ts +0 -16
  1580. package/dist/cli-tui/update-view.d.ts.map +0 -1
  1581. package/dist/cli-tui/update-view.js +0 -45
  1582. package/dist/cli-tui/update-view.js.map +0 -1
  1583. package/dist/cli-tui/user-message.d.ts +0 -17
  1584. package/dist/cli-tui/user-message.d.ts.map +0 -1
  1585. package/dist/cli-tui/user-message.js +0 -83
  1586. package/dist/cli-tui/user-message.js.map +0 -1
  1587. package/dist/cli-tui/utils/borders.d.ts +0 -131
  1588. package/dist/cli-tui/utils/borders.d.ts.map +0 -1
  1589. package/dist/cli-tui/utils/borders.js +0 -254
  1590. package/dist/cli-tui/utils/borders.js.map +0 -1
  1591. package/dist/cli-tui/utils/commands/command-palette-view.d.ts +0 -22
  1592. package/dist/cli-tui/utils/commands/command-palette-view.d.ts.map +0 -1
  1593. package/dist/cli-tui/utils/commands/command-palette-view.js +0 -31
  1594. package/dist/cli-tui/utils/commands/command-palette-view.js.map +0 -1
  1595. package/dist/cli-tui/utils/commands/command-palette.d.ts +0 -29
  1596. package/dist/cli-tui/utils/commands/command-palette.d.ts.map +0 -1
  1597. package/dist/cli-tui/utils/commands/command-palette.js +0 -213
  1598. package/dist/cli-tui/utils/commands/command-palette.js.map +0 -1
  1599. package/dist/cli-tui/utils/commands/command-registry-builder.d.ts +0 -8
  1600. package/dist/cli-tui/utils/commands/command-registry-builder.d.ts.map +0 -1
  1601. package/dist/cli-tui/utils/commands/command-registry-builder.js +0 -9
  1602. package/dist/cli-tui/utils/commands/command-registry-builder.js.map +0 -1
  1603. package/dist/cli-tui/utils/commands/review-prompt.d.ts +0 -10
  1604. package/dist/cli-tui/utils/commands/review-prompt.d.ts.map +0 -1
  1605. package/dist/cli-tui/utils/commands/review-prompt.js +0 -90
  1606. package/dist/cli-tui/utils/commands/review-prompt.js.map +0 -1
  1607. package/dist/cli-tui/utils/commands/slash-hint-bar.d.ts +0 -15
  1608. package/dist/cli-tui/utils/commands/slash-hint-bar.d.ts.map +0 -1
  1609. package/dist/cli-tui/utils/commands/slash-hint-bar.js +0 -106
  1610. package/dist/cli-tui/utils/commands/slash-hint-bar.js.map +0 -1
  1611. package/dist/cli-tui/utils/env-detect.d.ts +0 -11
  1612. package/dist/cli-tui/utils/env-detect.d.ts.map +0 -1
  1613. package/dist/cli-tui/utils/env-detect.js +0 -107
  1614. package/dist/cli-tui/utils/env-detect.js.map +0 -1
  1615. package/dist/cli-tui/utils/external-editor.d.ts +0 -7
  1616. package/dist/cli-tui/utils/external-editor.d.ts.map +0 -1
  1617. package/dist/cli-tui/utils/external-editor.js +0 -53
  1618. package/dist/cli-tui/utils/external-editor.js.map +0 -1
  1619. package/dist/cli-tui/utils/footer-utils.d.ts +0 -169
  1620. package/dist/cli-tui/utils/footer-utils.d.ts.map +0 -1
  1621. package/dist/cli-tui/utils/footer-utils.js +0 -716
  1622. package/dist/cli-tui/utils/footer-utils.js.map +0 -1
  1623. package/dist/cli-tui/utils/footer-visual-widgets.d.ts +0 -38
  1624. package/dist/cli-tui/utils/footer-visual-widgets.d.ts.map +0 -1
  1625. package/dist/cli-tui/utils/footer-visual-widgets.js +0 -141
  1626. package/dist/cli-tui/utils/footer-visual-widgets.js.map +0 -1
  1627. package/dist/cli-tui/utils/git-branch-tracker.d.ts +0 -38
  1628. package/dist/cli-tui/utils/git-branch-tracker.d.ts.map +0 -1
  1629. package/dist/cli-tui/utils/git-branch-tracker.js +0 -90
  1630. package/dist/cli-tui/utils/git-branch-tracker.js.map +0 -1
  1631. package/dist/cli-tui/utils/glyphs.d.ts +0 -207
  1632. package/dist/cli-tui/utils/glyphs.d.ts.map +0 -1
  1633. package/dist/cli-tui/utils/glyphs.js +0 -249
  1634. package/dist/cli-tui/utils/glyphs.js.map +0 -1
  1635. package/dist/cli-tui/utils/layout.d.ts +0 -77
  1636. package/dist/cli-tui/utils/layout.d.ts.map +0 -1
  1637. package/dist/cli-tui/utils/layout.js +0 -83
  1638. package/dist/cli-tui/utils/layout.js.map +0 -1
  1639. package/dist/cli-tui/utils/links.d.ts +0 -2
  1640. package/dist/cli-tui/utils/links.d.ts.map +0 -1
  1641. package/dist/cli-tui/utils/links.js +0 -14
  1642. package/dist/cli-tui/utils/links.js.map +0 -1
  1643. package/dist/cli-tui/utils/motion.d.ts +0 -4
  1644. package/dist/cli-tui/utils/motion.d.ts.map +0 -1
  1645. package/dist/cli-tui/utils/motion.js +0 -28
  1646. package/dist/cli-tui/utils/motion.js.map +0 -1
  1647. package/dist/cli-tui/utils/runtime-badges.d.ts +0 -26
  1648. package/dist/cli-tui/utils/runtime-badges.d.ts.map +0 -1
  1649. package/dist/cli-tui/utils/runtime-badges.js +0 -178
  1650. package/dist/cli-tui/utils/runtime-badges.js.map +0 -1
  1651. package/dist/cli-tui/utils/shimmer.d.ts +0 -12
  1652. package/dist/cli-tui/utils/shimmer.d.ts.map +0 -1
  1653. package/dist/cli-tui/utils/shimmer.js +0 -57
  1654. package/dist/cli-tui/utils/shimmer.js.map +0 -1
  1655. package/dist/cli-tui/utils/stage-labels.d.ts +0 -9
  1656. package/dist/cli-tui/utils/stage-labels.d.ts.map +0 -1
  1657. package/dist/cli-tui/utils/stage-labels.js +0 -65
  1658. package/dist/cli-tui/utils/stage-labels.js.map +0 -1
  1659. package/dist/cli-tui/utils/text-formatting.d.ts +0 -13
  1660. package/dist/cli-tui/utils/text-formatting.d.ts.map +0 -1
  1661. package/dist/cli-tui/utils/text-formatting.js +0 -109
  1662. package/dist/cli-tui/utils/text-formatting.js.map +0 -1
  1663. package/dist/cli-tui/utils/text-preview.d.ts +0 -10
  1664. package/dist/cli-tui/utils/text-preview.d.ts.map +0 -1
  1665. package/dist/cli-tui/utils/text-preview.js +0 -26
  1666. package/dist/cli-tui/utils/text-preview.js.map +0 -1
  1667. package/dist/cli-tui/utils/tool-text-utils.d.ts +0 -42
  1668. package/dist/cli-tui/utils/tool-text-utils.d.ts.map +0 -1
  1669. package/dist/cli-tui/utils/tool-text-utils.js +0 -361
  1670. package/dist/cli-tui/utils/tool-text-utils.js.map +0 -1
  1671. package/dist/cli-tui/welcome-animation.d.ts +0 -24
  1672. package/dist/cli-tui/welcome-animation.d.ts.map +0 -1
  1673. package/dist/cli-tui/welcome-animation.js +0 -99
  1674. package/dist/cli-tui/welcome-animation.js.map +0 -1
  1675. package/dist/cli-tui/welcome-colors.d.ts +0 -3
  1676. package/dist/cli-tui/welcome-colors.d.ts.map +0 -1
  1677. package/dist/cli-tui/welcome-colors.js +0 -39
  1678. package/dist/cli-tui/welcome-colors.js.map +0 -1
  1679. package/dist/node_modules/@evalops/tui/dist/autocomplete.d.ts +0 -304
  1680. package/dist/node_modules/@evalops/tui/dist/autocomplete.d.ts.map +0 -1
  1681. package/dist/node_modules/@evalops/tui/dist/autocomplete.js +0 -712
  1682. package/dist/node_modules/@evalops/tui/dist/autocomplete.js.map +0 -1
  1683. package/dist/node_modules/@evalops/tui/dist/components/editor.d.ts +0 -185
  1684. package/dist/node_modules/@evalops/tui/dist/components/editor.d.ts.map +0 -1
  1685. package/dist/node_modules/@evalops/tui/dist/components/editor.js +0 -1460
  1686. package/dist/node_modules/@evalops/tui/dist/components/editor.js.map +0 -1
  1687. package/dist/node_modules/@evalops/tui/dist/components/input.d.ts +0 -117
  1688. package/dist/node_modules/@evalops/tui/dist/components/input.d.ts.map +0 -1
  1689. package/dist/node_modules/@evalops/tui/dist/components/input.js +0 -391
  1690. package/dist/node_modules/@evalops/tui/dist/components/input.js.map +0 -1
  1691. package/dist/node_modules/@evalops/tui/dist/components/layout.d.ts +0 -256
  1692. package/dist/node_modules/@evalops/tui/dist/components/layout.d.ts.map +0 -1
  1693. package/dist/node_modules/@evalops/tui/dist/components/layout.js +0 -478
  1694. package/dist/node_modules/@evalops/tui/dist/components/layout.js.map +0 -1
  1695. package/dist/node_modules/@evalops/tui/dist/components/loader.d.ts +0 -199
  1696. package/dist/node_modules/@evalops/tui/dist/components/loader.d.ts.map +0 -1
  1697. package/dist/node_modules/@evalops/tui/dist/components/loader.js +0 -374
  1698. package/dist/node_modules/@evalops/tui/dist/components/loader.js.map +0 -1
  1699. package/dist/node_modules/@evalops/tui/dist/components/markdown.d.ts +0 -65
  1700. package/dist/node_modules/@evalops/tui/dist/components/markdown.d.ts.map +0 -1
  1701. package/dist/node_modules/@evalops/tui/dist/components/markdown.js +0 -562
  1702. package/dist/node_modules/@evalops/tui/dist/components/markdown.js.map +0 -1
  1703. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.d.ts +0 -262
  1704. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.d.ts.map +0 -1
  1705. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.js +0 -575
  1706. package/dist/node_modules/@evalops/tui/dist/components/scroll-container.js.map +0 -1
  1707. package/dist/node_modules/@evalops/tui/dist/components/select-list.d.ts +0 -131
  1708. package/dist/node_modules/@evalops/tui/dist/components/select-list.d.ts.map +0 -1
  1709. package/dist/node_modules/@evalops/tui/dist/components/select-list.js +0 -257
  1710. package/dist/node_modules/@evalops/tui/dist/components/select-list.js.map +0 -1
  1711. package/dist/node_modules/@evalops/tui/dist/components/spacer.d.ts +0 -11
  1712. package/dist/node_modules/@evalops/tui/dist/components/spacer.d.ts.map +0 -1
  1713. package/dist/node_modules/@evalops/tui/dist/components/spacer.js +0 -19
  1714. package/dist/node_modules/@evalops/tui/dist/components/spacer.js.map +0 -1
  1715. package/dist/node_modules/@evalops/tui/dist/components/status-bar.d.ts +0 -22
  1716. package/dist/node_modules/@evalops/tui/dist/components/status-bar.d.ts.map +0 -1
  1717. package/dist/node_modules/@evalops/tui/dist/components/status-bar.js +0 -44
  1718. package/dist/node_modules/@evalops/tui/dist/components/status-bar.js.map +0 -1
  1719. package/dist/node_modules/@evalops/tui/dist/components/text.d.ts +0 -26
  1720. package/dist/node_modules/@evalops/tui/dist/components/text.d.ts.map +0 -1
  1721. package/dist/node_modules/@evalops/tui/dist/components/text.js +0 -181
  1722. package/dist/node_modules/@evalops/tui/dist/components/text.js.map +0 -1
  1723. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.d.ts +0 -15
  1724. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.d.ts.map +0 -1
  1725. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.js +0 -84
  1726. package/dist/node_modules/@evalops/tui/dist/components/truncated-text.js.map +0 -1
  1727. package/dist/node_modules/@evalops/tui/dist/index.d.ts +0 -87
  1728. package/dist/node_modules/@evalops/tui/dist/index.d.ts.map +0 -1
  1729. package/dist/node_modules/@evalops/tui/dist/index.js +0 -85
  1730. package/dist/node_modules/@evalops/tui/dist/index.js.map +0 -1
  1731. package/dist/node_modules/@evalops/tui/dist/keymap.d.ts +0 -189
  1732. package/dist/node_modules/@evalops/tui/dist/keymap.d.ts.map +0 -1
  1733. package/dist/node_modules/@evalops/tui/dist/keymap.js +0 -363
  1734. package/dist/node_modules/@evalops/tui/dist/keymap.js.map +0 -1
  1735. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.d.ts +0 -25
  1736. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.d.ts.map +0 -1
  1737. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.js +0 -828
  1738. package/dist/node_modules/@evalops/tui/dist/mermaid-renderer.js.map +0 -1
  1739. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.d.ts +0 -40
  1740. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.d.ts.map +0 -1
  1741. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.js +0 -474
  1742. package/dist/node_modules/@evalops/tui/dist/style/code-highlighter.js.map +0 -1
  1743. package/dist/node_modules/@evalops/tui/dist/terminal.d.ts +0 -201
  1744. package/dist/node_modules/@evalops/tui/dist/terminal.d.ts.map +0 -1
  1745. package/dist/node_modules/@evalops/tui/dist/terminal.js +0 -241
  1746. package/dist/node_modules/@evalops/tui/dist/terminal.js.map +0 -1
  1747. package/dist/node_modules/@evalops/tui/dist/tui.d.ts +0 -263
  1748. package/dist/node_modules/@evalops/tui/dist/tui.d.ts.map +0 -1
  1749. package/dist/node_modules/@evalops/tui/dist/tui.js +0 -694
  1750. package/dist/node_modules/@evalops/tui/dist/tui.js.map +0 -1
  1751. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.d.ts +0 -14
  1752. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.d.ts.map +0 -1
  1753. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.js +0 -44
  1754. package/dist/node_modules/@evalops/tui/dist/utils/terminal-features.js.map +0 -1
  1755. package/dist/node_modules/@evalops/tui/dist/utils.d.ts +0 -32
  1756. package/dist/node_modules/@evalops/tui/dist/utils.d.ts.map +0 -1
  1757. package/dist/node_modules/@evalops/tui/dist/utils.js +0 -556
  1758. package/dist/node_modules/@evalops/tui/dist/utils.js.map +0 -1
  1759. package/dist/node_modules/@evalops/tui/package.json +0 -58
  1760. package/dist/skills/artifact-metadata.d.ts +0 -16
  1761. package/dist/skills/artifact-metadata.d.ts.map +0 -1
  1762. package/dist/skills/artifact-metadata.js +0 -86
  1763. package/dist/skills/artifact-metadata.js.map +0 -1
  1764. package/dist/skills/composer-diagnostics.d.ts +0 -69
  1765. package/dist/skills/composer-diagnostics.d.ts.map +0 -1
  1766. package/dist/skills/composer-diagnostics.js +0 -78
  1767. package/dist/skills/composer-diagnostics.js.map +0 -1
  1768. package/dist/skills/composer.d.ts +0 -19
  1769. package/dist/skills/composer.d.ts.map +0 -1
  1770. package/dist/skills/composer.js +0 -52
  1771. package/dist/skills/composer.js.map +0 -1
  1772. package/dist/skills/eval-harness.d.ts +0 -38
  1773. package/dist/skills/eval-harness.d.ts.map +0 -1
  1774. package/dist/skills/eval-harness.js +0 -112
  1775. package/dist/skills/eval-harness.js.map +0 -1
  1776. package/dist/skills/index.d.ts +0 -40
  1777. package/dist/skills/index.d.ts.map +0 -1
  1778. package/dist/skills/index.js +0 -40
  1779. package/dist/skills/index.js.map +0 -1
  1780. package/dist/skills/linter.d.ts +0 -36
  1781. package/dist/skills/linter.d.ts.map +0 -1
  1782. package/dist/skills/linter.js +0 -399
  1783. package/dist/skills/linter.js.map +0 -1
  1784. package/dist/skills/loader.d.ts +0 -252
  1785. package/dist/skills/loader.d.ts.map +0 -1
  1786. package/dist/skills/loader.js +0 -957
  1787. package/dist/skills/loader.js.map +0 -1
  1788. package/dist/skills/package-contract.d.ts +0 -45
  1789. package/dist/skills/package-contract.d.ts.map +0 -1
  1790. package/dist/skills/package-contract.js +0 -153
  1791. package/dist/skills/package-contract.js.map +0 -1
  1792. package/dist/skills/runtime-activation.d.ts +0 -68
  1793. package/dist/skills/runtime-activation.d.ts.map +0 -1
  1794. package/dist/skills/runtime-activation.js +0 -228
  1795. package/dist/skills/runtime-activation.js.map +0 -1
  1796. package/dist/skills/scaffold-from-template.d.ts +0 -58
  1797. package/dist/skills/scaffold-from-template.d.ts.map +0 -1
  1798. package/dist/skills/scaffold-from-template.js +0 -72
  1799. package/dist/skills/scaffold-from-template.js.map +0 -1
  1800. package/dist/skills/scaffolder.d.ts +0 -65
  1801. package/dist/skills/scaffolder.d.ts.map +0 -1
  1802. package/dist/skills/scaffolder.js +0 -167
  1803. package/dist/skills/scaffolder.js.map +0 -1
  1804. package/dist/skills/service-client.d.ts +0 -56
  1805. package/dist/skills/service-client.d.ts.map +0 -1
  1806. package/dist/skills/service-client.js +0 -266
  1807. package/dist/skills/service-client.js.map +0 -1
  1808. package/dist/skills/skill-templates.d.ts +0 -70
  1809. package/dist/skills/skill-templates.d.ts.map +0 -1
  1810. package/dist/skills/skill-templates.js +0 -154
  1811. package/dist/skills/skill-templates.js.map +0 -1
  1812. package/dist/skills/tool.d.ts +0 -21
  1813. package/dist/skills/tool.d.ts.map +0 -1
  1814. package/dist/skills/tool.js +0 -334
  1815. package/dist/skills/tool.js.map +0 -1
  1816. package/dist/skills/trust-cache.d.ts +0 -58
  1817. package/dist/skills/trust-cache.d.ts.map +0 -1
  1818. package/dist/skills/trust-cache.js +0 -130
  1819. package/dist/skills/trust-cache.js.map +0 -1
  1820. package/dist/skills/types.d.ts +0 -91
  1821. package/dist/skills/types.d.ts.map +0 -1
  1822. package/dist/skills/types.js +0 -8
  1823. package/dist/skills/types.js.map +0 -1
  1824. /package/dist/{cli-tui → runtime}/prompt-queue.d.ts +0 -0
  1825. /package/dist/{cli-tui → runtime}/prompt-queue.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mission-store.js","sourceRoot":"","sources":["../../src/agent/mission-store.ts"],"names":[],"mappings":"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","sourcesContent":["import { existsSync, mkdirSync, readdirSync, rmSync, statSync } from \"node:fs\";\nimport { join } from \"node:path\";\nimport { PATHS } from \"../config/constants.js\";\nimport { defaultRuntimeEnv } from \"../runtime/env.js\";\nimport { readJsonFile, writeJsonFile } from \"../utils/fs.js\";\nimport {\n\tMISSION_MANIFEST_VERSION,\n\ttype MissionFeature,\n\ttype MissionManifest,\n\tisMissionFeature,\n} from \"./mission-manifest.js\";\n\nexport const MISSION_STORE_SCHEMA = \"evalops.maestro.mission-store.v1\";\nconst MISSION_STATE_LOCK_STALE_MS = 60_000;\n\nexport type MissionState =\n\t| \"awaiting-input\"\n\t| \"ready\"\n\t| \"running\"\n\t| \"blocked\"\n\t| \"completed\"\n\t| \"failed\";\n\nexport interface MissionWorkerState {\n\tstartedAt: string;\n\tcompletedAt?: string;\n\texitCode?: number;\n}\n\nexport interface MissionTokenUsage {\n\tinputTokens: number;\n\toutputTokens: number;\n\tcacheCreationTokens?: number;\n\tcacheReadTokens?: number;\n\tthinkingTokens?: number;\n\tcredits?: number;\n}\n\nexport interface MissionProgressEntry {\n\ttype:\n\t\t| \"mission_created\"\n\t\t| \"mission_started\"\n\t\t| \"mission_blocked\"\n\t\t| \"mission_completed\"\n\t\t| \"worker_started\"\n\t\t| \"worker_completed\"\n\t\t| \"worker_failed\"\n\t\t| \"note\";\n\ttimestamp: string;\n\tmessage?: string;\n\tfeatureId?: string;\n\tworkerSessionId?: string;\n\texitCode?: number;\n}\n\nexport interface MissionStoreSnapshot {\n\tschemaVersion: typeof MISSION_STORE_SCHEMA;\n\tmissionId: string;\n\tsourceMissionId?: string;\n\ttitle?: string;\n\tstate: MissionState;\n\tfeatures: MissionFeature[];\n\tprogressLog: MissionProgressEntry[];\n\tworkerSessionIds: string[];\n\tworkerStates: Record<string, MissionWorkerState>;\n\ttokenUsageBySessionId: Record<string, MissionTokenUsage>;\n\ttokenUsage?: MissionTokenUsage;\n\tcreatedAt: string;\n\tupdatedAt: string;\n}\n\nexport interface MissionStoreConfig {\n\trootDir?: string;\n\tnow?: () => string;\n}\n\nexport function getMissionStoreRoot(rootDir?: string): string {\n\treturn (\n\t\trootDir ??\n\t\tdefaultRuntimeEnv().missionStoreDir ??\n\t\tjoin(PATHS.MAESTRO_HOME, \"missions\")\n\t);\n}\n\nexport function sanitizeMissionId(missionId: string): string {\n\tconst trimmed = normalizeMissionIdInput(missionId);\n\tif (!trimmed) {\n\t\tthrow new Error(\"missionId is required\");\n\t}\n\tconst safe = trimmed\n\t\t.replace(/[^A-Za-z0-9._-]+/g, \"-\")\n\t\t.replace(/^-+|-+$/g, \"\");\n\tif (!safe || !/[A-Za-z0-9]/u.test(safe)) {\n\t\tthrow new Error(\n\t\t\t\"missionId must include at least one alphanumeric character\",\n\t\t);\n\t}\n\treturn safe;\n}\n\nfunction normalizeMissionIdInput(missionId: string): string {\n\tconst trimmed = missionId.trim();\n\tif (!trimmed) {\n\t\tthrow new Error(\"missionId is required\");\n\t}\n\treturn trimmed;\n}\n\nexport function getMissionDir(missionId: string, rootDir?: string): string {\n\treturn join(getMissionStoreRoot(rootDir), sanitizeMissionId(missionId));\n}\n\nexport function getMissionStatePath(\n\tmissionId: string,\n\trootDir?: string,\n): string {\n\treturn join(getMissionDir(missionId, rootDir), \"state.json\");\n}\n\nexport function createMissionStoreSnapshot(options: {\n\tmissionId: string;\n\ttitle?: string;\n\tmanifest?: MissionManifest;\n\tnow?: string;\n}): MissionStoreSnapshot {\n\tconst now = options.now ?? new Date().toISOString();\n\treturn {\n\t\tschemaVersion: MISSION_STORE_SCHEMA,\n\t\tmissionId: sanitizeMissionId(options.missionId),\n\t\tsourceMissionId: normalizeMissionIdInput(options.missionId),\n\t\ttitle: options.title,\n\t\tstate: \"awaiting-input\",\n\t\tfeatures: options.manifest?.features ? [...options.manifest.features] : [],\n\t\tprogressLog: [\n\t\t\t{\n\t\t\t\ttype: \"mission_created\",\n\t\t\t\ttimestamp: now,\n\t\t\t\tmessage: options.title,\n\t\t\t},\n\t\t],\n\t\tworkerSessionIds: [],\n\t\tworkerStates: {},\n\t\ttokenUsageBySessionId: {},\n\t\tcreatedAt: now,\n\t\tupdatedAt: now,\n\t};\n}\n\nexport function sumMissionTokenUsage(\n\tusages: Record<string, MissionTokenUsage>,\n): MissionTokenUsage | undefined {\n\tconst values = Object.values(usages);\n\tif (values.length === 0) return undefined;\n\treturn values.reduce<MissionTokenUsage>(\n\t\t(total, usage) => ({\n\t\t\tinputTokens: total.inputTokens + usage.inputTokens,\n\t\t\toutputTokens: total.outputTokens + usage.outputTokens,\n\t\t\tcacheCreationTokens:\n\t\t\t\t(total.cacheCreationTokens ?? 0) + (usage.cacheCreationTokens ?? 0),\n\t\t\tcacheReadTokens:\n\t\t\t\t(total.cacheReadTokens ?? 0) + (usage.cacheReadTokens ?? 0),\n\t\t\tthinkingTokens: (total.thinkingTokens ?? 0) + (usage.thinkingTokens ?? 0),\n\t\t\tcredits: (total.credits ?? 0) + (usage.credits ?? 0),\n\t\t}),\n\t\t{ inputTokens: 0, outputTokens: 0 },\n\t);\n}\n\nfunction deriveWorkerState(\n\tprogressLog: readonly MissionProgressEntry[],\n\tprevious: Record<string, MissionWorkerState>,\n): Record<string, MissionWorkerState> {\n\tconst next = { ...previous };\n\tfor (const entry of progressLog) {\n\t\tif (!entry.workerSessionId) continue;\n\t\tconst existing = next[entry.workerSessionId];\n\t\tif (!existing) {\n\t\t\tnext[entry.workerSessionId] = { startedAt: entry.timestamp };\n\t\t}\n\t\tif (entry.type === \"worker_completed\" || entry.type === \"worker_failed\") {\n\t\t\tnext[entry.workerSessionId] = {\n\t\t\t\tstartedAt: next[entry.workerSessionId]?.startedAt ?? entry.timestamp,\n\t\t\t\tcompletedAt: entry.timestamp,\n\t\t\t\texitCode: entry.exitCode,\n\t\t\t};\n\t\t}\n\t}\n\treturn next;\n}\n\nfunction normalizeSnapshot(\n\tsnapshot: MissionStoreSnapshot,\n): MissionStoreSnapshot {\n\tconst workerStates = deriveWorkerState(\n\t\tsnapshot.progressLog ?? [],\n\t\tsnapshot.workerStates ?? {},\n\t);\n\tconst workerSessionIds = Array.from(\n\t\tnew Set([\n\t\t\t...(snapshot.workerSessionIds ?? []),\n\t\t\t...Object.keys(workerStates),\n\t\t\t...(snapshot.features ?? []).flatMap((feature) =>\n\t\t\t\tfeature.handoff?.workerId ? [feature.handoff.workerId] : [],\n\t\t\t),\n\t\t]),\n\t).sort();\n\tconst tokenUsageBySessionId = snapshot.tokenUsageBySessionId ?? {};\n\treturn {\n\t\t...snapshot,\n\t\tschemaVersion: MISSION_STORE_SCHEMA,\n\t\tmissionId: sanitizeMissionId(snapshot.missionId),\n\t\tsourceMissionId:\n\t\t\ttypeof snapshot.sourceMissionId === \"string\"\n\t\t\t\t? snapshot.sourceMissionId\n\t\t\t\t: undefined,\n\t\tfeatures: snapshot.features ?? [],\n\t\tprogressLog: snapshot.progressLog ?? [],\n\t\tworkerSessionIds,\n\t\tworkerStates,\n\t\ttokenUsageBySessionId,\n\t\ttokenUsage: sumMissionTokenUsage(tokenUsageBySessionId),\n\t};\n}\n\nexport class MissionStore {\n\tprivate snapshot: MissionStoreSnapshot;\n\tprivate lastSavedSnapshot: MissionStoreSnapshot;\n\tprivate stateTouched = false;\n\tprivate readonly rootDir?: string;\n\tprivate readonly now: () => string;\n\n\tconstructor(snapshot: MissionStoreSnapshot, config: MissionStoreConfig = {}) {\n\t\tthis.snapshot = normalizeSnapshot(snapshot);\n\t\tthis.lastSavedSnapshot = this.snapshot;\n\t\tthis.rootDir = config.rootDir;\n\t\tthis.now = config.now ?? (() => new Date().toISOString());\n\t}\n\n\tstatic create(options: {\n\t\tmissionId: string;\n\t\ttitle?: string;\n\t\tmanifest?: MissionManifest;\n\t\tconfig?: MissionStoreConfig;\n\t}): MissionStore {\n\t\tassertMissionCreateTargetAvailable(\n\t\t\toptions.missionId,\n\t\t\toptions.config?.rootDir,\n\t\t);\n\t\treturn new MissionStore(\n\t\t\tcreateMissionStoreSnapshot({\n\t\t\t\tmissionId: options.missionId,\n\t\t\t\ttitle: options.title,\n\t\t\t\tmanifest: options.manifest,\n\t\t\t\tnow: options.config?.now?.(),\n\t\t\t}),\n\t\t\toptions.config,\n\t\t);\n\t}\n\n\tstatic load(\n\t\tmissionId: string,\n\t\tconfig: MissionStoreConfig = {},\n\t): MissionStore {\n\t\tconst path = getMissionStatePath(missionId, config.rootDir);\n\t\tif (!existsSync(path)) {\n\t\t\tthrow new Error(`mission not found: ${sanitizeMissionId(missionId)}`);\n\t\t}\n\t\tconst requestedId = normalizeMissionIdInput(missionId);\n\t\tconst snapshot = readJsonFile<MissionStoreSnapshot>(path, {\n\t\t\trotateOnParseFail: true,\n\t\t});\n\t\tif (\n\t\t\tsnapshot.sourceMissionId?.trim() &&\n\t\t\tsnapshot.sourceMissionId.trim() !== requestedId &&\n\t\t\tsnapshot.missionId !== requestedId\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`missionId \"${requestedId}\" collides with existing mission \"${snapshot.sourceMissionId.trim()}\"`,\n\t\t\t);\n\t\t}\n\t\treturn new MissionStore(\n\t\t\tapplyArtifactFeaturesToSnapshot(snapshot, config.rootDir),\n\t\t\tconfig,\n\t\t);\n\t}\n\n\tgetSnapshot(): MissionStoreSnapshot {\n\t\treturn normalizeSnapshot(this.snapshot);\n\t}\n\n\tsave(): MissionStoreSnapshot {\n\t\tconst snapshot = this.getSnapshot();\n\t\tconst path = getMissionStatePath(snapshot.missionId, this.rootDir);\n\t\tmkdirSync(getMissionDir(snapshot.missionId, this.rootDir), {\n\t\t\trecursive: true,\n\t\t});\n\t\treturn withMissionStateLock(path, () => {\n\t\t\tassertNoMissionIdCollision(path, snapshot);\n\t\t\tconst existing = existsSync(path)\n\t\t\t\t? normalizeSnapshot(readJsonFile<MissionStoreSnapshot>(path))\n\t\t\t\t: null;\n\t\t\tconst merged = existing\n\t\t\t\t? mergeSnapshots(\n\t\t\t\t\t\tthis.lastSavedSnapshot,\n\t\t\t\t\t\tsnapshot,\n\t\t\t\t\t\tapplyArtifactFeaturesToSnapshot(existing, this.rootDir),\n\t\t\t\t\t\t{ stateTouched: this.stateTouched },\n\t\t\t\t\t)\n\t\t\t\t: snapshot;\n\t\t\ttry {\n\t\t\t\twriteJsonFile(path, merged);\n\t\t\t\twriteMissionManifest(merged, this.rootDir);\n\t\t\t} catch (error) {\n\t\t\t\trestoreMissionStateFile(path, existing);\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\tthis.snapshot = merged;\n\t\t\tthis.lastSavedSnapshot = merged;\n\t\t\tthis.stateTouched = false;\n\t\t\treturn merged;\n\t\t});\n\t}\n\n\tsetState(state: MissionState, message?: string): MissionStoreSnapshot {\n\t\tif (isTerminalMissionState(this.snapshot.state)) {\n\t\t\tif (this.snapshot.state !== state) {\n\t\t\t\tthrow new Error(\n\t\t\t\t\t`mission ${this.snapshot.missionId} is already ${this.snapshot.state}`,\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn this.getSnapshot();\n\t\t}\n\t\tconst timestamp = this.now();\n\t\tconst progressType = stateToProgressType(state);\n\t\tconst previousSnapshot = this.snapshot;\n\t\tconst previousStateTouched = this.stateTouched;\n\t\tthis.stateTouched = true;\n\t\tthis.snapshot = {\n\t\t\t...this.snapshot,\n\t\t\tstate,\n\t\t\tprogressLog:\n\t\t\t\tprogressType === \"note\" && !message?.trim()\n\t\t\t\t\t? this.snapshot.progressLog\n\t\t\t\t\t: [\n\t\t\t\t\t\t\t...this.snapshot.progressLog,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\ttype: progressType,\n\t\t\t\t\t\t\t\ttimestamp,\n\t\t\t\t\t\t\t\tmessage: message?.trim() || defaultStateProgressMessage(state),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t],\n\t\t\tupdatedAt: timestamp,\n\t\t};\n\t\treturn this.saveOrRestore(previousSnapshot, previousStateTouched);\n\t}\n\n\tsetFeatures(features: readonly MissionFeature[]): MissionStoreSnapshot {\n\t\tconst previousSnapshot = this.snapshot;\n\t\tconst previousStateTouched = this.stateTouched;\n\t\tthis.snapshot = {\n\t\t\t...this.snapshot,\n\t\t\tfeatures: [...features],\n\t\t\tupdatedAt: this.now(),\n\t\t};\n\t\treturn this.saveOrRestore(previousSnapshot, previousStateTouched);\n\t}\n\n\tappendProgress(\n\t\tentry: Omit<MissionProgressEntry, \"timestamp\"> & { timestamp?: string },\n\t): MissionStoreSnapshot {\n\t\tconst timestamp = entry.timestamp ?? this.now();\n\t\tconst previousSnapshot = this.snapshot;\n\t\tconst previousStateTouched = this.stateTouched;\n\t\tthis.snapshot = {\n\t\t\t...this.snapshot,\n\t\t\tprogressLog: [...this.snapshot.progressLog, { ...entry, timestamp }],\n\t\t\tupdatedAt: timestamp,\n\t\t};\n\t\treturn this.saveOrRestore(previousSnapshot, previousStateTouched);\n\t}\n\n\tsetSessionTokenUsage(\n\t\tsessionId: string,\n\t\ttokenUsage: MissionTokenUsage,\n\t): MissionStoreSnapshot {\n\t\tconst previousSnapshot = this.snapshot;\n\t\tconst previousStateTouched = this.stateTouched;\n\t\tthis.snapshot = {\n\t\t\t...this.snapshot,\n\t\t\ttokenUsageBySessionId: {\n\t\t\t\t...this.snapshot.tokenUsageBySessionId,\n\t\t\t\t[sessionId]: tokenUsage,\n\t\t\t},\n\t\t\tupdatedAt: this.now(),\n\t\t};\n\t\treturn this.saveOrRestore(previousSnapshot, previousStateTouched);\n\t}\n\n\tprivate saveOrRestore(\n\t\tpreviousSnapshot: MissionStoreSnapshot,\n\t\tpreviousStateTouched: boolean,\n\t): MissionStoreSnapshot {\n\t\ttry {\n\t\t\treturn this.save();\n\t\t} catch (error) {\n\t\t\tthis.snapshot = previousSnapshot;\n\t\t\tthis.stateTouched = previousStateTouched;\n\t\t\tthrow error;\n\t\t}\n\t}\n}\n\nfunction restoreMissionStateFile(\n\tpath: string,\n\tprevious: MissionStoreSnapshot | null,\n): void {\n\tif (previous) {\n\t\twriteJsonFile(path, previous);\n\t\treturn;\n\t}\n\trmSync(path, { force: true });\n}\n\nfunction defaultStateProgressMessage(state: MissionState): string | undefined {\n\tswitch (state) {\n\t\tcase \"running\":\n\t\t\treturn \"Mission started\";\n\t\tcase \"blocked\":\n\t\t\treturn \"Mission is blocked\";\n\t\tcase \"completed\":\n\t\t\treturn \"Mission completed\";\n\t\tdefault:\n\t\t\treturn undefined;\n\t}\n}\n\nfunction withMissionStateLock<T>(path: string, operation: () => T): T {\n\tconst lockPath = `${path}.lock`;\n\tconst startedAt = Date.now();\n\twhile (true) {\n\t\ttry {\n\t\t\tmkdirSync(lockPath);\n\t\t\twriteMissionLockOwner(lockPath);\n\t\t\tbreak;\n\t\t} catch (error) {\n\t\t\tconst code = (error as NodeJS.ErrnoException).code;\n\t\t\tif (code !== \"EEXIST\") throw error;\n\t\t\tif (recoverStaleMissionStateLock(lockPath)) continue;\n\t\t\tif (Date.now() - startedAt > 5000) {\n\t\t\t\tthrow new Error(`timed out waiting for mission state lock: ${path}`);\n\t\t\t}\n\t\t\tsleepSync(25);\n\t\t}\n\t}\n\ttry {\n\t\treturn operation();\n\t} finally {\n\t\trmSync(lockPath, { recursive: true, force: true });\n\t}\n}\n\nfunction writeMissionLockOwner(lockPath: string): void {\n\ttry {\n\t\twriteJsonFile(join(lockPath, \"owner.json\"), {\n\t\t\tpid: process.pid,\n\t\t\tcreatedAt: new Date().toISOString(),\n\t\t});\n\t} catch {\n\t\t// Best-effort metadata: lock ownership should not make acquisition fail.\n\t}\n}\n\nfunction recoverStaleMissionStateLock(lockPath: string): boolean {\n\ttry {\n\t\tconst stats = statSync(lockPath);\n\t\tif (Date.now() - stats.mtimeMs <= MISSION_STATE_LOCK_STALE_MS) {\n\t\t\treturn false;\n\t\t}\n\t\tconst owner = readJsonFile<{ pid?: unknown } | null>(\n\t\t\tjoin(lockPath, \"owner.json\"),\n\t\t\t{ fallback: null },\n\t\t);\n\t\tif (typeof owner?.pid === \"number\" && isProcessAlive(owner.pid)) {\n\t\t\treturn false;\n\t\t}\n\t\trmSync(lockPath, { recursive: true, force: true });\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction isProcessAlive(pid: number): boolean {\n\tif (!Number.isInteger(pid) || pid <= 0) return false;\n\ttry {\n\t\tprocess.kill(pid, 0);\n\t\treturn true;\n\t} catch (error) {\n\t\treturn (error as NodeJS.ErrnoException).code === \"EPERM\";\n\t}\n}\n\nfunction sleepSync(ms: number): void {\n\tconst buffer = new SharedArrayBuffer(4);\n\tAtomics.wait(new Int32Array(buffer), 0, 0, ms);\n}\n\nfunction mergeSnapshots(\n\tbase: MissionStoreSnapshot,\n\tintended: MissionStoreSnapshot,\n\texisting: MissionStoreSnapshot,\n\toptions: { stateTouched?: boolean } = {},\n): MissionStoreSnapshot {\n\tconst state = mergeMissionState(\n\t\tbase,\n\t\tintended,\n\t\texisting,\n\t\toptions.stateTouched,\n\t);\n\tconst progressLog = mergeProgressLog(\n\t\texisting.progressLog,\n\t\tbase.progressLog,\n\t\twithoutRejectedStateTransitionProgress(\n\t\t\tbase,\n\t\t\tintended,\n\t\t\tstate,\n\t\t\toptions.stateTouched,\n\t\t),\n\t);\n\tconst tokenUsageBySessionId = { ...existing.tokenUsageBySessionId };\n\tfor (const [sessionId, usage] of Object.entries(\n\t\tintended.tokenUsageBySessionId,\n\t)) {\n\t\tif (!jsonEqual(usage, base.tokenUsageBySessionId[sessionId])) {\n\t\t\ttokenUsageBySessionId[sessionId] = usage;\n\t\t}\n\t}\n\treturn normalizeSnapshot({\n\t\t...existing,\n\t\ttitle: fieldChanged(intended.title, base.title)\n\t\t\t? intended.title\n\t\t\t: existing.title,\n\t\tstate,\n\t\tfeatures: mergeFeatures(\n\t\t\tbase.features,\n\t\t\tintended.features,\n\t\t\texisting.features,\n\t\t),\n\t\tprogressLog,\n\t\ttokenUsageBySessionId,\n\t\tupdatedAt: maxIsoTimestamp(existing.updatedAt, intended.updatedAt),\n\t});\n}\n\nfunction withoutRejectedStateTransitionProgress(\n\tbase: MissionStoreSnapshot,\n\tintended: MissionStoreSnapshot,\n\tmergedState: MissionState,\n\tstateTouched = false,\n): readonly MissionProgressEntry[] {\n\tconst intendedChanged =\n\t\tstateTouched || fieldChanged(intended.state, base.state);\n\tif (!intendedChanged || mergedState === intended.state) {\n\t\treturn intended.progressLog;\n\t}\n\tconst lastEntry = intended.progressLog.at(-1);\n\tif (!lastEntry) return intended.progressLog;\n\tconst baseKeys = new Set(base.progressLog.map(progressEntryKey));\n\tif (\n\t\tbaseKeys.has(progressEntryKey(lastEntry)) ||\n\t\tlastEntry.timestamp !== intended.updatedAt ||\n\t\tlastEntry.type !== stateToProgressType(intended.state)\n\t) {\n\t\treturn intended.progressLog;\n\t}\n\treturn intended.progressLog.slice(0, -1);\n}\n\nfunction mergeMissionState(\n\tbase: MissionStoreSnapshot,\n\tintended: MissionStoreSnapshot,\n\texisting: MissionStoreSnapshot,\n\tstateTouched = false,\n): MissionState {\n\tconst intendedChanged =\n\t\tstateTouched || fieldChanged(intended.state, base.state);\n\tif (!intendedChanged) {\n\t\treturn existing.state;\n\t}\n\tif (\n\t\tisTerminalMissionState(existing.state) &&\n\t\texisting.state !== intended.state\n\t) {\n\t\treturn existing.state;\n\t}\n\tif (\n\t\t!fieldChanged(existing.state, base.state) ||\n\t\tjsonEqual(intended.state, existing.state)\n\t) {\n\t\treturn intended.state;\n\t}\n\treturn existing.state;\n}\n\nfunction isTerminalMissionState(state: MissionState): boolean {\n\treturn state === \"completed\" || state === \"failed\";\n}\n\nfunction mergeFeatures(\n\tbase: readonly MissionFeature[],\n\tintended: readonly MissionFeature[],\n\texisting: readonly MissionFeature[],\n): MissionFeature[] {\n\tconst baseById = new Map(\n\t\tbase.map((feature) => [feature.id, feature] as const),\n\t);\n\tconst intendedById = new Map(\n\t\tintended.map((feature) => [feature.id, feature] as const),\n\t);\n\tconst existingById = new Map(\n\t\texisting.map((feature) => [feature.id, feature] as const),\n\t);\n\tconst orderedIds = Array.from(\n\t\tnew Set([\n\t\t\t...existing.map((feature) => feature.id),\n\t\t\t...intended.map((feature) => feature.id),\n\t\t]),\n\t);\n\tconst merged: MissionFeature[] = [];\n\tfor (const featureId of orderedIds) {\n\t\tconst baseFeature = baseById.get(featureId);\n\t\tconst intendedFeature = intendedById.get(featureId);\n\t\tconst existingFeature = existingById.get(featureId);\n\t\tconst intendedChanged = !jsonEqual(intendedFeature, baseFeature);\n\t\tconst existingChanged = !jsonEqual(existingFeature, baseFeature);\n\t\tif (!intendedChanged) {\n\t\t\tif (existingFeature) merged.push(existingFeature);\n\t\t\tcontinue;\n\t\t}\n\t\tif (!existingChanged || jsonEqual(intendedFeature, existingFeature)) {\n\t\t\tif (intendedFeature) merged.push(intendedFeature);\n\t\t\tcontinue;\n\t\t}\n\t\tthrow new Error(\n\t\t\t`mission feature ${featureId} changed concurrently; reload before saving`,\n\t\t);\n\t}\n\treturn merged;\n}\n\nfunction mergeProgressLog(\n\texisting: readonly MissionProgressEntry[],\n\tbase: readonly MissionProgressEntry[],\n\tintended: readonly MissionProgressEntry[],\n): MissionProgressEntry[] {\n\tconst baseKeys = new Set(base.map(progressEntryKey));\n\tconst existingKeys = new Set(existing.map(progressEntryKey));\n\tconst next = [...existing];\n\tfor (const entry of intended) {\n\t\tconst key = progressEntryKey(entry);\n\t\tif (baseKeys.has(key) || existingKeys.has(key)) continue;\n\t\tnext.push(entry);\n\t\texistingKeys.add(key);\n\t}\n\treturn next.sort((left, right) =>\n\t\tleft.timestamp.localeCompare(right.timestamp),\n\t);\n}\n\nfunction progressEntryKey(entry: MissionProgressEntry): string {\n\treturn JSON.stringify(entry);\n}\n\nfunction fieldChanged<T>(intended: T, base: T): boolean {\n\treturn !jsonEqual(intended, base);\n}\n\nfunction jsonEqual(left: unknown, right: unknown): boolean {\n\treturn JSON.stringify(left) === JSON.stringify(right);\n}\n\nfunction maxIsoTimestamp(left: string, right: string): string {\n\treturn left.localeCompare(right) >= 0 ? left : right;\n}\n\nfunction stateToProgressType(\n\tstate: MissionState,\n): MissionProgressEntry[\"type\"] {\n\tswitch (state) {\n\t\tcase \"running\":\n\t\t\treturn \"mission_started\";\n\t\tcase \"blocked\":\n\t\t\treturn \"mission_blocked\";\n\t\tcase \"completed\":\n\t\t\treturn \"mission_completed\";\n\t\tdefault:\n\t\t\treturn \"note\";\n\t}\n}\n\nexport function listMissionStoreSnapshots(\n\trootDir?: string,\n): MissionStoreSnapshot[] {\n\tconst root = getMissionStoreRoot(rootDir);\n\tif (!existsSync(root)) return [];\n\treturn readdirSync(root, { withFileTypes: true })\n\t\t.filter((entry) => entry.isDirectory())\n\t\t.flatMap((entry) => {\n\t\t\ttry {\n\t\t\t\tconst path = join(root, entry.name, \"state.json\");\n\t\t\t\tif (!existsSync(path)) return [];\n\t\t\t\tconst snapshot = readJsonFile<MissionStoreSnapshot | null>(path, {\n\t\t\t\t\tfallback: null,\n\t\t\t\t\trotateOnParseFail: true,\n\t\t\t\t});\n\t\t\t\treturn snapshot\n\t\t\t\t\t? [normalizeSnapshot(applyArtifactFeaturesToSnapshot(snapshot, root))]\n\t\t\t\t\t: [];\n\t\t\t} catch {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t})\n\t\t.sort((left, right) => right.updatedAt.localeCompare(left.updatedAt));\n}\n\nfunction applyArtifactFeaturesToSnapshot(\n\tsnapshot: MissionStoreSnapshot,\n\trootDir?: string,\n): MissionStoreSnapshot {\n\tconst featuresPath = join(\n\t\tgetMissionDir(snapshot.missionId, rootDir),\n\t\t\"features.json\",\n\t);\n\tif (!existsSync(featuresPath)) return snapshot;\n\tconst manifest = readJsonFile<MissionManifest | null>(featuresPath, {\n\t\tfallback: null,\n\t\trotateOnParseFail: true,\n\t});\n\tconst features = getValidArtifactFeatures(manifest, snapshot);\n\treturn features\n\t\t? {\n\t\t\t\t...snapshot,\n\t\t\t\tfeatures,\n\t\t\t\tupdatedAt:\n\t\t\t\t\ttypeof (manifest as { updatedAt?: unknown }).updatedAt === \"string\"\n\t\t\t\t\t\t? (manifest as { updatedAt: string }).updatedAt\n\t\t\t\t\t\t: snapshot.updatedAt,\n\t\t\t}\n\t\t: snapshot;\n}\n\nfunction getValidArtifactFeatures(\n\tvalue: unknown,\n\tsnapshot: MissionStoreSnapshot,\n): MissionFeature[] | null {\n\tif (!value || typeof value !== \"object\") return null;\n\tconst record = value as Record<string, unknown>;\n\tif (typeof record.version !== \"number\") return null;\n\tif (typeof record.missionId !== \"string\") return null;\n\tlet missionId: string;\n\ttry {\n\t\tmissionId = sanitizeMissionId(record.missionId);\n\t} catch {\n\t\treturn null;\n\t}\n\tif (missionId !== snapshot.missionId) return null;\n\tif (\n\t\ttypeof record.updatedAt !== \"string\" ||\n\t\tNumber.isNaN(Date.parse(record.updatedAt)) ||\n\t\tDate.parse(record.updatedAt) < Date.parse(snapshot.updatedAt)\n\t) {\n\t\treturn null;\n\t}\n\tif (!Array.isArray(record.features)) return null;\n\tif (record.features.length === 0 && snapshot.features.length > 0) return null;\n\tconst featureIds = new Set<string>();\n\tfor (const feature of record.features) {\n\t\tif (!isMissionFeature(feature)) return null;\n\t\tif (featureIds.has(feature.id)) return null;\n\t\tfeatureIds.add(feature.id);\n\t}\n\treturn record.features as MissionFeature[];\n}\n\nfunction assertNoMissionIdCollision(\n\tpath: string,\n\tsnapshot: MissionStoreSnapshot,\n): void {\n\tif (!existsSync(path)) return;\n\tconst existing = readJsonFile<MissionStoreSnapshot | null>(path, {\n\t\tfallback: null,\n\t});\n\tif (!existing?.sourceMissionId || !snapshot.sourceMissionId) return;\n\tif (existing.sourceMissionId !== snapshot.sourceMissionId) {\n\t\tthrow new Error(\n\t\t\t`missionId collision: ${snapshot.sourceMissionId} maps to existing mission ${existing.sourceMissionId}`,\n\t\t);\n\t}\n}\n\nfunction assertMissionCreateTargetAvailable(\n\tmissionId: string,\n\trootDir?: string,\n): void {\n\tconst statePath = getMissionStatePath(missionId, rootDir);\n\tif (existsSync(statePath)) {\n\t\tconst snapshot = readJsonFile<MissionStoreSnapshot>(statePath, {\n\t\t\trotateOnParseFail: true,\n\t\t});\n\t\tconst requestedId = normalizeMissionIdInput(missionId);\n\t\tif (\n\t\t\tsnapshot.sourceMissionId?.trim() &&\n\t\t\tsnapshot.sourceMissionId.trim() !== requestedId\n\t\t) {\n\t\t\tthrow new Error(\n\t\t\t\t`missionId \"${requestedId}\" collides with existing mission \"${snapshot.sourceMissionId.trim()}\"`,\n\t\t\t);\n\t\t}\n\t\tthrow new Error(`mission already exists: ${sanitizeMissionId(missionId)}`);\n\t}\n\tconst missionDir = getMissionDir(missionId, rootDir);\n\tif (existsSync(missionDir) && readdirSync(missionDir).length > 0) {\n\t\tthrow new Error(\n\t\t\t`mission already exists without durable state: ${sanitizeMissionId(missionId)}`,\n\t\t);\n\t}\n}\n\nfunction writeMissionManifest(\n\tsnapshot: MissionStoreSnapshot,\n\trootDir?: string,\n): void {\n\tconst path = join(\n\t\tgetMissionDir(snapshot.missionId, rootDir),\n\t\t\"features.json\",\n\t);\n\tconst existing = readJsonFile<MissionManifest | null>(path, {\n\t\tfallback: null,\n\t\trotateOnParseFail: true,\n\t});\n\tif (isNewerMissionManifest(existing, snapshot)) return;\n\twriteJsonFile(path, {\n\t\tversion:\n\t\t\ttypeof existing?.version === \"number\"\n\t\t\t\t? existing.version\n\t\t\t\t: MISSION_MANIFEST_VERSION,\n\t\tmissionId: snapshot.missionId,\n\t\tmilestones: Array.isArray(existing?.milestones) ? existing.milestones : [],\n\t\tfeatures: snapshot.features,\n\t\tcreatedAt:\n\t\t\ttypeof existing?.createdAt === \"string\"\n\t\t\t\t? existing.createdAt\n\t\t\t\t: snapshot.createdAt,\n\t\tupdatedAt: snapshot.updatedAt,\n\t});\n}\n\nfunction isNewerMissionManifest(\n\tmanifest: MissionManifest | null,\n\tsnapshot: MissionStoreSnapshot,\n): boolean {\n\treturn Boolean(\n\t\tgetValidArtifactFeatures(manifest, snapshot) &&\n\t\t\ttypeof manifest?.updatedAt === \"string\" &&\n\t\t\tDate.parse(manifest.updatedAt) > Date.parse(snapshot.updatedAt),\n\t);\n}\n"]}
@@ -44,7 +44,7 @@
44
44
  *
45
45
  * - `MAESTRO_MODE`: Override the default mode at startup
46
46
  */
47
- import type { SubagentType } from "./subagent-specs.js";
47
+ import { type SubagentType } from "./subagent-specs.js";
48
48
  /**
49
49
  * Available agent modes representing different quality/speed/cost tradeoffs.
50
50
  *
@@ -53,7 +53,7 @@ import type { SubagentType } from "./subagent-specs.js";
53
53
  * - "free": Cost-optimized, uses haiku-class models for simple operations
54
54
  * - "custom": User-defined settings for specialized workflows
55
55
  */
56
- export type AgentMode = "smart" | "rush" | "free" | "custom" | "frontier" | "replay";
56
+ export type AgentMode = "low" | "medium" | "high" | "ultra" | "smart" | "rush" | "free" | "custom" | "frontier" | "replay";
57
57
  /**
58
58
  * Model tier representing capability levels that map to provider-specific models.
59
59
  *
@@ -185,7 +185,7 @@ export declare function getModelForTier(tier: ModelTier, provider?: ModelProvide
185
185
  /**
186
186
  * Resolve the concrete model/provider a subagent should use in a mode.
187
187
  */
188
- export declare function resolveSubagentDispatch(mode: AgentMode, type: SubagentType, provider?: ModelProvider): ResolvedSubagentDispatch;
188
+ export declare function resolveSubagentDispatch(mode: AgentMode, type: SubagentType | string, provider?: ModelProvider): ResolvedSubagentDispatch;
189
189
  /**
190
190
  * Get the configuration for a mode.
191
191
  */
@@ -1 +1 @@
1
- {"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/agent/modes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modes.d.ts","sourceRoot":"","sources":["../../src/agent/modes.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,7 @@
46
46
  */
47
47
  import { recordStagedRolloutSurfaceUsage } from "../telemetry.js";
48
48
  import { createLogger } from "../utils/logger.js";
49
+ import { parseSubagentType } from "./subagent-specs.js";
49
50
  // Logger scoped to agent modes for debugging mode transitions
50
51
  const logger = createLogger("agent:modes");
51
52
  const PROVIDERS = [
@@ -67,6 +68,62 @@ const PROVIDERS = [
67
68
  * - **custom**: Balanced defaults that users can override
68
69
  */
69
70
  export const MODE_CONFIGS = {
71
+ low: {
72
+ displayName: "Low",
73
+ description: "Bounded, obvious, and reversible work",
74
+ primaryTier: "haiku",
75
+ fallbackTier: "haiku",
76
+ enableThinking: false,
77
+ reasoningEffort: "low",
78
+ thinkingBudget: 2000,
79
+ useExtendedContext: false,
80
+ maxRetries: 1,
81
+ costMultiplier: 0.1,
82
+ speedHint: 10,
83
+ visible: true,
84
+ },
85
+ medium: {
86
+ displayName: "Medium",
87
+ description: "Ordinary repository work with moderate uncertainty",
88
+ primaryTier: "opus",
89
+ fallbackTier: "haiku",
90
+ enableThinking: true,
91
+ reasoningEffort: "medium",
92
+ thinkingBudget: 16000,
93
+ useExtendedContext: true,
94
+ maxRetries: 2,
95
+ costMultiplier: 1,
96
+ speedHint: 5,
97
+ visible: true,
98
+ },
99
+ high: {
100
+ displayName: "High",
101
+ description: "Ambiguous or cross-cutting work where misses are expensive",
102
+ primaryTier: "opus",
103
+ fallbackTier: "sonnet",
104
+ enableThinking: true,
105
+ reasoningEffort: "xhigh",
106
+ thinkingBudget: 20000,
107
+ useExtendedContext: true,
108
+ maxRetries: 2,
109
+ costMultiplier: 1.25,
110
+ speedHint: 4,
111
+ visible: true,
112
+ },
113
+ ultra: {
114
+ displayName: "Ultra",
115
+ description: "Migrations, architecture, and discovery-heavy work",
116
+ primaryTier: "opus",
117
+ fallbackTier: "opus",
118
+ enableThinking: true,
119
+ reasoningEffort: "xhigh",
120
+ thinkingBudget: 32000,
121
+ useExtendedContext: true,
122
+ maxRetries: 3,
123
+ costMultiplier: 1.5,
124
+ speedHint: 3,
125
+ visible: true,
126
+ },
70
127
  // Smart mode: Maximum capability for complex reasoning tasks
71
128
  smart: {
72
129
  displayName: "Smart",
@@ -87,6 +144,7 @@ export const MODE_CONFIGS = {
87
144
  coder: { model: "openai-codex/gpt-5.5", reasoningEffort: "medium" },
88
145
  reviewer: { model: "sonnet", reasoningEffort: "medium" },
89
146
  researcher: { model: "sonnet", reasoningEffort: "medium" },
147
+ "browser-qa": { model: "sonnet", reasoningEffort: "medium" },
90
148
  minimal: { model: "haiku", reasoningEffort: "low" },
91
149
  },
92
150
  },
@@ -110,6 +168,7 @@ export const MODE_CONFIGS = {
110
168
  coder: { model: "sonnet", reasoningEffort: "low" },
111
169
  reviewer: { model: "haiku", reasoningEffort: "low" },
112
170
  researcher: { model: "haiku", reasoningEffort: "low" },
171
+ "browser-qa": { model: "sonnet", reasoningEffort: "low" },
113
172
  minimal: { model: "haiku", reasoningEffort: "low" },
114
173
  },
115
174
  },
@@ -133,6 +192,7 @@ export const MODE_CONFIGS = {
133
192
  coder: { model: "haiku", reasoningEffort: "low" },
134
193
  reviewer: { model: "haiku", reasoningEffort: "low" },
135
194
  researcher: { model: "haiku", reasoningEffort: "low" },
195
+ "browser-qa": { model: "haiku", reasoningEffort: "low" },
136
196
  minimal: { model: "haiku", reasoningEffort: "low" },
137
197
  },
138
198
  },
@@ -170,6 +230,7 @@ export const MODE_CONFIGS = {
170
230
  coder: { model: "openai-codex/gpt-5.5", reasoningEffort: "high" },
171
231
  reviewer: { model: "openai-codex/gpt-5.5", reasoningEffort: "medium" },
172
232
  researcher: { model: "sonnet", reasoningEffort: "medium" },
233
+ "browser-qa": { model: "sonnet", reasoningEffort: "high" },
173
234
  minimal: { model: "haiku", reasoningEffort: "low" },
174
235
  },
175
236
  rolloutOwner: "agent-runtime",
@@ -193,6 +254,7 @@ export const MODE_CONFIGS = {
193
254
  coder: { model: "haiku", reasoningEffort: "low" },
194
255
  reviewer: { model: "haiku", reasoningEffort: "low" },
195
256
  researcher: { model: "haiku", reasoningEffort: "low" },
257
+ "browser-qa": { model: "haiku", reasoningEffort: "low" },
196
258
  minimal: { model: "haiku", reasoningEffort: "low" },
197
259
  },
198
260
  rolloutOwner: "agent-evals",
@@ -273,7 +335,8 @@ function defaultReasoningEffort(config) {
273
335
  */
274
336
  export function resolveSubagentDispatch(mode, type, provider = "openai-codex") {
275
337
  const config = getModeConfig(mode);
276
- const dispatch = config.subagents?.[type];
338
+ const resolvedType = parseSubagentType(type) ?? "coder";
339
+ const dispatch = config.subagents?.[resolvedType];
277
340
  const source = dispatch ? "mode" : "fallback";
278
341
  const requestedModel = dispatch?.model ?? config.primaryTier;
279
342
  const reasoningEffort = dispatch?.reasoningEffort ?? defaultReasoningEffort(config);
@@ -281,7 +344,7 @@ export function resolveSubagentDispatch(mode, type, provider = "openai-codex") {
281
344
  const resolvedProvider = dispatch?.provider ?? provider;
282
345
  return {
283
346
  mode,
284
- type,
347
+ type: resolvedType,
285
348
  provider: resolvedProvider,
286
349
  model: getModelForTier(requestedModel, resolvedProvider),
287
350
  modelTier: requestedModel,
@@ -297,7 +360,7 @@ export function resolveSubagentDispatch(mode, type, provider = "openai-codex") {
297
360
  const resolvedProvider = dispatch?.provider ?? explicit.provider ?? provider;
298
361
  return {
299
362
  mode,
300
- type,
363
+ type: resolvedType,
301
364
  provider: resolvedProvider,
302
365
  model: explicit.model,
303
366
  reasoningEffort,
@@ -1 +1 @@
1
- {"version":3,"file":"modes.js","sourceRoot":"","sources":["../../src/agent/modes.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Agent Modes - Different operating modes for the agent.\n *\n * This module implements a tiered model selection system inspired by Amp's\n * smart/rush/free modes. Each mode represents a different balance between\n * response quality, speed, and cost:\n *\n * - **smart**: Uses the highest capability model (opus) for complex reasoning\n * tasks. Enables thinking/reasoning mode with extended context windows.\n * Best for: Architecture decisions, complex refactoring, debugging.\n *\n * - **rush**: Uses mid-tier models (sonnet) for faster responses. Disables\n * thinking mode to reduce latency. Best for: Quick fixes, simple edits,\n * straightforward code generation.\n *\n * - **free**: Uses the most cost-effective models (haiku) with minimal\n * features. Best for: Simple questions, file searches, documentation\n * lookups where speed and cost matter more than depth.\n *\n * - **custom**: User-defined configuration allowing fine-tuned control\n * over model selection and feature toggles.\n *\n * ## Architecture\n *\n * The mode system uses a two-level abstraction:\n * 1. **ModelTier** (opus/sonnet/haiku): Logical capability levels\n * 2. **ModelMapping**: Provider-specific model IDs for each tier\n *\n * This allows the same mode configuration to work across different\n * LLM providers (Anthropic, OpenAI, Google) by mapping tiers to\n * provider-specific model identifiers.\n *\n * ## Usage\n *\n * ```typescript\n * // Set mode based on task\n * setCurrentMode(suggestMode(\"refactor the auth module\")); // → \"smart\"\n *\n * // Get model for current provider\n * const model = getModelForMode(getCurrentMode(), \"anthropic\");\n * ```\n *\n * ## Environment Variables\n *\n * - `MAESTRO_MODE`: Override the default mode at startup\n */\n\nimport { recordStagedRolloutSurfaceUsage } from \"../telemetry.js\";\nimport { createLogger } from \"../utils/logger.js\";\nimport type { SubagentType } from \"./subagent-specs.js\";\n\n// Logger scoped to agent modes for debugging mode transitions\nconst logger = createLogger(\"agent:modes\");\n\n/**\n * Available agent modes representing different quality/speed/cost tradeoffs.\n *\n * - \"smart\": Maximum capability, uses opus-class models with reasoning enabled\n * - \"rush\": Balanced speed, uses sonnet-class models without reasoning overhead\n * - \"free\": Cost-optimized, uses haiku-class models for simple operations\n * - \"custom\": User-defined settings for specialized workflows\n */\nexport type AgentMode =\n\t| \"smart\"\n\t| \"rush\"\n\t| \"free\"\n\t| \"custom\"\n\t| \"frontier\"\n\t| \"replay\";\n\n/**\n * Model tier representing capability levels that map to provider-specific models.\n *\n * The tier abstraction allows the same configuration to work across providers:\n * - \"opus\": Highest capability (claude-opus, gpt-5.2, gemini-thinking)\n * - \"sonnet\": Balanced capability (claude-sonnet, gpt-4o, gemini-flash)\n * - \"haiku\": Fast/efficient (claude-haiku, gpt-4o-mini, gemini-flash-lite)\n */\nexport type ModelTier = \"opus\" | \"sonnet\" | \"haiku\";\n\n/** Supported model providers for tier and subagent dispatch. */\nexport type ModelProvider = \"anthropic\" | \"openai\" | \"openai-codex\" | \"google\";\n\n/** Reasoning budget hint passed to subagents that support it. */\nexport type ReasoningEffort = \"low\" | \"medium\" | \"high\" | \"xhigh\";\n\n/** Where the resolved subagent dispatch came from. */\nexport type DispatchSource = \"mode\" | \"fallback\";\n\n/**\n * Per-subagent model routing override.\n *\n * `model` can be a logical model tier (`opus`, `sonnet`, `haiku`) or an\n * explicit model ID. Explicit model IDs may be provider-prefixed, for example\n * `openai-codex/gpt-5.5`.\n */\nexport interface SubagentDispatch {\n\tmodel: ModelTier | string;\n\tprovider?: ModelProvider;\n\treasoningEffort?: ReasoningEffort;\n\tmaxTokens?: number;\n\ttemperature?: number;\n\ttimeoutMs?: number;\n\tpromptTemplate?: string;\n}\n\n/** Fully resolved model routing for one subagent invocation. */\nexport interface ResolvedSubagentDispatch {\n\tmode: AgentMode;\n\ttype: SubagentType;\n\tprovider: ModelProvider;\n\tmodel: string;\n\tmodelTier?: ModelTier;\n\treasoningEffort: ReasoningEffort;\n\tmaxTokens?: number;\n\ttemperature?: number;\n\ttimeoutMs?: number;\n\tpromptTemplate?: string;\n\tsource: DispatchSource;\n}\n\n/**\n * Mode configuration that determines model selection and behavior.\n *\n * Each mode has a complete configuration that controls:\n * - Which model tier to use (primary and fallback)\n * - Whether to enable extended reasoning/thinking\n * - Context and retry limits\n * - UI hints for cost/speed display\n */\nexport interface ModeConfig {\n\t/** Display name for the mode */\n\tdisplayName: string;\n\t/** Description of what this mode does */\n\tdescription: string;\n\t/** Primary model tier to use */\n\tprimaryTier: ModelTier;\n\t/** Fallback model tier if primary is unavailable */\n\tfallbackTier: ModelTier;\n\t/** Whether to enable thinking/reasoning */\n\tenableThinking: boolean;\n\t/** Default reasoning effort for mode-level and fallback subagent routing. */\n\treasoningEffort?: ReasoningEffort;\n\t/** Maximum thinking budget (tokens) */\n\tthinkingBudget: number;\n\t/** Whether to use extended context */\n\tuseExtendedContext: boolean;\n\t/** Retry configuration */\n\tmaxRetries: number;\n\t/** Cost multiplier hint (for UI display) */\n\tcostMultiplier: number;\n\t/** Speed hint (1-10, higher is faster) */\n\tspeedHint: number;\n\t/** Whether this mode is shown in default user-facing mode lists. */\n\tvisible: boolean;\n\t/** Optional dispatch table for mode-specific subagent routing. */\n\tsubagents?: Partial<Record<SubagentType, SubagentDispatch>>;\n\t/** Owner responsible for promotion or removal when hidden. */\n\trolloutOwner?: string;\n}\n\n/**\n * Model mapping for different providers.\n */\nexport interface ModelMapping {\n\tanthropic: string;\n\topenai?: string;\n\t\"openai-codex\"?: string;\n\tgoogle?: string;\n}\n\nconst PROVIDERS: ModelProvider[] = [\n\t\"anthropic\",\n\t\"openai\",\n\t\"openai-codex\",\n\t\"google\",\n];\n\n/**\n * Default mode configurations defining the behavior of each agent mode.\n *\n * These configurations are the canonical source of truth for how each mode\n * behaves. The settings are carefully tuned based on model capabilities\n * and typical use case requirements:\n *\n * - **smart**: Full-featured for complex tasks (16k thinking budget, 3 retries)\n * - **rush**: Optimized for speed (no thinking, 2 retries, smaller context)\n * - **free**: Minimal resource usage (no thinking, 1 retry, no extended context)\n * - **custom**: Balanced defaults that users can override\n */\nexport const MODE_CONFIGS: Record<AgentMode, ModeConfig> = {\n\t// Smart mode: Maximum capability for complex reasoning tasks\n\tsmart: {\n\t\tdisplayName: \"Smart\",\n\t\tdescription: \"Best quality, uses opus for complex tasks\",\n\t\tprimaryTier: \"opus\",\n\t\tfallbackTier: \"sonnet\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"medium\",\n\t\tthinkingBudget: 16000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 3,\n\t\tcostMultiplier: 1.0,\n\t\tspeedHint: 5,\n\t\tvisible: true,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"opus\", reasoningEffort: \"high\" },\n\t\t\tcoder: { model: \"openai-codex/gpt-5.5\", reasoningEffort: \"medium\" },\n\t\t\treviewer: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\tresearcher: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t},\n\t// Rush mode: Speed-optimized for quick iterations\n\trush: {\n\t\tdisplayName: \"Rush\",\n\t\tdescription: \"Fast responses, uses sonnet for speed\",\n\t\tprimaryTier: \"sonnet\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: false,\n\t\treasoningEffort: \"low\",\n\t\tthinkingBudget: 4000,\n\t\tuseExtendedContext: false,\n\t\tmaxRetries: 2,\n\t\tcostMultiplier: 0.5,\n\t\tspeedHint: 8,\n\t\tvisible: true,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"sonnet\", reasoningEffort: \"low\" },\n\t\t\tcoder: { model: \"sonnet\", reasoningEffort: \"low\" },\n\t\t\treviewer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tresearcher: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t},\n\t// Free mode: Cost-optimized for simple tasks\n\tfree: {\n\t\tdisplayName: \"Free\",\n\t\tdescription: \"Most cost-effective, uses haiku\",\n\t\tprimaryTier: \"haiku\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: false,\n\t\treasoningEffort: \"low\",\n\t\tthinkingBudget: 2000,\n\t\tuseExtendedContext: false,\n\t\tmaxRetries: 1,\n\t\tcostMultiplier: 0.1,\n\t\tspeedHint: 10,\n\t\tvisible: true,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tcoder: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\treviewer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tresearcher: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t},\n\t// Custom mode: User-configurable defaults (can be overridden at runtime)\n\tcustom: {\n\t\tdisplayName: \"Custom\",\n\t\tdescription: \"User-defined configuration\",\n\t\tprimaryTier: \"sonnet\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"medium\",\n\t\tthinkingBudget: 8000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 2,\n\t\tcostMultiplier: 0.7,\n\t\tspeedHint: 6,\n\t\tvisible: true,\n\t},\n\tfrontier: {\n\t\tdisplayName: \"Frontier\",\n\t\tdescription: \"Experimental high-capability orchestration mode\",\n\t\tprimaryTier: \"opus\",\n\t\tfallbackTier: \"sonnet\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"high\",\n\t\tthinkingBudget: 20000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 3,\n\t\tcostMultiplier: 1.25,\n\t\tspeedHint: 4,\n\t\tvisible: false,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\tplanner: { model: \"opus\", reasoningEffort: \"xhigh\" },\n\t\t\tcoder: { model: \"openai-codex/gpt-5.5\", reasoningEffort: \"high\" },\n\t\t\treviewer: { model: \"openai-codex/gpt-5.5\", reasoningEffort: \"medium\" },\n\t\t\tresearcher: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t\trolloutOwner: \"agent-runtime\",\n\t},\n\treplay: {\n\t\tdisplayName: \"Replay\",\n\t\tdescription: \"Deterministic scripted scenario replay\",\n\t\tprimaryTier: \"haiku\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: false,\n\t\treasoningEffort: \"low\",\n\t\tthinkingBudget: 0,\n\t\tuseExtendedContext: false,\n\t\tmaxRetries: 0,\n\t\tcostMultiplier: 0,\n\t\tspeedHint: 10,\n\t\tvisible: false,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tcoder: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\treviewer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tresearcher: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t\trolloutOwner: \"agent-evals\",\n\t},\n};\n\n/**\n * Model mappings by tier for each provider.\n *\n * This lookup table maps abstract capability tiers to concrete model IDs\n * for each supported LLM provider. When adding new providers or updating\n * model versions, update this table to maintain consistent tier behavior.\n *\n * Note: Model IDs include version dates to ensure reproducibility.\n * Update these periodically as providers release improved versions.\n */\nexport const MODEL_BY_TIER: Record<ModelTier, ModelMapping> = {\n\t// Opus tier: Highest capability models with advanced reasoning\n\topus: {\n\t\tanthropic: \"claude-opus-4-6\",\n\t\topenai: \"gpt-5.2\",\n\t\t\"openai-codex\": \"gpt-5.5\",\n\t\tgoogle: \"gemini-2.0-flash-thinking-exp\",\n\t},\n\t// Sonnet tier: Balanced performance models for general use\n\tsonnet: {\n\t\tanthropic: \"claude-sonnet-4-5-20250929\",\n\t\topenai: \"gpt-4o\",\n\t\t\"openai-codex\": \"gpt-5.4\",\n\t\tgoogle: \"gemini-2.0-flash-exp\",\n\t},\n\t// Haiku tier: Fast, efficient models for simple tasks\n\thaiku: {\n\t\tanthropic: \"claude-haiku-4-5-20251001\",\n\t\topenai: \"gpt-4o-mini\",\n\t\t\"openai-codex\": \"gpt-5.4-mini\",\n\t\tgoogle: \"gemini-2.0-flash-lite-exp\",\n\t},\n};\n\n/**\n * Get the model ID for a given tier and provider.\n *\n * @param tier - The capability tier (opus/sonnet/haiku)\n * @param provider - The LLM provider (defaults to openai-codex)\n * @returns The concrete model ID string for the provider\n *\n * Falls back to the OpenAI Codex model if the requested provider\n * doesn't have a mapping for the tier.\n */\nexport function getModelForTier(\n\ttier: ModelTier,\n\tprovider: ModelProvider = \"openai-codex\",\n): string {\n\tconst mapping = MODEL_BY_TIER[tier];\n\treturn mapping[provider] ?? mapping[\"openai-codex\"] ?? \"gpt-5.5\";\n}\n\nfunction isModelTier(model: string): model is ModelTier {\n\treturn model in MODEL_BY_TIER;\n}\n\nfunction isModelProvider(provider: string): provider is ModelProvider {\n\treturn PROVIDERS.includes(provider as ModelProvider);\n}\n\nfunction splitExplicitModel(model: string): {\n\tprovider?: ModelProvider;\n\tmodel: string;\n} {\n\tconst slashIndex = model.indexOf(\"/\");\n\tif (slashIndex <= 0) {\n\t\treturn { model };\n\t}\n\n\tconst provider = model.slice(0, slashIndex);\n\tif (!isModelProvider(provider)) {\n\t\treturn { model };\n\t}\n\n\treturn {\n\t\tprovider,\n\t\tmodel: model.slice(slashIndex + 1),\n\t};\n}\n\nfunction defaultReasoningEffort(config: ModeConfig): ReasoningEffort {\n\treturn config.reasoningEffort ?? (config.enableThinking ? \"medium\" : \"low\");\n}\n\n/**\n * Resolve the concrete model/provider a subagent should use in a mode.\n */\nexport function resolveSubagentDispatch(\n\tmode: AgentMode,\n\ttype: SubagentType,\n\tprovider: ModelProvider = \"openai-codex\",\n): ResolvedSubagentDispatch {\n\tconst config = getModeConfig(mode);\n\tconst dispatch = config.subagents?.[type];\n\tconst source: DispatchSource = dispatch ? \"mode\" : \"fallback\";\n\tconst requestedModel = dispatch?.model ?? config.primaryTier;\n\tconst reasoningEffort =\n\t\tdispatch?.reasoningEffort ?? defaultReasoningEffort(config);\n\n\tif (isModelTier(requestedModel)) {\n\t\tconst resolvedProvider = dispatch?.provider ?? provider;\n\t\treturn {\n\t\t\tmode,\n\t\t\ttype,\n\t\t\tprovider: resolvedProvider,\n\t\t\tmodel: getModelForTier(requestedModel, resolvedProvider),\n\t\t\tmodelTier: requestedModel,\n\t\t\treasoningEffort,\n\t\t\tmaxTokens: dispatch?.maxTokens,\n\t\t\ttemperature: dispatch?.temperature,\n\t\t\ttimeoutMs: dispatch?.timeoutMs,\n\t\t\tpromptTemplate: dispatch?.promptTemplate,\n\t\t\tsource,\n\t\t};\n\t}\n\n\tconst explicit = splitExplicitModel(requestedModel);\n\tconst resolvedProvider = dispatch?.provider ?? explicit.provider ?? provider;\n\treturn {\n\t\tmode,\n\t\ttype,\n\t\tprovider: resolvedProvider,\n\t\tmodel: explicit.model,\n\t\treasoningEffort,\n\t\tmaxTokens: dispatch?.maxTokens,\n\t\ttemperature: dispatch?.temperature,\n\t\ttimeoutMs: dispatch?.timeoutMs,\n\t\tpromptTemplate: dispatch?.promptTemplate,\n\t\tsource,\n\t};\n}\n\n/**\n * Get the configuration for a mode.\n */\nexport function getModeConfig(mode: AgentMode): ModeConfig {\n\treturn MODE_CONFIGS[mode];\n}\n\n/**\n * Get the recommended model for a mode and provider.\n */\nexport function getModelForMode(\n\tmode: AgentMode,\n\tprovider: ModelProvider = \"openai-codex\",\n): string {\n\tconst config = getModeConfig(mode);\n\treturn getModelForTier(config.primaryTier, provider);\n}\n\n/**\n * Current agent mode state (module-level singleton).\n *\n * This tracks the active mode for the current process. In multi-session\n * scenarios, each session should manage its own mode state rather than\n * relying on this global.\n */\nlet currentMode: AgentMode = \"smart\";\n\n/**\n * Get the current agent mode.\n *\n * @returns The currently active agent mode\n */\nexport function getCurrentMode(): AgentMode {\n\treturn currentMode;\n}\n\n/**\n * Set the current agent mode.\n *\n * This updates the global mode state and logs the transition for debugging.\n * Mode changes take effect immediately for subsequent operations.\n *\n * @param mode - The new mode to activate\n */\nexport function setCurrentMode(mode: AgentMode): void {\n\tlogger.info(\"Setting agent mode\", { mode });\n\tcurrentMode = mode;\n\tconst config = getModeConfig(mode);\n\tif (config.visible === false) {\n\t\tvoid recordStagedRolloutSurfaceUsage(\"hidden_mode_used\", {\n\t\t\tsurfaceId: `mode:${mode}`,\n\t\t\tsurfaceType: \"mode\",\n\t\t\towner: config.rolloutOwner,\n\t\t});\n\t}\n}\n\n/**\n * Parse mode from string (case-insensitive).\n *\n * Validates user input and converts to a valid AgentMode type.\n *\n * @param modeStr - User-provided mode string (e.g., \"Smart\", \"RUSH\")\n * @returns The parsed AgentMode, or null if invalid\n */\nexport function parseMode(modeStr: string): AgentMode | null {\n\tconst normalized = modeStr.toLowerCase().trim();\n\tif (normalized in MODE_CONFIGS) {\n\t\treturn normalized as AgentMode;\n\t}\n\treturn null;\n}\n\n/**\n * Get mode from environment variable.\n *\n * Reads MAESTRO_MODE from environment and validates it.\n * Defaults to \"smart\" if not set or invalid.\n *\n * @returns The configured mode or \"smart\" as default\n */\nexport function getModeFromEnv(): AgentMode {\n\tconst envMode = process.env.MAESTRO_MODE?.toLowerCase();\n\tif (envMode && envMode in MODE_CONFIGS) {\n\t\treturn envMode as AgentMode;\n\t}\n\t// Default to smart mode for best quality when not specified\n\treturn \"smart\";\n}\n\n/**\n * Format mode for display.\n */\nexport function formatModeDisplay(mode: AgentMode): string {\n\tconst config = getModeConfig(mode);\n\treturn `${config.displayName} - ${config.description}`;\n}\n\n/**\n * Get all available modes with their descriptions.\n */\nexport function getAllModes(options?: {\n\tincludeHidden?: boolean;\n}): Array<{ mode: AgentMode; config: ModeConfig }> {\n\treturn (Object.entries(MODE_CONFIGS) as [AgentMode, ModeConfig][])\n\t\t.filter(([, config]) => options?.includeHidden === true || config.visible)\n\t\t.map(([mode, config]) => ({\n\t\t\tmode,\n\t\t\tconfig,\n\t\t}));\n}\n\n/**\n * Suggest a mode based on task complexity heuristics.\n *\n * This function analyzes the task description to recommend an appropriate\n * mode based on keyword matching. It uses a scoring system to determine\n * task complexity:\n *\n * **Scoring Algorithm:**\n * 1. Count matches against complex/simple/info indicator word lists\n * 2. Compare scores to determine dominant category\n * 3. Return mode matching the highest score\n *\n * **Keyword Categories:**\n * - Complex (→ smart): refactor, architect, design, implement, build...\n * - Simple (→ rush): fix, typo, rename, update, small changes...\n * - Info (→ free): what, where, explain, find, search queries...\n *\n * @param taskDescription - The user's task description to analyze\n * @returns The recommended AgentMode based on task complexity\n *\n * @example\n * suggestMode(\"refactor the authentication module\") // → \"smart\"\n * suggestMode(\"fix typo in README\") // → \"rush\"\n * suggestMode(\"what does this function do?\") // → \"free\"\n */\nexport function suggestMode(taskDescription: string): AgentMode {\n\tconst lowerTask = taskDescription.toLowerCase();\n\n\t// Complex tasks → smart mode (require deep reasoning)\n\tconst complexIndicators = [\n\t\t\"refactor\",\n\t\t\"architect\",\n\t\t\"design\",\n\t\t\"implement\",\n\t\t\"create\",\n\t\t\"build\",\n\t\t\"complex\",\n\t\t\"system\",\n\t\t\"full\",\n\t\t\"entire\",\n\t\t\"comprehensive\",\n\t];\n\n\t// Simple tasks → rush mode (straightforward modifications)\n\tconst simpleIndicators = [\n\t\t\"fix\",\n\t\t\"typo\",\n\t\t\"simple\",\n\t\t\"quick\",\n\t\t\"small\",\n\t\t\"minor\",\n\t\t\"rename\",\n\t\t\"update\",\n\t\t\"change\",\n\t];\n\n\t// Information tasks → free mode (queries, not modifications)\n\tconst infoIndicators = [\n\t\t\"what\",\n\t\t\"where\",\n\t\t\"explain\",\n\t\t\"describe\",\n\t\t\"list\",\n\t\t\"show\",\n\t\t\"find\",\n\t\t\"search\",\n\t];\n\n\t// Calculate match scores for each category\n\tconst complexScore = complexIndicators.filter((i) =>\n\t\tlowerTask.includes(i),\n\t).length;\n\tconst simpleScore = simpleIndicators.filter((i) =>\n\t\tlowerTask.includes(i),\n\t).length;\n\tconst infoScore = infoIndicators.filter((i) => lowerTask.includes(i)).length;\n\n\t// Determine mode based on highest scoring category\n\tif (complexScore > simpleScore && complexScore > infoScore) {\n\t\treturn \"smart\";\n\t}\n\tif (infoScore > simpleScore) {\n\t\treturn \"free\";\n\t}\n\tif (simpleScore > 0) {\n\t\treturn \"rush\";\n\t}\n\n\t// Default to smart mode when no clear indicators found\n\t// (better to over-estimate complexity than under-estimate)\n\treturn \"smart\";\n}\n"]}
1
+ {"version":3,"file":"modes.js","sourceRoot":"","sources":["../../src/agent/modes.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Agent Modes - Different operating modes for the agent.\n *\n * This module implements a tiered model selection system inspired by Amp's\n * smart/rush/free modes. Each mode represents a different balance between\n * response quality, speed, and cost:\n *\n * - **smart**: Uses the highest capability model (opus) for complex reasoning\n * tasks. Enables thinking/reasoning mode with extended context windows.\n * Best for: Architecture decisions, complex refactoring, debugging.\n *\n * - **rush**: Uses mid-tier models (sonnet) for faster responses. Disables\n * thinking mode to reduce latency. Best for: Quick fixes, simple edits,\n * straightforward code generation.\n *\n * - **free**: Uses the most cost-effective models (haiku) with minimal\n * features. Best for: Simple questions, file searches, documentation\n * lookups where speed and cost matter more than depth.\n *\n * - **custom**: User-defined configuration allowing fine-tuned control\n * over model selection and feature toggles.\n *\n * ## Architecture\n *\n * The mode system uses a two-level abstraction:\n * 1. **ModelTier** (opus/sonnet/haiku): Logical capability levels\n * 2. **ModelMapping**: Provider-specific model IDs for each tier\n *\n * This allows the same mode configuration to work across different\n * LLM providers (Anthropic, OpenAI, Google) by mapping tiers to\n * provider-specific model identifiers.\n *\n * ## Usage\n *\n * ```typescript\n * // Set mode based on task\n * setCurrentMode(suggestMode(\"refactor the auth module\")); // → \"smart\"\n *\n * // Get model for current provider\n * const model = getModelForMode(getCurrentMode(), \"anthropic\");\n * ```\n *\n * ## Environment Variables\n *\n * - `MAESTRO_MODE`: Override the default mode at startup\n */\n\nimport { recordStagedRolloutSurfaceUsage } from \"../telemetry.js\";\nimport { createLogger } from \"../utils/logger.js\";\nimport { type SubagentType, parseSubagentType } from \"./subagent-specs.js\";\n\n// Logger scoped to agent modes for debugging mode transitions\nconst logger = createLogger(\"agent:modes\");\n\n/**\n * Available agent modes representing different quality/speed/cost tradeoffs.\n *\n * - \"smart\": Maximum capability, uses opus-class models with reasoning enabled\n * - \"rush\": Balanced speed, uses sonnet-class models without reasoning overhead\n * - \"free\": Cost-optimized, uses haiku-class models for simple operations\n * - \"custom\": User-defined settings for specialized workflows\n */\nexport type AgentMode =\n\t| \"low\"\n\t| \"medium\"\n\t| \"high\"\n\t| \"ultra\"\n\t| \"smart\"\n\t| \"rush\"\n\t| \"free\"\n\t| \"custom\"\n\t| \"frontier\"\n\t| \"replay\";\n\n/**\n * Model tier representing capability levels that map to provider-specific models.\n *\n * The tier abstraction allows the same configuration to work across providers:\n * - \"opus\": Highest capability (claude-opus, gpt-5.2, gemini-thinking)\n * - \"sonnet\": Balanced capability (claude-sonnet, gpt-4o, gemini-flash)\n * - \"haiku\": Fast/efficient (claude-haiku, gpt-4o-mini, gemini-flash-lite)\n */\nexport type ModelTier = \"opus\" | \"sonnet\" | \"haiku\";\n\n/** Supported model providers for tier and subagent dispatch. */\nexport type ModelProvider = \"anthropic\" | \"openai\" | \"openai-codex\" | \"google\";\n\n/** Reasoning budget hint passed to subagents that support it. */\nexport type ReasoningEffort = \"low\" | \"medium\" | \"high\" | \"xhigh\";\n\n/** Where the resolved subagent dispatch came from. */\nexport type DispatchSource = \"mode\" | \"fallback\";\n\n/**\n * Per-subagent model routing override.\n *\n * `model` can be a logical model tier (`opus`, `sonnet`, `haiku`) or an\n * explicit model ID. Explicit model IDs may be provider-prefixed, for example\n * `openai-codex/gpt-5.5`.\n */\nexport interface SubagentDispatch {\n\tmodel: ModelTier | string;\n\tprovider?: ModelProvider;\n\treasoningEffort?: ReasoningEffort;\n\tmaxTokens?: number;\n\ttemperature?: number;\n\ttimeoutMs?: number;\n\tpromptTemplate?: string;\n}\n\n/** Fully resolved model routing for one subagent invocation. */\nexport interface ResolvedSubagentDispatch {\n\tmode: AgentMode;\n\ttype: SubagentType;\n\tprovider: ModelProvider;\n\tmodel: string;\n\tmodelTier?: ModelTier;\n\treasoningEffort: ReasoningEffort;\n\tmaxTokens?: number;\n\ttemperature?: number;\n\ttimeoutMs?: number;\n\tpromptTemplate?: string;\n\tsource: DispatchSource;\n}\n\n/**\n * Mode configuration that determines model selection and behavior.\n *\n * Each mode has a complete configuration that controls:\n * - Which model tier to use (primary and fallback)\n * - Whether to enable extended reasoning/thinking\n * - Context and retry limits\n * - UI hints for cost/speed display\n */\nexport interface ModeConfig {\n\t/** Display name for the mode */\n\tdisplayName: string;\n\t/** Description of what this mode does */\n\tdescription: string;\n\t/** Primary model tier to use */\n\tprimaryTier: ModelTier;\n\t/** Fallback model tier if primary is unavailable */\n\tfallbackTier: ModelTier;\n\t/** Whether to enable thinking/reasoning */\n\tenableThinking: boolean;\n\t/** Default reasoning effort for mode-level and fallback subagent routing. */\n\treasoningEffort?: ReasoningEffort;\n\t/** Maximum thinking budget (tokens) */\n\tthinkingBudget: number;\n\t/** Whether to use extended context */\n\tuseExtendedContext: boolean;\n\t/** Retry configuration */\n\tmaxRetries: number;\n\t/** Cost multiplier hint (for UI display) */\n\tcostMultiplier: number;\n\t/** Speed hint (1-10, higher is faster) */\n\tspeedHint: number;\n\t/** Whether this mode is shown in default user-facing mode lists. */\n\tvisible: boolean;\n\t/** Optional dispatch table for mode-specific subagent routing. */\n\tsubagents?: Partial<Record<SubagentType, SubagentDispatch>>;\n\t/** Owner responsible for promotion or removal when hidden. */\n\trolloutOwner?: string;\n}\n\n/**\n * Model mapping for different providers.\n */\nexport interface ModelMapping {\n\tanthropic: string;\n\topenai?: string;\n\t\"openai-codex\"?: string;\n\tgoogle?: string;\n}\n\nconst PROVIDERS: ModelProvider[] = [\n\t\"anthropic\",\n\t\"openai\",\n\t\"openai-codex\",\n\t\"google\",\n];\n\n/**\n * Default mode configurations defining the behavior of each agent mode.\n *\n * These configurations are the canonical source of truth for how each mode\n * behaves. The settings are carefully tuned based on model capabilities\n * and typical use case requirements:\n *\n * - **smart**: Full-featured for complex tasks (16k thinking budget, 3 retries)\n * - **rush**: Optimized for speed (no thinking, 2 retries, smaller context)\n * - **free**: Minimal resource usage (no thinking, 1 retry, no extended context)\n * - **custom**: Balanced defaults that users can override\n */\nexport const MODE_CONFIGS: Record<AgentMode, ModeConfig> = {\n\tlow: {\n\t\tdisplayName: \"Low\",\n\t\tdescription: \"Bounded, obvious, and reversible work\",\n\t\tprimaryTier: \"haiku\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: false,\n\t\treasoningEffort: \"low\",\n\t\tthinkingBudget: 2000,\n\t\tuseExtendedContext: false,\n\t\tmaxRetries: 1,\n\t\tcostMultiplier: 0.1,\n\t\tspeedHint: 10,\n\t\tvisible: true,\n\t},\n\tmedium: {\n\t\tdisplayName: \"Medium\",\n\t\tdescription: \"Ordinary repository work with moderate uncertainty\",\n\t\tprimaryTier: \"opus\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"medium\",\n\t\tthinkingBudget: 16000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 2,\n\t\tcostMultiplier: 1,\n\t\tspeedHint: 5,\n\t\tvisible: true,\n\t},\n\thigh: {\n\t\tdisplayName: \"High\",\n\t\tdescription: \"Ambiguous or cross-cutting work where misses are expensive\",\n\t\tprimaryTier: \"opus\",\n\t\tfallbackTier: \"sonnet\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"xhigh\",\n\t\tthinkingBudget: 20000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 2,\n\t\tcostMultiplier: 1.25,\n\t\tspeedHint: 4,\n\t\tvisible: true,\n\t},\n\tultra: {\n\t\tdisplayName: \"Ultra\",\n\t\tdescription: \"Migrations, architecture, and discovery-heavy work\",\n\t\tprimaryTier: \"opus\",\n\t\tfallbackTier: \"opus\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"xhigh\",\n\t\tthinkingBudget: 32000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 3,\n\t\tcostMultiplier: 1.5,\n\t\tspeedHint: 3,\n\t\tvisible: true,\n\t},\n\t// Smart mode: Maximum capability for complex reasoning tasks\n\tsmart: {\n\t\tdisplayName: \"Smart\",\n\t\tdescription: \"Best quality, uses opus for complex tasks\",\n\t\tprimaryTier: \"opus\",\n\t\tfallbackTier: \"sonnet\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"medium\",\n\t\tthinkingBudget: 16000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 3,\n\t\tcostMultiplier: 1.0,\n\t\tspeedHint: 5,\n\t\tvisible: true,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"opus\", reasoningEffort: \"high\" },\n\t\t\tcoder: { model: \"openai-codex/gpt-5.5\", reasoningEffort: \"medium\" },\n\t\t\treviewer: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\tresearcher: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\t\"browser-qa\": { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t},\n\t// Rush mode: Speed-optimized for quick iterations\n\trush: {\n\t\tdisplayName: \"Rush\",\n\t\tdescription: \"Fast responses, uses sonnet for speed\",\n\t\tprimaryTier: \"sonnet\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: false,\n\t\treasoningEffort: \"low\",\n\t\tthinkingBudget: 4000,\n\t\tuseExtendedContext: false,\n\t\tmaxRetries: 2,\n\t\tcostMultiplier: 0.5,\n\t\tspeedHint: 8,\n\t\tvisible: true,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"sonnet\", reasoningEffort: \"low\" },\n\t\t\tcoder: { model: \"sonnet\", reasoningEffort: \"low\" },\n\t\t\treviewer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tresearcher: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\t\"browser-qa\": { model: \"sonnet\", reasoningEffort: \"low\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t},\n\t// Free mode: Cost-optimized for simple tasks\n\tfree: {\n\t\tdisplayName: \"Free\",\n\t\tdescription: \"Most cost-effective, uses haiku\",\n\t\tprimaryTier: \"haiku\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: false,\n\t\treasoningEffort: \"low\",\n\t\tthinkingBudget: 2000,\n\t\tuseExtendedContext: false,\n\t\tmaxRetries: 1,\n\t\tcostMultiplier: 0.1,\n\t\tspeedHint: 10,\n\t\tvisible: true,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tcoder: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\treviewer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tresearcher: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\t\"browser-qa\": { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t},\n\t// Custom mode: User-configurable defaults (can be overridden at runtime)\n\tcustom: {\n\t\tdisplayName: \"Custom\",\n\t\tdescription: \"User-defined configuration\",\n\t\tprimaryTier: \"sonnet\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"medium\",\n\t\tthinkingBudget: 8000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 2,\n\t\tcostMultiplier: 0.7,\n\t\tspeedHint: 6,\n\t\tvisible: true,\n\t},\n\tfrontier: {\n\t\tdisplayName: \"Frontier\",\n\t\tdescription: \"Experimental high-capability orchestration mode\",\n\t\tprimaryTier: \"opus\",\n\t\tfallbackTier: \"sonnet\",\n\t\tenableThinking: true,\n\t\treasoningEffort: \"high\",\n\t\tthinkingBudget: 20000,\n\t\tuseExtendedContext: true,\n\t\tmaxRetries: 3,\n\t\tcostMultiplier: 1.25,\n\t\tspeedHint: 4,\n\t\tvisible: false,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\tplanner: { model: \"opus\", reasoningEffort: \"xhigh\" },\n\t\t\tcoder: { model: \"openai-codex/gpt-5.5\", reasoningEffort: \"high\" },\n\t\t\treviewer: { model: \"openai-codex/gpt-5.5\", reasoningEffort: \"medium\" },\n\t\t\tresearcher: { model: \"sonnet\", reasoningEffort: \"medium\" },\n\t\t\t\"browser-qa\": { model: \"sonnet\", reasoningEffort: \"high\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t\trolloutOwner: \"agent-runtime\",\n\t},\n\treplay: {\n\t\tdisplayName: \"Replay\",\n\t\tdescription: \"Deterministic scripted scenario replay\",\n\t\tprimaryTier: \"haiku\",\n\t\tfallbackTier: \"haiku\",\n\t\tenableThinking: false,\n\t\treasoningEffort: \"low\",\n\t\tthinkingBudget: 0,\n\t\tuseExtendedContext: false,\n\t\tmaxRetries: 0,\n\t\tcostMultiplier: 0,\n\t\tspeedHint: 10,\n\t\tvisible: false,\n\t\tsubagents: {\n\t\t\texplorer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tplanner: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tcoder: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\treviewer: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tresearcher: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\t\"browser-qa\": { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t\tminimal: { model: \"haiku\", reasoningEffort: \"low\" },\n\t\t},\n\t\trolloutOwner: \"agent-evals\",\n\t},\n};\n\n/**\n * Model mappings by tier for each provider.\n *\n * This lookup table maps abstract capability tiers to concrete model IDs\n * for each supported LLM provider. When adding new providers or updating\n * model versions, update this table to maintain consistent tier behavior.\n *\n * Note: Model IDs include version dates to ensure reproducibility.\n * Update these periodically as providers release improved versions.\n */\nexport const MODEL_BY_TIER: Record<ModelTier, ModelMapping> = {\n\t// Opus tier: Highest capability models with advanced reasoning\n\topus: {\n\t\tanthropic: \"claude-opus-4-6\",\n\t\topenai: \"gpt-5.2\",\n\t\t\"openai-codex\": \"gpt-5.5\",\n\t\tgoogle: \"gemini-2.0-flash-thinking-exp\",\n\t},\n\t// Sonnet tier: Balanced performance models for general use\n\tsonnet: {\n\t\tanthropic: \"claude-sonnet-4-5-20250929\",\n\t\topenai: \"gpt-4o\",\n\t\t\"openai-codex\": \"gpt-5.4\",\n\t\tgoogle: \"gemini-2.0-flash-exp\",\n\t},\n\t// Haiku tier: Fast, efficient models for simple tasks\n\thaiku: {\n\t\tanthropic: \"claude-haiku-4-5-20251001\",\n\t\topenai: \"gpt-4o-mini\",\n\t\t\"openai-codex\": \"gpt-5.4-mini\",\n\t\tgoogle: \"gemini-2.0-flash-lite-exp\",\n\t},\n};\n\n/**\n * Get the model ID for a given tier and provider.\n *\n * @param tier - The capability tier (opus/sonnet/haiku)\n * @param provider - The LLM provider (defaults to openai-codex)\n * @returns The concrete model ID string for the provider\n *\n * Falls back to the OpenAI Codex model if the requested provider\n * doesn't have a mapping for the tier.\n */\nexport function getModelForTier(\n\ttier: ModelTier,\n\tprovider: ModelProvider = \"openai-codex\",\n): string {\n\tconst mapping = MODEL_BY_TIER[tier];\n\treturn mapping[provider] ?? mapping[\"openai-codex\"] ?? \"gpt-5.5\";\n}\n\nfunction isModelTier(model: string): model is ModelTier {\n\treturn model in MODEL_BY_TIER;\n}\n\nfunction isModelProvider(provider: string): provider is ModelProvider {\n\treturn PROVIDERS.includes(provider as ModelProvider);\n}\n\nfunction splitExplicitModel(model: string): {\n\tprovider?: ModelProvider;\n\tmodel: string;\n} {\n\tconst slashIndex = model.indexOf(\"/\");\n\tif (slashIndex <= 0) {\n\t\treturn { model };\n\t}\n\n\tconst provider = model.slice(0, slashIndex);\n\tif (!isModelProvider(provider)) {\n\t\treturn { model };\n\t}\n\n\treturn {\n\t\tprovider,\n\t\tmodel: model.slice(slashIndex + 1),\n\t};\n}\n\nfunction defaultReasoningEffort(config: ModeConfig): ReasoningEffort {\n\treturn config.reasoningEffort ?? (config.enableThinking ? \"medium\" : \"low\");\n}\n\n/**\n * Resolve the concrete model/provider a subagent should use in a mode.\n */\nexport function resolveSubagentDispatch(\n\tmode: AgentMode,\n\ttype: SubagentType | string,\n\tprovider: ModelProvider = \"openai-codex\",\n): ResolvedSubagentDispatch {\n\tconst config = getModeConfig(mode);\n\tconst resolvedType = parseSubagentType(type) ?? \"coder\";\n\tconst dispatch = config.subagents?.[resolvedType];\n\tconst source: DispatchSource = dispatch ? \"mode\" : \"fallback\";\n\tconst requestedModel = dispatch?.model ?? config.primaryTier;\n\tconst reasoningEffort =\n\t\tdispatch?.reasoningEffort ?? defaultReasoningEffort(config);\n\n\tif (isModelTier(requestedModel)) {\n\t\tconst resolvedProvider = dispatch?.provider ?? provider;\n\t\treturn {\n\t\t\tmode,\n\t\t\ttype: resolvedType,\n\t\t\tprovider: resolvedProvider,\n\t\t\tmodel: getModelForTier(requestedModel, resolvedProvider),\n\t\t\tmodelTier: requestedModel,\n\t\t\treasoningEffort,\n\t\t\tmaxTokens: dispatch?.maxTokens,\n\t\t\ttemperature: dispatch?.temperature,\n\t\t\ttimeoutMs: dispatch?.timeoutMs,\n\t\t\tpromptTemplate: dispatch?.promptTemplate,\n\t\t\tsource,\n\t\t};\n\t}\n\n\tconst explicit = splitExplicitModel(requestedModel);\n\tconst resolvedProvider = dispatch?.provider ?? explicit.provider ?? provider;\n\treturn {\n\t\tmode,\n\t\ttype: resolvedType,\n\t\tprovider: resolvedProvider,\n\t\tmodel: explicit.model,\n\t\treasoningEffort,\n\t\tmaxTokens: dispatch?.maxTokens,\n\t\ttemperature: dispatch?.temperature,\n\t\ttimeoutMs: dispatch?.timeoutMs,\n\t\tpromptTemplate: dispatch?.promptTemplate,\n\t\tsource,\n\t};\n}\n\n/**\n * Get the configuration for a mode.\n */\nexport function getModeConfig(mode: AgentMode): ModeConfig {\n\treturn MODE_CONFIGS[mode];\n}\n\n/**\n * Get the recommended model for a mode and provider.\n */\nexport function getModelForMode(\n\tmode: AgentMode,\n\tprovider: ModelProvider = \"openai-codex\",\n): string {\n\tconst config = getModeConfig(mode);\n\treturn getModelForTier(config.primaryTier, provider);\n}\n\n/**\n * Current agent mode state (module-level singleton).\n *\n * This tracks the active mode for the current process. In multi-session\n * scenarios, each session should manage its own mode state rather than\n * relying on this global.\n */\nlet currentMode: AgentMode = \"smart\";\n\n/**\n * Get the current agent mode.\n *\n * @returns The currently active agent mode\n */\nexport function getCurrentMode(): AgentMode {\n\treturn currentMode;\n}\n\n/**\n * Set the current agent mode.\n *\n * This updates the global mode state and logs the transition for debugging.\n * Mode changes take effect immediately for subsequent operations.\n *\n * @param mode - The new mode to activate\n */\nexport function setCurrentMode(mode: AgentMode): void {\n\tlogger.info(\"Setting agent mode\", { mode });\n\tcurrentMode = mode;\n\tconst config = getModeConfig(mode);\n\tif (config.visible === false) {\n\t\tvoid recordStagedRolloutSurfaceUsage(\"hidden_mode_used\", {\n\t\t\tsurfaceId: `mode:${mode}`,\n\t\t\tsurfaceType: \"mode\",\n\t\t\towner: config.rolloutOwner,\n\t\t});\n\t}\n}\n\n/**\n * Parse mode from string (case-insensitive).\n *\n * Validates user input and converts to a valid AgentMode type.\n *\n * @param modeStr - User-provided mode string (e.g., \"Smart\", \"RUSH\")\n * @returns The parsed AgentMode, or null if invalid\n */\nexport function parseMode(modeStr: string): AgentMode | null {\n\tconst normalized = modeStr.toLowerCase().trim();\n\tif (normalized in MODE_CONFIGS) {\n\t\treturn normalized as AgentMode;\n\t}\n\treturn null;\n}\n\n/**\n * Get mode from environment variable.\n *\n * Reads MAESTRO_MODE from environment and validates it.\n * Defaults to \"smart\" if not set or invalid.\n *\n * @returns The configured mode or \"smart\" as default\n */\nexport function getModeFromEnv(): AgentMode {\n\tconst envMode = process.env.MAESTRO_MODE?.toLowerCase();\n\tif (envMode && envMode in MODE_CONFIGS) {\n\t\treturn envMode as AgentMode;\n\t}\n\t// Default to smart mode for best quality when not specified\n\treturn \"smart\";\n}\n\n/**\n * Format mode for display.\n */\nexport function formatModeDisplay(mode: AgentMode): string {\n\tconst config = getModeConfig(mode);\n\treturn `${config.displayName} - ${config.description}`;\n}\n\n/**\n * Get all available modes with their descriptions.\n */\nexport function getAllModes(options?: {\n\tincludeHidden?: boolean;\n}): Array<{ mode: AgentMode; config: ModeConfig }> {\n\treturn (Object.entries(MODE_CONFIGS) as [AgentMode, ModeConfig][])\n\t\t.filter(([, config]) => options?.includeHidden === true || config.visible)\n\t\t.map(([mode, config]) => ({\n\t\t\tmode,\n\t\t\tconfig,\n\t\t}));\n}\n\n/**\n * Suggest a mode based on task complexity heuristics.\n *\n * This function analyzes the task description to recommend an appropriate\n * mode based on keyword matching. It uses a scoring system to determine\n * task complexity:\n *\n * **Scoring Algorithm:**\n * 1. Count matches against complex/simple/info indicator word lists\n * 2. Compare scores to determine dominant category\n * 3. Return mode matching the highest score\n *\n * **Keyword Categories:**\n * - Complex (→ smart): refactor, architect, design, implement, build...\n * - Simple (→ rush): fix, typo, rename, update, small changes...\n * - Info (→ free): what, where, explain, find, search queries...\n *\n * @param taskDescription - The user's task description to analyze\n * @returns The recommended AgentMode based on task complexity\n *\n * @example\n * suggestMode(\"refactor the authentication module\") // → \"smart\"\n * suggestMode(\"fix typo in README\") // → \"rush\"\n * suggestMode(\"what does this function do?\") // → \"free\"\n */\nexport function suggestMode(taskDescription: string): AgentMode {\n\tconst lowerTask = taskDescription.toLowerCase();\n\n\t// Complex tasks → smart mode (require deep reasoning)\n\tconst complexIndicators = [\n\t\t\"refactor\",\n\t\t\"architect\",\n\t\t\"design\",\n\t\t\"implement\",\n\t\t\"create\",\n\t\t\"build\",\n\t\t\"complex\",\n\t\t\"system\",\n\t\t\"full\",\n\t\t\"entire\",\n\t\t\"comprehensive\",\n\t];\n\n\t// Simple tasks → rush mode (straightforward modifications)\n\tconst simpleIndicators = [\n\t\t\"fix\",\n\t\t\"typo\",\n\t\t\"simple\",\n\t\t\"quick\",\n\t\t\"small\",\n\t\t\"minor\",\n\t\t\"rename\",\n\t\t\"update\",\n\t\t\"change\",\n\t];\n\n\t// Information tasks → free mode (queries, not modifications)\n\tconst infoIndicators = [\n\t\t\"what\",\n\t\t\"where\",\n\t\t\"explain\",\n\t\t\"describe\",\n\t\t\"list\",\n\t\t\"show\",\n\t\t\"find\",\n\t\t\"search\",\n\t];\n\n\t// Calculate match scores for each category\n\tconst complexScore = complexIndicators.filter((i) =>\n\t\tlowerTask.includes(i),\n\t).length;\n\tconst simpleScore = simpleIndicators.filter((i) =>\n\t\tlowerTask.includes(i),\n\t).length;\n\tconst infoScore = infoIndicators.filter((i) => lowerTask.includes(i)).length;\n\n\t// Determine mode based on highest scoring category\n\tif (complexScore > simpleScore && complexScore > infoScore) {\n\t\treturn \"smart\";\n\t}\n\tif (infoScore > simpleScore) {\n\t\treturn \"free\";\n\t}\n\tif (simpleScore > 0) {\n\t\treturn \"rush\";\n\t}\n\n\t// Default to smart mode when no clear indicators found\n\t// (better to over-estimate complexity than under-estimate)\n\treturn \"smart\";\n}\n"]}
@@ -0,0 +1,22 @@
1
+ import type { AgentProfileLevel } from "./profiles.js";
2
+ export declare const ORACLE_CONSULTATION_POLICY_VERSION = "evalops.maestro.oracle-consultation.v1";
3
+ export type OracleConsultationMode = "available" | "recommended" | "required";
4
+ export interface OracleConsultationPolicyInput {
5
+ policyVersion?: string;
6
+ profileLevel: AgentProfileLevel;
7
+ taskType: string;
8
+ taskSummary?: string;
9
+ priorFailures?: number;
10
+ }
11
+ export interface OracleConsultationDecision {
12
+ policyVersion: string;
13
+ evalSuite: "oracle-consultation-policy-v1";
14
+ mode: OracleConsultationMode;
15
+ reasons: string[];
16
+ }
17
+ export declare function recommendOracleConsultation(input: OracleConsultationPolicyInput): OracleConsultationDecision;
18
+ export declare function formatOracleConsultationDirective(decision: OracleConsultationDecision): string;
19
+ export declare function applyOracleConsultationDirective(agent: {
20
+ queueNextRunSystemPromptAddition(text: string): void;
21
+ }, decision: OracleConsultationDecision | undefined): boolean;
22
+ //# sourceMappingURL=oracle-consultation-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oracle-consultation-policy.d.ts","sourceRoot":"","sources":["../../src/agent/oracle-consultation-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvD,eAAO,MAAM,kCAAkC,2CACN,CAAC;AAE1C,MAAM,MAAM,sBAAsB,GAAG,WAAW,GAAG,aAAa,GAAG,UAAU,CAAC;AAE9E,MAAM,WAAW,6BAA6B;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,iBAAiB,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,0BAA0B;IAC1C,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,+BAA+B,CAAC;IAC3C,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;CAClB;AAkBD,wBAAgB,2BAA2B,CAC1C,KAAK,EAAE,6BAA6B,GAClC,0BAA0B,CA4C5B;AAED,wBAAgB,iCAAiC,CAChD,QAAQ,EAAE,0BAA0B,GAClC,MAAM,CAYR;AAED,wBAAgB,gCAAgC,CAC/C,KAAK,EAAE;IAAE,gCAAgC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAC/D,QAAQ,EAAE,0BAA0B,GAAG,SAAS,GAC9C,OAAO,CAMT"}
@@ -0,0 +1,72 @@
1
+ export const ORACLE_CONSULTATION_POLICY_VERSION = "evalops.maestro.oracle-consultation.v1";
2
+ const CONSULTATION_TASK_TYPES = new Set([
3
+ "architecture",
4
+ "code_review",
5
+ "discovery",
6
+ "incident_response",
7
+ "migration",
8
+ "planning",
9
+ "security_review",
10
+ ]);
11
+ const UNCERTAINTY_PATTERN = /\b(?:ambiguous|unclear|uncertain|trade-?offs?|cross[- ]cutting|multiple approaches|data loss|irreversible|root cause unknown)\b/i;
12
+ const CONSULTATION_PROMPT_PATTERN = /\b(?:architect(?:ure|ural|ing)?|migrat(?:e|es|ed|ing|ion)|security|secure|threat model(?:ing)?|auth(?:entication|orization)?|schema (?:change|migration)|backfill)\b/i;
13
+ export function recommendOracleConsultation(input) {
14
+ const reasons = [];
15
+ const priorFailures = Math.max(0, Math.floor(input.priorFailures ?? 0));
16
+ let mode = "available";
17
+ if (input.profileLevel === "ultra") {
18
+ mode = "required";
19
+ reasons.push("ultra_profile");
20
+ }
21
+ else if (input.profileLevel === "high") {
22
+ mode = "recommended";
23
+ reasons.push("high_profile");
24
+ }
25
+ if (CONSULTATION_TASK_TYPES.has(input.taskType.trim().toLowerCase())) {
26
+ if (mode === "available")
27
+ mode = "recommended";
28
+ reasons.push("consultation_task_type");
29
+ }
30
+ if (input.taskSummary && UNCERTAINTY_PATTERN.test(input.taskSummary)) {
31
+ if (mode === "available")
32
+ mode = "recommended";
33
+ reasons.push("uncertainty_signal");
34
+ }
35
+ if (input.taskSummary &&
36
+ CONSULTATION_PROMPT_PATTERN.test(input.taskSummary)) {
37
+ if (mode === "available")
38
+ mode = "recommended";
39
+ reasons.push("consultation_prompt_signal");
40
+ }
41
+ if (priorFailures >= 2) {
42
+ mode = input.profileLevel === "low" ? "recommended" : "required";
43
+ reasons.push("repeated_failures");
44
+ }
45
+ if (reasons.length === 0)
46
+ reasons.push("oracle_available_on_demand");
47
+ return {
48
+ policyVersion: input.policyVersion?.trim() || ORACLE_CONSULTATION_POLICY_VERSION,
49
+ evalSuite: "oracle-consultation-policy-v1",
50
+ mode,
51
+ reasons,
52
+ };
53
+ }
54
+ export function formatOracleConsultationDirective(decision) {
55
+ const instruction = decision.mode === "required"
56
+ ? "You MUST consult the read-only Oracle once before committing to the plan or final answer. Incorporate or explicitly rebut its advice."
57
+ : decision.mode === "recommended"
58
+ ? "Consult the read-only Oracle once before committing to the plan or final answer unless the task has become clearly bounded; if you skip it, state the concrete reason."
59
+ : "The read-only Oracle is available on demand.";
60
+ return [
61
+ `Oracle consultation policy (${decision.policyVersion})`,
62
+ instruction,
63
+ `Triggers: ${decision.reasons.join(", ")}.`,
64
+ ].join("\n");
65
+ }
66
+ export function applyOracleConsultationDirective(agent, decision) {
67
+ if (!decision || decision.mode === "available")
68
+ return false;
69
+ agent.queueNextRunSystemPromptAddition(formatOracleConsultationDirective(decision));
70
+ return true;
71
+ }
72
+ //# sourceMappingURL=oracle-consultation-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oracle-consultation-policy.js","sourceRoot":"","sources":["../../src/agent/oracle-consultation-policy.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AgentProfileLevel } from \"./profiles.js\";\n\nexport const ORACLE_CONSULTATION_POLICY_VERSION =\n\t\"evalops.maestro.oracle-consultation.v1\";\n\nexport type OracleConsultationMode = \"available\" | \"recommended\" | \"required\";\n\nexport interface OracleConsultationPolicyInput {\n\tpolicyVersion?: string;\n\tprofileLevel: AgentProfileLevel;\n\ttaskType: string;\n\ttaskSummary?: string;\n\tpriorFailures?: number;\n}\n\nexport interface OracleConsultationDecision {\n\tpolicyVersion: string;\n\tevalSuite: \"oracle-consultation-policy-v1\";\n\tmode: OracleConsultationMode;\n\treasons: string[];\n}\n\nconst CONSULTATION_TASK_TYPES = new Set([\n\t\"architecture\",\n\t\"code_review\",\n\t\"discovery\",\n\t\"incident_response\",\n\t\"migration\",\n\t\"planning\",\n\t\"security_review\",\n]);\n\nconst UNCERTAINTY_PATTERN =\n\t/\\b(?:ambiguous|unclear|uncertain|trade-?offs?|cross[- ]cutting|multiple approaches|data loss|irreversible|root cause unknown)\\b/i;\n\nconst CONSULTATION_PROMPT_PATTERN =\n\t/\\b(?:architect(?:ure|ural|ing)?|migrat(?:e|es|ed|ing|ion)|security|secure|threat model(?:ing)?|auth(?:entication|orization)?|schema (?:change|migration)|backfill)\\b/i;\n\nexport function recommendOracleConsultation(\n\tinput: OracleConsultationPolicyInput,\n): OracleConsultationDecision {\n\tconst reasons: string[] = [];\n\tconst priorFailures = Math.max(0, Math.floor(input.priorFailures ?? 0));\n\tlet mode: OracleConsultationMode = \"available\";\n\n\tif (input.profileLevel === \"ultra\") {\n\t\tmode = \"required\";\n\t\treasons.push(\"ultra_profile\");\n\t} else if (input.profileLevel === \"high\") {\n\t\tmode = \"recommended\";\n\t\treasons.push(\"high_profile\");\n\t}\n\n\tif (CONSULTATION_TASK_TYPES.has(input.taskType.trim().toLowerCase())) {\n\t\tif (mode === \"available\") mode = \"recommended\";\n\t\treasons.push(\"consultation_task_type\");\n\t}\n\n\tif (input.taskSummary && UNCERTAINTY_PATTERN.test(input.taskSummary)) {\n\t\tif (mode === \"available\") mode = \"recommended\";\n\t\treasons.push(\"uncertainty_signal\");\n\t}\n\n\tif (\n\t\tinput.taskSummary &&\n\t\tCONSULTATION_PROMPT_PATTERN.test(input.taskSummary)\n\t) {\n\t\tif (mode === \"available\") mode = \"recommended\";\n\t\treasons.push(\"consultation_prompt_signal\");\n\t}\n\n\tif (priorFailures >= 2) {\n\t\tmode = input.profileLevel === \"low\" ? \"recommended\" : \"required\";\n\t\treasons.push(\"repeated_failures\");\n\t}\n\n\tif (reasons.length === 0) reasons.push(\"oracle_available_on_demand\");\n\treturn {\n\t\tpolicyVersion:\n\t\t\tinput.policyVersion?.trim() || ORACLE_CONSULTATION_POLICY_VERSION,\n\t\tevalSuite: \"oracle-consultation-policy-v1\",\n\t\tmode,\n\t\treasons,\n\t};\n}\n\nexport function formatOracleConsultationDirective(\n\tdecision: OracleConsultationDecision,\n): string {\n\tconst instruction =\n\t\tdecision.mode === \"required\"\n\t\t\t? \"You MUST consult the read-only Oracle once before committing to the plan or final answer. Incorporate or explicitly rebut its advice.\"\n\t\t\t: decision.mode === \"recommended\"\n\t\t\t\t? \"Consult the read-only Oracle once before committing to the plan or final answer unless the task has become clearly bounded; if you skip it, state the concrete reason.\"\n\t\t\t\t: \"The read-only Oracle is available on demand.\";\n\treturn [\n\t\t`Oracle consultation policy (${decision.policyVersion})`,\n\t\tinstruction,\n\t\t`Triggers: ${decision.reasons.join(\", \")}.`,\n\t].join(\"\\n\");\n}\n\nexport function applyOracleConsultationDirective(\n\tagent: { queueNextRunSystemPromptAddition(text: string): void },\n\tdecision: OracleConsultationDecision | undefined,\n): boolean {\n\tif (!decision || decision.mode === \"available\") return false;\n\tagent.queueNextRunSystemPromptAddition(\n\t\tformatOracleConsultationDirective(decision),\n\t);\n\treturn true;\n}\n"]}
@@ -0,0 +1,27 @@
1
+ export type OraclePolicyExperimentArm = "control" | "treatment";
2
+ export interface OraclePolicyExperimentInput {
3
+ experimentId: string;
4
+ sessionId: string;
5
+ /** Fraction of sessions assigned to treatment, in the inclusive range 0..1. */
6
+ allocation: number;
7
+ controlVersion: string;
8
+ treatmentVersion: string;
9
+ }
10
+ export interface OraclePolicyExperimentAssignment {
11
+ readonly experimentId: string;
12
+ readonly arm: OraclePolicyExperimentArm;
13
+ readonly policyVersion: string;
14
+ readonly bucket: number;
15
+ }
16
+ export interface OraclePolicyExperimentConfig {
17
+ experimentId: string;
18
+ allocation: number;
19
+ controlVersion: string;
20
+ treatmentVersion: string;
21
+ }
22
+ /** Deterministically assign a session to one immutable Oracle policy arm. */
23
+ export declare function assignOraclePolicyExperiment(input: OraclePolicyExperimentInput): OraclePolicyExperimentAssignment;
24
+ /** Resolve the optional host-configured experiment. Partial configs fail closed. */
25
+ export declare function getOraclePolicyExperimentConfig(): OraclePolicyExperimentConfig | undefined;
26
+ export declare function assignConfiguredOraclePolicyExperiment(sessionId: string): OraclePolicyExperimentAssignment | undefined;
27
+ //# sourceMappingURL=oracle-policy-experiment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oracle-policy-experiment.d.ts","sourceRoot":"","sources":["../../src/agent/oracle-policy-experiment.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,yBAAyB,GAAG,SAAS,GAAG,WAAW,CAAC;AAEhE,MAAM,WAAW,2BAA2B;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gCAAgC;IAChD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,yBAAyB,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,4BAA4B;IAC5C,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CACzB;AAKD,6EAA6E;AAC7E,wBAAgB,4BAA4B,CAC3C,KAAK,EAAE,2BAA2B,GAChC,gCAAgC,CA8BlC;AAED,oFAAoF;AACpF,wBAAgB,+BAA+B,IAC5C,4BAA4B,GAC5B,SAAS,CA6BX;AAED,wBAAgB,sCAAsC,CACrD,SAAS,EAAE,MAAM,GACf,gCAAgC,GAAG,SAAS,CAK9C"}