@orion-agents/orion-code 0.1.7 → 0.1.9

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 (431) hide show
  1. package/CHANGELOG.md +445 -0
  2. package/README.md +60 -41
  3. package/README.zh-CN.md +34 -8
  4. package/dist/agents/coordinator.d.ts.map +1 -1
  5. package/dist/agents/coordinator.js +49 -9
  6. package/dist/agents/coordinator.js.map +1 -1
  7. package/dist/agents/fork.d.ts +5 -1
  8. package/dist/agents/fork.d.ts.map +1 -1
  9. package/dist/agents/fork.js +9 -10
  10. package/dist/agents/fork.js.map +1 -1
  11. package/dist/agents/worker-pool.d.ts.map +1 -1
  12. package/dist/agents/worker-pool.js +8 -3
  13. package/dist/agents/worker-pool.js.map +1 -1
  14. package/dist/cli.js +6 -6
  15. package/dist/cli.js.map +1 -1
  16. package/dist/commands/context-tool-command-handlers.d.ts.map +1 -1
  17. package/dist/commands/context-tool-command-handlers.js +42 -0
  18. package/dist/commands/context-tool-command-handlers.js.map +1 -1
  19. package/dist/commands/core-command-handlers.d.ts.map +1 -1
  20. package/dist/commands/core-command-handlers.js +3 -4
  21. package/dist/commands/core-command-handlers.js.map +1 -1
  22. package/dist/commands/diagnostic-command-handlers.d.ts.map +1 -1
  23. package/dist/commands/diagnostic-command-handlers.js +3 -0
  24. package/dist/commands/diagnostic-command-handlers.js.map +1 -1
  25. package/dist/commands/model-command-handlers.d.ts +1 -1
  26. package/dist/commands/model-command-handlers.d.ts.map +1 -1
  27. package/dist/commands/model-command-handlers.js +166 -1
  28. package/dist/commands/model-command-handlers.js.map +1 -1
  29. package/dist/commands/registry.d.ts.map +1 -1
  30. package/dist/commands/registry.js +7 -3
  31. package/dist/commands/registry.js.map +1 -1
  32. package/dist/commands/session-command-handlers.d.ts.map +1 -1
  33. package/dist/commands/session-command-handlers.js +97 -5
  34. package/dist/commands/session-command-handlers.js.map +1 -1
  35. package/dist/commands/session-commands.js +2 -2
  36. package/dist/commands/session-commands.js.map +1 -1
  37. package/dist/commands/types.d.ts +6 -0
  38. package/dist/commands/types.d.ts.map +1 -1
  39. package/dist/commands/types.js.map +1 -1
  40. package/dist/commands/workflow-command-handlers.d.ts.map +1 -1
  41. package/dist/commands/workflow-command-handlers.js +2 -2
  42. package/dist/commands/workflow-command-handlers.js.map +1 -1
  43. package/dist/commands/workflow-commands.d.ts.map +1 -1
  44. package/dist/commands/workflow-commands.js +1 -1
  45. package/dist/commands/workflow-commands.js.map +1 -1
  46. package/dist/core/checkpoint.d.ts.map +1 -1
  47. package/dist/core/checkpoint.js +9 -8
  48. package/dist/core/checkpoint.js.map +1 -1
  49. package/dist/framework/index.d.ts +5 -3
  50. package/dist/framework/index.d.ts.map +1 -1
  51. package/dist/framework/index.js +9 -1
  52. package/dist/framework/index.js.map +1 -1
  53. package/dist/framework/prompt.d.ts +1 -1
  54. package/dist/framework/prompt.d.ts.map +1 -1
  55. package/dist/framework/prompt.js +5 -4
  56. package/dist/framework/prompt.js.map +1 -1
  57. package/dist/framework/query.d.ts +30 -4
  58. package/dist/framework/query.d.ts.map +1 -1
  59. package/dist/framework/query.js +329 -62
  60. package/dist/framework/query.js.map +1 -1
  61. package/dist/framework/stop-decision.d.ts +56 -0
  62. package/dist/framework/stop-decision.d.ts.map +1 -0
  63. package/dist/framework/stop-decision.js +36 -0
  64. package/dist/framework/stop-decision.js.map +1 -0
  65. package/dist/framework/store.d.ts.map +1 -1
  66. package/dist/framework/store.js +4 -4
  67. package/dist/framework/store.js.map +1 -1
  68. package/dist/framework/tool-scheduler.d.ts +23 -13
  69. package/dist/framework/tool-scheduler.d.ts.map +1 -1
  70. package/dist/framework/tool-scheduler.js +93 -77
  71. package/dist/framework/tool-scheduler.js.map +1 -1
  72. package/dist/framework/tool.d.ts +7 -0
  73. package/dist/framework/tool.d.ts.map +1 -1
  74. package/dist/framework/tool.js +9 -0
  75. package/dist/framework/tool.js.map +1 -1
  76. package/dist/harness/assembler.d.ts.map +1 -1
  77. package/dist/harness/assembler.js +77 -19
  78. package/dist/harness/assembler.js.map +1 -1
  79. package/dist/harness/capability-profile.d.ts +3 -0
  80. package/dist/harness/capability-profile.d.ts.map +1 -0
  81. package/dist/harness/capability-profile.js +44 -0
  82. package/dist/harness/capability-profile.js.map +1 -0
  83. package/dist/harness/capsule.d.ts.map +1 -1
  84. package/dist/harness/capsule.js +22 -3
  85. package/dist/harness/capsule.js.map +1 -1
  86. package/dist/harness/compact-benchmark-corpus.d.ts +10 -0
  87. package/dist/harness/compact-benchmark-corpus.d.ts.map +1 -0
  88. package/dist/harness/compact-benchmark-corpus.js +56 -0
  89. package/dist/harness/compact-benchmark-corpus.js.map +1 -0
  90. package/dist/harness/context-harness.d.ts +23 -3
  91. package/dist/harness/context-harness.d.ts.map +1 -1
  92. package/dist/harness/context-harness.js +183 -11
  93. package/dist/harness/context-harness.js.map +1 -1
  94. package/dist/harness/contract.d.ts.map +1 -1
  95. package/dist/harness/contract.js +106 -11
  96. package/dist/harness/contract.js.map +1 -1
  97. package/dist/harness/drift-guard.d.ts +2 -1
  98. package/dist/harness/drift-guard.d.ts.map +1 -1
  99. package/dist/harness/drift-guard.js +315 -20
  100. package/dist/harness/drift-guard.js.map +1 -1
  101. package/dist/harness/evidence.d.ts.map +1 -1
  102. package/dist/harness/evidence.js +25 -12
  103. package/dist/harness/evidence.js.map +1 -1
  104. package/dist/harness/index.d.ts +7 -2
  105. package/dist/harness/index.d.ts.map +1 -1
  106. package/dist/harness/index.js +19 -1
  107. package/dist/harness/index.js.map +1 -1
  108. package/dist/harness/ledger.d.ts.map +1 -1
  109. package/dist/harness/ledger.js +44 -14
  110. package/dist/harness/ledger.js.map +1 -1
  111. package/dist/harness/progress-controller.d.ts +14 -0
  112. package/dist/harness/progress-controller.d.ts.map +1 -0
  113. package/dist/harness/progress-controller.js +110 -0
  114. package/dist/harness/progress-controller.js.map +1 -0
  115. package/dist/harness/state.d.ts.map +1 -1
  116. package/dist/harness/state.js +5 -2
  117. package/dist/harness/state.js.map +1 -1
  118. package/dist/harness/stop-controller.d.ts +15 -0
  119. package/dist/harness/stop-controller.d.ts.map +1 -0
  120. package/dist/harness/stop-controller.js +87 -0
  121. package/dist/harness/stop-controller.js.map +1 -0
  122. package/dist/harness/types.d.ts +137 -0
  123. package/dist/harness/types.d.ts.map +1 -1
  124. package/dist/harness/verification.d.ts +7 -0
  125. package/dist/harness/verification.d.ts.map +1 -0
  126. package/dist/harness/verification.js +122 -0
  127. package/dist/harness/verification.js.map +1 -0
  128. package/dist/index.d.ts +5 -5
  129. package/dist/index.d.ts.map +1 -1
  130. package/dist/index.js +7 -1
  131. package/dist/index.js.map +1 -1
  132. package/dist/ink-ui/screens/ReplScreen.d.ts +3 -0
  133. package/dist/ink-ui/screens/ReplScreen.d.ts.map +1 -1
  134. package/dist/ink-ui/screens/ReplScreen.js +30 -5
  135. package/dist/ink-ui/screens/ReplScreen.js.map +1 -1
  136. package/dist/memory/index.d.ts +1 -0
  137. package/dist/memory/index.d.ts.map +1 -1
  138. package/dist/memory/index.js +1 -0
  139. package/dist/memory/index.js.map +1 -1
  140. package/dist/memory/prompt-context.d.ts +42 -0
  141. package/dist/memory/prompt-context.d.ts.map +1 -0
  142. package/dist/memory/prompt-context.js +129 -0
  143. package/dist/memory/prompt-context.js.map +1 -0
  144. package/dist/print-ui/launch.d.ts +1 -0
  145. package/dist/print-ui/launch.d.ts.map +1 -1
  146. package/dist/print-ui/launch.js +5 -2
  147. package/dist/print-ui/launch.js.map +1 -1
  148. package/dist/runtime/agent-runtime-controller.d.ts.map +1 -1
  149. package/dist/runtime/agent-runtime-controller.js +60 -22
  150. package/dist/runtime/agent-runtime-controller.js.map +1 -1
  151. package/dist/runtime/chat-checkpoint.d.ts.map +1 -1
  152. package/dist/runtime/chat-checkpoint.js +2 -5
  153. package/dist/runtime/chat-checkpoint.js.map +1 -1
  154. package/dist/runtime/chat-command-scope.d.ts +5 -0
  155. package/dist/runtime/chat-command-scope.d.ts.map +1 -0
  156. package/dist/runtime/chat-command-scope.js +22 -0
  157. package/dist/runtime/chat-command-scope.js.map +1 -0
  158. package/dist/runtime/chat-compact.d.ts +26 -0
  159. package/dist/runtime/chat-compact.d.ts.map +1 -0
  160. package/dist/runtime/chat-compact.js +132 -0
  161. package/dist/runtime/chat-compact.js.map +1 -0
  162. package/dist/runtime/chat-controller.d.ts.map +1 -1
  163. package/dist/runtime/chat-controller.js +102 -130
  164. package/dist/runtime/chat-controller.js.map +1 -1
  165. package/dist/runtime/chat-presentation.d.ts +6 -3
  166. package/dist/runtime/chat-presentation.d.ts.map +1 -1
  167. package/dist/runtime/chat-presentation.js +30 -6
  168. package/dist/runtime/chat-presentation.js.map +1 -1
  169. package/dist/runtime/goals/coordinator.d.ts +8 -0
  170. package/dist/runtime/goals/coordinator.d.ts.map +1 -1
  171. package/dist/runtime/goals/coordinator.js +103 -30
  172. package/dist/runtime/goals/coordinator.js.map +1 -1
  173. package/dist/runtime/goals/evidence.d.ts +10 -0
  174. package/dist/runtime/goals/evidence.d.ts.map +1 -1
  175. package/dist/runtime/goals/evidence.js +18 -0
  176. package/dist/runtime/goals/evidence.js.map +1 -1
  177. package/dist/runtime/goals/lifecycle.d.ts +13 -0
  178. package/dist/runtime/goals/lifecycle.d.ts.map +1 -0
  179. package/dist/runtime/goals/lifecycle.js +46 -0
  180. package/dist/runtime/goals/lifecycle.js.map +1 -0
  181. package/dist/runtime/goals/objective.d.ts +18 -0
  182. package/dist/runtime/goals/objective.d.ts.map +1 -0
  183. package/dist/runtime/goals/objective.js +60 -0
  184. package/dist/runtime/goals/objective.js.map +1 -0
  185. package/dist/runtime/goals/prompt.d.ts.map +1 -1
  186. package/dist/runtime/goals/prompt.js +7 -1
  187. package/dist/runtime/goals/prompt.js.map +1 -1
  188. package/dist/runtime/goals/stop-policy.d.ts +9 -0
  189. package/dist/runtime/goals/stop-policy.d.ts.map +1 -0
  190. package/dist/runtime/goals/stop-policy.js +83 -0
  191. package/dist/runtime/goals/stop-policy.js.map +1 -0
  192. package/dist/runtime/goals/tools.d.ts.map +1 -1
  193. package/dist/runtime/goals/tools.js +2 -2
  194. package/dist/runtime/goals/tools.js.map +1 -1
  195. package/dist/runtime/goals/types.d.ts +4 -1
  196. package/dist/runtime/goals/types.d.ts.map +1 -1
  197. package/dist/runtime/goals/types.js +2 -1
  198. package/dist/runtime/goals/types.js.map +1 -1
  199. package/dist/runtime/loop-budget.d.ts +2 -0
  200. package/dist/runtime/loop-budget.d.ts.map +1 -1
  201. package/dist/runtime/loop-budget.js +6 -2
  202. package/dist/runtime/loop-budget.js.map +1 -1
  203. package/dist/runtime/model-coordinator.d.ts +44 -1
  204. package/dist/runtime/model-coordinator.d.ts.map +1 -1
  205. package/dist/runtime/model-coordinator.js +161 -19
  206. package/dist/runtime/model-coordinator.js.map +1 -1
  207. package/dist/runtime/subagents/index.d.ts +1 -1
  208. package/dist/runtime/subagents/index.d.ts.map +1 -1
  209. package/dist/runtime/subagents/index.js.map +1 -1
  210. package/dist/runtime/subagents/production.d.ts +6 -2
  211. package/dist/runtime/subagents/production.d.ts.map +1 -1
  212. package/dist/runtime/subagents/production.js +25 -6
  213. package/dist/runtime/subagents/production.js.map +1 -1
  214. package/dist/runtime/subagents/runner.d.ts +12 -1
  215. package/dist/runtime/subagents/runner.d.ts.map +1 -1
  216. package/dist/runtime/subagents/runner.js +62 -1
  217. package/dist/runtime/subagents/runner.js.map +1 -1
  218. package/dist/runtime/subagents/runtime-integration.d.ts.map +1 -1
  219. package/dist/runtime/subagents/runtime-integration.js +2 -1
  220. package/dist/runtime/subagents/runtime-integration.js.map +1 -1
  221. package/dist/runtime/subagents/supervisor.d.ts.map +1 -1
  222. package/dist/runtime/subagents/supervisor.js +6 -0
  223. package/dist/runtime/subagents/supervisor.js.map +1 -1
  224. package/dist/runtime/subagents/types.d.ts +4 -1
  225. package/dist/runtime/subagents/types.d.ts.map +1 -1
  226. package/dist/runtime/subagents/types.js.map +1 -1
  227. package/dist/runtime/ui-events.d.ts +37 -1
  228. package/dist/runtime/ui-events.d.ts.map +1 -1
  229. package/dist/runtime/ui-events.js.map +1 -1
  230. package/dist/runtime/ui-view-model.d.ts +10 -1
  231. package/dist/runtime/ui-view-model.d.ts.map +1 -1
  232. package/dist/runtime/ui-view-model.js +93 -4
  233. package/dist/runtime/ui-view-model.js.map +1 -1
  234. package/dist/services/bounded-response.d.ts +12 -0
  235. package/dist/services/bounded-response.d.ts.map +1 -0
  236. package/dist/services/bounded-response.js +67 -0
  237. package/dist/services/bounded-response.js.map +1 -0
  238. package/dist/services/compact/auto-compact.d.ts +82 -2
  239. package/dist/services/compact/auto-compact.d.ts.map +1 -1
  240. package/dist/services/compact/auto-compact.js +226 -44
  241. package/dist/services/compact/auto-compact.js.map +1 -1
  242. package/dist/services/compact/compact.d.ts +54 -37
  243. package/dist/services/compact/compact.d.ts.map +1 -1
  244. package/dist/services/compact/compact.js +512 -127
  245. package/dist/services/compact/compact.js.map +1 -1
  246. package/dist/services/compact/coordinator.d.ts +5 -1
  247. package/dist/services/compact/coordinator.d.ts.map +1 -1
  248. package/dist/services/compact/coordinator.js +10 -1
  249. package/dist/services/compact/coordinator.js.map +1 -1
  250. package/dist/services/compact/fingerprint.d.ts +27 -0
  251. package/dist/services/compact/fingerprint.d.ts.map +1 -0
  252. package/dist/services/compact/fingerprint.js +69 -0
  253. package/dist/services/compact/fingerprint.js.map +1 -0
  254. package/dist/services/compact/index.d.ts +7 -5
  255. package/dist/services/compact/index.d.ts.map +1 -1
  256. package/dist/services/compact/index.js +19 -6
  257. package/dist/services/compact/index.js.map +1 -1
  258. package/dist/services/compact/planner.d.ts +41 -0
  259. package/dist/services/compact/planner.d.ts.map +1 -0
  260. package/dist/services/compact/planner.js +102 -0
  261. package/dist/services/compact/planner.js.map +1 -0
  262. package/dist/services/compact/semantic-summary.d.ts +93 -0
  263. package/dist/services/compact/semantic-summary.d.ts.map +1 -0
  264. package/dist/services/compact/semantic-summary.js +158 -0
  265. package/dist/services/compact/semantic-summary.js.map +1 -0
  266. package/dist/services/compact/summary-generator.d.ts +23 -0
  267. package/dist/services/compact/summary-generator.d.ts.map +1 -1
  268. package/dist/services/compact/summary-generator.js +173 -39
  269. package/dist/services/compact/summary-generator.js.map +1 -1
  270. package/dist/services/concurrent-sessions.d.ts +1 -0
  271. package/dist/services/concurrent-sessions.d.ts.map +1 -1
  272. package/dist/services/concurrent-sessions.js +35 -22
  273. package/dist/services/concurrent-sessions.js.map +1 -1
  274. package/dist/services/file-context.d.ts.map +1 -1
  275. package/dist/services/file-context.js +29 -33
  276. package/dist/services/file-context.js.map +1 -1
  277. package/dist/services/file-lock.d.ts.map +1 -1
  278. package/dist/services/file-lock.js +60 -27
  279. package/dist/services/file-lock.js.map +1 -1
  280. package/dist/services/global-config.d.ts +6 -0
  281. package/dist/services/global-config.d.ts.map +1 -1
  282. package/dist/services/global-config.js +23 -13
  283. package/dist/services/global-config.js.map +1 -1
  284. package/dist/services/goal-storage.d.ts +1 -1
  285. package/dist/services/goal-storage.d.ts.map +1 -1
  286. package/dist/services/goal-storage.js +14 -4
  287. package/dist/services/goal-storage.js.map +1 -1
  288. package/dist/services/llm.d.ts +3 -0
  289. package/dist/services/llm.d.ts.map +1 -1
  290. package/dist/services/llm.js +7 -0
  291. package/dist/services/llm.js.map +1 -1
  292. package/dist/services/project-instructions.d.ts +8 -0
  293. package/dist/services/project-instructions.d.ts.map +1 -1
  294. package/dist/services/project-instructions.js +101 -51
  295. package/dist/services/project-instructions.js.map +1 -1
  296. package/dist/services/provider-resilience/request-gate.d.ts +9 -5
  297. package/dist/services/provider-resilience/request-gate.d.ts.map +1 -1
  298. package/dist/services/provider-resilience/request-gate.js +71 -23
  299. package/dist/services/provider-resilience/request-gate.js.map +1 -1
  300. package/dist/services/safe-project-reader.d.ts +30 -0
  301. package/dist/services/safe-project-reader.d.ts.map +1 -0
  302. package/dist/services/safe-project-reader.js +141 -0
  303. package/dist/services/safe-project-reader.js.map +1 -0
  304. package/dist/services/session-storage.d.ts +146 -10
  305. package/dist/services/session-storage.d.ts.map +1 -1
  306. package/dist/services/session-storage.js +851 -120
  307. package/dist/services/session-storage.js.map +1 -1
  308. package/dist/services/tool-allowlist.d.ts +4 -4
  309. package/dist/services/tool-allowlist.js +4 -4
  310. package/dist/services/usage-state.d.ts +7 -0
  311. package/dist/services/usage-state.d.ts.map +1 -1
  312. package/dist/services/usage-state.js +117 -16
  313. package/dist/services/usage-state.js.map +1 -1
  314. package/dist/services/web-search-adapters.d.ts.map +1 -1
  315. package/dist/services/web-search-adapters.js +24 -10
  316. package/dist/services/web-search-adapters.js.map +1 -1
  317. package/dist/services/web-search-mcp.d.ts.map +1 -1
  318. package/dist/services/web-search-mcp.js +13 -3
  319. package/dist/services/web-search-mcp.js.map +1 -1
  320. package/dist/services/workspace-containment.d.ts +8 -0
  321. package/dist/services/workspace-containment.d.ts.map +1 -0
  322. package/dist/services/workspace-containment.js +44 -0
  323. package/dist/services/workspace-containment.js.map +1 -0
  324. package/dist/skills/runtime.d.ts.map +1 -1
  325. package/dist/skills/runtime.js +34 -35
  326. package/dist/skills/runtime.js.map +1 -1
  327. package/dist/terminal-ui/completion.d.ts.map +1 -1
  328. package/dist/terminal-ui/completion.js +5 -1
  329. package/dist/terminal-ui/completion.js.map +1 -1
  330. package/dist/terminal-ui/launch.d.ts +5 -0
  331. package/dist/terminal-ui/launch.d.ts.map +1 -1
  332. package/dist/terminal-ui/launch.js +53 -17
  333. package/dist/terminal-ui/launch.js.map +1 -1
  334. package/dist/tools/git.d.ts.map +1 -1
  335. package/dist/tools/git.js +47 -12
  336. package/dist/tools/git.js.map +1 -1
  337. package/dist/tools/index.d.ts.map +1 -1
  338. package/dist/tools/index.js +73 -64
  339. package/dist/tools/index.js.map +1 -1
  340. package/dist/tools/plan.d.ts.map +1 -1
  341. package/dist/tools/plan.js +7 -6
  342. package/dist/tools/plan.js.map +1 -1
  343. package/dist/tools/web.d.ts.map +1 -1
  344. package/dist/tools/web.js +11 -2
  345. package/dist/tools/web.js.map +1 -1
  346. package/dist/tui-ui/chrome-view-model.js +1 -1
  347. package/dist/tui-ui/chrome-view-model.js.map +1 -1
  348. package/dist/tui-ui/inline-surface.d.ts +1 -1
  349. package/dist/tui-ui/inline-surface.d.ts.map +1 -1
  350. package/dist/tui-ui/inline-surface.js +24 -16
  351. package/dist/tui-ui/inline-surface.js.map +1 -1
  352. package/dist/tui-ui/state.d.ts.map +1 -1
  353. package/dist/tui-ui/state.js +93 -13
  354. package/dist/tui-ui/state.js.map +1 -1
  355. package/dist/tui-ui/transcript-layout.d.ts.map +1 -1
  356. package/dist/tui-ui/transcript-layout.js +38 -29
  357. package/dist/tui-ui/transcript-layout.js.map +1 -1
  358. package/dist/ui/command-panel.d.ts +2 -0
  359. package/dist/ui/command-panel.d.ts.map +1 -1
  360. package/dist/ui/command-panel.js +46 -20
  361. package/dist/ui/command-panel.js.map +1 -1
  362. package/dist/ui/file-completion.d.ts.map +1 -1
  363. package/dist/ui/file-completion.js +12 -6
  364. package/dist/ui/file-completion.js.map +1 -1
  365. package/dist/ui/shared/command-palette.d.ts.map +1 -1
  366. package/dist/ui/shared/command-palette.js +13 -9
  367. package/dist/ui/shared/command-palette.js.map +1 -1
  368. package/dist/ui/shared/text.d.ts +2 -0
  369. package/dist/ui/shared/text.d.ts.map +1 -1
  370. package/dist/ui/shared/text.js +20 -12
  371. package/dist/ui/shared/text.js.map +1 -1
  372. package/dist/ui/suggestions.d.ts.map +1 -1
  373. package/dist/ui/suggestions.js +7 -6
  374. package/dist/ui/suggestions.js.map +1 -1
  375. package/docs/migration/v0.1.8-to-v0.1.9.md +60 -0
  376. package/docs/plan/v0.1.9-release-checklist.md +64 -0
  377. package/docs/readme.md +27 -0
  378. package/npm-shrinkwrap.json +7124 -0
  379. package/package.json +17 -7
  380. package/dist/ink/index.d.ts +0 -54
  381. package/dist/ink/index.d.ts.map +0 -1
  382. package/dist/ink/index.js +0 -111
  383. package/dist/ink/index.js.map +0 -1
  384. package/dist/services/compact/micro-compact.d.ts +0 -21
  385. package/dist/services/compact/micro-compact.d.ts.map +0 -1
  386. package/dist/services/compact/micro-compact.js +0 -99
  387. package/dist/services/compact/micro-compact.js.map +0 -1
  388. package/dist/ui-v2/components/command-palette.d.ts +0 -2
  389. package/dist/ui-v2/components/command-palette.d.ts.map +0 -1
  390. package/dist/ui-v2/components/command-palette.js +0 -18
  391. package/dist/ui-v2/components/command-palette.js.map +0 -1
  392. package/dist/ui-v2/components/edit-preview-picker.d.ts +0 -26
  393. package/dist/ui-v2/components/edit-preview-picker.d.ts.map +0 -1
  394. package/dist/ui-v2/components/edit-preview-picker.js +0 -79
  395. package/dist/ui-v2/components/edit-preview-picker.js.map +0 -1
  396. package/dist/ui-v2/components/session-picker.d.ts +0 -19
  397. package/dist/ui-v2/components/session-picker.d.ts.map +0 -1
  398. package/dist/ui-v2/components/session-picker.js +0 -52
  399. package/dist/ui-v2/components/session-picker.js.map +0 -1
  400. package/dist/ui-v2/components/shell.d.ts +0 -36
  401. package/dist/ui-v2/components/shell.d.ts.map +0 -1
  402. package/dist/ui-v2/components/shell.js +0 -131
  403. package/dist/ui-v2/components/shell.js.map +0 -1
  404. package/dist/ui-v2/index.d.ts +0 -11
  405. package/dist/ui-v2/index.d.ts.map +0 -1
  406. package/dist/ui-v2/index.js +0 -27
  407. package/dist/ui-v2/index.js.map +0 -1
  408. package/dist/ui-v2/runtime/text.d.ts +0 -2
  409. package/dist/ui-v2/runtime/text.d.ts.map +0 -1
  410. package/dist/ui-v2/runtime/text.js +0 -18
  411. package/dist/ui-v2/runtime/text.js.map +0 -1
  412. package/dist/ui-v2/state/input-reducer.d.ts +0 -39
  413. package/dist/ui-v2/state/input-reducer.d.ts.map +0 -1
  414. package/dist/ui-v2/state/input-reducer.js +0 -82
  415. package/dist/ui-v2/state/input-reducer.js.map +0 -1
  416. package/dist/ui-v2/state/picker.d.ts +0 -16
  417. package/dist/ui-v2/state/picker.d.ts.map +0 -1
  418. package/dist/ui-v2/state/picker.js +0 -52
  419. package/dist/ui-v2/state/picker.js.map +0 -1
  420. package/dist/ui-v2/state/sessions.d.ts +0 -15
  421. package/dist/ui-v2/state/sessions.d.ts.map +0 -1
  422. package/dist/ui-v2/state/sessions.js +0 -70
  423. package/dist/ui-v2/state/sessions.js.map +0 -1
  424. package/dist/ui-v2/state/suggestions.d.ts +0 -2
  425. package/dist/ui-v2/state/suggestions.d.ts.map +0 -1
  426. package/dist/ui-v2/state/suggestions.js +0 -18
  427. package/dist/ui-v2/state/suggestions.js.map +0 -1
  428. package/dist/ui-v2/types.d.ts +0 -2
  429. package/dist/ui-v2/types.d.ts.map +0 -1
  430. package/dist/ui-v2/types.js +0 -18
  431. package/dist/ui-v2/types.js.map +0 -1
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MAX_RESEARCH_EVENT_HISTORY = void 0;
4
+ exports.createLoopBudgetStopView = createLoopBudgetStopView;
5
+ exports.budgetStopLocaleForInput = budgetStopLocaleForInput;
6
+ exports.formatLoopBudgetStopView = formatLoopBudgetStopView;
4
7
  exports.subtaskEventToTimelineEntry = subtaskEventToTimelineEntry;
5
8
  exports.subtaskTimelineLabel = subtaskTimelineLabel;
6
9
  exports.appendResearchEventHistory = appendResearchEventHistory;
@@ -36,6 +39,91 @@ exports.formatToolActivityTranscript = formatToolActivityTranscript;
36
39
  const ui_events_1 = require("./ui-events");
37
40
  const format_1 = require("../services/format");
38
41
  const verification_profile_1 = require("../services/verification-profile");
42
+ const style_1 = require("../tui-core/style");
43
+ /** Build the renderer-neutral recovery card for a recoverable loop-budget stop. */
44
+ function createLoopBudgetStopView(stats) {
45
+ const reason = (0, style_1.sanitizeTerminalText)(stats.budgetExceededReason ?? 'agent loop budget reached', 1)
46
+ .replace(/\s+/gu, ' ')
47
+ .trim();
48
+ const kind = /LLM request budget/iu.test(reason)
49
+ ? 'llm_request_limit'
50
+ : /tool call budget/iu.test(reason)
51
+ ? 'tool_call_limit'
52
+ : /preflight|provider/iu.test(reason)
53
+ ? 'provider_preflight_limit'
54
+ : 'other';
55
+ const tool = stats.lastToolName
56
+ ? (0, style_1.sanitizeTerminalText)(stats.lastToolName, 1).replace(/\s+/gu, ' ').trim()
57
+ : '';
58
+ const summary = stats.lastToolSummary
59
+ ? (0, style_1.sanitizeTerminalText)(stats.lastToolSummary, 1).replace(/\s+/gu, ' ').trim().slice(0, 240)
60
+ : '';
61
+ return {
62
+ schemaVersion: 1,
63
+ kind,
64
+ reason,
65
+ recoverable: true,
66
+ statePreserved: true,
67
+ source: stats.loopBudgetSource,
68
+ llmRequests: {
69
+ current: stats.llmRequests,
70
+ ...(typeof stats.loopBudgetMaxLlmRequests === 'number'
71
+ ? { maximum: stats.loopBudgetMaxLlmRequests }
72
+ : {}),
73
+ },
74
+ toolCalls: {
75
+ current: stats.toolCalls,
76
+ ...(typeof stats.loopBudgetMaxToolCalls === 'number'
77
+ ? { maximum: stats.loopBudgetMaxToolCalls }
78
+ : {}),
79
+ },
80
+ ...(tool
81
+ ? {
82
+ stopPoint: {
83
+ tool,
84
+ ...(summary ? { summary } : {}),
85
+ ...(typeof stats.lastToolSuccess === 'boolean'
86
+ ? { success: stats.lastToolSuccess }
87
+ : {}),
88
+ },
89
+ }
90
+ : {}),
91
+ actions: stats.continuationActions?.length
92
+ ? [...stats.continuationActions]
93
+ : ['reply_continue', 'narrow_instruction', 'inspect_loop_stats', 'raise_budget'],
94
+ };
95
+ }
96
+ /** Select Chinese only when the current user instruction contains Han characters. */
97
+ function budgetStopLocaleForInput(input) {
98
+ return /\p{Script=Han}/u.test(input) ? 'zh-CN' : 'en';
99
+ }
100
+ /** Format every recovery action explicitly; no renderer may hide it in collapsed details. */
101
+ function formatLoopBudgetStopView(view, locale = 'en') {
102
+ const count = (current, maximum, unit) => maximum === undefined ? `${current} ${unit}` : `${current}/${maximum} ${unit}`;
103
+ const llm = count(view.llmRequests.current, view.llmRequests.maximum, locale === 'zh-CN' ? '次模型请求' : 'model requests');
104
+ const tools = count(view.toolCalls.current, view.toolCalls.maximum, locale === 'zh-CN' ? '次工具调用' : 'tool calls');
105
+ const stopPoint = view.stopPoint
106
+ ? `${view.stopPoint.tool}${view.stopPoint.summary ? ` — ${view.stopPoint.summary}` : ''}`
107
+ : undefined;
108
+ if (locale === 'zh-CN') {
109
+ const lines = [
110
+ `本轮已暂停:达到单次响应的执行预算(${llm},${tools})。`,
111
+ '这不是任务失败;当前会话状态已保存。',
112
+ ];
113
+ if (stopPoint)
114
+ lines.push(`停止位置:${stopPoint}`);
115
+ lines.push('下一步:', '• 回复 `继续`,按同一目标接着执行。', '• 或给出一个更小、更具体的下一步。', '• 运行 `/loop-stats` 查看请求与工具用量。', '• 对确实需要更长运行的任务,在 orion.json 中调高 `agentLoop.budget`。');
116
+ return lines.join('\n');
117
+ }
118
+ const lines = [
119
+ `Turn paused: the per-response execution budget was reached (${llm}, ${tools}).`,
120
+ 'This is recoverable, not a task failure; the current session state is saved.',
121
+ ];
122
+ if (stopPoint)
123
+ lines.push(`Stopped after: ${stopPoint}`);
124
+ lines.push('Next:', '• Reply `继续` to continue the same objective.', '• Or give a smaller, concrete next step.', '• Run `/loop-stats` to inspect request and tool usage.', '• For intentional long work, raise `agentLoop.budget` in orion.json.');
125
+ return lines.join('\n');
126
+ }
39
127
  /**
40
128
  * Map a {@link RuntimeSubtaskEvent} to a timeline entry. Pure: renderers call
41
129
  * this from their `subtaskEvent` consumer and store the result keyed by
@@ -141,10 +229,7 @@ function projectResearchLifecycleEvent(current, event) {
141
229
  }
142
230
  }
143
231
  function inlineResearchText(value, limit = 160) {
144
- const singleLine = value
145
- .replace(/[\u0000-\u001f\u007f]+/gu, ' ')
146
- .replace(/\s+/gu, ' ')
147
- .trim();
232
+ const singleLine = (0, style_1.sanitizeTerminalText)(value).replace(/\n/gu, ' ').replace(/\s+/gu, ' ').trim();
148
233
  return singleLine.length <= limit ? singleLine : `${singleLine.slice(0, limit - 1)}…`;
149
234
  }
150
235
  /** Format an individual event without re-reading a ResearchPacket. */
@@ -840,6 +925,7 @@ function toolActivityFromFinished(event, detail = '') {
840
925
  error: event.error,
841
926
  outputBytes: event.outputBytes,
842
927
  artifactRef: event.artifactRef,
928
+ authorization: event.authorization,
843
929
  seq: event.sequence,
844
930
  batchCount: event.batchCount,
845
931
  batchIndex: event.batchIndex,
@@ -870,6 +956,9 @@ function formatToolActivityTranscript(activity) {
870
956
  if (activity.command) {
871
957
  lines.push(` $ ${activity.command}`);
872
958
  }
959
+ if (activity.authorization) {
960
+ lines.push(` Authorization: ${activity.authorization.source}`);
961
+ }
873
962
  if (activity.artifactRef) {
874
963
  lines.push(` Full output: /artifacts show ${activity.artifactRef.id} --full (${(0, format_1.formatBytes)(activity.artifactRef.outputBytes)})`);
875
964
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ui-view-model.js","sourceRoot":"","sources":["../../src/runtime/ui-view-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui-view-model.js","sourceRoot":"","sources":["../../src/runtime/ui-view-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare const MAX_WEB_SEARCH_RESPONSE_BYTES: number;
2
+ export declare class ResponseBodyTooLargeError extends Error {
3
+ readonly label: string;
4
+ readonly maxBytes: number;
5
+ readonly observedBytes?: number | undefined;
6
+ constructor(label: string, maxBytes: number, observedBytes?: number | undefined);
7
+ }
8
+ /** Read a Fetch response while enforcing a byte bound before and during streaming. */
9
+ export declare function readBoundedResponseText(response: Pick<Response, 'headers' | 'body' | 'text'>, maxBytes?: number, label?: string): Promise<string>;
10
+ export declare function validateWebSearchLimit(limit: unknown, defaultValue?: number): number;
11
+ export declare function boundedErrorSnippet(text: string, maxChars?: number): string;
12
+ //# sourceMappingURL=bounded-response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounded-response.d.ts","sourceRoot":"","sources":["../../src/services/bounded-response.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,6BAA6B,QAAc,CAAC;AAEzD,qBAAa,yBAA0B,SAAQ,KAAK;IAEhD,QAAQ,CAAC,KAAK,EAAE,MAAM;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM;gBAFtB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,YAAA;CAOlC;AAED,sFAAsF;AACtF,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC,EACrD,QAAQ,SAAgC,EACxC,KAAK,SAAS,GACb,OAAO,CAAC,MAAM,CAAC,CAkCjB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,SAAI,GAAG,MAAM,CAM/E;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,SAAM,GAAG,MAAM,CAGxE"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ResponseBodyTooLargeError = exports.MAX_WEB_SEARCH_RESPONSE_BYTES = void 0;
4
+ exports.readBoundedResponseText = readBoundedResponseText;
5
+ exports.validateWebSearchLimit = validateWebSearchLimit;
6
+ exports.boundedErrorSnippet = boundedErrorSnippet;
7
+ exports.MAX_WEB_SEARCH_RESPONSE_BYTES = 1024 * 1024;
8
+ class ResponseBodyTooLargeError extends Error {
9
+ constructor(label, maxBytes, observedBytes) {
10
+ super(`${label} response exceeds ${maxBytes} bytes${observedBytes ? ` (${observedBytes} bytes observed)` : ''}`);
11
+ this.label = label;
12
+ this.maxBytes = maxBytes;
13
+ this.observedBytes = observedBytes;
14
+ this.name = 'ResponseBodyTooLargeError';
15
+ }
16
+ }
17
+ exports.ResponseBodyTooLargeError = ResponseBodyTooLargeError;
18
+ /** Read a Fetch response while enforcing a byte bound before and during streaming. */
19
+ async function readBoundedResponseText(response, maxBytes = exports.MAX_WEB_SEARCH_RESPONSE_BYTES, label = 'HTTP') {
20
+ const declaredLength = Number(response.headers.get('content-length'));
21
+ if (Number.isFinite(declaredLength) && declaredLength > maxBytes) {
22
+ await response.body?.cancel('response body exceeds maximum size').catch(() => undefined);
23
+ throw new ResponseBodyTooLargeError(label, maxBytes, declaredLength);
24
+ }
25
+ if (!response.body) {
26
+ const text = await response.text();
27
+ const bytes = Buffer.byteLength(text, 'utf8');
28
+ if (bytes > maxBytes)
29
+ throw new ResponseBodyTooLargeError(label, maxBytes, bytes);
30
+ return text;
31
+ }
32
+ const reader = response.body.getReader();
33
+ const decoder = new TextDecoder();
34
+ const chunks = [];
35
+ let bytes = 0;
36
+ try {
37
+ while (true) {
38
+ const { done, value } = await reader.read();
39
+ if (done)
40
+ break;
41
+ bytes += value.byteLength;
42
+ if (bytes > maxBytes) {
43
+ await reader.cancel('response body exceeds maximum size').catch(() => undefined);
44
+ throw new ResponseBodyTooLargeError(label, maxBytes, bytes);
45
+ }
46
+ chunks.push(decoder.decode(value, { stream: true }));
47
+ }
48
+ chunks.push(decoder.decode());
49
+ return chunks.join('');
50
+ }
51
+ finally {
52
+ reader.releaseLock();
53
+ }
54
+ }
55
+ function validateWebSearchLimit(limit, defaultValue = 5) {
56
+ if (limit === undefined)
57
+ return defaultValue;
58
+ if (typeof limit !== 'number' || !Number.isSafeInteger(limit) || limit < 1 || limit > 20) {
59
+ throw new Error('web_search limit must be a safe integer between 1 and 20');
60
+ }
61
+ return limit;
62
+ }
63
+ function boundedErrorSnippet(text, maxChars = 512) {
64
+ const oneLine = text.replace(/\s+/gu, ' ').trim();
65
+ return oneLine.length <= maxChars ? oneLine : `${oneLine.slice(0, maxChars - 1)}…`;
66
+ }
67
+ //# sourceMappingURL=bounded-response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bounded-response.js","sourceRoot":"","sources":["../../src/services/bounded-response.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@
6
6
  */
7
7
  import type { Message } from '../llm';
8
8
  import type { LLMService } from '../llm';
9
+ import { type CompactValidationError } from './compact';
9
10
  import type { CompactResult } from './compact';
10
11
  import type { ContextCapsule, HarnessState } from '../../harness';
11
12
  export interface AutoCompactConfig {
@@ -36,7 +37,60 @@ export interface AutoCompactConfig {
36
37
  llm?: LLMService | null;
37
38
  /** Actual max completion tokens requested from the provider. */
38
39
  outputReserveTokens?: number;
40
+ /** Required post-compact fraction of the safe input budget (default 0.65). */
41
+ targetRatio?: number;
42
+ /** Consecutive duplicate/rejected attempts allowed before pausing (default 2). */
43
+ maxConsecutiveNoProgressAttempts?: number;
44
+ /** Project-level summary guidance; validated semantic invariants take precedence. */
45
+ compactInstructions?: string;
39
46
  }
47
+ export type CompactPauseCode = 'no_headroom' | 'context_thrash' | 'candidate_invalid' | 'mandatory_context_over_budget';
48
+ export interface CompactPauseFailure {
49
+ code: CompactPauseCode;
50
+ message: string;
51
+ mode: 'predictive' | 'threshold';
52
+ fingerprint: string;
53
+ consecutiveNoProgressAttempts: number;
54
+ beforeTokens: number;
55
+ afterTokens?: number;
56
+ safeInputBudget: number;
57
+ targetTokens: number;
58
+ validationErrors?: CompactValidationError[];
59
+ }
60
+ export type CompactPostValidation = {
61
+ valid: true;
62
+ observedTokens: number;
63
+ targetTokens: number;
64
+ } | {
65
+ valid: false;
66
+ code: 'no_headroom' | 'candidate_invalid';
67
+ message: string;
68
+ observedTokens: number;
69
+ targetTokens: number;
70
+ };
71
+ export type CompactPostValidator = (result: CompactResult) => CompactPostValidation;
72
+ interface AutoCompactAttemptBase {
73
+ messages: Message[];
74
+ mode: 'predictive' | 'threshold';
75
+ fingerprint: string;
76
+ consecutiveNoProgressAttempts: number;
77
+ }
78
+ export type AutoCompactAttempt = (AutoCompactAttemptBase & {
79
+ status: 'not_needed';
80
+ reason: 'disabled' | 'below_threshold';
81
+ }) | (AutoCompactAttemptBase & {
82
+ status: 'compacted';
83
+ result: CompactResult;
84
+ }) | (AutoCompactAttemptBase & {
85
+ status: 'duplicate';
86
+ reason: 'unchanged_history';
87
+ }) | (AutoCompactAttemptBase & {
88
+ status: 'rejected';
89
+ reason: 'no_token_reduction';
90
+ }) | (AutoCompactAttemptBase & {
91
+ status: 'paused';
92
+ failure: CompactPauseFailure;
93
+ });
40
94
  export declare class AutoCompact {
41
95
  private config;
42
96
  private lastCompactTime;
@@ -47,9 +101,12 @@ export declare class AutoCompact {
47
101
  private preCompactArmed;
48
102
  private lastCompactFingerprint;
49
103
  private lastRejectedFingerprint;
50
- private lastRejectedAt;
51
104
  private lastCompactMode;
52
105
  private lastCompactResult;
106
+ private consecutiveNoProgressAttempts;
107
+ private duplicateAttemptCount;
108
+ private rejectedAttemptCount;
109
+ private lastPauseFailure;
53
110
  private providerCorrection;
54
111
  private calibrationModel;
55
112
  constructor(config?: AutoCompactConfig);
@@ -73,12 +130,28 @@ export declare class AutoCompact {
73
130
  * @param usedTokens 当前已使用的 token 数(来自 API usage 响应)
74
131
  */
75
132
  checkAndCompact(messages: Message[], usedTokens?: number): Promise<Message[]>;
133
+ checkAndCompactOutcome(messages: Message[], usedTokens?: number, postValidate?: CompactPostValidator): Promise<AutoCompactAttempt>;
134
+ /**
135
+ * Finalize an already-triggered compact before persistence. Once a request
136
+ * has a pending candidate, the final history must still meet the 65% target;
137
+ * waiting until the normal 95% trigger would produce an invalid checkpoint.
138
+ */
139
+ ensureHeadroomAndCompactOutcome(messages: Message[], usedTokens?: number, postValidate?: CompactPostValidator): Promise<AutoCompactAttempt>;
76
140
  /**
77
141
  * LLM 调用前的预测压缩。用于避免下一次请求已经接近模型上下文上限。
78
142
  */
79
143
  checkPredictiveAndCompact(messages: Message[], predictedTokens?: number): Promise<Message[]>;
144
+ checkPredictiveCompactOutcome(messages: Message[], predictedTokens?: number, postValidate?: CompactPostValidator): Promise<AutoCompactAttempt>;
80
145
  private compactIfNeeded;
81
- private getMessagesFingerprint;
146
+ private unchangedAttempt;
147
+ private recordNoProgress;
148
+ private createPauseFailure;
149
+ private pausedAttempt;
150
+ private resetNoProgressAttempts;
151
+ private resetAttemptPolicyState;
152
+ private getSafeInputBudget;
153
+ /** Translate provider-observed correction into the estimator budget. */
154
+ private getPlannerSafeInputBudget;
82
155
  /**
83
156
  * 计算上下文使用百分比
84
157
  */
@@ -109,6 +182,12 @@ export declare class AutoCompact {
109
182
  preCompactArmed: boolean;
110
183
  lastCompactMode: 'predictive' | 'threshold' | 'manual' | null;
111
184
  outputReserveTokens: number;
185
+ targetRatio: number;
186
+ safeInputBudget: number;
187
+ maxConsecutiveNoProgressAttempts: number;
188
+ consecutiveNoProgressAttempts: number;
189
+ duplicateAttemptCount: number;
190
+ rejectedAttemptCount: number;
112
191
  };
113
192
  getLastCompactResult(): CompactResult | null;
114
193
  /**
@@ -118,4 +197,5 @@ export declare class AutoCompact {
118
197
  }
119
198
  export declare function getAutoCompact(config?: AutoCompactConfig): AutoCompact;
120
199
  export declare function resetAutoCompact(): void;
200
+ export {};
121
201
  //# sourceMappingURL=auto-compact.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto-compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/auto-compact.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auto-compact.d.ts","sourceRoot":"","sources":["../../../src/services/compact/auto-compact.ts"],"names":[],"mappings":"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"}