@pentoshi/clai 4.11.29 → 4.12.1

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 (387) hide show
  1. package/README.md +49 -10
  2. package/dist/agent/compaction/summary-execution.js +19 -3
  3. package/dist/agent/compaction/summary-execution.js.map +1 -1
  4. package/dist/agent/confirm-port.d.ts +3 -5
  5. package/dist/agent/confirm-port.js +12 -6
  6. package/dist/agent/confirm-port.js.map +1 -1
  7. package/dist/agent/context/compact-with-summary.js +12 -5
  8. package/dist/agent/context/compact-with-summary.js.map +1 -1
  9. package/dist/agent/context/latest-user-message.d.ts +2 -0
  10. package/dist/agent/context/latest-user-message.js +10 -0
  11. package/dist/agent/context/latest-user-message.js.map +1 -0
  12. package/dist/agent/context/user-credentials.js +36 -7
  13. package/dist/agent/context/user-credentials.js.map +1 -1
  14. package/dist/agent/context-manager.js +4 -1
  15. package/dist/agent/context-manager.js.map +1 -1
  16. package/dist/agent/durable-envelope.d.ts +6 -0
  17. package/dist/agent/durable-envelope.js +50 -11
  18. package/dist/agent/durable-envelope.js.map +1 -1
  19. package/dist/agent/evidence/tool-budgets.js +4 -14
  20. package/dist/agent/evidence/tool-budgets.js.map +1 -1
  21. package/dist/agent/responder-context.d.ts +8 -0
  22. package/dist/agent/responder-context.js +35 -2
  23. package/dist/agent/responder-context.js.map +1 -1
  24. package/dist/agent/subagents/manager.d.ts +1 -1
  25. package/dist/agent/subagents/manager.js +7 -6
  26. package/dist/agent/subagents/manager.js.map +1 -1
  27. package/dist/agent/subagents/types.d.ts +1 -0
  28. package/dist/agent/tool-history.d.ts +2 -2
  29. package/dist/agent/tool-history.js +2 -1
  30. package/dist/agent/tool-history.js.map +1 -1
  31. package/dist/agent/turn/compaction-durable-envelope.d.ts +2 -1
  32. package/dist/agent/turn/compaction-durable-envelope.js +22 -11
  33. package/dist/agent/turn/compaction-durable-envelope.js.map +1 -1
  34. package/dist/agent/turn/history-writer.d.ts +1 -1
  35. package/dist/agent/turn/history-writer.js +1 -0
  36. package/dist/agent/turn/history-writer.js.map +1 -1
  37. package/dist/agent/turn/loop/completion-interpretation.d.ts +1 -1
  38. package/dist/agent/turn/loop/deps.d.ts +1 -1
  39. package/dist/agent/turn/loop/run-rounds.js +1 -1
  40. package/dist/agent/turn/loop/run-rounds.js.map +1 -1
  41. package/dist/agent/turn/responder-read-tool.d.ts +1 -0
  42. package/dist/agent/turn/responder-read-tool.js +13 -6
  43. package/dist/agent/turn/responder-read-tool.js.map +1 -1
  44. package/dist/agent/turn/tool-execution/authorization.js +3 -39
  45. package/dist/agent/turn/tool-execution/authorization.js.map +1 -1
  46. package/dist/agent/turn/tool-execution/single-tool.js +1 -1
  47. package/dist/agent/turn/tool-execution/single-tool.js.map +1 -1
  48. package/dist/app/commands/catalog.js +18 -3
  49. package/dist/app/commands/catalog.js.map +1 -1
  50. package/dist/app/controllers/session-compact-helper.js +1 -1
  51. package/dist/app/controllers/session-compact-helper.js.map +1 -1
  52. package/dist/app/controllers/session-controller.d.ts +3 -1
  53. package/dist/app/controllers/session-controller.js +25 -12
  54. package/dist/app/controllers/session-controller.js.map +1 -1
  55. package/dist/app/controllers/session-usage-ledger.d.ts +5 -1
  56. package/dist/app/controllers/session-usage-ledger.js +19 -5
  57. package/dist/app/controllers/session-usage-ledger.js.map +1 -1
  58. package/dist/app/controllers/session-usage-source.d.ts +13 -0
  59. package/dist/app/controllers/session-usage-source.js +37 -0
  60. package/dist/app/controllers/session-usage-source.js.map +1 -0
  61. package/dist/app/operation-review.d.ts +7 -0
  62. package/dist/app/operation-review.js +61 -0
  63. package/dist/app/operation-review.js.map +1 -0
  64. package/dist/app/ports/confirm-port.d.ts +1 -1
  65. package/dist/app/ports/secret-port.d.ts +2 -0
  66. package/dist/classic/app/ClassicApp.js +1 -1
  67. package/dist/classic/app/ClassicApp.js.map +1 -1
  68. package/dist/classic/app/use-feed.js +2 -1
  69. package/dist/classic/app/use-feed.js.map +1 -1
  70. package/dist/classic/blocks/diff-lines.js +5 -8
  71. package/dist/classic/blocks/diff-lines.js.map +1 -1
  72. package/dist/classic/bootstrap/start-classic.js +3 -0
  73. package/dist/classic/bootstrap/start-classic.js.map +1 -1
  74. package/dist/classic/chrome/subagents-row.js +1 -1
  75. package/dist/classic/chrome/subagents-row.js.map +1 -1
  76. package/dist/classic/input/paste-burst.d.ts +3 -12
  77. package/dist/classic/input/paste-burst.js +18 -110
  78. package/dist/classic/input/paste-burst.js.map +1 -1
  79. package/dist/classic/input/paste-decoder.js +2 -4
  80. package/dist/classic/input/paste-decoder.js.map +1 -1
  81. package/dist/classic/input/terminal-sequences.d.ts +1 -2
  82. package/dist/classic/input/terminal-sequences.js +1 -2
  83. package/dist/classic/input/terminal-sequences.js.map +1 -1
  84. package/dist/classic/panels/confirm-panel.js +9 -3
  85. package/dist/classic/panels/confirm-panel.js.map +1 -1
  86. package/dist/classic/panels/pager-diff.js +5 -7
  87. package/dist/classic/panels/pager-diff.js.map +1 -1
  88. package/dist/classic/panels/panel-controller.d.ts +1 -0
  89. package/dist/classic/panels/panel-controller.js +47 -13
  90. package/dist/classic/panels/panel-controller.js.map +1 -1
  91. package/dist/classic/panels/panel-effect.d.ts +2 -0
  92. package/dist/classic/panels/panel-effect.js.map +1 -1
  93. package/dist/classic/panels/panel-effects.js +3 -0
  94. package/dist/classic/panels/panel-effects.js.map +1 -1
  95. package/dist/classic/panels/secret-panel.d.ts +1 -0
  96. package/dist/classic/panels/secret-panel.js +8 -1
  97. package/dist/classic/panels/secret-panel.js.map +1 -1
  98. package/dist/classic/render/ink-theme.js +1 -1
  99. package/dist/classic/render/ink-theme.js.map +1 -1
  100. package/dist/commands/providers.d.ts +5 -0
  101. package/dist/commands/providers.js +57 -0
  102. package/dist/commands/providers.js.map +1 -1
  103. package/dist/commands/update/installers.js +1 -0
  104. package/dist/commands/update/installers.js.map +1 -1
  105. package/dist/index.js +24 -4
  106. package/dist/index.js.map +1 -1
  107. package/dist/llm/capabilities.js +5 -5
  108. package/dist/llm/capabilities.js.map +1 -1
  109. package/dist/llm/capability/state.d.ts +1 -1
  110. package/dist/llm/capability/tool-dialect.js +2 -0
  111. package/dist/llm/capability/tool-dialect.js.map +1 -1
  112. package/dist/llm/capability/vision-patterns.js +12 -0
  113. package/dist/llm/capability/vision-patterns.js.map +1 -1
  114. package/dist/llm/catalog-facts.js +25 -8
  115. package/dist/llm/catalog-facts.js.map +1 -1
  116. package/dist/llm/codex-auth.d.ts +3 -1
  117. package/dist/llm/codex-auth.js +41 -12
  118. package/dist/llm/codex-auth.js.map +1 -1
  119. package/dist/llm/codex-client.d.ts +1 -0
  120. package/dist/llm/codex-client.js +30 -0
  121. package/dist/llm/codex-client.js.map +1 -0
  122. package/dist/llm/codex-config.d.ts +3 -0
  123. package/dist/llm/codex-config.js +82 -0
  124. package/dist/llm/codex-config.js.map +1 -0
  125. package/dist/llm/codex-credential.d.ts +3 -0
  126. package/dist/llm/codex-credential.js +94 -0
  127. package/dist/llm/codex-credential.js.map +1 -0
  128. package/dist/llm/codex-models.d.ts +17 -0
  129. package/dist/llm/codex-models.js +171 -0
  130. package/dist/llm/codex-models.js.map +1 -0
  131. package/dist/llm/codex-request.d.ts +1 -0
  132. package/dist/llm/codex-request.js +61 -0
  133. package/dist/llm/codex-request.js.map +1 -0
  134. package/dist/llm/codex-usage.d.ts +4 -0
  135. package/dist/llm/codex-usage.js +96 -0
  136. package/dist/llm/codex-usage.js.map +1 -0
  137. package/dist/llm/codex.d.ts +1 -2
  138. package/dist/llm/codex.js +30 -217
  139. package/dist/llm/codex.js.map +1 -1
  140. package/dist/llm/context-windows.js +1 -0
  141. package/dist/llm/context-windows.js.map +1 -1
  142. package/dist/llm/freebuff-run.d.ts +3 -0
  143. package/dist/llm/freebuff-run.js +9 -1
  144. package/dist/llm/freebuff-run.js.map +1 -1
  145. package/dist/llm/freebuff-session-api.d.ts +3 -1
  146. package/dist/llm/freebuff-session-api.js +14 -1
  147. package/dist/llm/freebuff-session-api.js.map +1 -1
  148. package/dist/llm/freebuff-session.d.ts +2 -0
  149. package/dist/llm/freebuff-session.js +61 -28
  150. package/dist/llm/freebuff-session.js.map +1 -1
  151. package/dist/llm/freebuff-wire.d.ts +3 -0
  152. package/dist/llm/freebuff-wire.js +82 -0
  153. package/dist/llm/freebuff-wire.js.map +1 -0
  154. package/dist/llm/freebuff.js +61 -117
  155. package/dist/llm/freebuff.js.map +1 -1
  156. package/dist/llm/model-layers/model-rules.js +6 -0
  157. package/dist/llm/model-layers/model-rules.js.map +1 -1
  158. package/dist/llm/omnirush-auth.d.ts +40 -0
  159. package/dist/llm/omnirush-auth.js +264 -0
  160. package/dist/llm/omnirush-auth.js.map +1 -0
  161. package/dist/llm/omnirush-session-upload.d.ts +63 -0
  162. package/dist/llm/omnirush-session-upload.js +221 -0
  163. package/dist/llm/omnirush-session-upload.js.map +1 -0
  164. package/dist/llm/omnirush.d.ts +4 -0
  165. package/dist/llm/omnirush.js +221 -0
  166. package/dist/llm/omnirush.js.map +1 -0
  167. package/dist/llm/provider-balance.d.ts +10 -0
  168. package/dist/llm/provider-balance.js +22 -2
  169. package/dist/llm/provider-balance.js.map +1 -1
  170. package/dist/llm/provider-identity.js +11 -0
  171. package/dist/llm/provider-identity.js.map +1 -1
  172. package/dist/llm/provider-info-text.js +110 -4
  173. package/dist/llm/provider-info-text.js.map +1 -1
  174. package/dist/llm/provider-profile-layers.js +33 -3
  175. package/dist/llm/provider-profile-layers.js.map +1 -1
  176. package/dist/llm/reasoning-capability.js +16 -0
  177. package/dist/llm/reasoning-capability.js.map +1 -1
  178. package/dist/llm/reasoning-controls.d.ts +1 -0
  179. package/dist/llm/reasoning-controls.js +1 -0
  180. package/dist/llm/reasoning-controls.js.map +1 -1
  181. package/dist/llm/reasoning-errors.js +3 -1
  182. package/dist/llm/reasoning-errors.js.map +1 -1
  183. package/dist/llm/request-plan.js +18 -12
  184. package/dist/llm/request-plan.js.map +1 -1
  185. package/dist/llm/responses/item-events.js +2 -0
  186. package/dist/llm/responses/item-events.js.map +1 -1
  187. package/dist/llm/responses-config.d.ts +4 -1
  188. package/dist/llm/responses-config.js.map +1 -1
  189. package/dist/llm/responses-parse.d.ts +2 -1
  190. package/dist/llm/responses-parse.js +11 -45
  191. package/dist/llm/responses-parse.js.map +1 -1
  192. package/dist/llm/responses-replay.d.ts +3 -0
  193. package/dist/llm/responses-replay.js +48 -0
  194. package/dist/llm/responses-replay.js.map +1 -0
  195. package/dist/llm/responses-request.js +22 -8
  196. package/dist/llm/responses-request.js.map +1 -1
  197. package/dist/llm/responses-stream-accumulator.d.ts +4 -0
  198. package/dist/llm/responses-stream-accumulator.js +12 -1
  199. package/dist/llm/responses-stream-accumulator.js.map +1 -1
  200. package/dist/llm/responses-stream-events.js +14 -25
  201. package/dist/llm/responses-stream-events.js.map +1 -1
  202. package/dist/llm/responses-stream.js +1 -0
  203. package/dist/llm/responses-stream.js.map +1 -1
  204. package/dist/llm/responses-usage.d.ts +12 -0
  205. package/dist/llm/responses-usage.js +66 -0
  206. package/dist/llm/responses-usage.js.map +1 -0
  207. package/dist/llm/router.js +4 -4
  208. package/dist/llm/router.js.map +1 -1
  209. package/dist/llm/routing/attempt-complete.js +7 -2
  210. package/dist/llm/routing/attempt-complete.js.map +1 -1
  211. package/dist/llm/routing/attempt-request.js +4 -1
  212. package/dist/llm/routing/attempt-request.js.map +1 -1
  213. package/dist/llm/routing/attempt-stream.js +8 -2
  214. package/dist/llm/routing/attempt-stream.js.map +1 -1
  215. package/dist/llm/routing/error-classification.js +2 -2
  216. package/dist/llm/routing/error-classification.js.map +1 -1
  217. package/dist/llm/routing/provider-selection.js +6 -0
  218. package/dist/llm/routing/provider-selection.js.map +1 -1
  219. package/dist/llm/tokenharbor-cache.d.ts +4 -0
  220. package/dist/llm/tokenharbor-cache.js +10 -0
  221. package/dist/llm/tokenharbor-cache.js.map +1 -0
  222. package/dist/llm/tokenharbor.d.ts +8 -0
  223. package/dist/llm/tokenharbor.js +159 -0
  224. package/dist/llm/tokenharbor.js.map +1 -0
  225. package/dist/llm/wire/chat-body.d.ts +4 -3
  226. package/dist/llm/wire/chat-body.js +30 -5
  227. package/dist/llm/wire/chat-body.js.map +1 -1
  228. package/dist/llm/wire/effort-preflight.js +6 -10
  229. package/dist/llm/wire/effort-preflight.js.map +1 -1
  230. package/dist/llm/wire/openai-complete.d.ts +2 -1
  231. package/dist/llm/wire/openai-complete.js +1 -1
  232. package/dist/llm/wire/openai-complete.js.map +1 -1
  233. package/dist/llm/wire/openai-stream.d.ts +2 -1
  234. package/dist/llm/wire/openai-stream.js +1 -1
  235. package/dist/llm/wire/openai-stream.js.map +1 -1
  236. package/dist/llm/wire/responses-preflight.js +1 -0
  237. package/dist/llm/wire/responses-preflight.js.map +1 -1
  238. package/dist/modes/ask.js +2 -1
  239. package/dist/modes/ask.js.map +1 -1
  240. package/dist/noninteractive/readline-prompts.d.ts +2 -1
  241. package/dist/noninteractive/readline-prompts.js +34 -1
  242. package/dist/noninteractive/readline-prompts.js.map +1 -1
  243. package/dist/noninteractive/start-noninteractive.js +18 -0
  244. package/dist/noninteractive/start-noninteractive.js.map +1 -1
  245. package/dist/noninteractive/stdio-confirm-port.js +18 -6
  246. package/dist/noninteractive/stdio-confirm-port.js.map +1 -1
  247. package/dist/prompts/embedded.js +1 -1
  248. package/dist/prompts/embedded.js.map +1 -1
  249. package/dist/prompts/index.js +3 -2
  250. package/dist/prompts/index.js.map +1 -1
  251. package/dist/prompts/system.agent.md +8 -8
  252. package/dist/safety/filesystem-permissions.d.ts +4 -0
  253. package/dist/safety/filesystem-permissions.js +113 -0
  254. package/dist/safety/filesystem-permissions.js.map +1 -0
  255. package/dist/safety/permission-mode.d.ts +5 -0
  256. package/dist/safety/permission-mode.js +22 -0
  257. package/dist/safety/permission-mode.js.map +1 -0
  258. package/dist/safety/shell-filesystem-effects.d.ts +14 -0
  259. package/dist/safety/shell-filesystem-effects.js +172 -0
  260. package/dist/safety/shell-filesystem-effects.js.map +1 -0
  261. package/dist/safety/shell-permission-words.d.ts +16 -0
  262. package/dist/safety/shell-permission-words.js +102 -0
  263. package/dist/safety/shell-permission-words.js.map +1 -0
  264. package/dist/safety/tool-classification.js +1 -1
  265. package/dist/safety/tool-classification.js.map +1 -1
  266. package/dist/store/config/endpoints.d.ts +2 -1
  267. package/dist/store/config/endpoints.js +5 -1
  268. package/dist/store/config/endpoints.js.map +1 -1
  269. package/dist/store/config.js +3 -0
  270. package/dist/store/config.js.map +1 -1
  271. package/dist/store/history.js +3 -0
  272. package/dist/store/history.js.map +1 -1
  273. package/dist/store/subagents.js +3 -2
  274. package/dist/store/subagents.js.map +1 -1
  275. package/dist/tools/capabilities.js +2 -2
  276. package/dist/tools/command-intent.d.ts +0 -1
  277. package/dist/tools/command-intent.js +3 -10
  278. package/dist/tools/command-intent.js.map +1 -1
  279. package/dist/tools/definitions/aggregate.js +5 -1
  280. package/dist/tools/definitions/aggregate.js.map +1 -1
  281. package/dist/tools/definitions/orchestration.js +2 -2
  282. package/dist/tools/definitions/orchestration.js.map +1 -1
  283. package/dist/tools/definitions/shell.js +6 -3
  284. package/dist/tools/definitions/shell.js.map +1 -1
  285. package/dist/tools/elevated-shell.d.ts +1 -0
  286. package/dist/tools/elevated-shell.js +2 -0
  287. package/dist/tools/elevated-shell.js.map +1 -1
  288. package/dist/tools/fs/search.js +12 -8
  289. package/dist/tools/fs/search.js.map +1 -1
  290. package/dist/tools/fs.d.ts +1 -0
  291. package/dist/tools/fs.js +22 -3
  292. package/dist/tools/fs.js.map +1 -1
  293. package/dist/tools/handlers/shell-1.js +18 -33
  294. package/dist/tools/handlers/shell-1.js.map +1 -1
  295. package/dist/tools/interactive-session-tools.js +1 -0
  296. package/dist/tools/interactive-session-tools.js.map +1 -1
  297. package/dist/tools/jobs/types.d.ts +2 -1
  298. package/dist/tools/jobs.js +1 -0
  299. package/dist/tools/jobs.js.map +1 -1
  300. package/dist/tools/shell/internals.d.ts +1 -1
  301. package/dist/tools/shell/internals.js +2 -1
  302. package/dist/tools/shell/internals.js.map +1 -1
  303. package/dist/tools/shell/timeout.d.ts +1 -0
  304. package/dist/tools/shell/timeout.js +2 -0
  305. package/dist/tools/shell/timeout.js.map +1 -0
  306. package/dist/tools/sudo-session.d.ts +4 -5
  307. package/dist/tools/sudo-session.js +1 -0
  308. package/dist/tools/sudo-session.js.map +1 -1
  309. package/dist/tools/tool-types.d.ts +2 -4
  310. package/dist/tui-v2/app/App.js +5 -1
  311. package/dist/tui-v2/app/App.js.map +1 -1
  312. package/dist/tui-v2/bootstrap/start-tui-v2.js +6 -0
  313. package/dist/tui-v2/bootstrap/start-tui-v2.js.map +1 -1
  314. package/dist/tui-v2/components/jobs/subagents-panel.js +15 -3
  315. package/dist/tui-v2/components/jobs/subagents-panel.js.map +1 -1
  316. package/dist/tui-v2/components/modal/confirm-modal.js +6 -2
  317. package/dist/tui-v2/components/modal/confirm-modal.js.map +1 -1
  318. package/dist/tui-v2/components/modal/secret-modal.d.ts +8 -0
  319. package/dist/tui-v2/components/modal/secret-modal.js +27 -18
  320. package/dist/tui-v2/components/modal/secret-modal.js.map +1 -1
  321. package/dist/tui-v2/components/overlay/overlay-host.js +14 -3
  322. package/dist/tui-v2/components/overlay/overlay-host.js.map +1 -1
  323. package/dist/tui-v2/components/pager/pager.js +7 -3
  324. package/dist/tui-v2/components/pager/pager.js.map +1 -1
  325. package/dist/tui-v2/components/picker/picker.js +17 -3
  326. package/dist/tui-v2/components/picker/picker.js.map +1 -1
  327. package/dist/tui-v2/components/transcript/intro-card.js +2 -1
  328. package/dist/tui-v2/components/transcript/intro-card.js.map +1 -1
  329. package/dist/tui-v2/composer/composer-editor.js +3 -2
  330. package/dist/tui-v2/composer/composer-editor.js.map +1 -1
  331. package/dist/tui-v2/input/paste-burst-guard.d.ts +22 -0
  332. package/dist/tui-v2/input/paste-burst-guard.js +123 -0
  333. package/dist/tui-v2/input/paste-burst-guard.js.map +1 -0
  334. package/dist/types.d.ts +8 -1
  335. package/dist/types.js +2 -0
  336. package/dist/types.js.map +1 -1
  337. package/dist/ui-core/bootstrap/composition-root.d.ts +2 -0
  338. package/dist/ui-core/bootstrap/composition-root.js +8 -0
  339. package/dist/ui-core/bootstrap/composition-root.js.map +1 -1
  340. package/dist/ui-core/bootstrap/overlay-ports.js +14 -5
  341. package/dist/ui-core/bootstrap/overlay-ports.js.map +1 -1
  342. package/dist/ui-core/commands/command-handlers.js +4 -3
  343. package/dist/ui-core/commands/command-handlers.js.map +1 -1
  344. package/dist/ui-core/commands/key-commands.d.ts +2 -0
  345. package/dist/ui-core/commands/key-commands.js +173 -0
  346. package/dist/ui-core/commands/key-commands.js.map +1 -1
  347. package/dist/ui-core/commands/picker-commands.js +15 -0
  348. package/dist/ui-core/commands/picker-commands.js.map +1 -1
  349. package/dist/ui-core/commands/pickers/output-pager.js +19 -8
  350. package/dist/ui-core/commands/pickers/output-pager.js.map +1 -1
  351. package/dist/ui-core/commands/pickers/search-reasoning.js.map +1 -1
  352. package/dist/ui-core/commands/session-commands.d.ts +1 -1
  353. package/dist/ui-core/commands/session-commands.js +67 -32
  354. package/dist/ui-core/commands/session-commands.js.map +1 -1
  355. package/dist/ui-core/commands/subagent-commands.d.ts +1 -1
  356. package/dist/ui-core/commands/subagent-commands.js +9 -8
  357. package/dist/ui-core/commands/subagent-commands.js.map +1 -1
  358. package/dist/ui-core/composer/composer-meta.js +2 -5
  359. package/dist/ui-core/composer/composer-meta.js.map +1 -1
  360. package/dist/ui-core/controllers/overlay-controller.d.ts +6 -0
  361. package/dist/ui-core/controllers/overlay-controller.js +27 -6
  362. package/dist/ui-core/controllers/overlay-controller.js.map +1 -1
  363. package/dist/ui-core/input/paste-burst.d.ts +45 -0
  364. package/dist/ui-core/input/paste-burst.js +170 -0
  365. package/dist/ui-core/input/paste-burst.js.map +1 -0
  366. package/dist/ui-core/input/paste-text.d.ts +1 -0
  367. package/dist/ui-core/input/paste-text.js +4 -0
  368. package/dist/ui-core/input/paste-text.js.map +1 -0
  369. package/dist/ui-core/rendering/duration.d.ts +2 -0
  370. package/dist/ui-core/rendering/duration.js +8 -0
  371. package/dist/ui-core/rendering/duration.js.map +1 -1
  372. package/dist/ui-core/rendering/exit-summary/table.js +4 -1
  373. package/dist/ui-core/rendering/exit-summary/table.js.map +1 -1
  374. package/dist/ui-core/rendering/format-usage.js +9 -2
  375. package/dist/ui-core/rendering/format-usage.js.map +1 -1
  376. package/dist/ui-core/rendering/intro-header.js +5 -6
  377. package/dist/ui-core/rendering/intro-header.js.map +1 -1
  378. package/dist/ui-core/rendering/subagent-source.d.ts +3 -2
  379. package/dist/ui-core/rendering/subagent-source.js +42 -6
  380. package/dist/ui-core/rendering/subagent-source.js.map +1 -1
  381. package/dist/ui-core/rendering/theme.js +4 -4
  382. package/dist/ui-core/rendering/usage-pager-source.js +6 -2
  383. package/dist/ui-core/rendering/usage-pager-source.js.map +1 -1
  384. package/dist/version.generated.d.ts +2 -2
  385. package/dist/version.generated.js +2 -2
  386. package/dist/version.generated.js.map +1 -1
  387. package/package.json +1 -1
package/README.md CHANGED
@@ -17,15 +17,15 @@ Why people pick it over other agent CLIs:
17
17
  ## Highlights
18
18
 
19
19
  - **Free-tier first.** Built-in **keyless Free** gateway (`free-2/kilo-auto/free`) so a fresh install runs at no cost with zero setup — no API key required.
20
- - **Account sign-in.** `clai auth <freebuff|cline|chatgpt|copilot|kiro>` — provider-specific browser/device approval, with supported `--import` paths and multi-credential rotation.
20
+ - **Account sign-in.** `clai auth <freebuff|cline|chatgpt|copilot|kiro|omnirush>` — provider-specific browser/device approval, with supported `--import` paths and multi-credential rotation.
21
21
  - **Multi-key smart switching.** Up to 10 keys per provider with a *sticky* active key and circular rotation on rate-limit, quota, transient, or 5xx errors. Disable any key to skip it without deleting it. Optional cross-provider fallback and a free-only filter.
22
- - **Broad provider support.** 25+ built-in providers: Freebuff, DeepSeek, Kimi (Moonshot), GLM (Zhipu AI), MiniMax, Xiaomi MiMo, OpenAI, Anthropic, Google Gemini, Ollama, NVIDIA NIM, OpenRouter, Qwen Cloud, Cline, Codex (ChatGPT), GitHub Copilot, Kiro, AgentRouter, AWS Mantle, TokenRouter, Lightning AI, Modal, Meta, Fireworks, Hetzner, OrcaRouter, Merge Gateway, ExpLabs, Vercel AI Gateway — plus custom OpenAI-compatible endpoints.
23
- - **Parallel subagents.** Independent investigations (recon, research, large refactors) run as read-only subagents concurrently; `/orchestrator` and `/agents` control and inspect them, with per-role model chains.
22
+ - **Broad provider support.** 25+ built-in providers: Freebuff, DeepSeek, Kimi (Moonshot), GLM (Zhipu AI), MiniMax, Xiaomi MiMo, OpenAI, Anthropic, Google Gemini, Ollama, NVIDIA NIM, OpenRouter, Qwen Cloud, Cline, Codex (ChatGPT), GitHub Copilot, Kiro, OmniRush, AgentRouter, AWS Mantle, TokenRouter, Token Harbor, Lightning AI, Modal, Meta, Fireworks, Hetzner, OrcaRouter, Merge Gateway, ExpLabs, Vercel AI Gateway — plus custom OpenAI-compatible endpoints.
23
+ - **Parallel subagents.** Independent investigations (recon, research, large refactors) run as read-only subagents concurrently; `/orchestrator` and `/subagents` control and inspect them, with per-role model chains.
24
24
  - **Agent Skills.** Loads `SKILL.md`-based skills on demand — `/skills` manages them, and relevant skills surface automatically per prompt.
25
25
  - **Scope-based pentesting.** Opt-in engagement scope with authorized/excluded targets, allowed phases, rate and concurrency ceilings, redirect and DNS-rebinding escape detection, and out-of-scope flagging — designed for authorized pentests and bug-bounty programs.
26
26
  - **Real building & debugging.** Scaffolds apps, edits code surgically, installs packages, runs builds/tests, starts dev servers as background jobs, and probes them before reporting success.
27
27
  - **Durable plans.** `plan.create` / `task.update` drive a live checklist that survives context compaction and reloads with `/history` — the agent works task-by-task and won't fake completion.
28
- - **State-preserving compaction.** Automatic and manual `/compact` keep a deterministic work envelope next to the summary: subagents (id, title, status, and a digest of results already read), live and finished background jobs, Responder-delegated tasks with their read state, touched files, and any credentials you supplied for the task, carried verbatim instead of being summarized away. When the history fits the model's window, the summary request replays the cached conversation prefix, so compaction is mostly a cache read.
28
+ - **State-preserving compaction.** Automatic and manual `/compact` keep the latest user request verbatim alongside a deterministic work envelope: subagents (id, title, status, and a digest of results already read), live and finished background jobs, Responder-delegated tasks with their read state, touched files, and any credentials you supplied for the task. Before each model dispatch, clai estimates the current assembled request, including the incoming prompt and tool schemas, calibrated with provider-reported usage when available; it does not ask the model to guess its context size. Injected system blocks cannot displace the latest prompt, and successful manual compaction is saved even when the message count stays unchanged. When the history fits the model's window, the summary request replays the cached conversation prefix, so compaction is mostly a cache read.
29
29
  - **Durable agent sessions.** Interactive sessions run behind a local broker, so an agent keeps working after `/minimise`, an SSH disconnect, or switching to another history session; `clai --resume <id>` reattaches to the same live UI and output stream.
30
30
  - **Persistent interactive terminals.** Conversation-owned PTY or pipe sessions keep REPLs such as Python, Metasploit, Meterpreter, database consoles, and debuggers open across model turns.
31
31
  - **Native + text tool calling.** Uses provider-native function calling where available, with a text-fence fallback (`toolCalling: auto|native|text`).
@@ -122,6 +122,7 @@ Sign in with an account you already have. Browser/device-code flows work on head
122
122
  | **GitHub Copilot** | `clai auth copilot` | Incl. Copilot Free; mimics VS Code Copilot Chat |
123
123
  | **Cline** | `clai auth cline` | Free `cline-free/*` models plus frontier catalog |
124
124
  | **Kiro (AWS)** | `clai auth kiro` | AWS Builder ID, Google/GitHub social login, or IAM Identity Center SSO |
125
+ | **OmniRush** | `clai auth omnirush` | Device-code sign-in; `--import` reuses an existing OmniRush CLI login |
125
126
 
126
127
  Up to 10 credentials can be stored per provider, with automatic key rotation on applicable authentication/quota errors. `clai auth <p> --import` imports supported local sign-ins; Freebuff also imports `FREEBUFF_API_KEY`, `CODEBUFF_API_KEY`, or the upstream `~/.config/manicode/credentials.json` token.
127
128
 
@@ -147,6 +148,7 @@ Up to 10 credentials can be stored per provider, with automatic key rotation on
147
148
  | **AgentRouter** | `claude-opus-4-6` | Paid gateway | `AGENTROUTER_API_KEY` |
148
149
  | **AWS Mantle** | `anthropic.claude-haiku-4-5` | Paid (AWS) | `ANTHROPIC_API_KEY` |
149
150
  | **TokenRouter** | `moonshotai/kimi-k3` | Paid gateway | `TOKENROUTER_API_KEY` |
151
+ | **Token Harbor** | `claude-sonnet-5.5` | Paid gateway (free tier) | `TOKENHARBOR_API_KEY` |
150
152
  | **Lightning AI** | `openai/gpt-5` | Free grant / Paid | `LIGHTNING_API_KEY` |
151
153
  | **Modal** | `moonshotai/Kimi-K3` | Your own endpoint ($30/mo credit) | `MODAL_PROXY_TOKEN_ID` |
152
154
  | **Meta (Muse)** | `muse-spark-1.2` | Paid | `MODEL_API_KEY` |
@@ -195,6 +197,18 @@ On clean TUI shutdown and after a noninteractive run, clai awaits best-effort de
195
197
  - **Catalog does not refresh:** `/model` uses the account-visible session response and a 30-minute per-account cache. If the session probe is unreachable, clai displays its bundled catalog fallback; the hosted `/api/v1/models` endpoint is not available.
196
198
  - **Session remains after a forced stop:** clean exits attempt deletion; otherwise Freebuff's server-side expiry clears it.
197
199
 
200
+ ### ChatGPT (Codex) subscription behavior
201
+
202
+ - `clai auth chatgpt` signs in with ChatGPT; `--headless` uses a device code, and `--import` reuses an existing Codex CLI sign-in.
203
+ - `/model` uses the live account-visible catalog and installed Codex client version. Model context limits and supported reasoning levels follow the catalog; account-scoped results refresh every five minutes and are cached for offline use.
204
+ - `/usage` shows ChatGPT subscription limits, reset times, and credits when the account reports them, alongside session token and cache usage. Subscription allowances are separate from session token totals.
205
+
206
+ ### OmniRush session uploads
207
+
208
+ For OmniRush sessions, clai invokes the OmniRush CLI to upload a **synthetic lifecycle workspace** after turns and at session close. It contains the session id, sequence, lifecycle phase, status, and timestamp—not your project source, prompts, or tool-output transcript. The CLI must be available and signed in; missing CLI or login errors produce a notice without failing the agent turn.
209
+
210
+ Uploads are disabled by `--no-history`, private mode (`/privacy on`), or `CLAI_OMNIRUSH_SESSION_UPLOAD=0` (also accepts `false`, `off`, or `no`). `OMNIRUSH_CLI_PATH` selects a custom OmniRush executable.
211
+
198
212
  ### Manage Keys
199
213
 
200
214
  ```sh
@@ -248,7 +262,7 @@ clai --mode agent "this test is flaky — find the race and fix it"
248
262
  For work with several independent threads — recon on multiple targets, researching unrelated bugs, surveying a large codebase — `clai` delegates read-only investigations to **subagents** that run concurrently and report back with evidence:
249
263
 
250
264
  - `/orchestrator on|off|status|models` — control delegation and assign cheaper models to subagent roles.
251
- - `/agents` — inspect live assignments; stop or restart one by id.
265
+ - `/subagents` — inspect live assignments; stop or restart one by id.
252
266
 
253
267
  **Agent Skills** extend the agent with reusable `SKILL.md` playbooks (bundled or your own). Skills are discovered from standard locations, ranked per prompt, and loaded on demand; `/skills list|refresh` manages them.
254
268
 
@@ -288,6 +302,8 @@ Log triage, config hardening, packaging, network analysis, OCR of a screenshot o
288
302
 
289
303
  ## Modes & reasoning
290
304
 
305
+ Codex subscription sessions preserve compatible encrypted reasoning for normal continuation. If a restored session's `/compact` request rejects it with `invalid_encrypted_content`, clai retries once on the same model without the rejected opaque replay, retaining visible text, tool history, and generation settings. Unrelated errors or failures after streamed output do not trigger this recovery; failed compaction retains the original context.
306
+
291
307
  Three modes, switchable anytime with a slash command, `Shift+Tab`, or `clai --mode`:
292
308
 
293
309
  | Mode | Use |
@@ -307,10 +323,31 @@ You own authorization; `clai` gates risk on every action:
307
323
  | Level | Behavior |
308
324
  |-------|----------|
309
325
  | **safe** | Auto-runs read-only work: `fs.read/list/search`, `tool.check`, `http.fetch` GET, `web.search`/`web.fetch`, recon commands. |
310
- | **confirm** | Asks first for mutations: file writes/edits, installs, moves, mutating shell commands. |
326
+ | **confirm** | Applies the selected permission mode to mutations; filesystem scope can require approval even with `--yes` or a tool allow-list. |
311
327
  | **block** | Refuses destructive patterns (`rm -rf /`, fork bombs, exfiltration signatures) and SSRF-prone fetches. |
312
328
 
313
- `fs.delete` always confirms (with an optional diff preview) even under allow-all. Use `/permissions` to choose the confirmation level and `/allow` / `/disallow` for a per-session tool allow-list.
329
+ Use `/permissions` in either UI to select a persistent permission mode:
330
+
331
+ | Permission mode | Writes, creates, edits | File deletion (`fs.delete` and shell `rm`) |
332
+ |-----------------|-----------------------|-------------------------------------------|
333
+ | **default** | Allowed inside the active folder; outside writes ask | Always asks |
334
+ | **auto-allow** *(default)* | Allowed everywhere | Allowed inside the active folder; outside or unresolved targets ask |
335
+ | **full-access everywhere** | Allowed everywhere | Allowed everywhere without confirmation |
336
+
337
+ Set a mode directly with `/permissions default`, `/permissions auto-allow`, or `/permissions full-access`, or from the CLI with `clai config set permissions <mode>`. The legacy `allow-all` value remains an alias for auto-allow; existing explicit choices survive upgrades and restarts. `/allow` and `/disallow` manage per-session tool allowances, but cannot bypass a required filesystem-scope prompt.
338
+
339
+ The active folder is the pinned project root, or the current working directory when no project is pinned—not every temporary directory. Shell checks cover direct, piped, compound, and wrapped deletion commands and account for explicit cwd, traversal, and symlink escapes. Dynamic targets, unsupported shell syntax, and indirect deletion with unresolved inputs require approval under auto-allow; this policy is not an OS sandbox. Full-access changes confirmation policy, not ask-mode restrictions, OS permissions, engagement scope, or hard safety blocks.
340
+
341
+ ### Reviewing what you approve
342
+
343
+ Before you authorize anything, press **Ctrl+O** on any approval or password prompt to page the *complete* pending operation—the same way plan mode lets you read the plan before implementing. The review shows the operation name, working directory, active folder, resolved filesystem paths, and the full untruncated arguments, including complete shell commands and surrounding `cwd`.
344
+
345
+ - Press **Ctrl+O** on a tool, pentest, or sudo/secret prompt to open the review pager. Scroll it, search it, and close it to return to the pending prompt.
346
+ - Viewing approves nothing, cancels nothing, and executes nothing. The prompt stays pending until you answer it explicitly.
347
+ - Deletion prompts keep **v** for the existing file-content preview; **Ctrl+O** shows the operation descriptor instead. The content preview is capped while the descriptor is not.
348
+ - Sensitive values stay masked: password, secret, token, cookie and API-key fields are redacted, as are recognizable provider keys and `Bearer` credentials. Control characters are shown as escapes so nothing is silently hidden.
349
+ - Terminal/`-y` (non-interactive) runs page the same review before the y/n question when stdin is a TTY; without a TTY they still fail closed instead of reading a piped answer.
350
+ - Returning from the pager never authorizes. A partially typed password survives the round trip, and `esc` still cancels.
314
351
 
315
352
  ---
316
353
 
@@ -352,7 +389,8 @@ Interactive sessions run behind a local broker so an agent continues working acr
352
389
 
353
390
  | Command | Does |
354
391
  |---------|------|
355
- | `/ask` · `/agent` · `/plan [view]` | Switch mode (plan = design a plan you approve before anything runs; `view` pages the current plan) |
392
+ | `/ask` · `/agent` · `/plan` | Switch mode (plan = design a plan you approve before anything runs) |
393
+ | `/view-plan` | View the current plan without changing mode |
356
394
  | `/implement` · `/discard` | Approve and execute or drop the current plan |
357
395
  | `/model [name]` · `/models [filter]` | Select model · browse all models across providers |
358
396
  | `/provider [name]` | Switch provider or open picker |
@@ -360,7 +398,7 @@ Interactive sessions run behind a local broker so an agent continues working acr
360
398
  | `/info [provider]` | Setup, pricing, and endpoint details for a provider |
361
399
  | `/effort [level]` · `/reasoning [level]` | Configure thinking / reasoning effort |
362
400
  | `/freeonly [on\|off]` · `/fallback [on\|off]` | Free-only filter · cross-provider fallback |
363
- | `/orchestrator [...]` · `/agents` | Control subagent delegation · inspect live subagents |
401
+ | `/orchestrator [...]` · `/subagents` | Control subagent delegation · inspect live subagents |
364
402
  | `/rtk [on\|off\|status\|install\|update]` | Compress shell output through [rtk](https://github.com/rtk-ai/rtk) (off by default) · install or update rtk |
365
403
  | `/skills [name\|list\|refresh]` | Manage Agent Skills |
366
404
  | `/search [provider]` · `/search-provider` | Choose web-search backend |
@@ -514,7 +552,8 @@ npm install
514
552
  npm run dev # run from source
515
553
  npm run typecheck
516
554
  npm run build
517
- npm test # full test suite
555
+ npm run test:deterministic
556
+ npm run test:host
518
557
  npm run compile # compile native binaries with Bun
519
558
  ```
520
559
 
@@ -3,6 +3,8 @@ import { modelMaxOutputTokens } from "../../llm/context-windows.js";
3
3
  import { effortReasoningBudgetTokens } from "../../llm/reasoning-controls.js";
4
4
  import { streamAlreadyEmitted } from "../../llm/stream-progress.js";
5
5
  import { isEmptyCompletionError } from "../../llm/routing/error-classification.js";
6
+ import { isInvalidReasoningContentError } from "../../llm/reasoning-errors.js";
7
+ import { withoutReasoningReplay } from "../../llm/routing/attempt-request.js";
6
8
  import { createThinkingStreamParser, stripThinking } from "../../ui/thinking.js";
7
9
  import { buildCompactionRetryPrompt, COMPACTION_INPUT_SAFETY_TOKENS, isCompactionCompletionTruncated, looksLikeIncompleteCompactionSummary, looksLikeTranscriptReplay, normalizeCompactionSummary } from "../compaction-summary.js";
8
10
  import { accountAssembledRequest, RequestOverLimitError } from "../request-accounting.js";
@@ -23,6 +25,7 @@ function cloneCompatibilityMessage(message) {
23
25
  const clone = cloneTextOnlyMessage(message);
24
26
  delete clone.reasoningBlock;
25
27
  delete clone.reasoningArtifacts;
28
+ delete clone.responsesReplay;
26
29
  return clone;
27
30
  }
28
31
  function errorStatus(error) {
@@ -193,7 +196,7 @@ export function salvageTruncatedSummary(summary) {
193
196
  return undefined;
194
197
  }
195
198
  export function comparableMessage(message) {
196
- const { images: _images, reasoningBlock: _reasoningBlock, reasoningArtifacts: _reasoningArtifacts, ...rest } = message;
199
+ const { images: _images, reasoningBlock: _reasoningBlock, reasoningArtifacts: _reasoningArtifacts, responsesReplay: _responsesReplay, ...rest } = message;
197
200
  return JSON.stringify(rest);
198
201
  }
199
202
  export function missingHistoryTail(requestMessages, history, textOnly = true) {
@@ -286,6 +289,7 @@ export async function executeCompactionSummary(execution) {
286
289
  }),
287
290
  ...(execution.signal ? { signal: execution.signal } : {}),
288
291
  };
292
+ const preserveCodexEffort = request.provider === "codex" && request.thinking?.enabled === true;
289
293
  const attemptAccounting = (attemptRequest) => {
290
294
  const provider = attemptRequest.provider ?? execution.provider;
291
295
  const model = attemptRequest.model ?? execution.model;
@@ -338,6 +342,8 @@ export async function executeCompactionSummary(execution) {
338
342
  const grown = grownRequest(attemptRequest, execution.maxTokens);
339
343
  if (grown)
340
344
  return grown;
345
+ if (preserveCodexEffort)
346
+ return undefined;
341
347
  if (attemptRequest.thinking?.enabled !== true)
342
348
  return undefined;
343
349
  return { ...attemptRequest, thinking: COMPACTION_THINKING };
@@ -405,12 +411,22 @@ export async function executeCompactionSummary(execution) {
405
411
  return await runProviderAttempt(attemptRequest, replace);
406
412
  }
407
413
  };
414
+ let reasoningReplayRejected = false;
408
415
  const runAttempt = async (attemptRequest, replace = false) => {
416
+ if (reasoningReplayRejected)
417
+ attemptRequest = withoutReasoningReplay(attemptRequest);
409
418
  try {
410
419
  return await runTransientAttempt(attemptRequest, replace);
411
420
  }
412
421
  catch (error) {
413
- if (execution.retryOnRequestShapeRejection === false)
422
+ const hasReplay = attemptRequest.messages.some((message) => message.responsesReplay || message.reasoningArtifacts?.length || message.reasoningBlock);
423
+ if (!reasoningReplayRejected && hasReplay &&
424
+ !streamAlreadyEmitted(error) && !isAbortError(error, execution.signal) &&
425
+ isInvalidReasoningContentError(error)) {
426
+ reasoningReplayRejected = true;
427
+ return await runTransientAttempt(withoutReasoningReplay(attemptRequest), replace);
428
+ }
429
+ if (execution.retryOnRequestShapeRejection === false || preserveCodexEffort)
414
430
  throw error;
415
431
  if (!isRequestShapeRejection(error, execution.signal))
416
432
  throw error;
@@ -468,7 +484,7 @@ export async function executeCompactionSummary(execution) {
468
484
  ...sizedRequest,
469
485
  messages: attemptMessages(buildCompactionRetryPrompt(execution.prompt, retryReason), `${execution.systemContent}${RETRY_SYSTEM_SUFFIX}`),
470
486
  temperature: 0,
471
- ...(retryReason === "reasoning-only" &&
487
+ ...(!preserveCodexEffort && retryReason === "reasoning-only" &&
472
488
  sizedRequest.thinking?.enabled === true
473
489
  ? { thinking: COMPACTION_THINKING }
474
490
  : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"summary-execution.js","sourceRoot":"","sources":["../../../src/agent/compaction/summary-execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"summary-execution.js","sourceRoot":"","sources":["../../../src/agent/compaction/summary-execution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAE9E,OAAO,EAAE,0BAA0B,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,8BAA8B,EAAE,+BAA+B,EAAE,oCAAoC,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACpO,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAE1F,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,mBAAmB,GACvB,4GAA4G,CAAC;AAE/G,MAAM,+BAA+B,GAAG,KAAK,CAAC;AAE9C,MAAM,mBAAmB,GAAG;IAC1B,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,KAAc;CACvB,CAAC;AAEF,SAAS,oBAAoB,CAAC,OAAoB;IAChD,MAAM,KAAK,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,KAAK,CAAC,MAAM,CAAC;IACpB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,yBAAyB,CAAC,OAAoB;IACrD,MAAM,KAAK,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC,cAAc,CAAC;IAC5B,OAAO,KAAK,CAAC,kBAAkB,CAAC;IAChC,OAAO,KAAK,CAAC,eAAe,CAAC;IAC7B,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC;QAChE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAE,KAA8B,CAAC,MAAM,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACvE,MAAM,IAAI,GACR,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK;QACnD,CAAC,CAAC,MAAM,CAAE,KAA4B,CAAC,IAAI,IAAI,EAAE,CAAC;QAClD,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,GAAG,OAAO,KAAK,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAc,EAAE,MAAoB;IACnE,IAAI,oBAAoB,CAAC,KAAK,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7E,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IACnD,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,CAAC,sLAAsL,CAAC,IAAI,CACjM,IAAI,CACL,CAAC;AACJ,CAAC;AAED,MAAM,sBAAsB,GAAG;IAC7B,sBAAsB;IACtB,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,qBAAqB;IACrB,aAAa;IACb,gBAAgB;IAChB,uBAAuB;IACvB,YAAY;IACZ,aAAa;IACb,OAAO;IACP,WAAW;IACX,QAAQ;IACR,OAAO;IACP,UAAU;IACV,WAAW;CACH,CAAC;AAEX,SAAS,iBAAiB,CAAC,KAAc;IACvC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC;SAC1B,WAAW,EAAE;SACb,OAAO,CACN,4CAA4C,EAC5C,EAAE,CACH,CAAC;IACJ,MAAM,SAAS,GACb,qKAAqK,CAAC;IACxK,KAAK,MAAM,KAAK,IAAI,sBAAsB,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAC7D,IACE,IAAI,MAAM,CAAC,MAAM,OAAO,cAAc,SAAS,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACnE,IAAI,MAAM,CAAC,MAAM,SAAS,cAAc,OAAO,GAAG,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EACnE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAOD,SAAS,8BAA8B,CACrC,OAA0B;IAE1B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IACrC,CAAC;IACD,IACE,OAAO,CAAC,KAAK,EAAE,MAAM;QACrB,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,OAAO,CAAC,iBAAiB,KAAK,SAAS,EACvC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAC7B,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAChD,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM;YAAE,aAAa,GAAG,IAAI,CAAC;QACjD,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAC;YACjE,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;QACD,OAAO,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,IAAI,gBAAgB;QAAE,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACjE,IAAI,aAAa;QAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAClD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE3C,MAAM,EACJ,QAAQ,EAAE,SAAS,EACnB,oBAAoB,EAAE,qBAAqB,EAC3C,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,WAAW,EACvB,iBAAiB,EAAE,kBAAkB,EACrC,GAAG,IAAI,EACR,GAAG,OAAO,CAAC;IACZ,OAAO;QACL,OAAO,EAAE;YACP,GAAG,IAAI;YACP,QAAQ;SACT;QACD,OAAO;KACR,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,KAI9B;IACC,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACpE,MAAM,cAAc,GAClB,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO;QACzB,CAAC,CAAC,iCAAiC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;QACxG,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,SAAS,GAAG,KAAK;QACrB,CAAC,CAAC,6BAA6B,KAAK,2BAA2B;QAC/D,CAAC,CAAC,8LAA8L,CAAC;IACnM,MAAM,OAAO,GAAG,IAAI,KAAK,CACvB,yEAAyE,KAAK,KAAK,SAAS,sCAAsC,cAAc,CAAC,CAAC,CAAC,uBAAuB,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EACjM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CACvB,CAAC;IACF,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACxC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE;YACvC,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,IAAI;YAChB,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc,EAAE,MAAoB;IACtE,IAAI,oBAAoB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,IAAI,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,IAAI,0BAA0B,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACpD,IAAI,KAAK,YAAY,qBAAqB;QAAE,OAAO,KAAK,CAAC;IACzD,MAAM,MAAM,GACV,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK;QACrD,CAAC,CAAC,MAAM,CAAE,KAA6B,CAAC,MAAM,CAAC;QAC/C,CAAC,CAAC,CAAC,CAAC;IACR,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG;QAAE,OAAO,KAAK,CAAC;IAChD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,OAAO,wBAAyB,SAAQ,KAAK;IAGtC;IACA;IAHX,YACE,OAAe,EACN,aAAqB,EACrB,mBAAuC;QAEhD,KAAK,CAAC,OAAO,CAAC,CAAC;QAHN,kBAAa,GAAb,aAAa,CAAQ;QACrB,wBAAmB,GAAnB,mBAAmB,CAAoB;QAGhD,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;IACzC,CAAC;CACF;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAc;IAEd,OAAO,KAAK,YAAY,wBAAwB,CAAC;AACnD,CAAC;AA6BD,MAAM,qBAAqB,GAAG;IAC5B,SAAS,EAAE,mFAAmF;IAC9F,gBAAgB,EACd,kFAAkF;IACpF,QAAQ,EACN,8EAA8E;IAChF,UAAU,EACR,qFAAqF;CAC/E,CAAC;AAEX,MAAM,6BAA6B,GAAG,GAAG,CAAC;AAC1C,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAErC,MAAM,iBAAiB,GACrB,2HAA2H,CAAC;AAE9H,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,MAAM,KAAK,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9D,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,IAAI,yBAAyB,EAAE,CAAC;QAChE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1C,IAAI,SAAS,IAAI,CAAC,oCAAoC,CAAC,SAAS,CAAC,EAAE,CAAC;YAClE,OAAO,SAAS,CAAC,MAAM,IAAI,6BAA6B;gBACtD,CAAC,CAAC,GAAG,SAAS,GAAG,iBAAiB,EAAE;gBACpC,CAAC,CAAC,SAAS,CAAC;QAChB,CAAC;QACD,KAAK,CAAC,GAAG,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC,CAAC;IACf,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAoB;IACpD,MAAM,EACJ,MAAM,EAAE,OAAO,EACf,cAAc,EAAE,eAAe,EAC/B,kBAAkB,EAAE,mBAAmB,EACvC,eAAe,EAAE,gBAAgB,EACjC,GAAG,IAAI,EACR,GAAG,OAAO,CAAC;IACZ,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,eAAuC,EACvC,OAA+B,EAC/B,QAAQ,GAAG,IAAI;IAEf,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,OAAO,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,cAAc,CAAE,CAAC,CAAC;QAC7D,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC;QACf,KAAK,IAAI,KAAK,GAAG,YAAY,EAAE,KAAK,GAAG,eAAe,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1E,IAAI,iBAAiB,CAAC,eAAe,CAAC,KAAK,CAAE,CAAC,KAAK,QAAQ,EAAE,CAAC;gBAC5D,KAAK,GAAG,KAAK,CAAC;gBACd,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM;QACrB,YAAY,GAAG,KAAK,GAAG,CAAC,CAAC;QACzB,cAAc,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,OAAO,OAAO;SACX,KAAK,CAAC,cAAc,CAAC;SACrB,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CACf,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CACpE,CAAC;AACN,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,WAAsC,EACtC,OAA+B,EAC/B,UAAkB;IAElB,OAAO;QACL,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAClE,GAAG,kBAAkB,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC;QAC3D,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,UAAU,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,SAAqC;IAErC,MAAM,eAAe,GAAG,CACtB,UAAkB,EAClB,aAAqB,EACN,EAAE;QACjB,IAAI,SAAS,CAAC,WAAW,EAAE,CAAC;YAC1B,OAAO,6BAA6B,CAClC,SAAS,CAAC,WAAW,EACrB,SAAS,CAAC,OAAO,IAAI,EAAE,EACvB,UAAU,CACX,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC,cAAc;YAC7B,CAAC,CAAC;gBACE,GAAG,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1C,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,OAAO,CAAC,CACrF;gBACD,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,UAAU,EAAE;aAC/C;YACH,CAAC,CAAC;gBACE,EAAE,IAAI,EAAE,QAAiB,EAAE,OAAO,EAAE,aAAa,EAAE;gBACnD,EAAE,IAAI,EAAE,MAAe,EAAE,OAAO,EAAE,UAAU,EAAE;aAC/C,CAAC;IACR,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;IAC1C,MAAM,QAAQ,GAAG,WAAW,IAAI,SAAS,CAAC,eAAe,CAAC;IAC1D,IACE,WAAW;QACX,CAAC,kBAAkB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,OAAO;YAC/C,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACpC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAC3C,CAAC,EACJ,CAAC;QACD,MAAM,IAAI,KAAK,CACb,yFAAyF,CAC1F,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAsB;QACjC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,SAAS,CAAC,QAAQ;QAClD,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,SAAS,CAAC,KAAK;QACzC,OAAO,EAAE,YAAY;QACrB,QAAQ,EAAE,eAAe,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,aAAa,CAAC;QACpE,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,GAAG,CAAC,QAAQ;YACV,CAAC,CAAC;gBACE,GAAG,CAAC,QAAQ,CAAC,WAAW,KAAK,SAAS;oBACpC,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE;oBACvC,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,QAAQ,CAAC,QAAQ;oBACnB,CAAC,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;oBAClD,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,QAAQ,CAAC,oBAAoB,KAAK,SAAS;oBAC7C,CAAC,CAAC,EAAE,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,EAAE;oBACzD,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,QAAQ,CAAC,KAAK;oBAChB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE;oBAChE,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,QAAQ,CAAC,UAAU,KAAK,SAAS;oBACnC,CAAC,CAAC,EAAE,UAAU,EAAE,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;oBACtD,CAAC,CAAC,EAAE,CAAC;gBACP,GAAG,CAAC,QAAQ,CAAC,iBAAiB,KAAK,SAAS;oBAC1C,CAAC,CAAC,EAAE,iBAAiB,EAAE,QAAQ,CAAC,iBAAiB,EAAE;oBACnD,CAAC,CAAC,EAAE,CAAC;aACR;YACH,CAAC,CAAC;gBACE,WAAW,EAAE,GAAG;gBAChB,QAAQ,EAAE,mBAAmB;gBAC7B,GAAG,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM;oBACzB,CAAC,CAAC;wBACE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;wBAC3D,UAAU,EAAE,MAAe;qBAC5B;oBACH,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;QACN,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1D,CAAC;IACF,MAAM,mBAAmB,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;IAE/F,MAAM,iBAAiB,GAAG,CACxB,cAAiC,EACF,EAAE;QACjC,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC;QAC/D,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CAAC;QACtD,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC1C,OAAO,uBAAuB,CAAC;YAC7B,QAAQ;YACR,KAAK;YACL,QAAQ,EAAE,cAAc,CAAC,QAAQ;YACjC,MAAM,EAAE,SAAS,CAAC,MAAM;YACxB,GAAG,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxE,GAAG,CAAC,cAAc,CAAC,UAAU,KAAK,SAAS;gBACzC,CAAC,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,UAAU,EAAE;gBAC3C,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,cAAc,CAAC,iBAAiB,KAAK,SAAS;gBAChD,CAAC,CAAC,EAAE,iBAAiB,EAAE,cAAc,CAAC,iBAAiB,EAAE;gBACzD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,SAAS,CAAC,kBAAkB,KAAK,SAAS;gBAC5C,CAAC,CAAC,EAAE,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,EAAE;gBACtD,CAAC,CAAC,EAAE,CAAC;YACP,oBAAoB,EAAE,cAAc,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS;YACrE,kBAAkB,EAAE,8BAA8B;SACnD,CAAC,CAAC,UAAU,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,oBAAoB,GAAG,CAC3B,cAAiC,EACjC,MAAc,EACN,EAAE;QACV,IAAI,MAAM,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC;QAC1B,MAAM,OAAO,GAAG,cAAc,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC;QAChE,MAAM,OAAO,GAAG,oBAAoB,CAClC,cAAc,CAAC,QAAQ,IAAI,SAAS,CAAC,QAAQ,EAC7C,cAAc,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,CACxC,CAAC;QACF,MAAM,SAAS,GAAG,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;QACrE,MAAM,SAAS,GAAG,iBAAiB,CAAC,cAAc,CAAC,EAAE,cAAc,IAAI,MAAM,CAAC;QAC9E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IAC7D,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CACnB,cAAiC,EACjC,MAAc,EACiB,EAAE;QACjC,MAAM,KAAK,GAAG,oBAAoB,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC3D,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,SAAS,CAAC;QACjC,OAAO;YACL,GAAG,cAAc;YACjB,SAAS,EAAE,CAAC,cAAc,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,GAAG,KAAK;SACrE,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,qBAAqB,GAAG,CAC5B,cAAiC,EACd,EAAE;QACrB,IAAI,cAAc,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI;YAAE,OAAO,cAAc,CAAC;QACrE,OAAO,CACL,YAAY,CACV,cAAc,EACd,2BAA2B,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC5D,IAAI,cAAc,CACpB,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,sBAAsB,GAAG,CAC7B,cAAiC,EACF,EAAE;QACjC,MAAM,KAAK,GAAG,YAAY,CAAC,cAAc,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAChE,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC;QACxB,IAAI,mBAAmB;YAAE,OAAO,SAAS,CAAC;QAC1C,IAAI,cAAc,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QAChE,OAAO,EAAE,GAAG,cAAc,EAAE,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAC9D,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,cAAiC,EAAQ,EAAE;QACpE,MAAM,UAAU,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,EAAE,SAAS;YAAE,OAAO;QACnC,MAAM,IAAI,wBAAwB,CAChC,6EAA6E,UAAU,CAAC,aAAa,CAAC,cAAc,EAAE,0BAA0B,UAAU,CAAC,KAAK,CAAC,mBAAmB,EAAE,cAAc,EAAE,iEAAiE,EACvQ,UAAU,CAAC,aAAa,EACxB,UAAU,CAAC,KAAK,CAAC,mBAAmB,CACrC,CAAC;IACJ,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,KAAK,EAC9B,cAAiC,EACjC,OAAO,GAAG,KAAK,EACf,EAAE;QACF,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAClC,MAAM,aAAa,GAAG;YACpB,UAAU,EAAE,CAAC;YACb,cAAc,EAAE,IAAI;YACpB,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;YACzE,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;YAC5B,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,OAAO;YAAE,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,0BAA0B,CACvC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,EACnC,SAAS,EACT,EAAE,QAAQ,EAAE,KAAK,EAAE,CACpB,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,kBAAkB,CACrC,cAAc,EACd,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAC7B,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,GAAG,aAAa,EAAE,CAChD,CAAC;QACF,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;QAC5B,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,KAAK,IAAmB,EAAE;QACjD,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,IAAI,+BAA+B,CAAC;QAC1E,IAAI,OAAO,IAAI,CAAC;YAAE,OAAO;QACzB,IAAI,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC9B,MAAM,SAAS,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;YAChC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,OAAO,EAAE,CAAC;gBACV,OAAO,EAAE,CAAC;YACZ,CAAC,EAAE,OAAO,CAAC,CAAC;YACZ,MAAM,OAAO,GAAG,GAAS,EAAE;gBACzB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;YACjD,CAAC,CAAC;YACF,MAAM,OAAO,GAAG,GAAS,EAAE;gBACzB,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAChD,CAAC,CAAC;YACF,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,KAAK,EAC/B,cAAiC,EACjC,OAAO,GAAG,KAAK,EACf,EAAE;QACF,IAAI,CAAC;YACH,OAAO,MAAM,kBAAkB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IACE,CAAC,SAAS,CAAC,kBAAkB;gBAC7B,CAAC,0BAA0B,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,EACpD,CAAC;gBACD,MAAM,KAAK,CAAC;YACd,CAAC;YACD,MAAM,gBAAgB,EAAE,CAAC;YACzB,OAAO,MAAM,kBAAkB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,uBAAuB,GAAG,KAAK,CAAC;IACpC,MAAM,UAAU,GAAG,KAAK,EACtB,cAAiC,EACjC,OAAO,GAAG,KAAK,EACf,EAAE;QACF,IAAI,uBAAuB;YAAE,cAAc,GAAG,sBAAsB,CAAC,cAAc,CAAC,CAAC;QACrF,IAAI,CAAC;YACH,OAAO,MAAM,mBAAmB,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CACzD,OAAO,CAAC,eAAe,IAAI,OAAO,CAAC,kBAAkB,EAAE,MAAM,IAAI,OAAO,CAAC,cAAc,CACxF,CAAC;YACF,IACE,CAAC,uBAAuB,IAAI,SAAS;gBACrC,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;gBACtE,8BAA8B,CAAC,KAAK,CAAC,EACrC,CAAC;gBACD,uBAAuB,GAAG,IAAI,CAAC;gBAC/B,OAAO,MAAM,mBAAmB,CAAC,sBAAsB,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;YACpF,CAAC;YACD,IAAI,SAAS,CAAC,4BAA4B,KAAK,KAAK,IAAI,mBAAmB;gBAAE,MAAM,KAAK,CAAC;YACzF,IAAI,CAAC,uBAAuB,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC;gBAAE,MAAM,KAAK,CAAC;YACnE,MAAM,aAAa,GAAG,8BAA8B,CAAC,cAAc,CAAC,CAAC;YACrE,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,MAAM,qBAAqB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,CAAC;YACD,IAAI,CAAC;gBACH,OAAO,MAAM,mBAAmB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC3D,MAAM,UAAU,CAAC;gBACnB,CAAC;gBACD,MAAM,qBAAqB,CAAC;oBAC1B,KAAK,EAAE,UAAU;oBACjB,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,aAAa,CAAC,OAAO;iBAC/B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACpE,IAAI,SAAS,CAAC,YAAY,KAAK,KAAK,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;YACvE,MAAM,KAAK,CAAC;QACd,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;IAClE,CAAC,CAAC,CAAC;IACH,IAAI,OAAO,GAAG,0BAA0B,CACtC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAClC,CAAC;IACF,IAAI,KAAK,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;IACJ,CAAC;IACD,IAAI,WAKS,CAAC;IACd,IACE,+BAA+B,CAC7B,KAAK,EACL,YAAY,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAC9C,EACD,CAAC;QACD,WAAW,GAAG,WAAW,CAAC;IAC5B,CAAC;SAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QACpB,WAAW,GAAG,gBAAgB,CAAC;IACjC,CAAC;SAAM,IAAI,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9C,WAAW,GAAG,UAAU,CAAC;IAC3B,CAAC;SAAM,IAAI,oCAAoC,CAAC,OAAO,CAAC,EAAE,CAAC;QACzD,WAAW,GAAG,YAAY,CAAC;IAC7B,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,IACE,CAAC,SAAS,CAAC,YAAY,KAAK,KAAK,IAAI,WAAW,KAAK,WAAW,CAAC;YACjE,CAAC,SAAS,CAAC,iBAAiB,KAAK,KAAK,IAAI,WAAW,KAAK,WAAW,CAAC,EACtE,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,MAAM,YAAY,GAChB,WAAW,KAAK,WAAW;YACzB,CAAC,CAAC,sBAAsB,CAAC,YAAY,CAAC;YACtC,CAAC,CAAC;gBACE,GAAG,YAAY;gBACf,QAAQ,EAAE,eAAe,CACvB,0BAA0B,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,EACzD,GAAG,SAAS,CAAC,aAAa,GAAG,mBAAmB,EAAE,CACnD;gBACD,WAAW,EAAE,CAAC;gBACd,GAAG,CAAC,CAAC,mBAAmB,IAAI,WAAW,KAAK,gBAAgB;oBAC5D,YAAY,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI;oBACrC,CAAC,CAAC,EAAE,QAAQ,EAAE,mBAAmB,EAAE;oBACnC,CAAC,CAAC,EAAE,CAAC;aACR,CAAC;QACR,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,QAAQ,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACnD,OAAO,GAAG,0BAA0B,CAClC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAClC,CAAC;QACF,IAAI,KAAK,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,+FAA+F,CAChG,CAAC;QACJ,CAAC;QACD,IACE,+BAA+B,CAC7B,KAAK,EACL,YAAY,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAC9C,EACD,CAAC;YACD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;YAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CACb,yFAAyF,CAC1F,CAAC;YACJ,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,yBAAyB,CAAC,OAAO,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAC;QACJ,CAAC;QACD,IAAI,oCAAoC,CAAC,OAAO,CAAC,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -4,17 +4,15 @@ import type { SessionPolicy } from "./session-policy.js";
4
4
  export { restoreInteractiveStdin };
5
5
  export interface ConfirmPort {
6
6
  confirmTool(call: ToolCall): Promise<boolean>;
7
- confirmPentest(): Promise<boolean>;
7
+ confirmPentest(call?: ToolCall): Promise<boolean>;
8
8
  confirmAgentSwitch?(info: {
9
9
  reason: string;
10
10
  tools: string[];
11
11
  }): Promise<boolean>;
12
12
  }
13
13
  export declare const stdioConfirmPort: ConfirmPort;
14
- export declare function stdioSecretRequester(request: {
15
- title: string;
16
- prompt: string;
17
- }): Promise<string | undefined>;
14
+ declare const requestStdioSecret: (request: import("../app/ports/secret-port.js").SecretRequest) => Promise<string | undefined>;
15
+ export declare function stdioSecretRequester(request: Parameters<typeof requestStdioSecret>[0]): Promise<string | undefined>;
18
16
  export declare function ensurePentestAuthorization(call: ToolCall, autoConfirm: boolean, session: SessionPolicy, confirmPort: ConfirmPort): Promise<boolean>;
19
17
  export declare function confirmToolExecution(call: ToolCall, autoConfirm: boolean, session: SessionPolicy, confirmPort: ConfirmPort, options?: {
20
18
  forceConfirm?: boolean | undefined;
@@ -1,5 +1,7 @@
1
1
  import { getConfig } from "../store/config.js";
2
2
  import { isPentestToolCall } from "../safety/classifier.js";
3
+ import { filesystemPermission } from "../safety/filesystem-permissions.js";
4
+ import { DEFAULT_PERMISSION_MODE } from "../safety/permission-mode.js";
3
5
  import { createStdioConfirmPort, createStdioSecretPort, } from "../noninteractive/stdio-confirm-port.js";
4
6
  import { restoreInteractiveStdin } from "../noninteractive/readline-prompts.js";
5
7
  export { restoreInteractiveStdin };
@@ -12,7 +14,8 @@ export async function ensurePentestAuthorization(call, autoConfirm, session, con
12
14
  if (!isPentestToolCall(call))
13
15
  return true;
14
16
  const config = getConfig();
15
- if (config.permissions === "allow-all")
17
+ const mode = config.permissions ?? DEFAULT_PERMISSION_MODE;
18
+ if (mode === "allow-all" || mode === "full-access")
16
19
  return true;
17
20
  if (config.pentestAuthorized)
18
21
  return true;
@@ -22,18 +25,21 @@ export async function ensurePentestAuthorization(call, autoConfirm, session, con
22
25
  session.pentestAuthorized.value = true;
23
26
  return true;
24
27
  }
25
- const ok = await confirmPort.confirmPentest();
28
+ const ok = await confirmPort.confirmPentest(call);
26
29
  if (!ok)
27
30
  return false;
28
31
  session.pentestAuthorized.value = true;
29
32
  return true;
30
33
  }
31
34
  export async function confirmToolExecution(call, autoConfirm, session, confirmPort, options) {
32
- if (call.name === "fs.delete") {
33
- return confirmPort.confirmTool(call);
34
- }
35
35
  const config = getConfig();
36
- if (config.permissions === "allow-all")
36
+ const mode = config.permissions ?? DEFAULT_PERMISSION_MODE;
37
+ if (mode === "full-access")
38
+ return true;
39
+ const filesystem = filesystemPermission(call, mode);
40
+ if (filesystem === "confirm")
41
+ return confirmPort.confirmTool(call);
42
+ if (filesystem === "allow" || mode === "allow-all")
37
43
  return true;
38
44
  if (options?.forceConfirm)
39
45
  return confirmPort.confirmTool(call);
@@ -1 +1 @@
1
- {"version":3,"file":"confirm-port.js","sourceRoot":"","sources":["../../src/agent/confirm-port.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAIhF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAWnC,MAAM,CAAC,MAAM,gBAAgB,GAAgB,sBAAsB,EAAE,CAAC;AAEtE,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAG1C;IACC,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAc,EACd,WAAoB,EACpB,OAAsB,EACtB,WAAwB;IAExB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,MAAM,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,OAAO,CAAC,iBAAiB,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAEjD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,cAAc,EAAE,CAAC;IAC9C,IAAI,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACtB,OAAO,CAAC,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC;IACvC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAc,EACd,WAAoB,EACpB,OAAsB,EACtB,WAAwB,EACxB,OAAgD;IAEhD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC9B,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IACD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IACpD,IAAI,OAAO,EAAE,YAAY;QAAE,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,WAAW;QAAE,OAAO,IAAI,CAAC;IAC7B,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7D,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"confirm-port.js","sourceRoot":"","sources":["../../src/agent/confirm-port.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAIhF,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAWnC,MAAM,CAAC,MAAM,gBAAgB,GAAgB,sBAAsB,EAAE,CAAC;AAEtE,MAAM,kBAAkB,GAAG,qBAAqB,EAAE,CAAC;AAEnD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAAiD;IAC1F,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,IAAc,EACd,WAAoB,EACpB,OAAsB,EACtB,WAAwB;IAExB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,uBAAuB,CAAC;IAC3D,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,aAAa;QAAE,OAAO,IAAI,CAAC;IAChE,IAAI,MAAM,CAAC,iBAAiB;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,OAAO,CAAC,iBAAiB,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAEjD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IACtB,OAAO,CAAC,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC;IACvC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAc,EACd,WAAoB,EACpB,OAAsB,EACtB,WAAwB,EACxB,OAAgD;IAEhD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,IAAI,uBAAuB,CAAC;IAC3D,IAAI,IAAI,KAAK,aAAa;QAAE,OAAO,IAAI,CAAC;IACxC,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpD,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACnE,IAAI,UAAU,KAAK,OAAO,IAAI,IAAI,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAChE,IAAI,OAAO,EAAE,YAAY;QAAE,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,WAAW;QAAE,OAAO,IAAI,CAAC;IAC7B,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAE7D,OAAO,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;AACvC,CAAC"}
@@ -3,6 +3,7 @@ import { redactSecrets } from "../../llm/provider.js";
3
3
  import { hasReasoningMarker } from "../../llm/reasoning-marker.js";
4
4
  import { ACTIVE_SKILLS_PREFIX } from "../../skills/catalog.js";
5
5
  import { compactionSourcePrefixEnd } from "./compaction-source-prefix.js";
6
+ import { latestUserMessage } from "./latest-user-message.js";
6
7
  import { stripThinking } from "../../ui/thinking.js";
7
8
  import { buildCompactionChunkPrompt, buildCompactionReducePrompt, buildCompactionUserPrompt, buildDirectCompactionPrompt, chunkTranscriptForCompaction, COMPACTION_CHUNK_CHAR_BUDGET, COMPACTION_MAP_MAX_COMPLETION_TOKENS, COMPACTION_MAX_COMPLETION_TOKENS, COMPACTION_SYSTEM_PROMPT, looksLikeIncompleteCompactionSummary, looksLikeTranscriptReplay, normalizeCompactionSummary, } from "../compaction-summary.js";
8
9
  import { DURABLE_ENVELOPE_PREFIX, isDurableEnvelopeContent } from "../durable-envelope.js";
@@ -317,7 +318,11 @@ export async function compactMessagesWithSummary(messages, summarize, options =
317
318
  throw new Error("compaction failed: model returned an incomplete summary — retry /compact or switch model");
318
319
  }
319
320
  const head = preserveSystemHead ? [messages[0]] : [];
321
+ const protectedUser = latestUserMessage(messages);
320
322
  let rawTail = [...retainedMiddle, ...messages.slice(tailStart)];
323
+ if (protectedUser && !rawTail.includes(protectedUser)) {
324
+ rawTail.unshift(protectedUser);
325
+ }
321
326
  if (options.durableEnvelope?.trim()) {
322
327
  rawTail = rawTail.filter((message) => !(message.role === "system" && isDurableEnvelopeContent(message.content)));
323
328
  }
@@ -341,12 +346,12 @@ export async function compactMessagesWithSummary(messages, summarize, options =
341
346
  const envelopeMsg = options.durableEnvelope?.trim()
342
347
  ? { role: "system", content: options.durableEnvelope.trim() }
343
348
  : undefined;
344
- let compacted = buildLeanCompact(compactHead, memoryMsg, rawTail, TAIL_SOFT_TIERS[0], envelopeMsg);
349
+ let compacted = buildLeanCompact(compactHead, memoryMsg, rawTail, TAIL_SOFT_TIERS[0], envelopeMsg, protectedUser);
345
350
  for (let i = 1; i < TAIL_SOFT_TIERS.length; i += 1) {
346
351
  if (estimateMessagesTokens(compacted) <= POST_COMPACT_SOFT_UPPER_BAND_TOKENS) {
347
352
  break;
348
353
  }
349
- compacted = buildLeanCompact(compactHead, memoryMsg, rawTail, TAIL_SOFT_TIERS[i], envelopeMsg);
354
+ compacted = buildLeanCompact(compactHead, memoryMsg, rawTail, TAIL_SOFT_TIERS[i], envelopeMsg, protectedUser);
350
355
  }
351
356
  collapseOversizedToolHistory(compacted);
352
357
  if (hasOrphanToolMessages(compacted)) {
@@ -363,12 +368,12 @@ export async function compactMessagesWithSummary(messages, summarize, options =
363
368
  strategy,
364
369
  };
365
370
  }
366
- function buildLeanCompact(head, memoryMsg, rawTail, preferMax, envelopeMsg) {
371
+ function buildLeanCompact(head, memoryMsg, rawTail, preferMax, envelopeMsg, protectedUser) {
367
372
  return [
368
373
  ...head,
369
374
  memoryMsg,
370
375
  ...(envelopeMsg ? [envelopeMsg] : []),
371
- ...leanTailMessages(rawTail, preferMax),
376
+ ...leanTailMessages(rawTail, preferMax, protectedUser),
372
377
  ];
373
378
  }
374
379
  function isReinjectedSystem(content) {
@@ -395,7 +400,7 @@ function preferTrimContent(text, preferMax) {
395
400
  return text.slice(0, preferMax);
396
401
  return `${text.slice(0, half)}\n…(trimmed oversized dump in compact tail; full may be on disk)…\n${text.slice(-half)}`;
397
402
  }
398
- function leanTailMessages(tail, preferMax) {
403
+ function leanTailMessages(tail, preferMax, protectedUser) {
399
404
  return tail
400
405
  .filter((msg) => {
401
406
  if (msg.role === "system" && isStaleDurableSystem(msg.content)) {
@@ -406,6 +411,8 @@ function leanTailMessages(tail, preferMax) {
406
411
  return true;
407
412
  })
408
413
  .map((msg) => {
414
+ if (msg === protectedUser)
415
+ return msg;
409
416
  if (msg.role === "tool") {
410
417
  return { ...msg, content: preferTrimContent(msg.content, preferMax.tool) };
411
418
  }
@@ -1 +1 @@
1
- {"version":3,"file":"compact-with-summary.js","sourceRoot":"","sources":["../../../src/agent/context/compact-with-summary.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compact-with-summary.js","sourceRoot":"","sources":["../../../src/agent/context/compact-with-summary.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { type ChatMessage } from "../../types.js";
2
+ export declare function latestUserMessage(messages: readonly ChatMessage[]): ChatMessage | undefined;
@@ -0,0 +1,10 @@
1
+ import { isInternalChatMessage } from "../../types.js";
2
+ export function latestUserMessage(messages) {
3
+ for (let index = messages.length - 1; index >= 0; index -= 1) {
4
+ const message = messages[index];
5
+ if (message.role === "user" && !isInternalChatMessage(message))
6
+ return message;
7
+ }
8
+ return undefined;
9
+ }
10
+ //# sourceMappingURL=latest-user-message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"latest-user-message.js","sourceRoot":"","sources":["../../../src/agent/context/latest-user-message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAoB,MAAM,gBAAgB,CAAC;AAEzE,MAAM,UAAU,iBAAiB,CAC/B,QAAgC;IAEhC,KAAK,IAAI,KAAK,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7D,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAE,CAAC;QACjC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;IACjF,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}