@orion-agents/orion-code 0.1.0 → 0.1.2

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 (251) hide show
  1. package/README.md +107 -67
  2. package/README.zh-CN.md +192 -217
  3. package/dist/cli.js +23 -21
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/index.d.ts +1 -1
  6. package/dist/commands/index.d.ts.map +1 -1
  7. package/dist/commands/index.js +397 -212
  8. package/dist/commands/index.js.map +1 -1
  9. package/dist/commands/target-command.d.ts.map +1 -1
  10. package/dist/commands/target-command.js +43 -9
  11. package/dist/commands/target-command.js.map +1 -1
  12. package/dist/commands/types.d.ts +33 -0
  13. package/dist/commands/types.d.ts.map +1 -1
  14. package/dist/commands/types.js +5 -1
  15. package/dist/commands/types.js.map +1 -1
  16. package/dist/core/agent.d.ts.map +1 -1
  17. package/dist/core/agent.js +2 -2
  18. package/dist/core/agent.js.map +1 -1
  19. package/dist/framework/external-assertion.d.ts +65 -0
  20. package/dist/framework/external-assertion.d.ts.map +1 -0
  21. package/dist/framework/external-assertion.js +571 -0
  22. package/dist/framework/external-assertion.js.map +1 -0
  23. package/dist/framework/index.d.ts +6 -4
  24. package/dist/framework/index.d.ts.map +1 -1
  25. package/dist/framework/index.js +4 -1
  26. package/dist/framework/index.js.map +1 -1
  27. package/dist/framework/query.d.ts +18 -1
  28. package/dist/framework/query.d.ts.map +1 -1
  29. package/dist/framework/query.js +65 -28
  30. package/dist/framework/query.js.map +1 -1
  31. package/dist/framework/tool-scheduler.d.ts +2 -0
  32. package/dist/framework/tool-scheduler.d.ts.map +1 -1
  33. package/dist/framework/tool-scheduler.js +23 -9
  34. package/dist/framework/tool-scheduler.js.map +1 -1
  35. package/dist/framework/tool-serializer.d.ts.map +1 -1
  36. package/dist/framework/tool-serializer.js +20 -4
  37. package/dist/framework/tool-serializer.js.map +1 -1
  38. package/dist/framework/tool.d.ts +11 -5
  39. package/dist/framework/tool.d.ts.map +1 -1
  40. package/dist/framework/tool.js.map +1 -1
  41. package/dist/harness/context-harness.d.ts.map +1 -1
  42. package/dist/harness/context-harness.js +4 -3
  43. package/dist/harness/context-harness.js.map +1 -1
  44. package/dist/harness/drift-guard.d.ts.map +1 -1
  45. package/dist/harness/drift-guard.js +14 -5
  46. package/dist/harness/drift-guard.js.map +1 -1
  47. package/dist/harness/safety.d.ts.map +1 -1
  48. package/dist/harness/safety.js +19 -3
  49. package/dist/harness/safety.js.map +1 -1
  50. package/dist/init.d.ts +1 -1
  51. package/dist/init.d.ts.map +1 -1
  52. package/dist/init.js +115 -34
  53. package/dist/init.js.map +1 -1
  54. package/dist/ink-ui/screens/ReplScreen.d.ts.map +1 -1
  55. package/dist/ink-ui/screens/ReplScreen.js +4 -1
  56. package/dist/ink-ui/screens/ReplScreen.js.map +1 -1
  57. package/dist/memory/storage.d.ts.map +1 -1
  58. package/dist/memory/storage.js +1 -0
  59. package/dist/memory/storage.js.map +1 -1
  60. package/dist/memory/store.d.ts.map +1 -1
  61. package/dist/memory/store.js +11 -5
  62. package/dist/memory/store.js.map +1 -1
  63. package/dist/migration/command.d.ts.map +1 -1
  64. package/dist/migration/command.js +6 -1
  65. package/dist/migration/command.js.map +1 -1
  66. package/dist/migration/migrate.d.ts.map +1 -1
  67. package/dist/migration/migrate.js +4 -1
  68. package/dist/migration/migrate.js.map +1 -1
  69. package/dist/print-ui/launch.d.ts +4 -0
  70. package/dist/print-ui/launch.d.ts.map +1 -1
  71. package/dist/print-ui/launch.js +102 -9
  72. package/dist/print-ui/launch.js.map +1 -1
  73. package/dist/product/identity.d.ts +2 -2
  74. package/dist/product/identity.d.ts.map +1 -1
  75. package/dist/product/identity.js +2 -2
  76. package/dist/product/identity.js.map +1 -1
  77. package/dist/product/index.d.ts +2 -1
  78. package/dist/product/index.d.ts.map +1 -1
  79. package/dist/product/index.js +5 -1
  80. package/dist/product/index.js.map +1 -1
  81. package/dist/product/version.d.ts +12 -0
  82. package/dist/product/version.d.ts.map +1 -0
  83. package/dist/product/version.js +31 -0
  84. package/dist/product/version.js.map +1 -0
  85. package/dist/runtime/agent-runtime-controller.d.ts +49 -0
  86. package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
  87. package/dist/runtime/agent-runtime-controller.js +1048 -81
  88. package/dist/runtime/agent-runtime-controller.js.map +1 -1
  89. package/dist/runtime/agent-runtime-protocol.d.ts +14 -2
  90. package/dist/runtime/agent-runtime-protocol.d.ts.map +1 -1
  91. package/dist/runtime/agent-runtime-protocol.js +18 -0
  92. package/dist/runtime/agent-runtime-protocol.js.map +1 -1
  93. package/dist/runtime/chat-controller.d.ts +6 -0
  94. package/dist/runtime/chat-controller.d.ts.map +1 -1
  95. package/dist/runtime/chat-controller.js +226 -20
  96. package/dist/runtime/chat-controller.js.map +1 -1
  97. package/dist/runtime/goals/accounting.d.ts +28 -0
  98. package/dist/runtime/goals/accounting.d.ts.map +1 -1
  99. package/dist/runtime/goals/accounting.js +69 -0
  100. package/dist/runtime/goals/accounting.js.map +1 -1
  101. package/dist/runtime/goals/completion-audit.d.ts +13 -8
  102. package/dist/runtime/goals/completion-audit.d.ts.map +1 -1
  103. package/dist/runtime/goals/completion-audit.js +598 -16
  104. package/dist/runtime/goals/completion-audit.js.map +1 -1
  105. package/dist/runtime/goals/coordinator.d.ts +44 -5
  106. package/dist/runtime/goals/coordinator.d.ts.map +1 -1
  107. package/dist/runtime/goals/coordinator.js +1124 -58
  108. package/dist/runtime/goals/coordinator.js.map +1 -1
  109. package/dist/runtime/goals/evidence.d.ts +37 -0
  110. package/dist/runtime/goals/evidence.d.ts.map +1 -0
  111. package/dist/runtime/goals/evidence.js +300 -0
  112. package/dist/runtime/goals/evidence.js.map +1 -0
  113. package/dist/runtime/goals/presentation.d.ts +4 -0
  114. package/dist/runtime/goals/presentation.d.ts.map +1 -0
  115. package/dist/runtime/goals/presentation.js +50 -0
  116. package/dist/runtime/goals/presentation.js.map +1 -0
  117. package/dist/runtime/goals/prompt.d.ts.map +1 -1
  118. package/dist/runtime/goals/prompt.js +38 -8
  119. package/dist/runtime/goals/prompt.js.map +1 -1
  120. package/dist/runtime/goals/tools.d.ts +18 -1
  121. package/dist/runtime/goals/tools.d.ts.map +1 -1
  122. package/dist/runtime/goals/tools.js +308 -28
  123. package/dist/runtime/goals/tools.js.map +1 -1
  124. package/dist/runtime/goals/types.d.ts +241 -7
  125. package/dist/runtime/goals/types.d.ts.map +1 -1
  126. package/dist/runtime/goals/types.js +8 -2
  127. package/dist/runtime/goals/types.js.map +1 -1
  128. package/dist/runtime/subagents/child-executor-guard.d.ts +12 -4
  129. package/dist/runtime/subagents/child-executor-guard.d.ts.map +1 -1
  130. package/dist/runtime/subagents/child-executor-guard.js +397 -61
  131. package/dist/runtime/subagents/child-executor-guard.js.map +1 -1
  132. package/dist/runtime/subagents/presets.d.ts +4 -5
  133. package/dist/runtime/subagents/presets.d.ts.map +1 -1
  134. package/dist/runtime/subagents/presets.js +18 -33
  135. package/dist/runtime/subagents/presets.js.map +1 -1
  136. package/dist/runtime/subagents/production.d.ts +3 -1
  137. package/dist/runtime/subagents/production.d.ts.map +1 -1
  138. package/dist/runtime/subagents/production.js +37 -7
  139. package/dist/runtime/subagents/production.js.map +1 -1
  140. package/dist/runtime/subagents/runner.d.ts.map +1 -1
  141. package/dist/runtime/subagents/runner.js +24 -3
  142. package/dist/runtime/subagents/runner.js.map +1 -1
  143. package/dist/runtime/subagents/runtime-integration.d.ts +3 -0
  144. package/dist/runtime/subagents/runtime-integration.d.ts.map +1 -1
  145. package/dist/runtime/subagents/runtime-integration.js +18 -7
  146. package/dist/runtime/subagents/runtime-integration.js.map +1 -1
  147. package/dist/runtime/subagents/supervisor.d.ts +4 -4
  148. package/dist/runtime/subagents/supervisor.d.ts.map +1 -1
  149. package/dist/runtime/subagents/supervisor.js +39 -19
  150. package/dist/runtime/subagents/supervisor.js.map +1 -1
  151. package/dist/runtime/subagents/types.d.ts +7 -0
  152. package/dist/runtime/subagents/types.d.ts.map +1 -1
  153. package/dist/runtime/subagents/types.js +12 -1
  154. package/dist/runtime/subagents/types.js.map +1 -1
  155. package/dist/runtime/ui-events.d.ts +10 -0
  156. package/dist/runtime/ui-events.d.ts.map +1 -1
  157. package/dist/runtime/ui-events.js +5 -5
  158. package/dist/runtime/ui-events.js.map +1 -1
  159. package/dist/runtime/ui-view-model.d.ts +3 -3
  160. package/dist/runtime/ui-view-model.d.ts.map +1 -1
  161. package/dist/runtime/ui-view-model.js +11 -4
  162. package/dist/runtime/ui-view-model.js.map +1 -1
  163. package/dist/services/config.d.ts +18 -7
  164. package/dist/services/config.d.ts.map +1 -1
  165. package/dist/services/config.js +79 -57
  166. package/dist/services/config.js.map +1 -1
  167. package/dist/services/doctor.d.ts.map +1 -1
  168. package/dist/services/doctor.js +164 -18
  169. package/dist/services/doctor.js.map +1 -1
  170. package/dist/services/global-config.d.ts +1 -1
  171. package/dist/services/global-config.d.ts.map +1 -1
  172. package/dist/services/goal-storage.d.ts +9 -4
  173. package/dist/services/goal-storage.d.ts.map +1 -1
  174. package/dist/services/goal-storage.js +1113 -75
  175. package/dist/services/goal-storage.js.map +1 -1
  176. package/dist/services/llm.d.ts +19 -0
  177. package/dist/services/llm.d.ts.map +1 -1
  178. package/dist/services/llm.js +153 -20
  179. package/dist/services/llm.js.map +1 -1
  180. package/dist/services/model-registry.d.ts +1 -1
  181. package/dist/services/model-registry.d.ts.map +1 -1
  182. package/dist/services/model-registry.js +69 -19
  183. package/dist/services/model-registry.js.map +1 -1
  184. package/dist/services/provider-resilience/coordinator.d.ts +2 -1
  185. package/dist/services/provider-resilience/coordinator.d.ts.map +1 -1
  186. package/dist/services/provider-resilience/coordinator.js +7 -6
  187. package/dist/services/provider-resilience/coordinator.js.map +1 -1
  188. package/dist/services/provider-resilience/error-classifier.d.ts.map +1 -1
  189. package/dist/services/provider-resilience/error-classifier.js +67 -17
  190. package/dist/services/provider-resilience/error-classifier.js.map +1 -1
  191. package/dist/services/provider-resilience/types.d.ts +1 -1
  192. package/dist/services/provider-resilience/types.d.ts.map +1 -1
  193. package/dist/services/provider-resilience/types.js.map +1 -1
  194. package/dist/services/redaction.d.ts.map +1 -1
  195. package/dist/services/redaction.js +9 -1
  196. package/dist/services/redaction.js.map +1 -1
  197. package/dist/services/session-storage.d.ts +12 -1
  198. package/dist/services/session-storage.d.ts.map +1 -1
  199. package/dist/services/session-storage.js +23 -7
  200. package/dist/services/session-storage.js.map +1 -1
  201. package/dist/services/storage-maintenance.d.ts +73 -3
  202. package/dist/services/storage-maintenance.d.ts.map +1 -1
  203. package/dist/services/storage-maintenance.js +771 -104
  204. package/dist/services/storage-maintenance.js.map +1 -1
  205. package/dist/services/task-manager.d.ts.map +1 -1
  206. package/dist/services/task-manager.js +2 -2
  207. package/dist/services/task-manager.js.map +1 -1
  208. package/dist/services/web-search-adapters.d.ts.map +1 -1
  209. package/dist/services/web-search-adapters.js +89 -49
  210. package/dist/services/web-search-adapters.js.map +1 -1
  211. package/dist/services/web-search-mcp.d.ts.map +1 -1
  212. package/dist/services/web-search-mcp.js +34 -37
  213. package/dist/services/web-search-mcp.js.map +1 -1
  214. package/dist/services/workspace-state.d.ts +4 -0
  215. package/dist/services/workspace-state.d.ts.map +1 -1
  216. package/dist/services/workspace-state.js +30 -9
  217. package/dist/services/workspace-state.js.map +1 -1
  218. package/dist/terminal-ui/completion.js +1 -1
  219. package/dist/terminal-ui/completion.js.map +1 -1
  220. package/dist/terminal-ui/launch.d.ts +3 -0
  221. package/dist/terminal-ui/launch.d.ts.map +1 -1
  222. package/dist/terminal-ui/launch.js +26 -98
  223. package/dist/terminal-ui/launch.js.map +1 -1
  224. package/dist/tools/git.d.ts.map +1 -1
  225. package/dist/tools/git.js +275 -27
  226. package/dist/tools/git.js.map +1 -1
  227. package/dist/tools/index.d.ts +2 -0
  228. package/dist/tools/index.d.ts.map +1 -1
  229. package/dist/tools/index.js +29 -10
  230. package/dist/tools/index.js.map +1 -1
  231. package/dist/tools/mcp.d.ts.map +1 -1
  232. package/dist/tools/mcp.js +20 -12
  233. package/dist/tools/mcp.js.map +1 -1
  234. package/dist/tools/web.d.ts.map +1 -1
  235. package/dist/tools/web.js +38 -14
  236. package/dist/tools/web.js.map +1 -1
  237. package/dist/tui-ui/layout.d.ts.map +1 -1
  238. package/dist/tui-ui/layout.js +36 -23
  239. package/dist/tui-ui/layout.js.map +1 -1
  240. package/dist/tui-ui/pickers.d.ts.map +1 -1
  241. package/dist/tui-ui/pickers.js +5 -4
  242. package/dist/tui-ui/pickers.js.map +1 -1
  243. package/dist/tui-ui/runner.d.ts +1 -0
  244. package/dist/tui-ui/runner.d.ts.map +1 -1
  245. package/dist/tui-ui/runner.js +15 -17
  246. package/dist/tui-ui/runner.js.map +1 -1
  247. package/dist/tui-ui/state.d.ts +6 -0
  248. package/dist/tui-ui/state.d.ts.map +1 -1
  249. package/dist/tui-ui/state.js +61 -30
  250. package/dist/tui-ui/state.js.map +1 -1
  251. package/package.json +14 -9
@@ -1 +1 @@
1
- {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/runtime/goals/prompt.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAWH,4DAwBC;AAED,oEAUC;AApCD,SAAgB,wBAAwB,CAAC,IAA0B;IACjE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEnD,MAAM,KAAK,GAAG;QACZ,mBAAmB;QACnB,YAAY,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QACrC,WAAW,IAAI,CAAC,MAAM,EAAE;QACxB,cAAc,IAAI,CAAC,SAAS,EAAE;QAC9B,0BAA0B,IAAI,CAAC,iBAAiB,YAAY,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,uBAAuB,EAAE;QACxL,EAAE;QACF,QAAQ;QACR,iDAAiD;QACjD,wEAAwE;QACxE,qEAAqE;QACrE,6DAA6D;QAC7D,uFAAuF;QACvF,yGAAyG;KAC1G,CAAC;IAEF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,yDAAyD;IACzD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;IAElE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;AACnC,CAAC;AAED,SAAgB,4BAA4B;IAC1C,OAAO;QACL,wCAAwC;QACxC,iEAAiE;QACjE,+DAA+D;QAC/D,sCAAsC;QACtC,6CAA6C;QAC7C,6FAA6F;QAC7F,uDAAuD;KACxD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,YAAY,CAAC,CAAS;IAC7B,IAAI,CAAC,IAAI,IAAI;QAAE,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAClD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../../src/runtime/goals/prompt.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,27 @@
9
9
  * tool pipeline via GOAL_TOOLS export.
10
10
  */
11
11
  import { type OpenHorseTool } from '../../framework/tool';
12
+ import type { AgentTurnRequest, GoalBlockerCategory, GoalEvidenceRecord, GoalPlanUpdate, GoalTerminalRequest } from './types';
12
13
  import type { GoalCoordinator } from './coordinator';
13
- export declare function setGoalToolCoordinator(coord: GoalCoordinator | null): void;
14
+ export interface GoalToolExecutionContext {
15
+ coordinator: GoalCoordinator;
16
+ request: AgentTurnRequest;
17
+ turnId: string;
18
+ pendingTerminalRequest?: GoalTerminalRequest;
19
+ pendingPlanUpdate?: GoalPlanUpdate;
20
+ pendingBlocker?: {
21
+ category: GoalBlockerCategory;
22
+ fingerprint: string;
23
+ summary: string;
24
+ retryable: boolean;
25
+ };
26
+ evidenceRecords: GoalEvidenceRecord[];
27
+ }
28
+ export declare function runWithGoalToolContext<T>(context: GoalToolExecutionContext, operation: () => Promise<T>): Promise<T>;
29
+ export declare function currentGoalToolContext(): GoalToolExecutionContext | undefined;
14
30
  export declare const getGoalTool: OpenHorseTool;
15
31
  export declare const createGoalTool: OpenHorseTool;
16
32
  export declare const updateGoalTool: OpenHorseTool;
33
+ export declare const updateGoalPlanTool: OpenHorseTool;
17
34
  export declare const GOAL_TOOLS: OpenHorseTool[];
18
35
  //# sourceMappingURL=tools.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/runtime/goals/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAa,KAAK,aAAa,EAAmB,MAAM,sBAAsB,CAAC;AAEtF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AASrD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,GAAG,IAAI,CAE1E;AAWD,eAAO,MAAM,WAAW,EAAE,aAkBxB,CAAC;AAEH,eAAO,MAAM,cAAc,EAAE,aAoC3B,CAAC;AAEH,eAAO,MAAM,cAAc,EAAE,aA4B3B,CAAC;AAEH,eAAO,MAAM,UAAU,EAAE,aAAa,EAAkD,CAAC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/runtime/goals/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAa,KAAK,aAAa,EAAmB,MAAM,sBAAsB,CAAC;AAEtF,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EAEnB,kBAAkB,EAElB,cAAc,EACd,mBAAmB,EAEpB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAQrD,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,eAAe,CAAC;IAC7B,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB,CAAC,EAAE,mBAAmB,CAAC;IAC7C,iBAAiB,CAAC,EAAE,cAAc,CAAC;IACnC,cAAc,CAAC,EAAE;QACf,QAAQ,EAAE,mBAAmB,CAAC;QAC9B,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,eAAe,EAAE,kBAAkB,EAAE,CAAC;CACvC;AAID,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,OAAO,EAAE,wBAAwB,EACjC,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAC1B,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,wBAAgB,sBAAsB,IAAI,wBAAwB,GAAG,SAAS,CAE7E;AAYD,eAAO,MAAM,WAAW,EAAE,aA0CxB,CAAC;AAEH,eAAO,MAAM,cAAc,EAAE,aA4D3B,CAAC;AAEH,eAAO,MAAM,cAAc,EAAE,aAiL3B,CAAC;AAWH,eAAO,MAAM,kBAAkB,EAAE,aA+F/B,CAAC;AAEH,eAAO,MAAM,UAAU,EAAE,aAAa,EAKrC,CAAC"}
@@ -10,21 +10,24 @@
10
10
  * tool pipeline via GOAL_TOOLS export.
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.GOAL_TOOLS = exports.updateGoalTool = exports.createGoalTool = exports.getGoalTool = void 0;
14
- exports.setGoalToolCoordinator = setGoalToolCoordinator;
13
+ exports.GOAL_TOOLS = exports.updateGoalPlanTool = exports.updateGoalTool = exports.createGoalTool = exports.getGoalTool = void 0;
14
+ exports.runWithGoalToolContext = runWithGoalToolContext;
15
+ exports.currentGoalToolContext = currentGoalToolContext;
15
16
  const tool_1 = require("../../framework/tool");
16
- // ---------------------------------------------------------------------------
17
- // Runtime binding — set by AgentRuntimeController when a GoalCoordinator
18
- // is available. This avoids passing the coordinator through every tool call.
19
- // ---------------------------------------------------------------------------
20
- let _coordinator = null;
21
- function setGoalToolCoordinator(coord) {
22
- _coordinator = coord;
17
+ const async_hooks_1 = require("async_hooks");
18
+ const session_storage_1 = require("../../services/session-storage");
19
+ const goalToolContext = new async_hooks_1.AsyncLocalStorage();
20
+ function runWithGoalToolContext(context, operation) {
21
+ return goalToolContext.run(context, operation);
23
22
  }
24
- function requireCoordinator() {
25
- if (!_coordinator)
26
- throw new Error('GoalCoordinator not available');
27
- return _coordinator;
23
+ function currentGoalToolContext() {
24
+ return goalToolContext.getStore();
25
+ }
26
+ function requireContext() {
27
+ const context = currentGoalToolContext();
28
+ if (!context)
29
+ throw new Error('GoalCoordinator not available in this runtime turn');
30
+ return context;
28
31
  }
29
32
  // ---------------------------------------------------------------------------
30
33
  // Tool definitions
@@ -38,11 +41,31 @@ exports.getGoalTool = (0, tool_1.buildTool)({
38
41
  required: [],
39
42
  },
40
43
  execute: async () => {
41
- const coord = requireCoordinator();
44
+ const context = requireContext();
45
+ const coord = context.coordinator;
42
46
  const snap = coord.snapshot();
47
+ const goal = coord.goal;
48
+ if (!snap || !goal)
49
+ return { success: true, output: 'No active goal.' };
50
+ const recentEvidence = [...(goal.evidenceLedger ?? []), ...context.evidenceRecords]
51
+ .filter(record => record.goalId === goal.goalId)
52
+ .slice(-50)
53
+ .map(record => ({
54
+ id: record.id,
55
+ goalRevision: record.goalRevision,
56
+ turnId: record.turnId,
57
+ kind: record.kind,
58
+ subject: record.subject,
59
+ result: record.result,
60
+ capturedAt: record.capturedAt,
61
+ }));
43
62
  return {
44
63
  success: true,
45
- output: snap ? JSON.stringify(snap, null, 2) : 'No active goal.',
64
+ output: JSON.stringify({
65
+ goal: snap,
66
+ successCriteria: goal.contract?.successCriteria ?? [],
67
+ recentEvidence,
68
+ }, null, 2),
46
69
  };
47
70
  },
48
71
  isReadOnly: () => true,
@@ -50,7 +73,7 @@ exports.getGoalTool = (0, tool_1.buildTool)({
50
73
  });
51
74
  exports.createGoalTool = (0, tool_1.buildTool)({
52
75
  name: 'create_goal',
53
- description: 'Create a persistent goal for this session. Only use when the user explicitly requests a long-running goal. Rejects if a goal already exists.',
76
+ description: 'Create a persistent goal for this session. Only use when the user explicitly requests a long-running goal. If the objective is ambiguous, high-risk, or requires external state changes, first ask the user to confirm the objective, constraints, success criteria, and external-action boundary. Rejects if a goal already exists.',
54
77
  parameters: {
55
78
  type: 'object',
56
79
  properties: {
@@ -58,23 +81,45 @@ exports.createGoalTool = (0, tool_1.buildTool)({
58
81
  type: 'string',
59
82
  description: 'The goal objective. Must be clear, specific, and verifiable.',
60
83
  },
61
- token_budget: {
62
- type: 'number',
63
- description: 'Optional token budget. Only set when the user explicitly provides a budget.',
84
+ constraints: {
85
+ type: 'array',
86
+ description: 'Optional user-authored constraints that the agent must preserve.',
87
+ items: { type: 'string' },
88
+ },
89
+ success_criteria: {
90
+ type: 'array',
91
+ description: 'Optional user-authored success criteria with required runtime evidence kinds.',
92
+ items: {
93
+ type: 'object',
94
+ properties: {
95
+ statement: { type: 'string' },
96
+ required_evidence_kinds: { type: 'array', items: { type: 'string' } },
97
+ },
98
+ required: ['statement', 'required_evidence_kinds'],
99
+ },
64
100
  },
65
101
  },
66
102
  required: ['objective'],
67
103
  },
68
104
  execute: async (args) => {
69
- const coord = requireCoordinator();
105
+ const coord = requireContext().coordinator;
70
106
  const objective = args.objective;
71
- const tokenBudget = args.token_budget;
72
- const result = coord.create(objective);
107
+ const constraints = Array.isArray(args.constraints)
108
+ ? args.constraints.map(value => String(value).trim())
109
+ : [];
110
+ const rawCriteria = Array.isArray(args.success_criteria)
111
+ ? args.success_criteria
112
+ : [];
113
+ const successCriteria = rawCriteria.map(criterion => ({
114
+ statement: String(criterion.statement ?? '').trim(),
115
+ requiredEvidenceKinds: Array.isArray(criterion.required_evidence_kinds)
116
+ ? criterion.required_evidence_kinds.map(kind => String(kind))
117
+ : [],
118
+ }));
119
+ const result = coord.create(objective, { constraints, successCriteria });
73
120
  if (!result.ok)
74
121
  return { success: false, output: '', error: result.error };
75
- if (tokenBudget && tokenBudget > 0) {
76
- coord.setBudget(tokenBudget);
77
- }
122
+ (0, session_storage_1.updateSessionGoalBinding)(coord.boundSessionId, coord.goal);
78
123
  const snap = coord.snapshot();
79
124
  return {
80
125
  success: true,
@@ -95,17 +140,146 @@ exports.updateGoalTool = (0, tool_1.buildTool)({
95
140
  enum: ['complete', 'blocked'],
96
141
  description: 'The requested target status: "complete" when all requirements are verified; "blocked" when the same blocker persisted for 3+ turns.',
97
142
  },
143
+ criterion_evidence: {
144
+ type: 'array',
145
+ description: 'For completion, map every success criterion to runtime-captured evidence IDs returned by tools.',
146
+ items: {
147
+ type: 'object',
148
+ properties: {
149
+ criterion_id: { type: 'string' },
150
+ evidence_ids: { type: 'array', items: { type: 'string' } },
151
+ },
152
+ required: ['criterion_id', 'evidence_ids'],
153
+ },
154
+ },
155
+ blocker: {
156
+ type: 'object',
157
+ description: 'Required for blocked: the same external blocker must persist for 3 turns.',
158
+ properties: {
159
+ category: {
160
+ type: 'string',
161
+ enum: ['user_input', 'permission', 'external_state'],
162
+ },
163
+ resource: { type: 'string' },
164
+ reason: { type: 'string' },
165
+ retryable: { type: 'boolean' },
166
+ },
167
+ required: ['category', 'resource', 'reason', 'retryable'],
168
+ },
98
169
  },
99
170
  required: ['status'],
100
171
  },
101
172
  execute: async (args) => {
102
- const coord = requireCoordinator();
173
+ const context = requireContext();
174
+ const coord = context.coordinator;
103
175
  const status = args.status;
104
176
  const goal = coord.goal;
105
177
  if (!goal)
106
178
  return { success: false, output: '', error: 'No active goal to update.' };
107
179
  if (goal.status !== 'active')
108
- return { success: false, output: '', error: `Goal is not active (current status: ${goal.status}).` };
180
+ return {
181
+ success: false,
182
+ output: '',
183
+ error: `Goal is not active (current status: ${goal.status}).`,
184
+ };
185
+ let criterionEvidence;
186
+ if (status === 'complete') {
187
+ const criteria = goal.contract?.successCriteria ?? [];
188
+ const availableEvidence = new Map([...(goal.evidenceLedger ?? []), ...context.evidenceRecords]
189
+ .filter(record => record.goalId === goal.goalId &&
190
+ record.goalRevision <= goal.revision &&
191
+ record.objectiveRevision === (goal.contract?.objectiveRevision ?? 0))
192
+ .map(record => [record.id, record]));
193
+ const rawMappings = Array.isArray(args.criterion_evidence)
194
+ ? args.criterion_evidence
195
+ : [];
196
+ criterionEvidence = rawMappings.map(mapping => ({
197
+ criterionId: String(mapping.criterion_id ?? ''),
198
+ evidenceIds: Array.isArray(mapping.evidence_ids)
199
+ ? mapping.evidence_ids.map(id => String(id))
200
+ : [],
201
+ }));
202
+ if (!criterionEvidence || criterionEvidence.length !== criteria.length) {
203
+ return {
204
+ success: false,
205
+ output: '',
206
+ error: 'Completion requires an evidence mapping for every success criterion. Call get_goal after verification to read captured evidence IDs.',
207
+ };
208
+ }
209
+ const seenCriteria = new Set();
210
+ const seenEvidence = new Set();
211
+ for (const mapping of criterionEvidence) {
212
+ const criterion = criteria.find(item => item.id === mapping.criterionId);
213
+ if (!criterion ||
214
+ seenCriteria.has(mapping.criterionId) ||
215
+ mapping.evidenceIds.length === 0) {
216
+ return {
217
+ success: false,
218
+ output: '',
219
+ error: `Invalid or duplicate evidence mapping for criterion ${mapping.criterionId || '(empty)'}.`,
220
+ };
221
+ }
222
+ seenCriteria.add(mapping.criterionId);
223
+ for (const evidenceId of mapping.evidenceIds) {
224
+ if (seenEvidence.has(evidenceId)) {
225
+ return {
226
+ success: false,
227
+ output: '',
228
+ error: `Evidence ${evidenceId} cannot be reused across success criteria.`,
229
+ };
230
+ }
231
+ const record = availableEvidence.get(evidenceId);
232
+ if (!record || !criterion.requiredEvidenceKinds.includes(record.kind)) {
233
+ return {
234
+ success: false,
235
+ output: '',
236
+ error: `Evidence ${evidenceId} is unavailable or irrelevant to ${mapping.criterionId}.`,
237
+ };
238
+ }
239
+ seenEvidence.add(evidenceId);
240
+ }
241
+ }
242
+ }
243
+ if (status === 'blocked') {
244
+ const blocker = args.blocker && typeof args.blocker === 'object'
245
+ ? args.blocker
246
+ : undefined;
247
+ const category = String(blocker?.category ?? '').trim();
248
+ const resource = String(blocker?.resource ?? '').trim();
249
+ const reason = String(blocker?.reason ?? '').trim();
250
+ const retryable = blocker?.retryable;
251
+ if (!['user_input', 'permission', 'external_state'].includes(category) ||
252
+ !resource ||
253
+ !reason ||
254
+ typeof retryable !== 'boolean') {
255
+ return {
256
+ success: false,
257
+ output: '',
258
+ error: 'Blocked requests require blocker category, resource, reason, and retryable.',
259
+ };
260
+ }
261
+ if (retryable) {
262
+ return {
263
+ success: false,
264
+ output: '',
265
+ error: 'Retryable blockers cannot become terminal blocked; continue or pause instead.',
266
+ };
267
+ }
268
+ context.pendingBlocker = {
269
+ category: category,
270
+ fingerprint: `${category}:${resource}:${reason}`,
271
+ summary: `${category} on ${resource}: ${reason}`,
272
+ retryable: false,
273
+ };
274
+ }
275
+ context.pendingTerminalRequest = {
276
+ requestedStatus: status,
277
+ requestedAt: Date.now(),
278
+ goalId: goal.goalId,
279
+ goalRevision: goal.revision,
280
+ turnId: context.turnId,
281
+ criterionEvidence,
282
+ };
109
283
  return {
110
284
  success: true,
111
285
  output: `Goal ${status} request recorded. Audit will verify before applying.`,
@@ -114,5 +288,111 @@ exports.updateGoalTool = (0, tool_1.buildTool)({
114
288
  isReadOnly: () => false,
115
289
  isConcurrencySafe: () => false,
116
290
  });
117
- exports.GOAL_TOOLS = [exports.getGoalTool, exports.createGoalTool, exports.updateGoalTool];
291
+ const ALLOWED_DERIVED_EVIDENCE = new Set([
292
+ 'test',
293
+ 'build',
294
+ 'lint',
295
+ 'file',
296
+ 'runtime',
297
+ 'external',
298
+ ]);
299
+ exports.updateGoalPlanTool = (0, tool_1.buildTool)({
300
+ name: 'update_goal_plan',
301
+ description: 'Update the current Goal execution plan and add derived success criteria. The runtime applies it atomically when the current turn finalizes.',
302
+ parameters: {
303
+ type: 'object',
304
+ properties: {
305
+ phase: { type: 'string', description: 'Short current execution phase.' },
306
+ steps: {
307
+ type: 'array',
308
+ description: 'Current bounded execution steps.',
309
+ items: {
310
+ type: 'object',
311
+ properties: {
312
+ description: { type: 'string' },
313
+ done: { type: 'boolean' },
314
+ },
315
+ required: ['description', 'done'],
316
+ },
317
+ },
318
+ next_action: { type: 'string', description: 'The next concrete action.' },
319
+ derived_criteria: {
320
+ type: 'array',
321
+ description: 'Additional agent-derived criteria; existing user criteria are never removed.',
322
+ items: {
323
+ type: 'object',
324
+ properties: {
325
+ statement: { type: 'string' },
326
+ evidence_kinds: { type: 'array', items: { type: 'string' } },
327
+ },
328
+ required: ['statement', 'evidence_kinds'],
329
+ },
330
+ },
331
+ },
332
+ required: ['phase', 'steps'],
333
+ },
334
+ execute: async (args) => {
335
+ const context = requireContext();
336
+ const goal = context.coordinator.goal;
337
+ if (!goal || goal.status !== 'active') {
338
+ return { success: false, output: '', error: 'No active goal to plan.' };
339
+ }
340
+ const phase = String(args.phase ?? '').trim();
341
+ const rawSteps = Array.isArray(args.steps)
342
+ ? args.steps
343
+ : [];
344
+ if (!phase || rawSteps.length > 50) {
345
+ return {
346
+ success: false,
347
+ output: '',
348
+ error: 'Plan phase is required and steps are limited to 50.',
349
+ };
350
+ }
351
+ const steps = rawSteps.map(step => ({
352
+ description: String(step.description ?? '').trim(),
353
+ done: step.done === true,
354
+ }));
355
+ if (steps.some(step => !step.description)) {
356
+ return { success: false, output: '', error: 'Every plan step requires a description.' };
357
+ }
358
+ const rawCriteria = Array.isArray(args.derived_criteria)
359
+ ? args.derived_criteria
360
+ : [];
361
+ const derivedCriteria = [];
362
+ for (const raw of rawCriteria) {
363
+ const statement = String(raw.statement ?? '').trim();
364
+ const kinds = Array.isArray(raw.evidence_kinds)
365
+ ? raw.evidence_kinds.map(kind => String(kind))
366
+ : [];
367
+ if (!statement ||
368
+ kinds.length === 0 ||
369
+ kinds.some(kind => !ALLOWED_DERIVED_EVIDENCE.has(kind))) {
370
+ return {
371
+ success: false,
372
+ output: '',
373
+ error: 'Derived criteria require a statement and valid runtime evidence kinds.',
374
+ };
375
+ }
376
+ derivedCriteria.push({ statement, requiredEvidenceKinds: [...new Set(kinds)] });
377
+ }
378
+ context.pendingPlanUpdate = {
379
+ phase,
380
+ steps,
381
+ nextAction: String(args.next_action ?? '').trim() || undefined,
382
+ derivedCriteria,
383
+ };
384
+ return {
385
+ success: true,
386
+ output: 'Goal plan update recorded. The coordinator will apply it when this turn finalizes.',
387
+ };
388
+ },
389
+ isReadOnly: () => false,
390
+ isConcurrencySafe: () => false,
391
+ });
392
+ exports.GOAL_TOOLS = [
393
+ exports.getGoalTool,
394
+ exports.createGoalTool,
395
+ exports.updateGoalPlanTool,
396
+ exports.updateGoalTool,
397
+ ];
118
398
  //# sourceMappingURL=tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/runtime/goals/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/runtime/goals/tools.ts"],"names":[],"mappings":"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"}