@orion-agents/orion-code 0.1.1 → 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 (602) hide show
  1. package/README.md +93 -68
  2. package/README.zh-CN.md +181 -216
  3. package/dist/cli.js +13 -17
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/index.d.ts.map +1 -1
  6. package/dist/commands/index.js +213 -114
  7. package/dist/commands/index.js.map +1 -1
  8. package/dist/commands/target-command.d.ts.map +1 -1
  9. package/dist/commands/target-command.js +42 -8
  10. package/dist/commands/target-command.js.map +1 -1
  11. package/dist/core/agent.d.ts.map +1 -1
  12. package/dist/core/agent.js +2 -2
  13. package/dist/core/agent.js.map +1 -1
  14. package/dist/framework/external-assertion.d.ts +65 -0
  15. package/dist/framework/external-assertion.d.ts.map +1 -0
  16. package/dist/framework/external-assertion.js +571 -0
  17. package/dist/framework/external-assertion.js.map +1 -0
  18. package/dist/framework/index.d.ts +6 -4
  19. package/dist/framework/index.d.ts.map +1 -1
  20. package/dist/framework/index.js +4 -1
  21. package/dist/framework/index.js.map +1 -1
  22. package/dist/framework/query.d.ts +15 -1
  23. package/dist/framework/query.d.ts.map +1 -1
  24. package/dist/framework/query.js +42 -23
  25. package/dist/framework/query.js.map +1 -1
  26. package/dist/framework/tool-scheduler.d.ts +2 -0
  27. package/dist/framework/tool-scheduler.d.ts.map +1 -1
  28. package/dist/framework/tool-scheduler.js +23 -9
  29. package/dist/framework/tool-scheduler.js.map +1 -1
  30. package/dist/framework/tool-serializer.d.ts.map +1 -1
  31. package/dist/framework/tool-serializer.js +20 -4
  32. package/dist/framework/tool-serializer.js.map +1 -1
  33. package/dist/framework/tool.d.ts +11 -5
  34. package/dist/framework/tool.d.ts.map +1 -1
  35. package/dist/framework/tool.js.map +1 -1
  36. package/dist/harness/safety.d.ts.map +1 -1
  37. package/dist/harness/safety.js +19 -3
  38. package/dist/harness/safety.js.map +1 -1
  39. package/dist/init.d.ts +1 -1
  40. package/dist/init.d.ts.map +1 -1
  41. package/dist/init.js +115 -34
  42. package/dist/init.js.map +1 -1
  43. package/dist/memory/storage.d.ts.map +1 -1
  44. package/dist/memory/storage.js +1 -0
  45. package/dist/memory/storage.js.map +1 -1
  46. package/dist/memory/store.d.ts.map +1 -1
  47. package/dist/memory/store.js +11 -5
  48. package/dist/memory/store.js.map +1 -1
  49. package/dist/print-ui/launch.d.ts +4 -0
  50. package/dist/print-ui/launch.d.ts.map +1 -1
  51. package/dist/print-ui/launch.js +102 -9
  52. package/dist/print-ui/launch.js.map +1 -1
  53. package/dist/product/identity.d.ts +2 -2
  54. package/dist/product/identity.d.ts.map +1 -1
  55. package/dist/product/identity.js +2 -2
  56. package/dist/product/identity.js.map +1 -1
  57. package/dist/product/index.d.ts +2 -1
  58. package/dist/product/index.d.ts.map +1 -1
  59. package/dist/product/index.js +5 -1
  60. package/dist/product/index.js.map +1 -1
  61. package/dist/product/version.d.ts +12 -0
  62. package/dist/product/version.d.ts.map +1 -0
  63. package/dist/product/version.js +31 -0
  64. package/dist/product/version.js.map +1 -0
  65. package/dist/runtime/agent-runtime-controller.d.ts +34 -0
  66. package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
  67. package/dist/runtime/agent-runtime-controller.js +953 -148
  68. package/dist/runtime/agent-runtime-controller.js.map +1 -1
  69. package/dist/runtime/agent-runtime-protocol.d.ts +7 -2
  70. package/dist/runtime/agent-runtime-protocol.d.ts.map +1 -1
  71. package/dist/runtime/agent-runtime-protocol.js +6 -0
  72. package/dist/runtime/agent-runtime-protocol.js.map +1 -1
  73. package/dist/runtime/chat-controller.d.ts +6 -0
  74. package/dist/runtime/chat-controller.d.ts.map +1 -1
  75. package/dist/runtime/chat-controller.js +200 -19
  76. package/dist/runtime/chat-controller.js.map +1 -1
  77. package/dist/runtime/goals/accounting.d.ts +28 -0
  78. package/dist/runtime/goals/accounting.d.ts.map +1 -1
  79. package/dist/runtime/goals/accounting.js +69 -0
  80. package/dist/runtime/goals/accounting.js.map +1 -1
  81. package/dist/runtime/goals/completion-audit.d.ts +13 -8
  82. package/dist/runtime/goals/completion-audit.d.ts.map +1 -1
  83. package/dist/runtime/goals/completion-audit.js +598 -16
  84. package/dist/runtime/goals/completion-audit.js.map +1 -1
  85. package/dist/runtime/goals/coordinator.d.ts +44 -5
  86. package/dist/runtime/goals/coordinator.d.ts.map +1 -1
  87. package/dist/runtime/goals/coordinator.js +1124 -58
  88. package/dist/runtime/goals/coordinator.js.map +1 -1
  89. package/dist/runtime/goals/evidence.d.ts +37 -0
  90. package/dist/runtime/goals/evidence.d.ts.map +1 -0
  91. package/dist/runtime/goals/evidence.js +300 -0
  92. package/dist/runtime/goals/evidence.js.map +1 -0
  93. package/dist/runtime/goals/presentation.d.ts +4 -0
  94. package/dist/runtime/goals/presentation.d.ts.map +1 -0
  95. package/dist/runtime/goals/presentation.js +50 -0
  96. package/dist/runtime/goals/presentation.js.map +1 -0
  97. package/dist/runtime/goals/prompt.d.ts.map +1 -1
  98. package/dist/runtime/goals/prompt.js +38 -8
  99. package/dist/runtime/goals/prompt.js.map +1 -1
  100. package/dist/runtime/goals/tools.d.ts +18 -1
  101. package/dist/runtime/goals/tools.d.ts.map +1 -1
  102. package/dist/runtime/goals/tools.js +308 -28
  103. package/dist/runtime/goals/tools.js.map +1 -1
  104. package/dist/runtime/goals/types.d.ts +241 -7
  105. package/dist/runtime/goals/types.d.ts.map +1 -1
  106. package/dist/runtime/goals/types.js +8 -2
  107. package/dist/runtime/goals/types.js.map +1 -1
  108. package/dist/runtime/subagents/child-executor-guard.d.ts +12 -4
  109. package/dist/runtime/subagents/child-executor-guard.d.ts.map +1 -1
  110. package/dist/runtime/subagents/child-executor-guard.js +397 -61
  111. package/dist/runtime/subagents/child-executor-guard.js.map +1 -1
  112. package/dist/runtime/subagents/presets.d.ts +4 -5
  113. package/dist/runtime/subagents/presets.d.ts.map +1 -1
  114. package/dist/runtime/subagents/presets.js +18 -33
  115. package/dist/runtime/subagents/presets.js.map +1 -1
  116. package/dist/runtime/subagents/production.d.ts +3 -1
  117. package/dist/runtime/subagents/production.d.ts.map +1 -1
  118. package/dist/runtime/subagents/production.js +37 -7
  119. package/dist/runtime/subagents/production.js.map +1 -1
  120. package/dist/runtime/subagents/runner.d.ts.map +1 -1
  121. package/dist/runtime/subagents/runner.js +24 -3
  122. package/dist/runtime/subagents/runner.js.map +1 -1
  123. package/dist/runtime/subagents/runtime-integration.d.ts +3 -0
  124. package/dist/runtime/subagents/runtime-integration.d.ts.map +1 -1
  125. package/dist/runtime/subagents/runtime-integration.js +18 -7
  126. package/dist/runtime/subagents/runtime-integration.js.map +1 -1
  127. package/dist/runtime/subagents/supervisor.d.ts +4 -4
  128. package/dist/runtime/subagents/supervisor.d.ts.map +1 -1
  129. package/dist/runtime/subagents/supervisor.js +39 -19
  130. package/dist/runtime/subagents/supervisor.js.map +1 -1
  131. package/dist/runtime/subagents/types.d.ts +7 -0
  132. package/dist/runtime/subagents/types.d.ts.map +1 -1
  133. package/dist/runtime/subagents/types.js +12 -1
  134. package/dist/runtime/subagents/types.js.map +1 -1
  135. package/dist/runtime/ui-events.d.ts +6 -0
  136. package/dist/runtime/ui-events.d.ts.map +1 -1
  137. package/dist/runtime/ui-events.js +5 -5
  138. package/dist/runtime/ui-events.js.map +1 -1
  139. package/dist/services/config.d.ts +1 -1
  140. package/dist/services/config.d.ts.map +1 -1
  141. package/dist/services/config.js +53 -48
  142. package/dist/services/config.js.map +1 -1
  143. package/dist/services/doctor.d.ts.map +1 -1
  144. package/dist/services/doctor.js +163 -17
  145. package/dist/services/doctor.js.map +1 -1
  146. package/dist/services/goal-storage.d.ts +9 -4
  147. package/dist/services/goal-storage.d.ts.map +1 -1
  148. package/dist/services/goal-storage.js +1113 -75
  149. package/dist/services/goal-storage.js.map +1 -1
  150. package/dist/services/llm.d.ts +19 -0
  151. package/dist/services/llm.d.ts.map +1 -1
  152. package/dist/services/llm.js +153 -20
  153. package/dist/services/llm.js.map +1 -1
  154. package/dist/services/model-registry.d.ts +1 -1
  155. package/dist/services/model-registry.d.ts.map +1 -1
  156. package/dist/services/model-registry.js +69 -19
  157. package/dist/services/model-registry.js.map +1 -1
  158. package/dist/services/provider-resilience/coordinator.d.ts +2 -1
  159. package/dist/services/provider-resilience/coordinator.d.ts.map +1 -1
  160. package/dist/services/provider-resilience/coordinator.js +7 -6
  161. package/dist/services/provider-resilience/coordinator.js.map +1 -1
  162. package/dist/services/provider-resilience/error-classifier.d.ts.map +1 -1
  163. package/dist/services/provider-resilience/error-classifier.js +67 -17
  164. package/dist/services/provider-resilience/error-classifier.js.map +1 -1
  165. package/dist/services/provider-resilience/types.d.ts +1 -1
  166. package/dist/services/provider-resilience/types.d.ts.map +1 -1
  167. package/dist/services/provider-resilience/types.js.map +1 -1
  168. package/dist/services/redaction.d.ts.map +1 -1
  169. package/dist/services/redaction.js +9 -1
  170. package/dist/services/redaction.js.map +1 -1
  171. package/dist/services/session-storage.d.ts +12 -1
  172. package/dist/services/session-storage.d.ts.map +1 -1
  173. package/dist/services/session-storage.js +23 -7
  174. package/dist/services/session-storage.js.map +1 -1
  175. package/dist/services/storage-maintenance.d.ts +73 -3
  176. package/dist/services/storage-maintenance.d.ts.map +1 -1
  177. package/dist/services/storage-maintenance.js +771 -104
  178. package/dist/services/storage-maintenance.js.map +1 -1
  179. package/dist/services/task-manager.d.ts.map +1 -1
  180. package/dist/services/task-manager.js +2 -2
  181. package/dist/services/task-manager.js.map +1 -1
  182. package/dist/services/web-search-adapters.d.ts.map +1 -1
  183. package/dist/services/web-search-adapters.js +89 -49
  184. package/dist/services/web-search-adapters.js.map +1 -1
  185. package/dist/services/web-search-mcp.d.ts.map +1 -1
  186. package/dist/services/web-search-mcp.js +34 -37
  187. package/dist/services/web-search-mcp.js.map +1 -1
  188. package/dist/services/workspace-state.d.ts +4 -0
  189. package/dist/services/workspace-state.d.ts.map +1 -1
  190. package/dist/services/workspace-state.js +30 -9
  191. package/dist/services/workspace-state.js.map +1 -1
  192. package/dist/terminal-ui/launch.d.ts +2 -0
  193. package/dist/terminal-ui/launch.d.ts.map +1 -1
  194. package/dist/terminal-ui/launch.js +21 -7
  195. package/dist/terminal-ui/launch.js.map +1 -1
  196. package/dist/tools/git.d.ts.map +1 -1
  197. package/dist/tools/git.js +275 -27
  198. package/dist/tools/git.js.map +1 -1
  199. package/dist/tools/index.d.ts.map +1 -1
  200. package/dist/tools/index.js +23 -4
  201. package/dist/tools/index.js.map +1 -1
  202. package/dist/tools/mcp.d.ts.map +1 -1
  203. package/dist/tools/mcp.js +20 -12
  204. package/dist/tools/mcp.js.map +1 -1
  205. package/dist/tools/web.d.ts.map +1 -1
  206. package/dist/tools/web.js +38 -14
  207. package/dist/tools/web.js.map +1 -1
  208. package/dist/tui-ui/layout.d.ts.map +1 -1
  209. package/dist/tui-ui/layout.js +36 -23
  210. package/dist/tui-ui/layout.js.map +1 -1
  211. package/dist/tui-ui/pickers.d.ts.map +1 -1
  212. package/dist/tui-ui/pickers.js +4 -3
  213. package/dist/tui-ui/pickers.js.map +1 -1
  214. package/dist/tui-ui/runner.d.ts +1 -0
  215. package/dist/tui-ui/runner.d.ts.map +1 -1
  216. package/dist/tui-ui/runner.js +14 -0
  217. package/dist/tui-ui/runner.js.map +1 -1
  218. package/dist/tui-ui/state.d.ts +6 -0
  219. package/dist/tui-ui/state.d.ts.map +1 -1
  220. package/dist/tui-ui/state.js +60 -30
  221. package/dist/tui-ui/state.js.map +1 -1
  222. package/package.json +13 -9
  223. package/dist/core/state.d.ts +0 -94
  224. package/dist/core/state.d.ts.map +0 -1
  225. package/dist/core/state.js +0 -178
  226. package/dist/core/state.js.map +0 -1
  227. package/dist/ink/bidi.d.ts +0 -16
  228. package/dist/ink/bidi.d.ts.map +0 -1
  229. package/dist/ink/bidi.js +0 -124
  230. package/dist/ink/bidi.js.map +0 -1
  231. package/dist/ink/clearTerminal.d.ts +0 -14
  232. package/dist/ink/clearTerminal.d.ts.map +0 -1
  233. package/dist/ink/clearTerminal.js +0 -63
  234. package/dist/ink/clearTerminal.js.map +0 -1
  235. package/dist/ink/colorize.d.ts +0 -17
  236. package/dist/ink/colorize.d.ts.map +0 -1
  237. package/dist/ink/colorize.js +0 -208
  238. package/dist/ink/colorize.js.map +0 -1
  239. package/dist/ink/components/App.d.ts +0 -73
  240. package/dist/ink/components/App.d.ts.map +0 -1
  241. package/dist/ink/components/App.js +0 -646
  242. package/dist/ink/components/App.js.map +0 -1
  243. package/dist/ink/components/AppContext.d.ts +0 -12
  244. package/dist/ink/components/AppContext.d.ts.map +0 -1
  245. package/dist/ink/components/AppContext.js +0 -14
  246. package/dist/ink/components/AppContext.js.map +0 -1
  247. package/dist/ink/components/Box.d.ts +0 -44
  248. package/dist/ink/components/Box.d.ts.map +0 -1
  249. package/dist/ink/components/Box.js +0 -191
  250. package/dist/ink/components/Box.js.map +0 -1
  251. package/dist/ink/components/ClockContext.d.ts +0 -9
  252. package/dist/ink/components/ClockContext.d.ts.map +0 -1
  253. package/dist/ink/components/ClockContext.js +0 -146
  254. package/dist/ink/components/ClockContext.js.map +0 -1
  255. package/dist/ink/components/CursorDeclarationContext.d.ts +0 -23
  256. package/dist/ink/components/CursorDeclarationContext.d.ts.map +0 -1
  257. package/dist/ink/components/CursorDeclarationContext.js +0 -6
  258. package/dist/ink/components/CursorDeclarationContext.js.map +0 -1
  259. package/dist/ink/components/ErrorOverview.d.ts +0 -6
  260. package/dist/ink/components/ErrorOverview.d.ts.map +0 -1
  261. package/dist/ink/components/ErrorOverview.js +0 -27
  262. package/dist/ink/components/ErrorOverview.js.map +0 -1
  263. package/dist/ink/components/Newline.d.ts +0 -13
  264. package/dist/ink/components/Newline.d.ts.map +0 -1
  265. package/dist/ink/components/Newline.js +0 -36
  266. package/dist/ink/components/Newline.js.map +0 -1
  267. package/dist/ink/components/NoSelect.d.ts +0 -20
  268. package/dist/ink/components/NoSelect.d.ts.map +0 -1
  269. package/dist/ink/components/NoSelect.js +0 -63
  270. package/dist/ink/components/NoSelect.js.map +0 -1
  271. package/dist/ink/components/RawAnsi.d.ts +0 -17
  272. package/dist/ink/components/RawAnsi.d.ts.map +0 -1
  273. package/dist/ink/components/RawAnsi.js +0 -52
  274. package/dist/ink/components/RawAnsi.js.map +0 -1
  275. package/dist/ink/components/Spacer.d.ts +0 -6
  276. package/dist/ink/components/Spacer.d.ts.map +0 -1
  277. package/dist/ink/components/Spacer.js +0 -26
  278. package/dist/ink/components/Spacer.js.map +0 -1
  279. package/dist/ink/components/StdinContext.d.ts +0 -28
  280. package/dist/ink/components/StdinContext.d.ts.map +0 -1
  281. package/dist/ink/components/StdinContext.js +0 -19
  282. package/dist/ink/components/StdinContext.js.map +0 -1
  283. package/dist/ink/components/TerminalFocusContext.d.ts +0 -10
  284. package/dist/ink/components/TerminalFocusContext.d.ts.map +0 -1
  285. package/dist/ink/components/TerminalFocusContext.js +0 -81
  286. package/dist/ink/components/TerminalFocusContext.js.map +0 -1
  287. package/dist/ink/components/TerminalSizeContext.d.ts +0 -6
  288. package/dist/ink/components/TerminalSizeContext.d.ts.map +0 -1
  289. package/dist/ink/components/TerminalSizeContext.js +0 -6
  290. package/dist/ink/components/TerminalSizeContext.js.map +0 -1
  291. package/dist/ink/components/Text.d.ts +0 -56
  292. package/dist/ink/components/Text.d.ts.map +0 -1
  293. package/dist/ink/components/Text.js +0 -201
  294. package/dist/ink/components/Text.js.map +0 -1
  295. package/dist/ink/constants.d.ts +0 -2
  296. package/dist/ink/constants.d.ts.map +0 -1
  297. package/dist/ink/constants.js +0 -6
  298. package/dist/ink/constants.js.map +0 -1
  299. package/dist/ink/devtools.d.ts +0 -3
  300. package/dist/ink/devtools.d.ts.map +0 -1
  301. package/dist/ink/devtools.js +0 -5
  302. package/dist/ink/devtools.js.map +0 -1
  303. package/dist/ink/dom.d.ts +0 -77
  304. package/dist/ink/dom.d.ts.map +0 -1
  305. package/dist/ink/dom.js +0 -322
  306. package/dist/ink/dom.js.map +0 -1
  307. package/dist/ink/events/click-event.d.ts +0 -32
  308. package/dist/ink/events/click-event.d.ts.map +0 -1
  309. package/dist/ink/events/click-event.js +0 -30
  310. package/dist/ink/events/click-event.js.map +0 -1
  311. package/dist/ink/events/dispatcher.d.ts +0 -41
  312. package/dist/ink/events/dispatcher.d.ts.map +0 -1
  313. package/dist/ink/events/dispatcher.js +0 -181
  314. package/dist/ink/events/dispatcher.js.map +0 -1
  315. package/dist/ink/events/emitter.d.ts +0 -6
  316. package/dist/ink/events/emitter.d.ts.map +0 -1
  317. package/dist/ink/events/emitter.js +0 -36
  318. package/dist/ink/events/emitter.js.map +0 -1
  319. package/dist/ink/events/event-handlers.d.ts +0 -47
  320. package/dist/ink/events/event-handlers.d.ts.map +0 -1
  321. package/dist/ink/events/event-handlers.js +0 -34
  322. package/dist/ink/events/event-handlers.js.map +0 -1
  323. package/dist/ink/events/event.d.ts +0 -6
  324. package/dist/ink/events/event.d.ts.map +0 -1
  325. package/dist/ink/events/event.js +0 -16
  326. package/dist/ink/events/event.js.map +0 -1
  327. package/dist/ink/events/focus-event.d.ts +0 -14
  328. package/dist/ink/events/focus-event.d.ts.map +0 -1
  329. package/dist/ink/events/focus-event.js +0 -20
  330. package/dist/ink/events/focus-event.js.map +0 -1
  331. package/dist/ink/events/input-event.d.ts +0 -31
  332. package/dist/ink/events/input-event.d.ts.map +0 -1
  333. package/dist/ink/events/input-event.js +0 -163
  334. package/dist/ink/events/input-event.js.map +0 -1
  335. package/dist/ink/events/keyboard-event.d.ts +0 -20
  336. package/dist/ink/events/keyboard-event.d.ts.map +0 -1
  337. package/dist/ink/events/keyboard-event.js +0 -44
  338. package/dist/ink/events/keyboard-event.js.map +0 -1
  339. package/dist/ink/events/terminal-event.d.ts +0 -55
  340. package/dist/ink/events/terminal-event.d.ts.map +0 -1
  341. package/dist/ink/events/terminal-event.js +0 -79
  342. package/dist/ink/events/terminal-event.js.map +0 -1
  343. package/dist/ink/events/terminal-focus-event.d.ts +0 -14
  344. package/dist/ink/events/terminal-focus-event.d.ts.map +0 -1
  345. package/dist/ink/events/terminal-focus-event.js +0 -19
  346. package/dist/ink/events/terminal-focus-event.js.map +0 -1
  347. package/dist/ink/focus.d.ts +0 -44
  348. package/dist/ink/focus.d.ts.map +0 -1
  349. package/dist/ink/focus.js +0 -164
  350. package/dist/ink/focus.js.map +0 -1
  351. package/dist/ink/frame.d.ts +0 -95
  352. package/dist/ink/frame.d.ts.map +0 -1
  353. package/dist/ink/frame.js +0 -35
  354. package/dist/ink/frame.js.map +0 -1
  355. package/dist/ink/get-max-width.d.ts +0 -18
  356. package/dist/ink/get-max-width.d.ts.map +0 -1
  357. package/dist/ink/get-max-width.js +0 -26
  358. package/dist/ink/get-max-width.js.map +0 -1
  359. package/dist/ink/hit-test.d.ts +0 -34
  360. package/dist/ink/hit-test.d.ts.map +0 -1
  361. package/dist/ink/hit-test.js +0 -119
  362. package/dist/ink/hit-test.js.map +0 -1
  363. package/dist/ink/hooks/use-animation-frame.d.ts +0 -27
  364. package/dist/ink/hooks/use-animation-frame.d.ts.map +0 -1
  365. package/dist/ink/hooks/use-animation-frame.js +0 -52
  366. package/dist/ink/hooks/use-animation-frame.js.map +0 -1
  367. package/dist/ink/hooks/use-app.d.ts +0 -6
  368. package/dist/ink/hooks/use-app.d.ts.map +0 -1
  369. package/dist/ink/hooks/use-app.js +0 -13
  370. package/dist/ink/hooks/use-app.js.map +0 -1
  371. package/dist/ink/hooks/use-declared-cursor.d.ts +0 -27
  372. package/dist/ink/hooks/use-declared-cursor.d.ts.map +0 -1
  373. package/dist/ink/hooks/use-declared-cursor.js +0 -67
  374. package/dist/ink/hooks/use-declared-cursor.js.map +0 -1
  375. package/dist/ink/hooks/use-input.d.ts +0 -38
  376. package/dist/ink/hooks/use-input.d.ts.map +0 -1
  377. package/dist/ink/hooks/use-input.js +0 -86
  378. package/dist/ink/hooks/use-input.js.map +0 -1
  379. package/dist/ink/hooks/use-interval.d.ts +0 -19
  380. package/dist/ink/hooks/use-interval.d.ts.map +0 -1
  381. package/dist/ink/hooks/use-interval.js +0 -59
  382. package/dist/ink/hooks/use-interval.js.map +0 -1
  383. package/dist/ink/hooks/use-search-highlight.d.ts +0 -31
  384. package/dist/ink/hooks/use-search-highlight.d.ts.map +0 -1
  385. package/dist/ink/hooks/use-search-highlight.js +0 -39
  386. package/dist/ink/hooks/use-search-highlight.js.map +0 -1
  387. package/dist/ink/hooks/use-selection.d.ts +0 -40
  388. package/dist/ink/hooks/use-selection.d.ts.map +0 -1
  389. package/dist/ink/hooks/use-selection.js +0 -68
  390. package/dist/ink/hooks/use-selection.js.map +0 -1
  391. package/dist/ink/hooks/use-stdin.d.ts +0 -6
  392. package/dist/ink/hooks/use-stdin.d.ts.map +0 -1
  393. package/dist/ink/hooks/use-stdin.js +0 -13
  394. package/dist/ink/hooks/use-stdin.js.map +0 -1
  395. package/dist/ink/hooks/use-tab-status.d.ts +0 -14
  396. package/dist/ink/hooks/use-tab-status.d.ts.map +0 -1
  397. package/dist/ink/hooks/use-tab-status.js +0 -61
  398. package/dist/ink/hooks/use-tab-status.js.map +0 -1
  399. package/dist/ink/hooks/use-terminal-focus.d.ts +0 -11
  400. package/dist/ink/hooks/use-terminal-focus.d.ts.map +0 -1
  401. package/dist/ink/hooks/use-terminal-focus.js +0 -22
  402. package/dist/ink/hooks/use-terminal-focus.js.map +0 -1
  403. package/dist/ink/hooks/use-terminal-title.d.ts +0 -13
  404. package/dist/ink/hooks/use-terminal-title.d.ts.map +0 -1
  405. package/dist/ink/hooks/use-terminal-title.js +0 -36
  406. package/dist/ink/hooks/use-terminal-title.js.map +0 -1
  407. package/dist/ink/hooks/use-terminal-viewport.d.ts +0 -30
  408. package/dist/ink/hooks/use-terminal-viewport.d.ts.map +0 -1
  409. package/dist/ink/hooks/use-terminal-viewport.js +0 -81
  410. package/dist/ink/hooks/use-terminal-viewport.js.map +0 -1
  411. package/dist/ink/ink.d.ts +0 -371
  412. package/dist/ink/ink.d.ts.map +0 -1
  413. package/dist/ink/ink.js +0 -1686
  414. package/dist/ink/ink.js.map +0 -1
  415. package/dist/ink/instances.d.ts +0 -4
  416. package/dist/ink/instances.d.ts.map +0 -1
  417. package/dist/ink/instances.js +0 -10
  418. package/dist/ink/instances.js.map +0 -1
  419. package/dist/ink/line-width-cache.d.ts +0 -2
  420. package/dist/ink/line-width-cache.d.ts.map +0 -1
  421. package/dist/ink/line-width-cache.js +0 -23
  422. package/dist/ink/line-width-cache.js.map +0 -1
  423. package/dist/ink/log-update.d.ts +0 -18
  424. package/dist/ink/log-update.d.ts.map +0 -1
  425. package/dist/ink/log-update.js +0 -637
  426. package/dist/ink/log-update.js.map +0 -1
  427. package/dist/ink/measure-element.d.ts +0 -17
  428. package/dist/ink/measure-element.d.ts.map +0 -1
  429. package/dist/ink/measure-element.js +0 -11
  430. package/dist/ink/measure-element.js.map +0 -1
  431. package/dist/ink/measure-text.d.ts +0 -7
  432. package/dist/ink/measure-text.d.ts.map +0 -1
  433. package/dist/ink/measure-text.js +0 -38
  434. package/dist/ink/measure-text.js.map +0 -1
  435. package/dist/ink/node-cache.d.ts +0 -21
  436. package/dist/ink/node-cache.d.ts.map +0 -1
  437. package/dist/ink/node-cache.js +0 -36
  438. package/dist/ink/node-cache.js.map +0 -1
  439. package/dist/ink/optimizer.d.ts +0 -16
  440. package/dist/ink/optimizer.d.ts.map +0 -1
  441. package/dist/ink/optimizer.js +0 -85
  442. package/dist/ink/optimizer.js.map +0 -1
  443. package/dist/ink/output.d.ts +0 -120
  444. package/dist/ink/output.d.ts.map +0 -1
  445. package/dist/ink/output.js +0 -559
  446. package/dist/ink/output.js.map +0 -1
  447. package/dist/ink/parse-keypress.d.ts +0 -112
  448. package/dist/ink/parse-keypress.d.ts.map +0 -1
  449. package/dist/ink/parse-keypress.js +0 -719
  450. package/dist/ink/parse-keypress.js.map +0 -1
  451. package/dist/ink/parse-keypress.test.d.ts +0 -2
  452. package/dist/ink/parse-keypress.test.d.ts.map +0 -1
  453. package/dist/ink/parse-keypress.test.js +0 -37
  454. package/dist/ink/parse-keypress.test.js.map +0 -1
  455. package/dist/ink/reconciler.d.ts +0 -12
  456. package/dist/ink/reconciler.d.ts.map +0 -1
  457. package/dist/ink/reconciler.js +0 -456
  458. package/dist/ink/reconciler.js.map +0 -1
  459. package/dist/ink/render-border.d.ts +0 -25
  460. package/dist/ink/render-border.d.ts.map +0 -1
  461. package/dist/ink/render-border.js +0 -141
  462. package/dist/ink/render-border.js.map +0 -1
  463. package/dist/ink/render-node-to-output.d.ts +0 -46
  464. package/dist/ink/render-node-to-output.d.ts.map +0 -1
  465. package/dist/ink/render-node-to-output.js +0 -1257
  466. package/dist/ink/render-node-to-output.js.map +0 -1
  467. package/dist/ink/render-to-screen.d.ts +0 -47
  468. package/dist/ink/render-to-screen.d.ts.map +0 -1
  469. package/dist/ink/render-to-screen.js +0 -213
  470. package/dist/ink/render-to-screen.js.map +0 -1
  471. package/dist/ink/renderer.d.ts +0 -15
  472. package/dist/ink/renderer.d.ts.map +0 -1
  473. package/dist/ink/renderer.js +0 -169
  474. package/dist/ink/renderer.js.map +0 -1
  475. package/dist/ink/root.d.ts +0 -75
  476. package/dist/ink/root.d.ts.map +0 -1
  477. package/dist/ink/root.js +0 -89
  478. package/dist/ink/root.js.map +0 -1
  479. package/dist/ink/screen.d.ts +0 -270
  480. package/dist/ink/screen.d.ts.map +0 -1
  481. package/dist/ink/screen.js +0 -1194
  482. package/dist/ink/screen.js.map +0 -1
  483. package/dist/ink/searchHighlight.d.ts +0 -21
  484. package/dist/ink/searchHighlight.d.ts.map +0 -1
  485. package/dist/ink/searchHighlight.js +0 -82
  486. package/dist/ink/searchHighlight.js.map +0 -1
  487. package/dist/ink/selection.d.ts +0 -230
  488. package/dist/ink/selection.d.ts.map +0 -1
  489. package/dist/ink/selection.js +0 -814
  490. package/dist/ink/selection.js.map +0 -1
  491. package/dist/ink/squash-text-nodes.d.ts +0 -23
  492. package/dist/ink/squash-text-nodes.d.ts.map +0 -1
  493. package/dist/ink/squash-text-nodes.js +0 -60
  494. package/dist/ink/squash-text-nodes.js.map +0 -1
  495. package/dist/ink/stringWidth.d.ts +0 -2
  496. package/dist/ink/stringWidth.d.ts.map +0 -1
  497. package/dist/ink/stringWidth.js +0 -207
  498. package/dist/ink/stringWidth.js.map +0 -1
  499. package/dist/ink/styles.d.ts +0 -307
  500. package/dist/ink/styles.d.ts.map +0 -1
  501. package/dist/ink/styles.js +0 -302
  502. package/dist/ink/styles.js.map +0 -1
  503. package/dist/ink/supports-hyperlinks.d.ts +0 -14
  504. package/dist/ink/supports-hyperlinks.d.ts.map +0 -1
  505. package/dist/ink/supports-hyperlinks.js +0 -48
  506. package/dist/ink/supports-hyperlinks.js.map +0 -1
  507. package/dist/ink/tabstops.d.ts +0 -2
  508. package/dist/ink/tabstops.d.ts.map +0 -1
  509. package/dist/ink/tabstops.js +0 -43
  510. package/dist/ink/tabstops.js.map +0 -1
  511. package/dist/ink/terminal-focus-state.d.ts +0 -7
  512. package/dist/ink/terminal-focus-state.d.ts.map +0 -1
  513. package/dist/ink/terminal-focus-state.js +0 -43
  514. package/dist/ink/terminal-focus-state.js.map +0 -1
  515. package/dist/ink/terminal-querier.d.ts +0 -130
  516. package/dist/ink/terminal-querier.d.ts.map +0 -1
  517. package/dist/ink/terminal-querier.js +0 -184
  518. package/dist/ink/terminal-querier.js.map +0 -1
  519. package/dist/ink/terminal.d.ts +0 -56
  520. package/dist/ink/terminal.d.ts.map +0 -1
  521. package/dist/ink/terminal.js +0 -249
  522. package/dist/ink/terminal.js.map +0 -1
  523. package/dist/ink/termio/csi.d.ts +0 -166
  524. package/dist/ink/termio/csi.d.ts.map +0 -1
  525. package/dist/ink/termio/csi.js +0 -285
  526. package/dist/ink/termio/csi.js.map +0 -1
  527. package/dist/ink/termio/dec.d.ts +0 -38
  528. package/dist/ink/termio/dec.d.ts.map +0 -1
  529. package/dist/ink/termio/dec.js +0 -59
  530. package/dist/ink/termio/dec.js.map +0 -1
  531. package/dist/ink/termio.d.ts +0 -25
  532. package/dist/ink/termio.d.ts.map +0 -1
  533. package/dist/ink/termio.js +0 -32
  534. package/dist/ink/termio.js.map +0 -1
  535. package/dist/ink/useTerminalNotification.d.ts +0 -27
  536. package/dist/ink/useTerminalNotification.d.ts.map +0 -1
  537. package/dist/ink/useTerminalNotification.js +0 -62
  538. package/dist/ink/useTerminalNotification.js.map +0 -1
  539. package/dist/ink/warn.d.ts +0 -2
  540. package/dist/ink/warn.d.ts.map +0 -1
  541. package/dist/ink/warn.js +0 -14
  542. package/dist/ink/warn.js.map +0 -1
  543. package/dist/ink/widest-line.d.ts +0 -2
  544. package/dist/ink/widest-line.d.ts.map +0 -1
  545. package/dist/ink/widest-line.js +0 -18
  546. package/dist/ink/widest-line.js.map +0 -1
  547. package/dist/ink/wrap-text.d.ts +0 -3
  548. package/dist/ink/wrap-text.d.ts.map +0 -1
  549. package/dist/ink/wrap-text.js +0 -61
  550. package/dist/ink/wrap-text.js.map +0 -1
  551. package/dist/ink/wrapAnsi.d.ts +0 -8
  552. package/dist/ink/wrapAnsi.d.ts.map +0 -1
  553. package/dist/ink/wrapAnsi.js +0 -13
  554. package/dist/ink/wrapAnsi.js.map +0 -1
  555. package/dist/ink-ui/components/TerminalCursor.d.ts +0 -15
  556. package/dist/ink-ui/components/TerminalCursor.d.ts.map +0 -1
  557. package/dist/ink-ui/components/TerminalCursor.js +0 -49
  558. package/dist/ink-ui/components/TerminalCursor.js.map +0 -1
  559. package/dist/ink-ui/runtime/stdout.d.ts +0 -11
  560. package/dist/ink-ui/runtime/stdout.d.ts.map +0 -1
  561. package/dist/ink-ui/runtime/stdout.js +0 -82
  562. package/dist/ink-ui/runtime/stdout.js.map +0 -1
  563. package/dist/runtime/goal-coordinator.d.ts +0 -66
  564. package/dist/runtime/goal-coordinator.d.ts.map +0 -1
  565. package/dist/runtime/goal-coordinator.js +0 -200
  566. package/dist/runtime/goal-coordinator.js.map +0 -1
  567. package/dist/screens/REPL.d.ts +0 -21
  568. package/dist/screens/REPL.d.ts.map +0 -1
  569. package/dist/screens/REPL.js +0 -139
  570. package/dist/screens/REPL.js.map +0 -1
  571. package/dist/services/goal-sidecar.d.ts +0 -96
  572. package/dist/services/goal-sidecar.d.ts.map +0 -1
  573. package/dist/services/goal-sidecar.js +0 -145
  574. package/dist/services/goal-sidecar.js.map +0 -1
  575. package/dist/tools/goal.d.ts +0 -17
  576. package/dist/tools/goal.d.ts.map +0 -1
  577. package/dist/tools/goal.js +0 -191
  578. package/dist/tools/goal.js.map +0 -1
  579. package/dist/ui/ink/components/App.d.ts +0 -6
  580. package/dist/ui/ink/components/App.d.ts.map +0 -1
  581. package/dist/ui/ink/components/App.js +0 -38
  582. package/dist/ui/ink/components/App.js.map +0 -1
  583. package/dist/ui/ink/components/CommandPanel.d.ts +0 -13
  584. package/dist/ui/ink/components/CommandPanel.d.ts.map +0 -1
  585. package/dist/ui/ink/components/CommandPanel.js +0 -41
  586. package/dist/ui/ink/components/CommandPanel.js.map +0 -1
  587. package/dist/ui/ink/components/InputLine.d.ts +0 -8
  588. package/dist/ui/ink/components/InputLine.d.ts.map +0 -1
  589. package/dist/ui/ink/components/InputLine.js +0 -15
  590. package/dist/ui/ink/components/InputLine.js.map +0 -1
  591. package/dist/ui/ink/components/StatusBar.d.ts +0 -9
  592. package/dist/ui/ink/components/StatusBar.d.ts.map +0 -1
  593. package/dist/ui/ink/components/StatusBar.js +0 -18
  594. package/dist/ui/ink/components/StatusBar.js.map +0 -1
  595. package/dist/ui/ink/components/index.d.ts +0 -5
  596. package/dist/ui/ink/components/index.d.ts.map +0 -1
  597. package/dist/ui/ink/components/index.js +0 -5
  598. package/dist/ui/ink/components/index.js.map +0 -1
  599. package/dist/utils/chalk.d.ts +0 -9
  600. package/dist/utils/chalk.d.ts.map +0 -1
  601. package/dist/utils/chalk.js +0 -16
  602. package/dist/utils/chalk.js.map +0 -1
@@ -1,61 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.default = wrapText;
7
- const sliceAnsi_js_1 = __importDefault(require("../utils/sliceAnsi.js"));
8
- const stringWidth_js_1 = require("./stringWidth.js");
9
- const wrapAnsi_js_1 = require("./wrapAnsi.js");
10
- const ELLIPSIS = '…';
11
- // sliceAnsi may include a boundary-spanning wide char (e.g. CJK at position
12
- // end-1 with width 2 overshoots by 1). Retry with a tighter bound once.
13
- function sliceFit(text, start, end) {
14
- const s = (0, sliceAnsi_js_1.default)(text, start, end);
15
- return (0, stringWidth_js_1.stringWidth)(s) > end - start ? (0, sliceAnsi_js_1.default)(text, start, end - 1) : s;
16
- }
17
- function truncate(text, columns, position) {
18
- if (columns < 1)
19
- return '';
20
- if (columns === 1)
21
- return ELLIPSIS;
22
- const length = (0, stringWidth_js_1.stringWidth)(text);
23
- if (length <= columns)
24
- return text;
25
- if (position === 'start') {
26
- return ELLIPSIS + sliceFit(text, length - columns + 1, length);
27
- }
28
- if (position === 'middle') {
29
- const half = Math.floor(columns / 2);
30
- return (sliceFit(text, 0, half) +
31
- ELLIPSIS +
32
- sliceFit(text, length - (columns - half) + 1, length));
33
- }
34
- return sliceFit(text, 0, columns - 1) + ELLIPSIS;
35
- }
36
- function wrapText(text, maxWidth, wrapType) {
37
- if (wrapType === 'wrap') {
38
- return (0, wrapAnsi_js_1.wrapAnsi)(text, maxWidth, {
39
- trim: false,
40
- hard: true,
41
- });
42
- }
43
- if (wrapType === 'wrap-trim') {
44
- return (0, wrapAnsi_js_1.wrapAnsi)(text, maxWidth, {
45
- trim: true,
46
- hard: true,
47
- });
48
- }
49
- if (wrapType.startsWith('truncate')) {
50
- let position = 'end';
51
- if (wrapType === 'truncate-middle') {
52
- position = 'middle';
53
- }
54
- if (wrapType === 'truncate-start') {
55
- position = 'start';
56
- }
57
- return truncate(text, maxWidth, position);
58
- }
59
- return text;
60
- }
61
- //# sourceMappingURL=wrap-text.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrap-text.js","sourceRoot":"","sources":["../../src/ink/wrap-text.ts"],"names":[],"mappings":";;;;;AAuCA,2BAkCC;AAzED,yEAA6C;AAC7C,qDAA8C;AAE9C,+CAAwC;AAExC,MAAM,QAAQ,GAAG,GAAG,CAAA;AAEpB,4EAA4E;AAC5E,wEAAwE;AACxE,SAAS,QAAQ,CAAC,IAAY,EAAE,KAAa,EAAE,GAAW;IACxD,MAAM,CAAC,GAAG,IAAA,sBAAS,EAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAA;IACrC,OAAO,IAAA,4BAAW,EAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,IAAA,sBAAS,EAAC,IAAI,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC3E,CAAC;AAED,SAAS,QAAQ,CACf,IAAY,EACZ,OAAe,EACf,QAAoC;IAEpC,IAAI,OAAO,GAAG,CAAC;QAAE,OAAO,EAAE,CAAA;IAC1B,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,QAAQ,CAAA;IAElC,MAAM,MAAM,GAAG,IAAA,4BAAW,EAAC,IAAI,CAAC,CAAA;IAChC,IAAI,MAAM,IAAI,OAAO;QAAE,OAAO,IAAI,CAAA;IAElC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,CAAC,EAAE,MAAM,CAAC,CAAA;IAChE,CAAC;IACD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAA;QACpC,OAAO,CACL,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC;YACvB,QAAQ;YACR,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CACtD,CAAA;IACH,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAA;AAClD,CAAC;AAED,SAAwB,QAAQ,CAC9B,IAAY,EACZ,QAAgB,EAChB,QAA4B;IAE5B,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO,IAAA,sBAAQ,EAAC,IAAI,EAAE,QAAQ,EAAE;YAC9B,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC7B,OAAO,IAAA,sBAAQ,EAAC,IAAI,EAAE,QAAQ,EAAE;YAC9B,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;IACJ,CAAC;IAED,IAAI,QAAS,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,IAAI,QAAQ,GAA+B,KAAK,CAAA;QAEhD,IAAI,QAAQ,KAAK,iBAAiB,EAAE,CAAC;YACnC,QAAQ,GAAG,QAAQ,CAAA;QACrB,CAAC;QAED,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAClC,QAAQ,GAAG,OAAO,CAAA;QACpB,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC3C,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC"}
@@ -1,8 +0,0 @@
1
- type WrapAnsiOptions = {
2
- hard?: boolean;
3
- wordWrap?: boolean;
4
- trim?: boolean;
5
- };
6
- declare const wrapAnsi: (input: string, columns: number, options?: WrapAnsiOptions) => string;
7
- export { wrapAnsi };
8
- //# sourceMappingURL=wrapAnsi.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrapAnsi.d.ts","sourceRoot":"","sources":["../../src/ink/wrapAnsi.ts"],"names":[],"mappings":"AAEA,KAAK,eAAe,GAAG;IACrB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,CAAA;AAOD,QAAA,MAAM,QAAQ,EAAE,CACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,eAAe,KACtB,MAAmC,CAAA;AAExC,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -1,13 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.wrapAnsi = void 0;
7
- const wrap_ansi_1 = __importDefault(require("wrap-ansi"));
8
- const wrapAnsiBun = typeof Bun !== 'undefined' && typeof Bun.wrapAnsi === 'function'
9
- ? Bun.wrapAnsi
10
- : null;
11
- const wrapAnsi = wrapAnsiBun ?? wrap_ansi_1.default;
12
- exports.wrapAnsi = wrapAnsi;
13
- //# sourceMappingURL=wrapAnsi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrapAnsi.js","sourceRoot":"","sources":["../../src/ink/wrapAnsi.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAmC;AAQnC,MAAM,WAAW,GACf,OAAO,GAAG,KAAK,WAAW,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,UAAU;IAC9D,CAAC,CAAC,GAAG,CAAC,QAAQ;IACd,CAAC,CAAC,IAAI,CAAA;AAEV,MAAM,QAAQ,GAIA,WAAW,IAAI,mBAAW,CAAA;AAE/B,4BAAQ"}
@@ -1,15 +0,0 @@
1
- export interface TerminalCursorProps {
2
- value: string;
3
- terminalHeight: number;
4
- terminalWidth: number;
5
- cursor?: number;
6
- maxRows?: number;
7
- sticky?: boolean;
8
- }
9
- export declare function getPromptCursorPosition(value: string, terminalHeight: number, terminalWidth: number): {
10
- row: number;
11
- column: number;
12
- };
13
- export declare function getCursorRestoreDelays(_sticky?: boolean): number[];
14
- export declare function TerminalCursor({ value, terminalWidth, cursor, maxRows, sticky }: TerminalCursorProps): null;
15
- //# sourceMappingURL=TerminalCursor.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TerminalCursor.d.ts","sourceRoot":"","sources":["../../../src/ink-ui/components/TerminalCursor.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAID,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,GACpB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAgBjC;AAED,wBAAgB,sBAAsB,CAAC,OAAO,UAAQ,GAAG,MAAM,EAAE,CAEhE;AAED,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,MAAqB,EAAE,OAAW,EAAE,MAAc,EAAE,EAAE,mBAAmB,GAAG,IAAI,CAgBtI"}
@@ -1,49 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getPromptCursorPosition = getPromptCursorPosition;
7
- exports.getCursorRestoreDelays = getCursorRestoreDelays;
8
- exports.TerminalCursor = TerminalCursor;
9
- const react_1 = require("react");
10
- const string_width_1 = __importDefault(require("string-width"));
11
- const prompt_layout_1 = require("../runtime/prompt-layout");
12
- const stdout_1 = require("../runtime/stdout");
13
- const NORMAL_RESTORE_DELAYS_MS = [0];
14
- const STICKY_RESTORE_DELAYS_MS = [0];
15
- function getPromptCursorPosition(value, terminalHeight, terminalWidth) {
16
- const lines = value.length > 0 ? value.split('\n') : [''];
17
- const maxTextWidth = (0, prompt_layout_1.promptTextWidth)(terminalWidth);
18
- const rows = lines.map(line => (0, prompt_layout_1.splitByVisualWidth)(line, maxTextWidth).length);
19
- const totalInputRows = rows.reduce((sum, rowCount) => sum + rowCount, 0);
20
- const activeLine = lines[lines.length - 1] ?? '';
21
- const previousRows = rows.slice(0, -1).reduce((sum, rowCount) => sum + rowCount, 0);
22
- const activeChunks = (0, prompt_layout_1.splitByVisualWidth)(activeLine, maxTextWidth);
23
- const wrapRow = Math.max(0, activeChunks.length - 1);
24
- const activeChunk = activeChunks[activeChunks.length - 1] ?? '';
25
- const columnInContent = 2 + (0, string_width_1.default)(activeChunk);
26
- return {
27
- row: Math.max(1, terminalHeight - totalInputRows + previousRows + wrapRow),
28
- column: Math.max(1, 3 + columnInContent),
29
- };
30
- }
31
- function getCursorRestoreDelays(_sticky = false) {
32
- return NORMAL_RESTORE_DELAYS_MS;
33
- }
34
- function TerminalCursor({ value, terminalWidth, cursor = value.length, maxRows = 6, sticky = false }) {
35
- (0, react_1.useLayoutEffect)(() => {
36
- const viewport = (0, prompt_layout_1.getPromptInputViewport)(value, terminalWidth, maxRows, cursor);
37
- (0, stdout_1.setPromptCursorState)({
38
- enabled: true,
39
- column: viewport.cursorColumn,
40
- rowsUp: viewport.rowsUpFromPromptBottom,
41
- });
42
- (0, stdout_1.schedulePromptCursorRestore)();
43
- return () => {
44
- (0, stdout_1.disablePromptCursor)();
45
- };
46
- }, [sticky, value, terminalWidth, cursor, maxRows]);
47
- return null;
48
- }
49
- //# sourceMappingURL=TerminalCursor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TerminalCursor.js","sourceRoot":"","sources":["../../../src/ink-ui/components/TerminalCursor.tsx"],"names":[],"mappings":";;;;;AAgBA,0DAoBC;AAED,wDAEC;AAED,wCAgBC;AA1DD,iCAAwC;AACxC,gEAAuC;AACvC,4DAAuG;AACvG,8CAA2G;AAW3G,MAAM,wBAAwB,GAAG,CAAC,CAAC,CAAC,CAAC;AACrC,MAAM,wBAAwB,GAAG,CAAC,CAAC,CAAC,CAAC;AACrC,SAAgB,uBAAuB,CACrC,KAAa,EACb,cAAsB,EACtB,aAAqB;IAErB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1D,MAAM,YAAY,GAAG,IAAA,+BAAe,EAAC,aAAa,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,kCAAkB,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;IAC9E,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;IACpF,MAAM,YAAY,GAAG,IAAA,kCAAkB,EAAC,UAAU,EAAE,YAAY,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IAChE,MAAM,eAAe,GAAG,CAAC,GAAG,IAAA,sBAAW,EAAC,WAAW,CAAC,CAAC;IAErD,OAAO;QACL,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,cAAc,GAAG,YAAY,GAAG,OAAO,CAAC;QAC1E,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,SAAgB,sBAAsB,CAAC,OAAO,GAAG,KAAK;IACpD,OAAO,wBAAwB,CAAC;AAClC,CAAC;AAED,SAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,EAAuB;IAC9H,IAAA,uBAAe,EAAC,GAAG,EAAE;QACnB,MAAM,QAAQ,GAAG,IAAA,sCAAsB,EAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/E,IAAA,6BAAoB,EAAC;YACnB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,QAAQ,CAAC,YAAY;YAC7B,MAAM,EAAE,QAAQ,CAAC,sBAAsB;SACxC,CAAC,CAAC;QACH,IAAA,oCAA2B,GAAE,CAAC;QAE9B,OAAO,GAAG,EAAE;YACV,IAAA,4BAAmB,GAAE,CAAC;QACxB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEpD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,11 +0,0 @@
1
- interface PromptCursorState {
2
- enabled: boolean;
3
- column: number;
4
- rowsUp: number;
5
- }
6
- export declare function setPromptCursorState(state: PromptCursorState): void;
7
- export declare function disablePromptCursor(): void;
8
- export declare function schedulePromptCursorRestore(): void;
9
- export declare function createInkStdout(stdout: NodeJS.WriteStream): NodeJS.WriteStream;
10
- export {};
11
- //# sourceMappingURL=stdout.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stdout.d.ts","sourceRoot":"","sources":["../../../src/ink-ui/runtime/stdout.ts"],"names":[],"mappings":"AAEA,UAAU,iBAAiB;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AA6CD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAEnE;AAED,wBAAgB,mBAAmB,IAAI,IAAI,CAI1C;AAED,wBAAgB,2BAA2B,IAAI,IAAI,CAMlD;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CA0B9E"}
@@ -1,82 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setPromptCursorState = setPromptCursorState;
4
- exports.disablePromptCursor = disablePromptCursor;
5
- exports.schedulePromptCursorRestore = schedulePromptCursorRestore;
6
- exports.createInkStdout = createInkStdout;
7
- const PROMPT_CURSOR_RESTORE_DELAY_MS = 0;
8
- let cursorState = {
9
- enabled: false,
10
- column: 5,
11
- rowsUp: 2,
12
- };
13
- let cursorOutput = process.stdout;
14
- let pendingCursorRestore = null;
15
- let cursorParked = false;
16
- let parkedRowsUp = 2;
17
- function cancelPendingPromptCursorRestore() {
18
- if (pendingCursorRestore) {
19
- clearTimeout(pendingCursorRestore);
20
- pendingCursorRestore = null;
21
- }
22
- }
23
- function unparkPromptCursor(output = cursorOutput) {
24
- if (!cursorParked || output.isTTY === false) {
25
- cursorParked = false;
26
- return;
27
- }
28
- const rowsDown = Math.max(1, parkedRowsUp);
29
- output.write(`\r\x1b[${rowsDown}B`);
30
- cursorParked = false;
31
- }
32
- function writePromptCursor() {
33
- pendingCursorRestore = null;
34
- if (!cursorState.enabled || cursorOutput.isTTY === false) {
35
- cursorParked = false;
36
- return;
37
- }
38
- const rowsUp = Math.max(1, cursorState.rowsUp);
39
- const column = Math.max(1, cursorState.column);
40
- cursorOutput.write(`\x1b[?25h\x1b[${rowsUp}A\r\x1b[${column}G`);
41
- parkedRowsUp = rowsUp;
42
- cursorParked = true;
43
- }
44
- function setPromptCursorState(state) {
45
- cursorState = state;
46
- }
47
- function disablePromptCursor() {
48
- cursorState = { ...cursorState, enabled: false };
49
- cancelPendingPromptCursorRestore();
50
- unparkPromptCursor();
51
- }
52
- function schedulePromptCursorRestore() {
53
- if (!cursorState.enabled || pendingCursorRestore) {
54
- return;
55
- }
56
- pendingCursorRestore = setTimeout(writePromptCursor, PROMPT_CURSOR_RESTORE_DELAY_MS);
57
- }
58
- function createInkStdout(stdout) {
59
- cursorOutput = stdout;
60
- return new Proxy(stdout, {
61
- get(target, property, receiver) {
62
- if (property === 'write') {
63
- return (...args) => {
64
- cancelPendingPromptCursorRestore();
65
- unparkPromptCursor(target);
66
- const result = target.write(...args);
67
- schedulePromptCursorRestore();
68
- return result;
69
- };
70
- }
71
- const value = Reflect.get(target, property, receiver);
72
- if (typeof value === 'function') {
73
- return value.bind(target);
74
- }
75
- return value;
76
- },
77
- set(target, property, value, receiver) {
78
- return Reflect.set(target, property, value, receiver);
79
- },
80
- });
81
- }
82
- //# sourceMappingURL=stdout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stdout.js","sourceRoot":"","sources":["../../../src/ink-ui/runtime/stdout.ts"],"names":[],"mappings":"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"}
@@ -1,66 +0,0 @@
1
- /**
2
- * openhorse — GoalCoordinator
3
- *
4
- * Orchestrates cross-turn goal lifecycle: idle continuation scheduling,
5
- * status transitions, accounting accumulation, and Resume recovery.
6
- * Lives in the Agent Runtime Core, not in any renderer.
7
- *
8
- * v0.2.24-target-mode-plan section 7 (state machine) & section 9 (architecture).
9
- */
10
- import { EventEmitter } from 'events';
11
- import { type GoalSidecarV1, type GoalStatus } from '../services/goal-sidecar';
12
- import type { SessionMeta } from '../services/session-storage';
13
- export interface GoalCoordinatorOptions {
14
- /** Minimum idle delay before auto-continuation fires (ms). Default 5000. */
15
- idleDelayMs?: number;
16
- /** Minimum back-off after Ctrl+C or error before re-continuing (ms). Default 30000. */
17
- backoffMs?: number;
18
- /** Consecutive same-reason blocks needed before marking blocked. Default 3. */
19
- blockedThreshold?: number;
20
- }
21
- export type GoalEventType = 'goal_created' | 'goal_status_changed' | 'goal_turn_started' | 'goal_turn_completed' | 'goal_accounting_updated' | 'goal_continuation_scheduled' | 'goal_continuation_cancelled' | 'goal_cleared';
22
- export interface GoalEvent {
23
- type: GoalEventType;
24
- goalId: string;
25
- sessionId: string;
26
- timestamp: number;
27
- status?: GoalStatus;
28
- previousStatus?: GoalStatus;
29
- accounting?: GoalSidecarV1['accounting'];
30
- }
31
- export declare class GoalCoordinator extends EventEmitter {
32
- private goal;
33
- private session;
34
- private continuationTimer;
35
- private isRunningTurn;
36
- private options;
37
- constructor(options?: GoalCoordinatorOptions);
38
- /** Bind to a session. Call on session start or /resume. */
39
- bind(session: Pick<SessionMeta, 'id' | 'projectPath'>): GoalSidecarV1 | null;
40
- /** Current goal state (null = no goal). */
41
- getState(): GoalSidecarV1 | null;
42
- /** Whether a goal is currently active (auto-continuation may fire). */
43
- isActive(): boolean;
44
- create(objective: string, tokenBudget?: number | null): GoalSidecarV1;
45
- editObjective(objective: string): GoalSidecarV1;
46
- clear(): void;
47
- pause(): GoalSidecarV1;
48
- resume(): GoalSidecarV1;
49
- markComplete(evidence: GoalSidecarV1['completion']): GoalSidecarV1;
50
- markBlocked(reason: string): GoalSidecarV1;
51
- /** Called when a goal turn starts. */
52
- onTurnStart(): void;
53
- /** Called when a goal turn completes. Accumulates usage and decides next step. */
54
- onTurnComplete(usage: {
55
- promptTokens: number;
56
- completionTokens: number;
57
- cost: number;
58
- }, elapsedMs: number): void;
59
- /** Called on interrupt/error. Backs off before re-scheduling. */
60
- onInterrupt(): void;
61
- private scheduleContinuation;
62
- cancelContinuation(): void;
63
- private markBudgetLimited;
64
- private makeEvent;
65
- }
66
- //# sourceMappingURL=goal-coordinator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"goal-coordinator.d.ts","sourceRoot":"","sources":["../../src/runtime/goal-coordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAQL,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAM/D,MAAM,WAAW,sBAAsB;IACrC,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,qBAAqB,GACrB,mBAAmB,GACnB,qBAAqB,GACrB,yBAAyB,GACzB,6BAA6B,GAC7B,6BAA6B,GAC7B,cAAc,CAAC;AAEnB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,cAAc,CAAC,EAAE,UAAU,CAAC;IAC5B,UAAU,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;CAC1C;AAED,qBAAa,eAAgB,SAAQ,YAAY;IAC/C,OAAO,CAAC,IAAI,CAA8B;IAC1C,OAAO,CAAC,OAAO,CAAwD;IACvE,OAAO,CAAC,iBAAiB,CAA8C;IACvE,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,OAAO,CAAmC;gBAEtC,OAAO,GAAE,sBAA2B;IAahD,2DAA2D;IAC3D,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,aAAa,CAAC,GAAG,aAAa,GAAG,IAAI;IAS5E,2CAA2C;IAC3C,QAAQ,IAAI,aAAa,GAAG,IAAI;IAIhC,uEAAuE;IACvE,QAAQ,IAAI,OAAO;IAQnB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,GAAE,MAAM,GAAG,IAAW,GAAG,aAAa;IAgB3E,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa;IAQ/C,KAAK,IAAI,IAAI;IAYb,KAAK,IAAI,aAAa;IAStB,MAAM,IAAI,aAAa;IASvB,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,GAAG,aAAa;IASlE,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa;IAgB1C,sCAAsC;IACtC,WAAW,IAAI,IAAI;IAQnB,kFAAkF;IAClF,cAAc,CAAC,KAAK,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAiBhH,iEAAiE;IACjE,WAAW,IAAI,IAAI;IAYnB,OAAO,CAAC,oBAAoB;IAU5B,kBAAkB,IAAI,IAAI;IAY1B,OAAO,CAAC,iBAAiB;IAOzB,OAAO,CAAC,SAAS;CAUlB"}
@@ -1,200 +0,0 @@
1
- "use strict";
2
- /**
3
- * openhorse — GoalCoordinator
4
- *
5
- * Orchestrates cross-turn goal lifecycle: idle continuation scheduling,
6
- * status transitions, accounting accumulation, and Resume recovery.
7
- * Lives in the Agent Runtime Core, not in any renderer.
8
- *
9
- * v0.2.24-target-mode-plan section 7 (state machine) & section 9 (architecture).
10
- */
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.GoalCoordinator = void 0;
13
- const events_1 = require("events");
14
- const goal_sidecar_1 = require("../services/goal-sidecar");
15
- class GoalCoordinator extends events_1.EventEmitter {
16
- constructor(options = {}) {
17
- super();
18
- this.goal = null;
19
- this.session = null;
20
- this.continuationTimer = null;
21
- this.isRunningTurn = false;
22
- this.options = {
23
- idleDelayMs: options.idleDelayMs ?? 5000,
24
- backoffMs: options.backoffMs ?? 30000,
25
- blockedThreshold: options.blockedThreshold ?? 3,
26
- };
27
- }
28
- // ==========================================================================
29
- // Lifecycle
30
- // ==========================================================================
31
- /** Bind to a session. Call on session start or /resume. */
32
- bind(session) {
33
- this.session = session;
34
- this.goal = (0, goal_sidecar_1.loadGoalSidecar)(session);
35
- if (this.goal) {
36
- this.emit('goal_created', this.makeEvent('goal_created'));
37
- }
38
- return this.goal;
39
- }
40
- /** Current goal state (null = no goal). */
41
- getState() {
42
- return this.goal;
43
- }
44
- /** Whether a goal is currently active (auto-continuation may fire). */
45
- isActive() {
46
- return this.goal !== null && this.goal.status === 'active';
47
- }
48
- // ==========================================================================
49
- // Goal creation / editing / clearing
50
- // ==========================================================================
51
- create(objective, tokenBudget = null) {
52
- if (!this.session)
53
- throw new Error('GoalCoordinator: not bound to a session');
54
- // One-goal-per-session rule: reject if another goal is active or paused.
55
- if (this.goal && !['complete', 'blocked', 'budget_limited', 'usage_limited'].includes(this.goal.status)) {
56
- throw new Error(`A goal is already ${this.goal.status}. Clear it first with /target clear, or replace with /target replace.`);
57
- }
58
- const goalId = `goal-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
59
- this.goal = (0, goal_sidecar_1.createGoalSidecar)(goalId, this.session, objective, tokenBudget);
60
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
61
- this.emit('goal_created', this.makeEvent('goal_created'));
62
- return this.goal;
63
- }
64
- editObjective(objective) {
65
- if (!this.goal)
66
- throw new Error('No active goal');
67
- this.goal.objective = objective;
68
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
69
- this.emit('goal_status_changed', this.makeEvent('goal_status_changed'));
70
- return this.goal;
71
- }
72
- clear() {
73
- if (!this.goal)
74
- return;
75
- const goalId = this.goal.goalId;
76
- this.cancelContinuation();
77
- this.goal = null;
78
- this.emit('goal_cleared', { ...this.makeEvent('goal_cleared'), goalId });
79
- }
80
- // ==========================================================================
81
- // Status transitions
82
- // ==========================================================================
83
- pause() {
84
- if (!this.goal)
85
- throw new Error('No active goal');
86
- this.cancelContinuation();
87
- (0, goal_sidecar_1.transitionGoalStatus)(this.goal, 'paused');
88
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
89
- this.emit('goal_status_changed', this.makeEvent('goal_status_changed'));
90
- return this.goal;
91
- }
92
- resume() {
93
- if (!this.goal)
94
- throw new Error('No active goal');
95
- if (this.goal.status !== 'paused')
96
- throw new Error(`Goal is ${this.goal.status}, not paused`);
97
- (0, goal_sidecar_1.transitionGoalStatus)(this.goal, 'active');
98
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
99
- this.emit('goal_status_changed', this.makeEvent('goal_status_changed'));
100
- return this.goal;
101
- }
102
- markComplete(evidence) {
103
- if (!this.goal)
104
- throw new Error('No active goal');
105
- this.cancelContinuation();
106
- (0, goal_sidecar_1.transitionGoalStatus)(this.goal, 'complete', { completion: evidence });
107
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
108
- this.emit('goal_status_changed', this.makeEvent('goal_status_changed'));
109
- return this.goal;
110
- }
111
- markBlocked(reason) {
112
- if (!this.goal)
113
- throw new Error('No active goal');
114
- this.cancelContinuation();
115
- const consecutive = (this.goal.blocked?.consecutiveTurns ?? 0) + 1;
116
- (0, goal_sidecar_1.transitionGoalStatus)(this.goal, 'blocked', {
117
- blocked: { reason, consecutiveTurns: consecutive },
118
- });
119
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
120
- this.emit('goal_status_changed', this.makeEvent('goal_status_changed'));
121
- return this.goal;
122
- }
123
- // ==========================================================================
124
- // Turn lifecycle
125
- // ==========================================================================
126
- /** Called when a goal turn starts. */
127
- onTurnStart() {
128
- this.isRunningTurn = true;
129
- this.cancelContinuation();
130
- if (this.goal) {
131
- this.emit('goal_turn_started', this.makeEvent('goal_turn_started'));
132
- }
133
- }
134
- /** Called when a goal turn completes. Accumulates usage and decides next step. */
135
- onTurnComplete(usage, elapsedMs) {
136
- this.isRunningTurn = false;
137
- if (!this.goal)
138
- return;
139
- (0, goal_sidecar_1.accumulateGoalUsage)(this.goal, usage, elapsedMs);
140
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
141
- this.emit('goal_turn_completed', this.makeEvent('goal_turn_completed'));
142
- this.emit('goal_accounting_updated', this.makeEvent('goal_accounting_updated'));
143
- // Auto-continue if active and not over budget.
144
- if (this.goal.status === 'active' && !(0, goal_sidecar_1.isGoalOverBudget)(this.goal)) {
145
- this.scheduleContinuation(this.options.idleDelayMs);
146
- }
147
- else if ((0, goal_sidecar_1.isGoalOverBudget)(this.goal)) {
148
- this.markBudgetLimited();
149
- }
150
- }
151
- /** Called on interrupt/error. Backs off before re-scheduling. */
152
- onInterrupt() {
153
- this.isRunningTurn = false;
154
- this.cancelContinuation();
155
- if (this.goal && this.goal.status === 'active') {
156
- this.scheduleContinuation(this.options.backoffMs);
157
- }
158
- }
159
- // ==========================================================================
160
- // Continuation scheduling
161
- // ==========================================================================
162
- scheduleContinuation(delayMs) {
163
- this.cancelContinuation();
164
- this.continuationTimer = setTimeout(() => {
165
- this.continuationTimer = null;
166
- if (this.goal && this.goal.status === 'active' && !this.isRunningTurn) {
167
- this.emit('goal_continuation_scheduled', this.makeEvent('goal_continuation_scheduled'));
168
- }
169
- }, delayMs);
170
- }
171
- cancelContinuation() {
172
- if (this.continuationTimer !== null) {
173
- clearTimeout(this.continuationTimer);
174
- this.continuationTimer = null;
175
- this.emit('goal_continuation_cancelled', this.makeEvent('goal_continuation_cancelled'));
176
- }
177
- }
178
- // ==========================================================================
179
- // Internal helpers
180
- // ==========================================================================
181
- markBudgetLimited() {
182
- if (!this.goal)
183
- return;
184
- (0, goal_sidecar_1.transitionGoalStatus)(this.goal, 'budget_limited');
185
- (0, goal_sidecar_1.saveGoalSidecar)(this.goal);
186
- this.emit('goal_status_changed', this.makeEvent('goal_status_changed'));
187
- }
188
- makeEvent(type) {
189
- return {
190
- type,
191
- goalId: this.goal?.goalId ?? '',
192
- sessionId: this.session?.id ?? '',
193
- timestamp: Date.now(),
194
- status: this.goal?.status,
195
- accounting: this.goal?.accounting,
196
- };
197
- }
198
- }
199
- exports.GoalCoordinator = GoalCoordinator;
200
- //# sourceMappingURL=goal-coordinator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"goal-coordinator.js","sourceRoot":"","sources":["../../src/runtime/goal-coordinator.ts"],"names":[],"mappings":"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"}
@@ -1,21 +0,0 @@
1
- /**
2
- * OpenHorse - Simple REPL Screen
3
- *
4
- * A simplified REPL interface using Ink components.
5
- */
6
- import React from 'react';
7
- import { render } from '../ink';
8
- interface Message {
9
- role: 'user' | 'assistant';
10
- content: string;
11
- }
12
- interface REPLProps {
13
- initialMessages?: Message[];
14
- }
15
- /**
16
- * REPL - Main REPL component
17
- */
18
- declare function REPL({ initialMessages }: REPLProps): React.JSX.Element;
19
- export { REPL, render };
20
- export default REPL;
21
- //# sourceMappingURL=REPL.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"REPL.d.ts","sourceRoot":"","sources":["../../src/screens/REPL.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AACrD,OAAO,EAA+B,MAAM,EAAE,MAAM,QAAQ,CAAC;AAM7D,UAAU,OAAO;IACf,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,SAAS;IACjB,eAAe,CAAC,EAAE,OAAO,EAAE,CAAC;CAC7B;AA6DD;;GAEG;AACH,iBAAS,IAAI,CAAC,EAAE,eAAoB,EAAE,EAAE,SAAS,qBAyEhD;AAMD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AACxB,eAAe,IAAI,CAAC"}