@qduc/term2 0.11.1 → 0.12.0

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 (1258) hide show
  1. package/README.md +6 -4
  2. package/dist/agent.d.ts +21 -24
  3. package/dist/agent.d.ts.map +1 -1
  4. package/dist/agent.js +73 -21
  5. package/dist/agent.js.map +1 -1
  6. package/dist/app.d.ts +3 -1
  7. package/dist/app.d.ts.map +1 -1
  8. package/dist/app.js +283 -128
  9. package/dist/app.js.map +1 -1
  10. package/dist/cli.js +91 -27
  11. package/dist/cli.js.map +1 -1
  12. package/dist/commands/auto-approve-command.js.map +1 -1
  13. package/dist/commands/mode-commands.js.map +1 -1
  14. package/dist/commands/retry-tool-command.d.ts +13 -0
  15. package/dist/commands/retry-tool-command.d.ts.map +1 -0
  16. package/dist/commands/retry-tool-command.js +20 -0
  17. package/dist/commands/retry-tool-command.js.map +1 -0
  18. package/dist/commands/rewind-command.d.ts +37 -0
  19. package/dist/commands/rewind-command.d.ts.map +1 -0
  20. package/dist/commands/rewind-command.js +97 -0
  21. package/dist/commands/rewind-command.js.map +1 -0
  22. package/dist/commands/sandbox-command.js.map +1 -1
  23. package/dist/components/InputBox.d.ts +18 -32
  24. package/dist/components/InputBox.d.ts.map +1 -1
  25. package/dist/components/InputBox.js +178 -579
  26. package/dist/components/InputBox.js.map +1 -1
  27. package/dist/components/input/ApplicationInputSurface.d.ts +37 -0
  28. package/dist/components/input/ApplicationInputSurface.d.ts.map +1 -0
  29. package/dist/components/input/ApplicationInputSurface.js +78 -0
  30. package/dist/components/input/ApplicationInputSurface.js.map +1 -0
  31. package/dist/components/input/MenuStackHost.d.ts +12 -0
  32. package/dist/components/input/MenuStackHost.d.ts.map +1 -0
  33. package/dist/components/input/MenuStackHost.js +13 -0
  34. package/dist/components/input/MenuStackHost.js.map +1 -0
  35. package/dist/components/input/MenuSurface.d.ts +13 -0
  36. package/dist/components/input/MenuSurface.d.ts.map +1 -0
  37. package/dist/components/input/MenuSurface.js +86 -0
  38. package/dist/components/input/MenuSurface.js.map +1 -0
  39. package/dist/components/input/ModelMenuSession.d.ts +19 -0
  40. package/dist/components/input/ModelMenuSession.d.ts.map +1 -0
  41. package/dist/components/input/ModelMenuSession.js +144 -0
  42. package/dist/components/input/ModelMenuSession.js.map +1 -0
  43. package/dist/components/input/PathMenuSession.d.ts +16 -0
  44. package/dist/components/input/PathMenuSession.d.ts.map +1 -0
  45. package/dist/components/input/PathMenuSession.js +68 -0
  46. package/dist/components/input/PathMenuSession.js.map +1 -0
  47. package/dist/components/input/PendingQueueList.d.ts +20 -0
  48. package/dist/components/input/PendingQueueList.d.ts.map +1 -0
  49. package/dist/components/input/PendingQueueList.js +26 -0
  50. package/dist/components/input/PendingQueueList.js.map +1 -0
  51. package/dist/components/input/ProviderMenuSession.d.ts +16 -0
  52. package/dist/components/input/ProviderMenuSession.d.ts.map +1 -0
  53. package/dist/components/input/ProviderMenuSession.js +93 -0
  54. package/dist/components/input/ProviderMenuSession.js.map +1 -0
  55. package/dist/components/input/RewindMenuSession.d.ts +14 -0
  56. package/dist/components/input/RewindMenuSession.d.ts.map +1 -0
  57. package/dist/components/input/RewindMenuSession.js +77 -0
  58. package/dist/components/input/RewindMenuSession.js.map +1 -0
  59. package/dist/components/input/SettingsMenuSession.d.ts +17 -0
  60. package/dist/components/input/SettingsMenuSession.d.ts.map +1 -0
  61. package/dist/components/input/SettingsMenuSession.js +136 -0
  62. package/dist/components/input/SettingsMenuSession.js.map +1 -0
  63. package/dist/components/input/SettingsValueMenuSession.d.ts +19 -0
  64. package/dist/components/input/SettingsValueMenuSession.d.ts.map +1 -0
  65. package/dist/components/input/SettingsValueMenuSession.js +113 -0
  66. package/dist/components/input/SettingsValueMenuSession.js.map +1 -0
  67. package/dist/components/input/SkillsMenuSession.d.ts +16 -0
  68. package/dist/components/input/SkillsMenuSession.d.ts.map +1 -0
  69. package/dist/components/input/SkillsMenuSession.js +64 -0
  70. package/dist/components/input/SkillsMenuSession.js.map +1 -0
  71. package/dist/components/input/SlashMenuSession.d.ts +17 -0
  72. package/dist/components/input/SlashMenuSession.d.ts.map +1 -0
  73. package/dist/components/input/SlashMenuSession.js +57 -0
  74. package/dist/components/input/SlashMenuSession.js.map +1 -0
  75. package/dist/components/input/determine-active-menu.d.ts +2 -0
  76. package/dist/components/input/determine-active-menu.d.ts.map +1 -1
  77. package/dist/components/input/determine-active-menu.js +12 -4
  78. package/dist/components/input/determine-active-menu.js.map +1 -1
  79. package/dist/components/input/insertions.d.ts +0 -13
  80. package/dist/components/input/insertions.d.ts.map +1 -1
  81. package/dist/components/input/insertions.js +0 -26
  82. package/dist/components/input/insertions.js.map +1 -1
  83. package/dist/components/input/menu-controller.d.ts +52 -0
  84. package/dist/components/input/menu-controller.d.ts.map +1 -0
  85. package/dist/components/input/menu-controller.js +690 -0
  86. package/dist/components/input/menu-controller.js.map +1 -0
  87. package/dist/components/input/menu-editor.d.ts +9 -0
  88. package/dist/components/input/menu-editor.d.ts.map +1 -0
  89. package/dist/components/input/menu-editor.js +45 -0
  90. package/dist/components/input/menu-editor.js.map +1 -0
  91. package/dist/components/input/menu-registry.d.ts +20 -0
  92. package/dist/components/input/menu-registry.d.ts.map +1 -0
  93. package/dist/components/input/menu-registry.js +25 -0
  94. package/dist/components/input/menu-registry.js.map +1 -0
  95. package/dist/components/input/menu-types.d.ts +320 -0
  96. package/dist/components/input/menu-types.d.ts.map +1 -0
  97. package/dist/components/input/menu-types.js +2 -0
  98. package/dist/components/input/menu-types.js.map +1 -0
  99. package/dist/components/input/settings-intent-host.d.ts +22 -0
  100. package/dist/components/input/settings-intent-host.d.ts.map +1 -0
  101. package/dist/components/input/settings-intent-host.js +69 -0
  102. package/dist/components/input/settings-intent-host.js.map +1 -0
  103. package/dist/components/input/triggers.d.ts +3 -0
  104. package/dist/components/input/triggers.d.ts.map +1 -1
  105. package/dist/components/input/triggers.js +258 -0
  106. package/dist/components/input/triggers.js.map +1 -1
  107. package/dist/components/layout/BackgroundTaskManager.d.ts +16 -0
  108. package/dist/components/layout/BackgroundTaskManager.d.ts.map +1 -0
  109. package/dist/components/layout/BackgroundTaskManager.js +236 -0
  110. package/dist/components/layout/BackgroundTaskManager.js.map +1 -0
  111. package/dist/components/layout/BackgroundTasksPanel.d.ts +2 -2
  112. package/dist/components/layout/BackgroundTasksPanel.d.ts.map +1 -1
  113. package/dist/components/layout/BackgroundTasksPanel.js +54 -33
  114. package/dist/components/layout/BackgroundTasksPanel.js.map +1 -1
  115. package/dist/components/layout/Banner.js.map +1 -1
  116. package/dist/components/layout/BottomArea.d.ts +23 -19
  117. package/dist/components/layout/BottomArea.d.ts.map +1 -1
  118. package/dist/components/layout/BottomArea.js +74 -48
  119. package/dist/components/layout/BottomArea.js.map +1 -1
  120. package/dist/components/layout/StatusBar.d.ts +3 -1
  121. package/dist/components/layout/StatusBar.d.ts.map +1 -1
  122. package/dist/components/layout/StatusBar.js +102 -83
  123. package/dist/components/layout/StatusBar.js.map +1 -1
  124. package/dist/components/menu/ModelSelectionMenu.js.map +1 -1
  125. package/dist/components/menu/RewindMenu.d.ts +18 -0
  126. package/dist/components/menu/RewindMenu.d.ts.map +1 -0
  127. package/dist/components/menu/RewindMenu.js +59 -0
  128. package/dist/components/menu/RewindMenu.js.map +1 -0
  129. package/dist/components/message/ChatMessage.d.ts +2 -1
  130. package/dist/components/message/ChatMessage.d.ts.map +1 -1
  131. package/dist/components/message/ChatMessage.js +1 -1
  132. package/dist/components/message/ChatMessage.js.map +1 -1
  133. package/dist/components/message/CommandMessage.d.ts.map +1 -1
  134. package/dist/components/message/CommandMessage.js +138 -17
  135. package/dist/components/message/CommandMessage.js.map +1 -1
  136. package/dist/components/message/MemoryRenderer.d.ts.map +1 -1
  137. package/dist/components/message/MemoryRenderer.js +16 -10
  138. package/dist/components/message/MemoryRenderer.js.map +1 -1
  139. package/dist/components/message/MessageList.d.ts +20 -3
  140. package/dist/components/message/MessageList.d.ts.map +1 -1
  141. package/dist/components/message/MessageList.js +1 -1
  142. package/dist/components/message/MessageList.js.map +1 -1
  143. package/dist/components/message/SubagentActivityMessage.d.ts +5 -1
  144. package/dist/components/message/SubagentActivityMessage.d.ts.map +1 -1
  145. package/dist/components/message/SubagentActivityMessage.js +12 -4
  146. package/dist/components/message/SubagentActivityMessage.js.map +1 -1
  147. package/dist/components/message/command-message-helpers.d.ts +37 -0
  148. package/dist/components/message/command-message-helpers.d.ts.map +1 -1
  149. package/dist/components/message/command-message-helpers.js +49 -8
  150. package/dist/components/message/command-message-helpers.js.map +1 -1
  151. package/dist/components/prompt/ApprovalPrompt.d.ts +1 -0
  152. package/dist/components/prompt/ApprovalPrompt.d.ts.map +1 -1
  153. package/dist/components/prompt/ApprovalPrompt.js +136 -59
  154. package/dist/components/prompt/ApprovalPrompt.js.map +1 -1
  155. package/dist/context/InputContext.d.ts +15 -8
  156. package/dist/context/InputContext.d.ts.map +1 -1
  157. package/dist/context/InputContext.js +92 -15
  158. package/dist/context/InputContext.js.map +1 -1
  159. package/dist/contracts/application-stream.d.ts +38 -0
  160. package/dist/contracts/application-stream.d.ts.map +1 -0
  161. package/dist/contracts/application-stream.js +2 -0
  162. package/dist/contracts/application-stream.js.map +1 -0
  163. package/dist/contracts/continuation-handle.d.ts +18 -0
  164. package/dist/contracts/continuation-handle.d.ts.map +1 -0
  165. package/dist/contracts/continuation-handle.js +22 -0
  166. package/dist/contracts/continuation-handle.js.map +1 -0
  167. package/dist/contracts/conversation-items.d.ts +47 -0
  168. package/dist/contracts/conversation-items.d.ts.map +1 -0
  169. package/dist/contracts/conversation-items.js +2 -0
  170. package/dist/contracts/conversation-items.js.map +1 -0
  171. package/dist/contracts/conversation.d.ts +44 -4
  172. package/dist/contracts/conversation.d.ts.map +1 -1
  173. package/dist/contracts/conversation.js +9 -0
  174. package/dist/contracts/conversation.js.map +1 -1
  175. package/dist/contracts/model-errors.d.ts +10 -0
  176. package/dist/contracts/model-errors.d.ts.map +1 -0
  177. package/dist/contracts/model-errors.js +15 -0
  178. package/dist/contracts/model-errors.js.map +1 -0
  179. package/dist/contracts/model-types.d.ts +16 -0
  180. package/dist/contracts/model-types.d.ts.map +1 -0
  181. package/dist/contracts/model-types.js +2 -0
  182. package/dist/contracts/model-types.js.map +1 -0
  183. package/dist/contracts/patch.d.ts +17 -0
  184. package/dist/contracts/patch.d.ts.map +1 -0
  185. package/dist/contracts/patch.js +2 -0
  186. package/dist/contracts/patch.js.map +1 -0
  187. package/dist/contracts/provider-input.d.ts +34 -0
  188. package/dist/contracts/provider-input.d.ts.map +1 -0
  189. package/dist/contracts/provider-input.js +2 -0
  190. package/dist/contracts/provider-input.js.map +1 -0
  191. package/dist/contracts/streamed-model-turn.d.ts +230 -0
  192. package/dist/contracts/streamed-model-turn.d.ts.map +1 -0
  193. package/dist/contracts/streamed-model-turn.js +2 -0
  194. package/dist/contracts/streamed-model-turn.js.map +1 -0
  195. package/dist/env-setup.js +1 -1
  196. package/dist/hooks/conversation-ui-reducer.d.ts +22 -4
  197. package/dist/hooks/conversation-ui-reducer.d.ts.map +1 -1
  198. package/dist/hooks/conversation-ui-reducer.js +43 -4
  199. package/dist/hooks/conversation-ui-reducer.js.map +1 -1
  200. package/dist/hooks/handoff-flow-reducer.d.ts +1 -36
  201. package/dist/hooks/handoff-flow-reducer.d.ts.map +1 -1
  202. package/dist/hooks/handoff-flow-reducer.js +3 -57
  203. package/dist/hooks/handoff-flow-reducer.js.map +1 -1
  204. package/dist/hooks/settings-completion-config.d.ts +1 -0
  205. package/dist/hooks/settings-completion-config.d.ts.map +1 -1
  206. package/dist/hooks/settings-completion-config.js +30 -6
  207. package/dist/hooks/settings-completion-config.js.map +1 -1
  208. package/dist/hooks/use-app-commands.d.ts +13 -11
  209. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  210. package/dist/hooks/use-app-commands.js +90 -63
  211. package/dist/hooks/use-app-commands.js.map +1 -1
  212. package/dist/hooks/use-app-keyboard-shortcuts.d.ts +18 -1
  213. package/dist/hooks/use-app-keyboard-shortcuts.d.ts.map +1 -1
  214. package/dist/hooks/use-app-keyboard-shortcuts.js +77 -8
  215. package/dist/hooks/use-app-keyboard-shortcuts.js.map +1 -1
  216. package/dist/hooks/use-conversation.d.ts +30 -13
  217. package/dist/hooks/use-conversation.d.ts.map +1 -1
  218. package/dist/hooks/use-conversation.js +84 -18
  219. package/dist/hooks/use-conversation.js.map +1 -1
  220. package/dist/hooks/use-escape-key.d.ts +4 -32
  221. package/dist/hooks/use-escape-key.d.ts.map +1 -1
  222. package/dist/hooks/use-escape-key.js +27 -68
  223. package/dist/hooks/use-escape-key.js.map +1 -1
  224. package/dist/hooks/use-handoff-flow.d.ts +6 -6
  225. package/dist/hooks/use-handoff-flow.d.ts.map +1 -1
  226. package/dist/hooks/use-handoff-flow.js +110 -118
  227. package/dist/hooks/use-handoff-flow.js.map +1 -1
  228. package/dist/hooks/use-model-selection.d.ts.map +1 -1
  229. package/dist/hooks/use-model-selection.js +50 -59
  230. package/dist/hooks/use-model-selection.js.map +1 -1
  231. package/dist/hooks/use-path-completion.d.ts.map +1 -1
  232. package/dist/hooks/use-path-completion.js +20 -11
  233. package/dist/hooks/use-path-completion.js.map +1 -1
  234. package/dist/hooks/use-provider-selection.d.ts.map +1 -1
  235. package/dist/hooks/use-provider-selection.js +19 -16
  236. package/dist/hooks/use-provider-selection.js.map +1 -1
  237. package/dist/hooks/use-rewind-selection.d.ts +30 -0
  238. package/dist/hooks/use-rewind-selection.d.ts.map +1 -0
  239. package/dist/hooks/{use-undo-selection.js → use-rewind-selection.js} +37 -28
  240. package/dist/hooks/use-rewind-selection.js.map +1 -0
  241. package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
  242. package/dist/hooks/use-runtime-settings.js +4 -3
  243. package/dist/hooks/use-runtime-settings.js.map +1 -1
  244. package/dist/hooks/use-selection.d.ts +1 -0
  245. package/dist/hooks/use-selection.d.ts.map +1 -1
  246. package/dist/hooks/use-selection.js +1 -1
  247. package/dist/hooks/use-selection.js.map +1 -1
  248. package/dist/hooks/use-setting.d.ts +3 -2
  249. package/dist/hooks/use-setting.d.ts.map +1 -1
  250. package/dist/hooks/use-setting.js +1 -1
  251. package/dist/hooks/use-setting.js.map +1 -1
  252. package/dist/hooks/use-settings-completion.d.ts +1 -0
  253. package/dist/hooks/use-settings-completion.d.ts.map +1 -1
  254. package/dist/hooks/use-settings-completion.js +22 -15
  255. package/dist/hooks/use-settings-completion.js.map +1 -1
  256. package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
  257. package/dist/hooks/use-settings-value-completion.js +40 -28
  258. package/dist/hooks/use-settings-value-completion.js.map +1 -1
  259. package/dist/hooks/use-shell-mode.d.ts +3 -13
  260. package/dist/hooks/use-shell-mode.d.ts.map +1 -1
  261. package/dist/hooks/use-shell-mode.js +14 -53
  262. package/dist/hooks/use-shell-mode.js.map +1 -1
  263. package/dist/hooks/use-skill-selection.d.ts.map +1 -1
  264. package/dist/hooks/use-skill-selection.js +17 -11
  265. package/dist/hooks/use-skill-selection.js.map +1 -1
  266. package/dist/hooks/use-slash-commands.d.ts.map +1 -1
  267. package/dist/hooks/use-slash-commands.js +11 -10
  268. package/dist/hooks/use-slash-commands.js.map +1 -1
  269. package/dist/hooks/use-terminal-focus-notifier.js.map +1 -1
  270. package/dist/lib/agent-chat-service.d.ts +12 -8
  271. package/dist/lib/agent-chat-service.d.ts.map +1 -1
  272. package/dist/lib/agent-chat-service.js +79 -44
  273. package/dist/lib/agent-chat-service.js.map +1 -1
  274. package/dist/lib/agent-client.d.ts +93 -17
  275. package/dist/lib/agent-client.d.ts.map +1 -1
  276. package/dist/lib/agent-client.js +398 -37
  277. package/dist/lib/agent-client.js.map +1 -1
  278. package/dist/lib/agent-configuration.d.ts +33 -15
  279. package/dist/lib/agent-configuration.d.ts.map +1 -1
  280. package/dist/lib/agent-configuration.js +104 -9
  281. package/dist/lib/agent-configuration.js.map +1 -1
  282. package/dist/lib/agent-factory.d.ts +22 -4
  283. package/dist/lib/agent-factory.d.ts.map +1 -1
  284. package/dist/lib/agent-factory.js +137 -101
  285. package/dist/lib/agent-factory.js.map +1 -1
  286. package/dist/lib/chained-input-filter.d.ts +7 -1
  287. package/dist/lib/chained-input-filter.d.ts.map +1 -1
  288. package/dist/lib/chained-input-filter.js +46 -62
  289. package/dist/lib/chained-input-filter.js.map +1 -1
  290. package/dist/lib/continuation-projection-mode.d.ts +3 -0
  291. package/dist/lib/continuation-projection-mode.d.ts.map +1 -0
  292. package/dist/lib/continuation-projection-mode.js +2 -0
  293. package/dist/lib/continuation-projection-mode.js.map +1 -0
  294. package/dist/lib/editor-impl.d.ts +1 -1
  295. package/dist/lib/editor-impl.d.ts.map +1 -1
  296. package/dist/lib/editor-impl.js +1 -1
  297. package/dist/lib/editor-impl.js.map +1 -1
  298. package/dist/lib/harness-invariant-error.d.ts +22 -0
  299. package/dist/lib/harness-invariant-error.d.ts.map +1 -0
  300. package/dist/lib/harness-invariant-error.js +30 -0
  301. package/dist/lib/harness-invariant-error.js.map +1 -0
  302. package/dist/lib/input-owner.d.ts +64 -0
  303. package/dist/lib/input-owner.d.ts.map +1 -0
  304. package/dist/lib/input-owner.js +34 -0
  305. package/dist/lib/input-owner.js.map +1 -0
  306. package/dist/lib/openai-strict-tool-schema.d.ts +7 -4
  307. package/dist/lib/openai-strict-tool-schema.d.ts.map +1 -1
  308. package/dist/lib/openai-strict-tool-schema.js +8 -0
  309. package/dist/lib/openai-strict-tool-schema.js.map +1 -1
  310. package/dist/lib/subagent-bridge.d.ts +36 -4
  311. package/dist/lib/subagent-bridge.d.ts.map +1 -1
  312. package/dist/lib/subagent-bridge.js +92 -20
  313. package/dist/lib/subagent-bridge.js.map +1 -1
  314. package/dist/lib/tool-invoke.d.ts +18 -10
  315. package/dist/lib/tool-invoke.d.ts.map +1 -1
  316. package/dist/lib/tool-invoke.js +92 -44
  317. package/dist/lib/tool-invoke.js.map +1 -1
  318. package/dist/non-interactive.d.ts +14 -4
  319. package/dist/non-interactive.d.ts.map +1 -1
  320. package/dist/non-interactive.js +91 -84
  321. package/dist/non-interactive.js.map +1 -1
  322. package/dist/prompts/async-subagent-delegation.d.ts +1 -4
  323. package/dist/prompts/async-subagent-delegation.d.ts.map +1 -1
  324. package/dist/prompts/async-subagent-delegation.js +9 -47
  325. package/dist/prompts/async-subagent-delegation.js.map +1 -1
  326. package/dist/prompts/async-subagent-delegation.ts +9 -58
  327. package/dist/prompts/memory.md +1 -1
  328. package/dist/prompts/orchestrator-prompt.test.ts +15 -0
  329. package/dist/prompts/orchestrator.md +7 -5
  330. package/dist/prompts/plan-mode-info.md +1 -1
  331. package/dist/prompts/prompt-constructor.d.ts +1 -0
  332. package/dist/prompts/prompt-constructor.d.ts.map +1 -1
  333. package/dist/prompts/prompt-constructor.js +5 -7
  334. package/dist/prompts/prompt-constructor.js.map +1 -1
  335. package/dist/prompts/prompt-constructor.test.ts +9 -8
  336. package/dist/prompts/prompt-constructor.ts +6 -7
  337. package/dist/prompts/shell-auto-approval.d.ts +2 -2
  338. package/dist/prompts/shell-auto-approval.d.ts.map +1 -1
  339. package/dist/prompts/shell-auto-approval.js +20 -5
  340. package/dist/prompts/shell-auto-approval.js.map +1 -1
  341. package/dist/prompts/shell-auto-approval.ts +20 -5
  342. package/dist/prompts/steering-notice.d.ts +16 -0
  343. package/dist/prompts/steering-notice.d.ts.map +1 -0
  344. package/dist/prompts/steering-notice.js +24 -0
  345. package/dist/prompts/steering-notice.js.map +1 -0
  346. package/dist/prompts/steering-notice.ts +24 -0
  347. package/dist/prompts/subagent-delegation.d.ts +6 -5
  348. package/dist/prompts/subagent-delegation.d.ts.map +1 -1
  349. package/dist/prompts/subagent-delegation.js +36 -13
  350. package/dist/prompts/subagent-delegation.js.map +1 -1
  351. package/dist/prompts/subagent-delegation.test.ts +9 -2
  352. package/dist/prompts/subagent-delegation.ts +54 -14
  353. package/dist/prompts/subagents/explorer.md +24 -14
  354. package/dist/prompts/subagents/worker-prompt.test.ts +2 -2
  355. package/dist/prompts/worktree-hygiene.md +1 -0
  356. package/dist/providers/ai-sdk-anthropic.provider.d.ts +3 -3
  357. package/dist/providers/ai-sdk-anthropic.provider.d.ts.map +1 -1
  358. package/dist/providers/ai-sdk-anthropic.provider.js +8 -4
  359. package/dist/providers/ai-sdk-anthropic.provider.js.map +1 -1
  360. package/dist/providers/ai-sdk-google.provider.d.ts +5 -4
  361. package/dist/providers/ai-sdk-google.provider.d.ts.map +1 -1
  362. package/dist/providers/ai-sdk-google.provider.js +23 -3
  363. package/dist/providers/ai-sdk-google.provider.js.map +1 -1
  364. package/dist/providers/ai-sdk-message-normalizer.d.ts +3 -7
  365. package/dist/providers/ai-sdk-message-normalizer.d.ts.map +1 -1
  366. package/dist/providers/ai-sdk-message-normalizer.js +27 -11
  367. package/dist/providers/ai-sdk-message-normalizer.js.map +1 -1
  368. package/dist/providers/ai-sdk-openrouter.provider.d.ts +5 -4
  369. package/dist/providers/ai-sdk-openrouter.provider.d.ts.map +1 -1
  370. package/dist/providers/ai-sdk-openrouter.provider.js +25 -3
  371. package/dist/providers/ai-sdk-openrouter.provider.js.map +1 -1
  372. package/dist/providers/ai-sdk-provider-settings.d.ts +10 -0
  373. package/dist/providers/ai-sdk-provider-settings.d.ts.map +1 -0
  374. package/dist/providers/ai-sdk-provider-settings.js +37 -0
  375. package/dist/providers/ai-sdk-provider-settings.js.map +1 -0
  376. package/dist/providers/ai-sdk-streamed-model.d.ts +5 -0
  377. package/dist/providers/ai-sdk-streamed-model.d.ts.map +1 -0
  378. package/dist/providers/ai-sdk-streamed-model.js +338 -0
  379. package/dist/providers/ai-sdk-streamed-model.js.map +1 -0
  380. package/dist/providers/codex-responses-model.d.ts +39 -12
  381. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  382. package/dist/providers/codex-responses-model.js +656 -155
  383. package/dist/providers/codex-responses-model.js.map +1 -1
  384. package/dist/providers/codex-turn-converter.d.ts +12 -0
  385. package/dist/providers/codex-turn-converter.d.ts.map +1 -0
  386. package/dist/providers/codex-turn-converter.js +168 -0
  387. package/dist/providers/codex-turn-converter.js.map +1 -0
  388. package/dist/providers/codex.provider.d.ts +21 -0
  389. package/dist/providers/codex.provider.d.ts.map +1 -1
  390. package/dist/providers/codex.provider.js +57 -27
  391. package/dist/providers/codex.provider.js.map +1 -1
  392. package/dist/providers/common/openai-compatible-message-contract.d.ts +8 -0
  393. package/dist/providers/common/openai-compatible-message-contract.d.ts.map +1 -0
  394. package/dist/providers/common/openai-compatible-message-contract.js +23 -0
  395. package/dist/providers/common/openai-compatible-message-contract.js.map +1 -0
  396. package/dist/providers/common/openai-compatible-messages.d.ts +0 -4
  397. package/dist/providers/common/openai-compatible-messages.d.ts.map +1 -1
  398. package/dist/providers/common/openai-compatible-messages.js +0 -288
  399. package/dist/providers/common/openai-compatible-messages.js.map +1 -1
  400. package/dist/providers/fetch/composer.d.ts.map +1 -1
  401. package/dist/providers/fetch/composer.js +1 -0
  402. package/dist/providers/fetch/composer.js.map +1 -1
  403. package/dist/providers/model-catalog/catalog.d.ts +31 -0
  404. package/dist/providers/model-catalog/catalog.d.ts.map +1 -0
  405. package/dist/providers/model-catalog/catalog.generated.d.ts +3010 -0
  406. package/dist/providers/model-catalog/catalog.generated.d.ts.map +1 -0
  407. package/dist/providers/model-catalog/catalog.generated.js +3004 -0
  408. package/dist/providers/model-catalog/catalog.generated.js.map +1 -0
  409. package/dist/providers/model-catalog/catalog.js +62 -0
  410. package/dist/providers/model-catalog/catalog.js.map +1 -0
  411. package/dist/providers/model-catalog/generate-catalog.d.ts +42 -0
  412. package/dist/providers/model-catalog/generate-catalog.d.ts.map +1 -0
  413. package/dist/providers/model-catalog/generate-catalog.js +96 -0
  414. package/dist/providers/model-catalog/generate-catalog.js.map +1 -0
  415. package/dist/providers/openai-chained-input-compatibility.d.ts +36 -0
  416. package/dist/providers/openai-chained-input-compatibility.d.ts.map +1 -0
  417. package/dist/providers/openai-chained-input-compatibility.js +60 -0
  418. package/dist/providers/openai-chained-input-compatibility.js.map +1 -0
  419. package/dist/providers/openai-chat-completions-model.d.ts +12 -0
  420. package/dist/providers/openai-chat-completions-model.d.ts.map +1 -0
  421. package/dist/providers/openai-chat-completions-model.js +271 -0
  422. package/dist/providers/openai-chat-completions-model.js.map +1 -0
  423. package/dist/providers/openai-compatible-lazy.d.ts +1 -1
  424. package/dist/providers/openai-compatible-lazy.d.ts.map +1 -1
  425. package/dist/providers/openai-compatible-lazy.js +24 -36
  426. package/dist/providers/openai-compatible-lazy.js.map +1 -1
  427. package/dist/providers/openai-compatible-middleware.d.ts +4 -1
  428. package/dist/providers/openai-compatible-middleware.d.ts.map +1 -1
  429. package/dist/providers/openai-compatible-middleware.js +15 -14
  430. package/dist/providers/openai-compatible-middleware.js.map +1 -1
  431. package/dist/providers/openai-compatible-response-normalizer.d.ts +10 -1
  432. package/dist/providers/openai-compatible-response-normalizer.d.ts.map +1 -1
  433. package/dist/providers/openai-compatible-response-normalizer.js +15 -4
  434. package/dist/providers/openai-compatible-response-normalizer.js.map +1 -1
  435. package/dist/providers/openai-compatible.provider.d.ts +7 -10
  436. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  437. package/dist/providers/openai-compatible.provider.js +80 -78
  438. package/dist/providers/openai-compatible.provider.js.map +1 -1
  439. package/dist/providers/openai-request-prefix-binding.d.ts +28 -0
  440. package/dist/providers/openai-request-prefix-binding.d.ts.map +1 -0
  441. package/dist/providers/openai-request-prefix-binding.js +78 -0
  442. package/dist/providers/openai-request-prefix-binding.js.map +1 -0
  443. package/dist/providers/openai-responses-model.d.ts +43 -0
  444. package/dist/providers/openai-responses-model.d.ts.map +1 -0
  445. package/dist/providers/openai-responses-model.js +564 -0
  446. package/dist/providers/openai-responses-model.js.map +1 -0
  447. package/dist/providers/openai.provider.d.ts +11 -8
  448. package/dist/providers/openai.provider.d.ts.map +1 -1
  449. package/dist/providers/openai.provider.js +43 -91
  450. package/dist/providers/openai.provider.js.map +1 -1
  451. package/dist/providers/opencode-routing.d.ts +1 -1
  452. package/dist/providers/opencode-routing.d.ts.map +1 -1
  453. package/dist/providers/opencode-routing.js +4 -2
  454. package/dist/providers/opencode-routing.js.map +1 -1
  455. package/dist/providers/opencode-session.d.ts.map +1 -1
  456. package/dist/providers/opencode-session.js +28 -3
  457. package/dist/providers/opencode-session.js.map +1 -1
  458. package/dist/providers/openrouter.provider.d.ts.map +1 -1
  459. package/dist/providers/openrouter.provider.js +33 -33
  460. package/dist/providers/openrouter.provider.js.map +1 -1
  461. package/dist/providers/provider-request-capture.d.ts +35 -0
  462. package/dist/providers/provider-request-capture.d.ts.map +1 -0
  463. package/dist/providers/provider-request-capture.js +22 -0
  464. package/dist/providers/provider-request-capture.js.map +1 -0
  465. package/dist/providers/provider-service.d.ts +9 -7
  466. package/dist/providers/provider-service.d.ts.map +1 -1
  467. package/dist/providers/provider-service.js +29 -28
  468. package/dist/providers/provider-service.js.map +1 -1
  469. package/dist/providers/registry.d.ts +14 -9
  470. package/dist/providers/registry.d.ts.map +1 -1
  471. package/dist/providers/registry.js.map +1 -1
  472. package/dist/providers/retrying-model.d.ts +8 -6
  473. package/dist/providers/retrying-model.d.ts.map +1 -1
  474. package/dist/providers/retrying-model.js +7 -20
  475. package/dist/providers/retrying-model.js.map +1 -1
  476. package/dist/providers/web-search/exa.provider.js.map +1 -1
  477. package/dist/providers/web-search/registry.js.map +1 -1
  478. package/dist/providers/web-search/tavily.provider.js.map +1 -1
  479. package/dist/providers/websocket-receive-watchdog.d.ts.map +1 -1
  480. package/dist/providers/websocket-receive-watchdog.js +9 -1
  481. package/dist/providers/websocket-receive-watchdog.js.map +1 -1
  482. package/dist/scripts/eval-auto-approval/runner.js +2 -0
  483. package/dist/scripts/eval-auto-approval/runner.js.map +1 -1
  484. package/dist/services/agent-runtime/application-run-loop.d.ts +205 -0
  485. package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -0
  486. package/dist/services/agent-runtime/application-run-loop.js +1236 -0
  487. package/dist/services/agent-runtime/application-run-loop.js.map +1 -0
  488. package/dist/services/agent-runtime/compose-agent-runtime.d.ts +3 -0
  489. package/dist/services/agent-runtime/compose-agent-runtime.d.ts.map +1 -1
  490. package/dist/services/agent-runtime/compose-agent-runtime.js +4 -0
  491. package/dist/services/agent-runtime/compose-agent-runtime.js.map +1 -1
  492. package/dist/services/agent-runtime/generation-guard.d.ts +69 -0
  493. package/dist/services/agent-runtime/generation-guard.d.ts.map +1 -0
  494. package/dist/services/agent-runtime/generation-guard.js +270 -0
  495. package/dist/services/agent-runtime/generation-guard.js.map +1 -0
  496. package/dist/services/agent-runtime/model-resolver.d.ts.map +1 -1
  497. package/dist/services/agent-runtime/model-resolver.js +7 -6
  498. package/dist/services/agent-runtime/model-resolver.js.map +1 -1
  499. package/dist/services/agent-runtime/structured-output.d.ts.map +1 -1
  500. package/dist/services/agent-runtime/structured-output.js +1 -21
  501. package/dist/services/agent-runtime/structured-output.js.map +1 -1
  502. package/dist/services/agent-runtime/tool-invocation-context.d.ts +73 -0
  503. package/dist/services/agent-runtime/tool-invocation-context.d.ts.map +1 -0
  504. package/dist/services/agent-runtime/tool-invocation-context.js +66 -0
  505. package/dist/services/agent-runtime/tool-invocation-context.js.map +1 -0
  506. package/dist/services/agent-stream.d.ts +41 -2
  507. package/dist/services/agent-stream.d.ts.map +1 -1
  508. package/dist/services/agent-stream.js +46 -1
  509. package/dist/services/agent-stream.js.map +1 -1
  510. package/dist/services/approval/approval-decision-executor.d.ts +42 -0
  511. package/dist/services/approval/approval-decision-executor.d.ts.map +1 -0
  512. package/dist/services/approval/approval-decision-executor.js +207 -0
  513. package/dist/services/approval/approval-decision-executor.js.map +1 -0
  514. package/dist/services/approval/approval-flow-coordinator.d.ts +25 -8
  515. package/dist/services/approval/approval-flow-coordinator.d.ts.map +1 -1
  516. package/dist/services/approval/approval-flow-coordinator.js +34 -167
  517. package/dist/services/approval/approval-flow-coordinator.js.map +1 -1
  518. package/dist/services/approval/approval-replay.d.ts +52 -0
  519. package/dist/services/approval/approval-replay.d.ts.map +1 -0
  520. package/dist/services/approval/approval-replay.js +68 -0
  521. package/dist/services/approval/approval-replay.js.map +1 -0
  522. package/dist/services/approval/approval-state.d.ts +3 -6
  523. package/dist/services/approval/approval-state.d.ts.map +1 -1
  524. package/dist/services/approval/approval-state.js +0 -10
  525. package/dist/services/approval/approval-state.js.map +1 -1
  526. package/dist/services/approval/background-subagent-approval-controller.d.ts +25 -0
  527. package/dist/services/approval/background-subagent-approval-controller.d.ts.map +1 -0
  528. package/dist/services/approval/background-subagent-approval-controller.js +65 -0
  529. package/dist/services/approval/background-subagent-approval-controller.js.map +1 -0
  530. package/dist/services/approval/background-subagent-approval-queue.d.ts +137 -0
  531. package/dist/services/approval/background-subagent-approval-queue.d.ts.map +1 -0
  532. package/dist/services/approval/background-subagent-approval-queue.js +200 -0
  533. package/dist/services/approval/background-subagent-approval-queue.js.map +1 -0
  534. package/dist/services/approval/non-interactive-approval-policy.d.ts +33 -0
  535. package/dist/services/approval/non-interactive-approval-policy.d.ts.map +1 -0
  536. package/dist/services/approval/non-interactive-approval-policy.js +85 -0
  537. package/dist/services/approval/non-interactive-approval-policy.js.map +1 -0
  538. package/dist/services/approval/session-read-access.d.ts +10 -0
  539. package/dist/services/approval/session-read-access.d.ts.map +1 -1
  540. package/dist/services/approval/session-read-access.js +12 -0
  541. package/dist/services/approval/session-read-access.js.map +1 -1
  542. package/dist/services/approval/session-read-grant-target.d.ts +7 -0
  543. package/dist/services/approval/session-read-grant-target.d.ts.map +1 -0
  544. package/dist/services/approval/session-read-grant-target.js +36 -0
  545. package/dist/services/approval/session-read-grant-target.js.map +1 -0
  546. package/dist/services/approval/shell-auto-approval-evaluator.d.ts +11 -3
  547. package/dist/services/approval/shell-auto-approval-evaluator.d.ts.map +1 -1
  548. package/dist/services/approval/shell-auto-approval-evaluator.js +140 -46
  549. package/dist/services/approval/shell-auto-approval-evaluator.js.map +1 -1
  550. package/dist/services/approval/shell-auto-approval-resolver.d.ts +13 -0
  551. package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
  552. package/dist/services/approval/shell-auto-approval-resolver.js +74 -6
  553. package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
  554. package/dist/services/approval/shell-sandbox-approval.d.ts +22 -1
  555. package/dist/services/approval/shell-sandbox-approval.d.ts.map +1 -1
  556. package/dist/services/approval/shell-sandbox-approval.js +31 -4
  557. package/dist/services/approval/shell-sandbox-approval.js.map +1 -1
  558. package/dist/services/approval/tool-approval-batch-coordinator.d.ts +9 -0
  559. package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -1
  560. package/dist/services/approval/tool-approval-batch-coordinator.js +20 -4
  561. package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -1
  562. package/dist/services/approval/tool-owner.d.ts +5 -2
  563. package/dist/services/approval/tool-owner.d.ts.map +1 -1
  564. package/dist/services/approval/tool-owner.js +0 -56
  565. package/dist/services/approval/tool-owner.js.map +1 -1
  566. package/dist/services/approval/tool-ownership-registry.d.ts +25 -0
  567. package/dist/services/approval/tool-ownership-registry.d.ts.map +1 -0
  568. package/dist/services/approval/tool-ownership-registry.js +63 -0
  569. package/dist/services/approval/tool-ownership-registry.js.map +1 -0
  570. package/dist/services/command-message-streaming.d.ts +8 -4
  571. package/dist/services/command-message-streaming.d.ts.map +1 -1
  572. package/dist/services/command-message-streaming.js +13 -52
  573. package/dist/services/command-message-streaming.js.map +1 -1
  574. package/dist/services/conversation/conversation-adapter-factory.d.ts.map +1 -1
  575. package/dist/services/conversation/conversation-adapter-factory.js +1 -0
  576. package/dist/services/conversation/conversation-adapter-factory.js.map +1 -1
  577. package/dist/services/conversation/conversation-adapter.d.ts +112 -13
  578. package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
  579. package/dist/services/conversation/conversation-adapter.js +270 -47
  580. package/dist/services/conversation/conversation-adapter.js.map +1 -1
  581. package/dist/services/conversation/conversation-admission-workflow.d.ts +69 -0
  582. package/dist/services/conversation/conversation-admission-workflow.d.ts.map +1 -0
  583. package/dist/services/conversation/conversation-admission-workflow.js +110 -0
  584. package/dist/services/conversation/conversation-admission-workflow.js.map +1 -0
  585. package/dist/services/conversation/conversation-decoder.d.ts +14 -0
  586. package/dist/services/conversation/conversation-decoder.d.ts.map +1 -0
  587. package/dist/services/conversation/conversation-decoder.js +149 -0
  588. package/dist/services/conversation/conversation-decoder.js.map +1 -0
  589. package/dist/services/conversation/conversation-events.d.ts +50 -26
  590. package/dist/services/conversation/conversation-events.d.ts.map +1 -1
  591. package/dist/services/conversation/conversation-history-repair.d.ts.map +1 -1
  592. package/dist/services/conversation/conversation-history-repair.js +34 -37
  593. package/dist/services/conversation/conversation-history-repair.js.map +1 -1
  594. package/dist/services/conversation/conversation-message-projection.d.ts +27 -0
  595. package/dist/services/conversation/conversation-message-projection.d.ts.map +1 -0
  596. package/dist/services/conversation/conversation-message-projection.js +59 -0
  597. package/dist/services/conversation/conversation-message-projection.js.map +1 -0
  598. package/dist/services/conversation/conversation-orchestrator.d.ts +23 -14
  599. package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
  600. package/dist/services/conversation/conversation-orchestrator.js +358 -159
  601. package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
  602. package/dist/services/conversation/conversation-orchestrator.types.d.ts +14 -11
  603. package/dist/services/conversation/conversation-orchestrator.types.d.ts.map +1 -1
  604. package/dist/services/conversation/conversation-persistence-types.d.ts +15 -38
  605. package/dist/services/conversation/conversation-persistence-types.d.ts.map +1 -1
  606. package/dist/services/conversation/conversation-persistence.d.ts +3 -10
  607. package/dist/services/conversation/conversation-persistence.d.ts.map +1 -1
  608. package/dist/services/conversation/conversation-persistence.js +66 -15
  609. package/dist/services/conversation/conversation-persistence.js.map +1 -1
  610. package/dist/services/conversation/conversation-replay.d.ts +7 -5
  611. package/dist/services/conversation/conversation-replay.d.ts.map +1 -1
  612. package/dist/services/conversation/conversation-replay.js +127 -66
  613. package/dist/services/conversation/conversation-replay.js.map +1 -1
  614. package/dist/services/conversation/conversation-result-builder.d.ts +16 -2
  615. package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -1
  616. package/dist/services/conversation/conversation-result-builder.js +51 -15
  617. package/dist/services/conversation/conversation-result-builder.js.map +1 -1
  618. package/dist/services/conversation/conversation-runtime-factory.d.ts +18 -0
  619. package/dist/services/conversation/conversation-runtime-factory.d.ts.map +1 -1
  620. package/dist/services/conversation/conversation-runtime-factory.js.map +1 -1
  621. package/dist/services/conversation/conversation-service.d.ts +65 -12
  622. package/dist/services/conversation/conversation-service.d.ts.map +1 -1
  623. package/dist/services/conversation/conversation-service.js +129 -16
  624. package/dist/services/conversation/conversation-service.js.map +1 -1
  625. package/dist/services/conversation/conversation-state-projector.d.ts +3 -3
  626. package/dist/services/conversation/conversation-state-projector.d.ts.map +1 -1
  627. package/dist/services/conversation/conversation-state-projector.js +18 -0
  628. package/dist/services/conversation/conversation-state-projector.js.map +1 -1
  629. package/dist/services/conversation/conversation-store.d.ts +69 -12
  630. package/dist/services/conversation/conversation-store.d.ts.map +1 -1
  631. package/dist/services/conversation/conversation-store.js +216 -119
  632. package/dist/services/conversation/conversation-store.js.map +1 -1
  633. package/dist/services/conversation/conversation-turn-items.d.ts +8 -2
  634. package/dist/services/conversation/conversation-turn-items.d.ts.map +1 -1
  635. package/dist/services/conversation/conversation-turn-items.js +96 -275
  636. package/dist/services/conversation/conversation-turn-items.js.map +1 -1
  637. package/dist/services/conversation/journal-to-ledger.d.ts.map +1 -1
  638. package/dist/services/conversation/journal-to-ledger.js +4 -24
  639. package/dist/services/conversation/journal-to-ledger.js.map +1 -1
  640. package/dist/services/conversation/run-item-normalizer.d.ts +5 -0
  641. package/dist/services/conversation/run-item-normalizer.d.ts.map +1 -0
  642. package/dist/services/conversation/run-item-normalizer.js +245 -0
  643. package/dist/services/conversation/run-item-normalizer.js.map +1 -0
  644. package/dist/services/conversation/user-turn-item.d.ts +14 -0
  645. package/dist/services/conversation/user-turn-item.d.ts.map +1 -0
  646. package/dist/services/conversation/user-turn-item.js +27 -0
  647. package/dist/services/conversation/user-turn-item.js.map +1 -0
  648. package/dist/services/conversation-agent-client.d.ts +77 -6
  649. package/dist/services/conversation-agent-client.d.ts.map +1 -1
  650. package/dist/services/cost/model-cost.d.ts +147 -0
  651. package/dist/services/cost/model-cost.d.ts.map +1 -0
  652. package/dist/services/cost/model-cost.js +217 -0
  653. package/dist/services/cost/model-cost.js.map +1 -0
  654. package/dist/services/cost/pricing-overlay.d.ts +26 -0
  655. package/dist/services/cost/pricing-overlay.d.ts.map +1 -0
  656. package/dist/services/cost/pricing-overlay.js +39 -0
  657. package/dist/services/cost/pricing-overlay.js.map +1 -0
  658. package/dist/services/cost/pricing.d.ts +13 -0
  659. package/dist/services/cost/pricing.d.ts.map +1 -0
  660. package/dist/services/cost/pricing.js +76 -0
  661. package/dist/services/cost/pricing.js.map +1 -0
  662. package/dist/services/handoff/handoff-flow-reducer.d.ts +27 -0
  663. package/dist/services/handoff/handoff-flow-reducer.d.ts.map +1 -0
  664. package/dist/services/handoff/handoff-flow-reducer.js +26 -0
  665. package/dist/services/handoff/handoff-flow-reducer.js.map +1 -0
  666. package/dist/services/handoff/handoff-session.d.ts +35 -0
  667. package/dist/services/handoff/handoff-session.d.ts.map +1 -0
  668. package/dist/services/handoff/handoff-session.js +136 -0
  669. package/dist/services/handoff/handoff-session.js.map +1 -0
  670. package/dist/services/hooks/hook-contracts.d.ts +124 -0
  671. package/dist/services/hooks/hook-contracts.d.ts.map +1 -0
  672. package/dist/services/hooks/hook-contracts.js +92 -0
  673. package/dist/services/hooks/hook-contracts.js.map +1 -0
  674. package/dist/services/hooks/hook-discovery.d.ts +45 -0
  675. package/dist/services/hooks/hook-discovery.d.ts.map +1 -0
  676. package/dist/services/hooks/hook-discovery.js +255 -0
  677. package/dist/services/hooks/hook-discovery.js.map +1 -0
  678. package/dist/services/hooks/hook-editor-shim.d.ts +6 -0
  679. package/dist/services/hooks/hook-editor-shim.d.ts.map +1 -0
  680. package/dist/services/hooks/hook-editor-shim.js +190 -0
  681. package/dist/services/hooks/hook-editor-shim.js.map +1 -0
  682. package/dist/services/hooks/hook-event-factory.d.ts +19 -0
  683. package/dist/services/hooks/hook-event-factory.d.ts.map +1 -0
  684. package/dist/services/hooks/hook-event-factory.js +45 -0
  685. package/dist/services/hooks/hook-event-factory.js.map +1 -0
  686. package/dist/services/hooks/hook-module-loader.d.ts +38 -0
  687. package/dist/services/hooks/hook-module-loader.d.ts.map +1 -0
  688. package/dist/services/hooks/hook-module-loader.js +69 -0
  689. package/dist/services/hooks/hook-module-loader.js.map +1 -0
  690. package/dist/services/hooks/hook-registry.d.ts +47 -0
  691. package/dist/services/hooks/hook-registry.d.ts.map +1 -0
  692. package/dist/services/hooks/hook-registry.js +185 -0
  693. package/dist/services/hooks/hook-registry.js.map +1 -0
  694. package/dist/services/hooks/hook-service.d.ts +44 -0
  695. package/dist/services/hooks/hook-service.d.ts.map +1 -0
  696. package/dist/services/hooks/hook-service.js +138 -0
  697. package/dist/services/hooks/hook-service.js.map +1 -0
  698. package/dist/services/hooks/hook-tool-lifecycle.d.ts +6 -0
  699. package/dist/services/hooks/hook-tool-lifecycle.d.ts.map +1 -0
  700. package/dist/services/hooks/hook-tool-lifecycle.js +33 -0
  701. package/dist/services/hooks/hook-tool-lifecycle.js.map +1 -0
  702. package/dist/services/hooks/index.d.ts +2 -0
  703. package/dist/services/hooks/index.d.ts.map +1 -0
  704. package/dist/services/hooks/index.js +2 -0
  705. package/dist/services/hooks/index.js.map +1 -0
  706. package/dist/services/input-surge-guard.d.ts.map +1 -1
  707. package/dist/services/input-surge-guard.js +13 -34
  708. package/dist/services/input-surge-guard.js.map +1 -1
  709. package/dist/services/logging/assistant-turn-journal.d.ts +1 -1
  710. package/dist/services/logging/assistant-turn-journal.d.ts.map +1 -1
  711. package/dist/services/logging/assistant-turn-journal.js +21 -36
  712. package/dist/services/logging/assistant-turn-journal.js.map +1 -1
  713. package/dist/services/logging/conversation-log-events.d.ts +62 -7
  714. package/dist/services/logging/conversation-log-events.d.ts.map +1 -1
  715. package/dist/services/logging/conversation-log-events.js +9 -0
  716. package/dist/services/logging/conversation-log-events.js.map +1 -1
  717. package/dist/services/logging/conversation-log-writer.d.ts +9 -4
  718. package/dist/services/logging/conversation-log-writer.d.ts.map +1 -1
  719. package/dist/services/logging/conversation-log-writer.js +183 -56
  720. package/dist/services/logging/conversation-log-writer.js.map +1 -1
  721. package/dist/services/logging/conversation-logger.d.ts.map +1 -1
  722. package/dist/services/logging/conversation-logger.js +24 -1
  723. package/dist/services/logging/conversation-logger.js.map +1 -1
  724. package/dist/services/logging/logging-service.d.ts.map +1 -1
  725. package/dist/services/logging/logging-service.js +6 -2
  726. package/dist/services/logging/logging-service.js.map +1 -1
  727. package/dist/services/logging/provider-traffic.d.ts +2 -1
  728. package/dist/services/logging/provider-traffic.d.ts.map +1 -1
  729. package/dist/services/logging/provider-traffic.js +81 -5
  730. package/dist/services/logging/provider-traffic.js.map +1 -1
  731. package/dist/services/memory/memory-capabilities.d.ts.map +1 -1
  732. package/dist/services/memory/memory-capabilities.js +13 -8
  733. package/dist/services/memory/memory-capabilities.js.map +1 -1
  734. package/dist/services/model-service.d.ts +3 -0
  735. package/dist/services/model-service.d.ts.map +1 -1
  736. package/dist/services/model-service.js +3 -1
  737. package/dist/services/model-service.js.map +1 -1
  738. package/dist/services/models/model-catalog-session.d.ts +24 -0
  739. package/dist/services/models/model-catalog-session.d.ts.map +1 -0
  740. package/dist/services/models/model-catalog-session.js +70 -0
  741. package/dist/services/models/model-catalog-session.js.map +1 -0
  742. package/dist/services/openai-candidate-observer.d.ts +18 -0
  743. package/dist/services/openai-candidate-observer.d.ts.map +1 -0
  744. package/dist/services/openai-candidate-observer.js +56 -0
  745. package/dist/services/openai-candidate-observer.js.map +1 -0
  746. package/dist/services/openai-root-checkpoint-lifecycle-observer.d.ts +20 -0
  747. package/dist/services/openai-root-checkpoint-lifecycle-observer.d.ts.map +1 -0
  748. package/dist/services/openai-root-checkpoint-lifecycle-observer.js +21 -0
  749. package/dist/services/openai-root-checkpoint-lifecycle-observer.js.map +1 -0
  750. package/dist/services/openai-root-provider-identity.d.ts +11 -0
  751. package/dist/services/openai-root-provider-identity.d.ts.map +1 -0
  752. package/dist/services/openai-root-provider-identity.js +16 -0
  753. package/dist/services/openai-root-provider-identity.js.map +1 -0
  754. package/dist/services/openai-root-selector-parity-observer.d.ts +53 -0
  755. package/dist/services/openai-root-selector-parity-observer.d.ts.map +1 -0
  756. package/dist/services/openai-root-selector-parity-observer.js +62 -0
  757. package/dist/services/openai-root-selector-parity-observer.js.map +1 -0
  758. package/dist/services/plan-mode-interceptor.js +2 -2
  759. package/dist/services/plan-mode-interceptor.js.map +1 -1
  760. package/dist/services/provider-continuity.d.ts +79 -0
  761. package/dist/services/provider-continuity.d.ts.map +1 -1
  762. package/dist/services/provider-continuity.js +170 -0
  763. package/dist/services/provider-continuity.js.map +1 -1
  764. package/dist/services/providers/provider-management-session.d.ts +12 -0
  765. package/dist/services/providers/provider-management-session.d.ts.map +1 -0
  766. package/dist/services/providers/provider-management-session.js +21 -0
  767. package/dist/services/providers/provider-management-session.js.map +1 -0
  768. package/dist/services/queue/queue-controller.d.ts +9 -14
  769. package/dist/services/queue/queue-controller.d.ts.map +1 -1
  770. package/dist/services/queue/queue-controller.js +75 -60
  771. package/dist/services/queue/queue-controller.js.map +1 -1
  772. package/dist/services/retry/conversation-retry-policy.js +3 -3
  773. package/dist/services/retry/conversation-retry-policy.js.map +1 -1
  774. package/dist/services/retry/recovery-executor.d.ts.map +1 -1
  775. package/dist/services/retry/recovery-executor.js +7 -8
  776. package/dist/services/retry/recovery-executor.js.map +1 -1
  777. package/dist/services/retry/recovery-policy.d.ts.map +1 -1
  778. package/dist/services/retry/recovery-policy.js +4 -1
  779. package/dist/services/retry/recovery-policy.js.map +1 -1
  780. package/dist/services/retry/retry-classifier.d.ts.map +1 -1
  781. package/dist/services/retry/retry-classifier.js +2 -1
  782. package/dist/services/retry/retry-classifier.js.map +1 -1
  783. package/dist/services/retry/retry-contracts.d.ts +3 -5
  784. package/dist/services/retry/retry-contracts.d.ts.map +1 -1
  785. package/dist/services/retry/retry-error-classification.d.ts +1 -0
  786. package/dist/services/retry/retry-error-classification.d.ts.map +1 -1
  787. package/dist/services/retry/retry-error-classification.js +28 -0
  788. package/dist/services/retry/retry-error-classification.js.map +1 -1
  789. package/dist/services/retry/retry-event-presenter.d.ts.map +1 -1
  790. package/dist/services/retry/retry-event-presenter.js +4 -1
  791. package/dist/services/retry/retry-event-presenter.js.map +1 -1
  792. package/dist/services/retry/upstream-retry-policy.js +3 -3
  793. package/dist/services/rtk-service.d.ts.map +1 -1
  794. package/dist/services/rtk-service.js +3 -15
  795. package/dist/services/rtk-service.js.map +1 -1
  796. package/dist/services/runtime-setting-router.d.ts +19 -0
  797. package/dist/services/runtime-setting-router.d.ts.map +1 -1
  798. package/dist/services/runtime-setting-router.js +33 -0
  799. package/dist/services/runtime-setting-router.js.map +1 -1
  800. package/dist/services/service-interfaces.d.ts +19 -2
  801. package/dist/services/service-interfaces.d.ts.map +1 -1
  802. package/dist/services/session/background-task-control.d.ts +123 -0
  803. package/dist/services/session/background-task-control.d.ts.map +1 -0
  804. package/dist/services/session/background-task-control.js +183 -0
  805. package/dist/services/session/background-task-control.js.map +1 -0
  806. package/dist/services/session/continuation-call-id-resolver.d.ts +16 -9
  807. package/dist/services/session/continuation-call-id-resolver.d.ts.map +1 -1
  808. package/dist/services/session/continuation-call-id-resolver.js +34 -48
  809. package/dist/services/session/continuation-call-id-resolver.js.map +1 -1
  810. package/dist/services/session/continuation-plan-applier.d.ts.map +1 -1
  811. package/dist/services/session/continuation-plan-applier.js +1 -3
  812. package/dist/services/session/continuation-plan-applier.js.map +1 -1
  813. package/dist/services/session/continuation-recovery-handler.d.ts.map +1 -1
  814. package/dist/services/session/continuation-recovery-handler.js +0 -2
  815. package/dist/services/session/continuation-recovery-handler.js.map +1 -1
  816. package/dist/services/session/continuation-state.d.ts +9 -5
  817. package/dist/services/session/continuation-state.d.ts.map +1 -1
  818. package/dist/services/session/continuation-state.js +1 -1
  819. package/dist/services/session/continuation-state.js.map +1 -1
  820. package/dist/services/session/live-run.d.ts +29 -0
  821. package/dist/services/session/live-run.d.ts.map +1 -0
  822. package/dist/services/session/live-run.js +111 -0
  823. package/dist/services/session/live-run.js.map +1 -0
  824. package/dist/services/session/nested-tool-compatibility-state.d.ts +20 -0
  825. package/dist/services/session/nested-tool-compatibility-state.d.ts.map +1 -0
  826. package/dist/services/session/nested-tool-compatibility-state.js +29 -0
  827. package/dist/services/session/nested-tool-compatibility-state.js.map +1 -0
  828. package/dist/services/session/pending-interaction-state.d.ts +60 -0
  829. package/dist/services/session/pending-interaction-state.d.ts.map +1 -0
  830. package/dist/services/session/pending-interaction-state.js +132 -0
  831. package/dist/services/session/pending-interaction-state.js.map +1 -0
  832. package/dist/services/session/post-execute-pause-capability.d.ts +17 -0
  833. package/dist/services/session/post-execute-pause-capability.d.ts.map +1 -0
  834. package/dist/services/session/post-execute-pause-capability.js +27 -0
  835. package/dist/services/session/post-execute-pause-capability.js.map +1 -0
  836. package/dist/services/session/post-execute-pause-policy.d.ts +20 -0
  837. package/dist/services/session/post-execute-pause-policy.d.ts.map +1 -0
  838. package/dist/services/session/post-execute-pause-policy.js +34 -0
  839. package/dist/services/session/post-execute-pause-policy.js.map +1 -0
  840. package/dist/services/session/post-execute-pending-registry.d.ts +63 -0
  841. package/dist/services/session/post-execute-pending-registry.d.ts.map +1 -0
  842. package/dist/services/session/post-execute-pending-registry.js +123 -0
  843. package/dist/services/session/post-execute-pending-registry.js.map +1 -0
  844. package/dist/services/session/session-access-state.d.ts +24 -0
  845. package/dist/services/session/session-access-state.d.ts.map +1 -0
  846. package/dist/services/session/session-access-state.js +91 -0
  847. package/dist/services/session/session-access-state.js.map +1 -0
  848. package/dist/services/session/session-client-factory.d.ts +61 -0
  849. package/dist/services/session/session-client-factory.d.ts.map +1 -0
  850. package/dist/services/session/session-client-factory.js +103 -0
  851. package/dist/services/session/session-client-factory.js.map +1 -0
  852. package/dist/services/session/session-composition.d.ts +58 -0
  853. package/dist/services/session/session-composition.d.ts.map +1 -1
  854. package/dist/services/session/session-composition.js +178 -13
  855. package/dist/services/session/session-composition.js.map +1 -1
  856. package/dist/services/session/session-input-planner.d.ts +6 -2
  857. package/dist/services/session/session-input-planner.d.ts.map +1 -1
  858. package/dist/services/session/session-input-planner.js +4 -0
  859. package/dist/services/session/session-input-planner.js.map +1 -1
  860. package/dist/services/session/session-lifecycle.d.ts +5 -0
  861. package/dist/services/session/session-lifecycle.d.ts.map +1 -1
  862. package/dist/services/session/session-lifecycle.js +16 -6
  863. package/dist/services/session/session-lifecycle.js.map +1 -1
  864. package/dist/services/session/session-manager.d.ts +11 -1
  865. package/dist/services/session/session-manager.d.ts.map +1 -1
  866. package/dist/services/session/session-manager.js +16 -3
  867. package/dist/services/session/session-manager.js.map +1 -1
  868. package/dist/services/session/session-stream-processor.d.ts +5 -0
  869. package/dist/services/session/session-stream-processor.d.ts.map +1 -1
  870. package/dist/services/session/session-stream-processor.js +164 -35
  871. package/dist/services/session/session-stream-processor.js.map +1 -1
  872. package/dist/services/session/session-tool-tracker.d.ts +10 -21
  873. package/dist/services/session/session-tool-tracker.d.ts.map +1 -1
  874. package/dist/services/session/session-tool-tracker.js +12 -52
  875. package/dist/services/session/session-tool-tracker.js.map +1 -1
  876. package/dist/services/session/terminal-result-collector.d.ts +8 -0
  877. package/dist/services/session/terminal-result-collector.d.ts.map +1 -1
  878. package/dist/services/session/terminal-result-collector.js +18 -4
  879. package/dist/services/session/terminal-result-collector.js.map +1 -1
  880. package/dist/services/session/test-helpers/conversation-session-fixtures.d.ts.map +1 -1
  881. package/dist/services/session/test-helpers/conversation-session-fixtures.js +8 -1
  882. package/dist/services/session/test-helpers/conversation-session-fixtures.js.map +1 -1
  883. package/dist/services/session/turn-attempt-factory.d.ts +2 -2
  884. package/dist/services/session/turn-attempt-factory.d.ts.map +1 -1
  885. package/dist/services/session/turn-attempt.d.ts +4 -2
  886. package/dist/services/session/turn-attempt.d.ts.map +1 -1
  887. package/dist/services/session/turn-attempt.js +5 -0
  888. package/dist/services/session/turn-attempt.js.map +1 -1
  889. package/dist/services/session/turn-coordinator.d.ts +32 -2
  890. package/dist/services/session/turn-coordinator.d.ts.map +1 -1
  891. package/dist/services/session/turn-coordinator.js +180 -9
  892. package/dist/services/session/turn-coordinator.js.map +1 -1
  893. package/dist/services/session/turn-status-machine.d.ts +21 -6
  894. package/dist/services/session/turn-status-machine.d.ts.map +1 -1
  895. package/dist/services/session/turn-status-machine.js +50 -13
  896. package/dist/services/session/turn-status-machine.js.map +1 -1
  897. package/dist/services/session/turn-workflow.d.ts +35 -0
  898. package/dist/services/session/turn-workflow.d.ts.map +1 -1
  899. package/dist/services/session/turn-workflow.js +373 -27
  900. package/dist/services/session/turn-workflow.js.map +1 -1
  901. package/dist/services/settings/ancillary-settings-migration.js +3 -3
  902. package/dist/services/settings/ancillary-settings-migration.js.map +1 -1
  903. package/dist/services/settings/custom-provider-normalization.d.ts +10 -0
  904. package/dist/services/settings/custom-provider-normalization.d.ts.map +1 -1
  905. package/dist/services/settings/custom-provider-normalization.js +35 -2
  906. package/dist/services/settings/custom-provider-normalization.js.map +1 -1
  907. package/dist/services/settings/settings-env.d.ts +3 -0
  908. package/dist/services/settings/settings-env.d.ts.map +1 -1
  909. package/dist/services/settings/settings-env.js +3 -3
  910. package/dist/services/settings/settings-env.js.map +1 -1
  911. package/dist/services/settings/settings-merger.d.ts +6 -5
  912. package/dist/services/settings/settings-merger.d.ts.map +1 -1
  913. package/dist/services/settings/settings-merger.js +9 -4
  914. package/dist/services/settings/settings-merger.js.map +1 -1
  915. package/dist/services/settings/settings-persistence.d.ts +17 -6
  916. package/dist/services/settings/settings-persistence.d.ts.map +1 -1
  917. package/dist/services/settings/settings-persistence.js +155 -28
  918. package/dist/services/settings/settings-persistence.js.map +1 -1
  919. package/dist/services/settings/settings-schema.d.ts +100 -4
  920. package/dist/services/settings/settings-schema.d.ts.map +1 -1
  921. package/dist/services/settings/settings-schema.js +78 -8
  922. package/dist/services/settings/settings-schema.js.map +1 -1
  923. package/dist/services/settings/settings-service.d.ts +34 -5
  924. package/dist/services/settings/settings-service.d.ts.map +1 -1
  925. package/dist/services/settings/settings-service.js +200 -8
  926. package/dist/services/settings/settings-service.js.map +1 -1
  927. package/dist/services/settings/settings-sources.d.ts.map +1 -1
  928. package/dist/services/settings/settings-sources.js +6 -0
  929. package/dist/services/settings/settings-sources.js.map +1 -1
  930. package/dist/services/shell/background-shell-registry.d.ts +110 -0
  931. package/dist/services/shell/background-shell-registry.d.ts.map +1 -0
  932. package/dist/services/shell/background-shell-registry.js +326 -0
  933. package/dist/services/shell/background-shell-registry.js.map +1 -0
  934. package/dist/services/shell/shell-interaction-session.d.ts +43 -0
  935. package/dist/services/shell/shell-interaction-session.d.ts.map +1 -0
  936. package/dist/services/shell/shell-interaction-session.js +113 -0
  937. package/dist/services/shell/shell-interaction-session.js.map +1 -0
  938. package/dist/services/stream-event-processor.d.ts +11 -12
  939. package/dist/services/stream-event-processor.d.ts.map +1 -1
  940. package/dist/services/stream-event-processor.js +115 -352
  941. package/dist/services/stream-event-processor.js.map +1 -1
  942. package/dist/services/stream-snapshot.d.ts +0 -1
  943. package/dist/services/stream-snapshot.d.ts.map +1 -1
  944. package/dist/services/stream-snapshot.js +0 -1
  945. package/dist/services/stream-snapshot.js.map +1 -1
  946. package/dist/services/subagents/codename-run-id.d.ts +43 -0
  947. package/dist/services/subagents/codename-run-id.d.ts.map +1 -0
  948. package/dist/services/subagents/codename-run-id.js +683 -0
  949. package/dist/services/subagents/codename-run-id.js.map +1 -0
  950. package/dist/services/subagents/execution-runner.d.ts +2 -0
  951. package/dist/services/subagents/execution-runner.d.ts.map +1 -1
  952. package/dist/services/subagents/execution-runner.js +13 -3
  953. package/dist/services/subagents/execution-runner.js.map +1 -1
  954. package/dist/services/subagents/foreground-subagent-lease.d.ts +77 -0
  955. package/dist/services/subagents/foreground-subagent-lease.d.ts.map +1 -0
  956. package/dist/services/subagents/foreground-subagent-lease.js +156 -0
  957. package/dist/services/subagents/foreground-subagent-lease.js.map +1 -0
  958. package/dist/services/subagents/mentor-runner.d.ts.map +1 -1
  959. package/dist/services/subagents/mentor-runner.js +43 -31
  960. package/dist/services/subagents/mentor-runner.js.map +1 -1
  961. package/dist/services/subagents/nested-runner.d.ts +47 -23
  962. package/dist/services/subagents/nested-runner.d.ts.map +1 -1
  963. package/dist/services/subagents/nested-runner.js +263 -64
  964. package/dist/services/subagents/nested-runner.js.map +1 -1
  965. package/dist/services/subagents/role-loader.d.ts +3 -3
  966. package/dist/services/subagents/role-loader.d.ts.map +1 -1
  967. package/dist/services/subagents/role-loader.js +6 -7
  968. package/dist/services/subagents/role-loader.js.map +1 -1
  969. package/dist/services/subagents/runtime.d.ts +10 -0
  970. package/dist/services/subagents/runtime.d.ts.map +1 -1
  971. package/dist/services/subagents/runtime.js +15 -1
  972. package/dist/services/subagents/runtime.js.map +1 -1
  973. package/dist/services/subagents/subagent-async-registry.d.ts +21 -2
  974. package/dist/services/subagents/subagent-async-registry.d.ts.map +1 -1
  975. package/dist/services/subagents/subagent-async-registry.js +156 -10
  976. package/dist/services/subagents/subagent-async-registry.js.map +1 -1
  977. package/dist/services/subagents/subagent-client-types.d.ts +2 -0
  978. package/dist/services/subagents/subagent-client-types.d.ts.map +1 -1
  979. package/dist/services/subagents/subagent-manager.d.ts +26 -7
  980. package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
  981. package/dist/services/subagents/subagent-manager.js +31 -1
  982. package/dist/services/subagents/subagent-manager.js.map +1 -1
  983. package/dist/services/subagents/subagent-notification-store.d.ts +72 -6
  984. package/dist/services/subagents/subagent-notification-store.d.ts.map +1 -1
  985. package/dist/services/subagents/subagent-notification-store.js +118 -10
  986. package/dist/services/subagents/subagent-notification-store.js.map +1 -1
  987. package/dist/services/subagents/subagent-session.d.ts +12 -7
  988. package/dist/services/subagents/subagent-session.d.ts.map +1 -1
  989. package/dist/services/subagents/subagent-session.js +13 -14
  990. package/dist/services/subagents/subagent-session.js.map +1 -1
  991. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.d.ts +4 -5
  992. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.d.ts.map +1 -1
  993. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js +66 -65
  994. package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js.map +1 -1
  995. package/dist/services/subagents/tool-policy.d.ts +19 -17
  996. package/dist/services/subagents/tool-policy.d.ts.map +1 -1
  997. package/dist/services/subagents/tool-policy.js +89 -53
  998. package/dist/services/subagents/tool-policy.js.map +1 -1
  999. package/dist/services/subagents/types.d.ts +22 -3
  1000. package/dist/services/subagents/types.d.ts.map +1 -1
  1001. package/dist/services/subagents/types.js +2 -2
  1002. package/dist/services/subagents/types.js.map +1 -1
  1003. package/dist/services/subagents/utils.d.ts +8 -1
  1004. package/dist/services/subagents/utils.d.ts.map +1 -1
  1005. package/dist/services/subagents/utils.js +43 -16
  1006. package/dist/services/subagents/utils.js.map +1 -1
  1007. package/dist/services/test-helpers/mock-stream.d.ts +3 -0
  1008. package/dist/services/test-helpers/mock-stream.d.ts.map +1 -1
  1009. package/dist/services/test-helpers/mock-stream.js +8 -0
  1010. package/dist/services/test-helpers/mock-stream.js.map +1 -1
  1011. package/dist/services/tool-execution-ledger.d.ts +2 -0
  1012. package/dist/services/tool-execution-ledger.d.ts.map +1 -1
  1013. package/dist/services/tool-execution-ledger.js +59 -81
  1014. package/dist/services/tool-execution-ledger.js.map +1 -1
  1015. package/dist/test-helpers/conversation-session-with-adapter.d.ts +1 -1
  1016. package/dist/test-helpers/conversation-session-with-adapter.d.ts.map +1 -1
  1017. package/dist/test-helpers/conversation-session-with-adapter.js +5 -1
  1018. package/dist/test-helpers/conversation-session-with-adapter.js.map +1 -1
  1019. package/dist/test-helpers/ink-testing.d.ts.map +1 -1
  1020. package/dist/test-helpers/ink-testing.js +2 -1
  1021. package/dist/test-helpers/ink-testing.js.map +1 -1
  1022. package/dist/tools/agent/activate-skill.d.ts +6 -1
  1023. package/dist/tools/agent/activate-skill.d.ts.map +1 -1
  1024. package/dist/tools/agent/activate-skill.js.map +1 -1
  1025. package/dist/tools/agent/ask-mentor.d.ts +1 -1
  1026. package/dist/tools/agent/ask-mentor.d.ts.map +1 -1
  1027. package/dist/tools/agent/ask-mentor.js.map +1 -1
  1028. package/dist/tools/agent/ask-orchestrator.d.ts +1 -1
  1029. package/dist/tools/agent/ask-orchestrator.d.ts.map +1 -1
  1030. package/dist/tools/agent/ask-user-constants.d.ts +6 -0
  1031. package/dist/tools/agent/ask-user-constants.d.ts.map +1 -1
  1032. package/dist/tools/agent/ask-user-constants.js +6 -0
  1033. package/dist/tools/agent/ask-user-constants.js.map +1 -1
  1034. package/dist/tools/agent/run-subagent-async.d.ts +6 -6
  1035. package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
  1036. package/dist/tools/agent/run-subagent-async.js +16 -52
  1037. package/dist/tools/agent/run-subagent-async.js.map +1 -1
  1038. package/dist/tools/agent/run-subagent.d.ts +28 -14
  1039. package/dist/tools/agent/run-subagent.d.ts.map +1 -1
  1040. package/dist/tools/agent/run-subagent.js +173 -68
  1041. package/dist/tools/agent/run-subagent.js.map +1 -1
  1042. package/dist/tools/file/apply-patch.d.ts +3 -1
  1043. package/dist/tools/file/apply-patch.d.ts.map +1 -1
  1044. package/dist/tools/file/apply-patch.js +34 -10
  1045. package/dist/tools/file/apply-patch.js.map +1 -1
  1046. package/dist/tools/file/code-context.d.ts +2 -2
  1047. package/dist/tools/file/code-context.d.ts.map +1 -1
  1048. package/dist/tools/file/code-context.js +1 -1
  1049. package/dist/tools/file/code-context.js.map +1 -1
  1050. package/dist/tools/file/create-file.d.ts +4 -2
  1051. package/dist/tools/file/create-file.d.ts.map +1 -1
  1052. package/dist/tools/file/create-file.js +10 -7
  1053. package/dist/tools/file/create-file.js.map +1 -1
  1054. package/dist/tools/file/edit-healing.d.ts.map +1 -1
  1055. package/dist/tools/file/edit-healing.js +54 -35
  1056. package/dist/tools/file/edit-healing.js.map +1 -1
  1057. package/dist/tools/file/glob-target.d.ts +12 -0
  1058. package/dist/tools/file/glob-target.d.ts.map +1 -0
  1059. package/dist/tools/file/glob-target.js +22 -0
  1060. package/dist/tools/file/glob-target.js.map +1 -0
  1061. package/dist/tools/file/glob.d.ts +9 -2
  1062. package/dist/tools/file/glob.d.ts.map +1 -1
  1063. package/dist/tools/file/glob.js +12 -16
  1064. package/dist/tools/file/glob.js.map +1 -1
  1065. package/dist/tools/file/grep.d.ts +8 -1
  1066. package/dist/tools/file/grep.d.ts.map +1 -1
  1067. package/dist/tools/file/grep.js +60 -4
  1068. package/dist/tools/file/grep.js.map +1 -1
  1069. package/dist/tools/file/read-file.d.ts +7 -1
  1070. package/dist/tools/file/read-file.d.ts.map +1 -1
  1071. package/dist/tools/file/read-file.js +3 -4
  1072. package/dist/tools/file/read-file.js.map +1 -1
  1073. package/dist/tools/file/search-replace.d.ts +5 -3
  1074. package/dist/tools/file/search-replace.d.ts.map +1 -1
  1075. package/dist/tools/file/search-replace.js +29 -19
  1076. package/dist/tools/file/search-replace.js.map +1 -1
  1077. package/dist/tools/format-helpers.d.ts +4 -3
  1078. package/dist/tools/format-helpers.d.ts.map +1 -1
  1079. package/dist/tools/format-helpers.js +16 -17
  1080. package/dist/tools/format-helpers.js.map +1 -1
  1081. package/dist/tools/memory/memory-tools.d.ts.map +1 -1
  1082. package/dist/tools/memory/memory-tools.js +61 -49
  1083. package/dist/tools/memory/memory-tools.js.map +1 -1
  1084. package/dist/tools/run-agent-workflow.d.ts +1 -1
  1085. package/dist/tools/run-agent-workflow.d.ts.map +1 -1
  1086. package/dist/tools/system/shell.d.ts +39 -3
  1087. package/dist/tools/system/shell.d.ts.map +1 -1
  1088. package/dist/tools/system/shell.js +380 -149
  1089. package/dist/tools/system/shell.js.map +1 -1
  1090. package/dist/tools/types.d.ts +102 -5
  1091. package/dist/tools/types.d.ts.map +1 -1
  1092. package/dist/tools/types.js +4 -1
  1093. package/dist/tools/types.js.map +1 -1
  1094. package/dist/tools/utils.d.ts +18 -0
  1095. package/dist/tools/utils.d.ts.map +1 -1
  1096. package/dist/tools/utils.js +78 -0
  1097. package/dist/tools/utils.js.map +1 -1
  1098. package/dist/tools/web/web-fetch.d.ts +1 -1
  1099. package/dist/tools/web/web-fetch.d.ts.map +1 -1
  1100. package/dist/tools/web/web-fetch.js.map +1 -1
  1101. package/dist/tools/web/web-search.d.ts +1 -1
  1102. package/dist/tools/web/web-search.d.ts.map +1 -1
  1103. package/dist/tools/web/web-search.js.map +1 -1
  1104. package/dist/types/message.d.ts +2 -0
  1105. package/dist/types/message.d.ts.map +1 -1
  1106. package/dist/types/message.js.map +1 -1
  1107. package/dist/utils/ai/model-settings.d.ts.map +1 -1
  1108. package/dist/utils/ai/model-settings.js +0 -6
  1109. package/dist/utils/ai/model-settings.js.map +1 -1
  1110. package/dist/utils/ai/token-usage.d.ts +10 -5
  1111. package/dist/utils/ai/token-usage.d.ts.map +1 -1
  1112. package/dist/utils/ai/token-usage.js +48 -35
  1113. package/dist/utils/ai/token-usage.js.map +1 -1
  1114. package/dist/utils/apply-diff.d.ts +3 -0
  1115. package/dist/utils/apply-diff.d.ts.map +1 -0
  1116. package/dist/utils/apply-diff.js +192 -0
  1117. package/dist/utils/apply-diff.js.map +1 -0
  1118. package/dist/utils/conversation/conversation-event-handler.d.ts.map +1 -1
  1119. package/dist/utils/conversation/conversation-event-handler.js +72 -16
  1120. package/dist/utils/conversation/conversation-event-handler.js.map +1 -1
  1121. package/dist/utils/conversation/conversation-utils.d.ts +5 -0
  1122. package/dist/utils/conversation/conversation-utils.d.ts.map +1 -1
  1123. package/dist/utils/conversation/conversation-utils.js +1 -0
  1124. package/dist/utils/conversation/conversation-utils.js.map +1 -1
  1125. package/dist/utils/conversation/message-utils.d.ts +6 -0
  1126. package/dist/utils/conversation/message-utils.d.ts.map +1 -1
  1127. package/dist/utils/conversation/message-utils.js +17 -14
  1128. package/dist/utils/conversation/message-utils.js.map +1 -1
  1129. package/dist/utils/conversation/rewind-items.d.ts +32 -0
  1130. package/dist/utils/conversation/rewind-items.d.ts.map +1 -0
  1131. package/dist/utils/conversation/rewind-items.js +33 -0
  1132. package/dist/utils/conversation/rewind-items.js.map +1 -0
  1133. package/dist/utils/inject-warning-into-tool-output.d.ts +10 -0
  1134. package/dist/utils/inject-warning-into-tool-output.d.ts.map +1 -1
  1135. package/dist/utils/inject-warning-into-tool-output.js +17 -0
  1136. package/dist/utils/inject-warning-into-tool-output.js.map +1 -1
  1137. package/dist/utils/settings-command.d.ts.map +1 -1
  1138. package/dist/utils/settings-command.js +41 -4
  1139. package/dist/utils/settings-command.js.map +1 -1
  1140. package/dist/utils/shell/command-logger.js.map +1 -1
  1141. package/dist/utils/shell/command-safety/find-helpers.d.ts +3 -2
  1142. package/dist/utils/shell/command-safety/find-helpers.d.ts.map +1 -1
  1143. package/dist/utils/shell/command-safety/find-helpers.js +34 -17
  1144. package/dist/utils/shell/command-safety/find-helpers.js.map +1 -1
  1145. package/dist/utils/shell/command-safety/handlers/find-handler.d.ts.map +1 -1
  1146. package/dist/utils/shell/command-safety/handlers/find-handler.js +0 -2
  1147. package/dist/utils/shell/command-safety/handlers/find-handler.js.map +1 -1
  1148. package/dist/utils/shell/command-safety/handlers/git-handler.d.ts.map +1 -1
  1149. package/dist/utils/shell/command-safety/handlers/git-handler.js.map +1 -1
  1150. package/dist/utils/shell/command-safety/handlers/sed-handler.d.ts.map +1 -1
  1151. package/dist/utils/shell/command-safety/handlers/sed-handler.js +14 -9
  1152. package/dist/utils/shell/command-safety/handlers/sed-handler.js.map +1 -1
  1153. package/dist/utils/shell/command-safety/handlers/types.d.ts +5 -4
  1154. package/dist/utils/shell/command-safety/handlers/types.d.ts.map +1 -1
  1155. package/dist/utils/shell/command-safety/index.d.ts.map +1 -1
  1156. package/dist/utils/shell/command-safety/index.js +212 -88
  1157. package/dist/utils/shell/command-safety/index.js.map +1 -1
  1158. package/dist/utils/shell/command-safety/utils.d.ts +2 -1
  1159. package/dist/utils/shell/command-safety/utils.d.ts.map +1 -1
  1160. package/dist/utils/shell/command-safety/utils.js +5 -5
  1161. package/dist/utils/shell/command-safety/utils.js.map +1 -1
  1162. package/dist/utils/shell/execute-shell.d.ts +24 -3
  1163. package/dist/utils/shell/execute-shell.d.ts.map +1 -1
  1164. package/dist/utils/shell/execute-shell.js +228 -28
  1165. package/dist/utils/shell/execute-shell.js.map +1 -1
  1166. package/dist/utils/shell/sandbox/denied-read-stores.d.ts +1 -8
  1167. package/dist/utils/shell/sandbox/denied-read-stores.d.ts.map +1 -1
  1168. package/dist/utils/shell/sandbox/denied-read-stores.js +1 -8
  1169. package/dist/utils/shell/sandbox/denied-read-stores.js.map +1 -1
  1170. package/dist/utils/shell/sandbox/docker-host-control-grants.d.ts +36 -6
  1171. package/dist/utils/shell/sandbox/docker-host-control-grants.d.ts.map +1 -1
  1172. package/dist/utils/shell/sandbox/docker-host-control-grants.js +47 -17
  1173. package/dist/utils/shell/sandbox/docker-host-control-grants.js.map +1 -1
  1174. package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.d.ts +21 -0
  1175. package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.d.ts.map +1 -0
  1176. package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.js +66 -0
  1177. package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.js.map +1 -0
  1178. package/dist/utils/shell/shell-session.js.map +1 -1
  1179. package/dist/utils/slash-command-dispatch.d.ts +21 -0
  1180. package/dist/utils/slash-command-dispatch.d.ts.map +1 -0
  1181. package/dist/utils/slash-command-dispatch.js +34 -0
  1182. package/dist/utils/slash-command-dispatch.js.map +1 -0
  1183. package/dist/utils/streaming/extract-command-messages.d.ts.map +1 -1
  1184. package/dist/utils/streaming/extract-command-messages.js +29 -51
  1185. package/dist/utils/streaming/extract-command-messages.js.map +1 -1
  1186. package/dist/utils/value-suggestions.d.ts.map +1 -1
  1187. package/dist/utils/value-suggestions.js +0 -8
  1188. package/dist/utils/value-suggestions.js.map +1 -1
  1189. package/package.json +21 -19
  1190. package/dist/commands/retry-command.d.ts +0 -20
  1191. package/dist/commands/retry-command.d.ts.map +0 -1
  1192. package/dist/commands/retry-command.js +0 -39
  1193. package/dist/commands/retry-command.js.map +0 -1
  1194. package/dist/commands/undo-command.d.ts +0 -15
  1195. package/dist/commands/undo-command.d.ts.map +0 -1
  1196. package/dist/commands/undo-command.js +0 -28
  1197. package/dist/commands/undo-command.js.map +0 -1
  1198. package/dist/components/input/PopupManager.d.ts +0 -88
  1199. package/dist/components/input/PopupManager.d.ts.map +0 -1
  1200. package/dist/components/input/PopupManager.js +0 -21
  1201. package/dist/components/input/PopupManager.js.map +0 -1
  1202. package/dist/components/input/popup-key-navigation.d.ts +0 -18
  1203. package/dist/components/input/popup-key-navigation.d.ts.map +0 -1
  1204. package/dist/components/input/popup-key-navigation.js +0 -16
  1205. package/dist/components/input/popup-key-navigation.js.map +0 -1
  1206. package/dist/components/input/popup-props.d.ts +0 -24
  1207. package/dist/components/input/popup-props.d.ts.map +0 -1
  1208. package/dist/components/input/popup-props.js +0 -72
  1209. package/dist/components/input/popup-props.js.map +0 -1
  1210. package/dist/components/menu/UndoSelectionMenu.d.ts +0 -12
  1211. package/dist/components/menu/UndoSelectionMenu.d.ts.map +0 -1
  1212. package/dist/components/menu/UndoSelectionMenu.js +0 -19
  1213. package/dist/components/menu/UndoSelectionMenu.js.map +0 -1
  1214. package/dist/hooks/use-mode-handlers.d.ts +0 -79
  1215. package/dist/hooks/use-mode-handlers.d.ts.map +0 -1
  1216. package/dist/hooks/use-mode-handlers.js +0 -183
  1217. package/dist/hooks/use-mode-handlers.js.map +0 -1
  1218. package/dist/hooks/use-pending-turn-guards.d.ts +0 -43
  1219. package/dist/hooks/use-pending-turn-guards.d.ts.map +0 -1
  1220. package/dist/hooks/use-pending-turn-guards.js +0 -120
  1221. package/dist/hooks/use-pending-turn-guards.js.map +0 -1
  1222. package/dist/hooks/use-trigger-detection.d.ts +0 -49
  1223. package/dist/hooks/use-trigger-detection.d.ts.map +0 -1
  1224. package/dist/hooks/use-trigger-detection.js +0 -104
  1225. package/dist/hooks/use-trigger-detection.js.map +0 -1
  1226. package/dist/hooks/use-undo-selection.d.ts +0 -23
  1227. package/dist/hooks/use-undo-selection.d.ts.map +0 -1
  1228. package/dist/hooks/use-undo-selection.js.map +0 -1
  1229. package/dist/lib/agent-run-orchestrator.d.ts +0 -38
  1230. package/dist/lib/agent-run-orchestrator.d.ts.map +0 -1
  1231. package/dist/lib/agent-run-orchestrator.js +0 -266
  1232. package/dist/lib/agent-run-orchestrator.js.map +0 -1
  1233. package/dist/lib/retry-executor.d.ts +0 -16
  1234. package/dist/lib/retry-executor.d.ts.map +0 -1
  1235. package/dist/lib/retry-executor.js +0 -53
  1236. package/dist/lib/retry-executor.js.map +0 -1
  1237. package/dist/lib/runner-manager.d.ts +0 -22
  1238. package/dist/lib/runner-manager.d.ts.map +0 -1
  1239. package/dist/lib/runner-manager.js +0 -56
  1240. package/dist/lib/runner-manager.js.map +0 -1
  1241. package/dist/prompts/shell-sandbox.md +0 -18
  1242. package/dist/prompts/simple.md +0 -53
  1243. package/dist/prompts/simple_prev.md +0 -33
  1244. package/dist/prompts/simple_v2.md +0 -84
  1245. package/dist/prompts/simple_v3.md +0 -267
  1246. package/dist/prompts/subagents/researcher.md +0 -46
  1247. package/dist/providers/ai-sdk-agents-adapter.d.ts +0 -7
  1248. package/dist/providers/ai-sdk-agents-adapter.d.ts.map +0 -1
  1249. package/dist/providers/ai-sdk-agents-adapter.js +0 -80
  1250. package/dist/providers/ai-sdk-agents-adapter.js.map +0 -1
  1251. package/dist/providers/fallback-responses-model.d.ts +0 -46
  1252. package/dist/providers/fallback-responses-model.d.ts.map +0 -1
  1253. package/dist/providers/fallback-responses-model.js +0 -296
  1254. package/dist/providers/fallback-responses-model.js.map +0 -1
  1255. package/dist/services/stream-event-parsing.d.ts +0 -4
  1256. package/dist/services/stream-event-parsing.d.ts.map +0 -1
  1257. package/dist/services/stream-event-parsing.js +0 -79
  1258. package/dist/services/stream-event-parsing.js.map +0 -1
@@ -1,12 +1,56 @@
1
1
  import React from 'react';
2
2
  import os from 'node:os';
3
3
  import { Box, Text, useInput } from 'ink';
4
- import { READ_FILE_SESSION_APPROVE_ANSWER } from '../../contracts/conversation.js';
4
+ import { READ_FILE_SESSION_APPROVE_ANSWER, supportsFolderSessionRead, } from '../../contracts/conversation.js';
5
+ import { resolveSessionReadFolder } from '../../services/approval/session-read-grant-target.js';
5
6
  import { generateDiff } from '../../utils/output/diff.js';
6
7
  import { TOOL_NAME_APPLY_PATCH, TOOL_NAME_ASK_USER, TOOL_NAME_SEARCH_REPLACE } from '../../tools/tool-names.js';
7
8
  import { ASK_USER_CUSTOM_ANSWER_LABEL, ASK_USER_DECLINE_LABEL, ASK_USER_DECLINE_RESULT, ASK_USER_SUBMIT_LABEL, ASK_USER_PREV_QUESTION_LABEL, ASK_USER_NEXT_QUESTION_LABEL, } from '../../tools/agent/ask-user-constants.js';
8
9
  import DiffView from '../layout/DiffView.js';
9
- import { requiresDockerHostControlApproval } from '../../utils/shell/sandbox/docker-host-control-grants.js';
10
+ import { requestsDockerHostControl } from '../../utils/shell/sandbox/docker-host-control.js';
11
+ function parseShellApprovalArgs(input) {
12
+ if (input === null || input === undefined) {
13
+ return null;
14
+ }
15
+ let value = input;
16
+ if (typeof input === 'string') {
17
+ try {
18
+ value = JSON.parse(input);
19
+ }
20
+ catch {
21
+ return null;
22
+ }
23
+ }
24
+ if (typeof value !== 'object' || value === null || Array.isArray(value)) {
25
+ return null;
26
+ }
27
+ const record = value;
28
+ const command = typeof record.command === 'string' ? record.command : undefined;
29
+ const commands = typeof record.commands === 'string' ? record.commands : undefined;
30
+ if (!command && !commands) {
31
+ return null;
32
+ }
33
+ if (record.sandbox !== undefined && record.sandbox !== 'default' && record.sandbox !== 'unsandboxed') {
34
+ return null;
35
+ }
36
+ if (record.cwd !== undefined && typeof record.cwd !== 'string') {
37
+ return null;
38
+ }
39
+ if (record.timeout_ms !== undefined && typeof record.timeout_ms !== 'number') {
40
+ return null;
41
+ }
42
+ if (record.max_output_length !== undefined && typeof record.max_output_length !== 'number') {
43
+ return null;
44
+ }
45
+ return {
46
+ ...(command !== undefined ? { command } : {}),
47
+ ...(commands !== undefined ? { commands } : {}),
48
+ ...(record.sandbox !== undefined ? { sandbox: record.sandbox } : {}),
49
+ ...(record.cwd !== undefined ? { cwd: record.cwd } : {}),
50
+ ...(record.timeout_ms !== undefined ? { timeout_ms: record.timeout_ms } : {}),
51
+ ...(record.max_output_length !== undefined ? { max_output_length: record.max_output_length } : {}),
52
+ };
53
+ }
10
54
  const operationLabels = {
11
55
  create_file: { label: 'CREATE', color: 'green' },
12
56
  update_file: { label: 'UPDATE', color: 'yellow' },
@@ -90,7 +134,7 @@ const LLMAdvisory = ({ advisory }) => {
90
134
  ") ")),
91
135
  React.createElement(Text, { italic: true, color: "#cbd5e1" }, isSystem ? advisory.reasoning : `"${advisory.reasoning}"`)));
92
136
  };
93
- const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigateQuestion, currentQuestionIndex = 0, waitingForAskUserAnswer = false, }) => {
137
+ const ApprovalPrompt = ({ approval, onApprove, onReject, onCancel, onTypeAnswer, onNavigateQuestion, currentQuestionIndex = 0, waitingForAskUserAnswer = false, }) => {
94
138
  const [selectedIndex, setSelectedIndex] = React.useState(0);
95
139
  const [selectedIndices, setSelectedIndices] = React.useState(new Set());
96
140
  const isAskUser = approval.toolName === TOOL_NAME_ASK_USER;
@@ -120,61 +164,60 @@ const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigat
120
164
  if (approval.toolName !== 'shell') {
121
165
  return false;
122
166
  }
123
- try {
124
- const parsed = JSON.parse(approval.argumentsText);
125
- if (parsed?.sandbox === 'unsandboxed') {
126
- return true;
127
- }
128
- }
129
- catch {
130
- // Fallback if argumentsText is not valid JSON
131
- }
132
- try {
133
- const rawInterruption = approval.rawInterruption;
134
- const rawArguments = rawInterruption?.arguments;
135
- if (rawArguments) {
136
- if (typeof rawArguments === 'string') {
137
- const parsed = JSON.parse(rawArguments);
138
- if (parsed?.sandbox === 'unsandboxed') {
139
- return true;
140
- }
141
- }
142
- else if (typeof rawArguments === 'object') {
143
- if (rawArguments.sandbox === 'unsandboxed') {
144
- return true;
145
- }
146
- }
147
- }
167
+ const parsedArgsText = parseShellApprovalArgs(approval.argumentsText);
168
+ if (parsedArgsText?.sandbox === 'unsandboxed') {
169
+ return true;
148
170
  }
149
- catch {
150
- // Ignore errors parsing rawInterruption
171
+ const rawInterruption = typeof approval.rawInterruption === 'object' && approval.rawInterruption !== null
172
+ ? approval.rawInterruption
173
+ : undefined;
174
+ const parsedRaw = parseShellApprovalArgs(rawInterruption?.arguments);
175
+ if (parsedRaw?.sandbox === 'unsandboxed') {
176
+ return true;
151
177
  }
152
178
  return false;
153
179
  }, [approval.argumentsText, approval.rawInterruption, approval.toolName]);
154
180
  const isDockerHostControlApproval = React.useMemo(() => {
155
181
  if (approval.toolName !== 'shell')
156
182
  return false;
157
- try {
158
- const parsed = JSON.parse(approval.argumentsText);
159
- if (typeof parsed?.command === 'string')
160
- return requiresDockerHostControlApproval(parsed.command);
161
- }
162
- catch {
163
- // Try the raw interruption below.
183
+ // The producer already resolved this against the session's record of sandbox
184
+ // Docker blocks; the prompt has no session identity, so it cannot re-derive
185
+ // that half. Only the session-independent check is safe to evaluate here.
186
+ if (approval.dockerHostControl)
187
+ return true;
188
+ const parsedArgsText = parseShellApprovalArgs(approval.argumentsText);
189
+ const textCmd = parsedArgsText?.command ?? parsedArgsText?.commands;
190
+ if (textCmd && requestsDockerHostControl(textCmd)) {
191
+ return true;
192
+ }
193
+ const rawInterruption = typeof approval.rawInterruption === 'object' && approval.rawInterruption !== null
194
+ ? approval.rawInterruption
195
+ : undefined;
196
+ const parsedRaw = parseShellApprovalArgs(rawInterruption?.arguments);
197
+ const rawCmd = parsedRaw?.command ?? parsedRaw?.commands;
198
+ if (rawCmd && requestsDockerHostControl(rawCmd)) {
199
+ return true;
164
200
  }
201
+ return false;
202
+ }, [approval.argumentsText, approval.dockerHostControl, approval.rawInterruption, approval.toolName]);
203
+ const isSandboxNetworkApproval = approval.toolName === 'sandbox_network_access';
204
+ const deniedRead = approval.deniedRead;
205
+ const isDeniedReadShell = !!deniedRead;
206
+ // read_file/grep/glob share one session-scoped folder grant, so all three offer it.
207
+ const isFolderReadApproval = supportsFolderSessionRead(approval.toolName);
208
+ const isOutsideWorkspaceEdit = Boolean(approval.outsideWorkspaceEdit);
209
+ // The exact folder the session grant would cover, shown so the scope is not a guess.
210
+ const folderReadGrantPath = React.useMemo(() => {
211
+ if (!isFolderReadApproval)
212
+ return null;
165
213
  try {
166
- const args = approval.rawInterruption?.arguments;
167
- const parsed = (typeof args === 'string' ? JSON.parse(args) : args);
168
- return typeof parsed?.command === 'string' && requiresDockerHostControlApproval(parsed.command);
214
+ const folder = resolveSessionReadFolder(approval.toolName, JSON.parse(approval.argumentsText));
215
+ return folder ? folder.replace(os.homedir(), '~') : null;
169
216
  }
170
217
  catch {
171
- return false;
218
+ return null;
172
219
  }
173
- }, [approval.argumentsText, approval.rawInterruption, approval.toolName]);
174
- const isSandboxNetworkApproval = approval.toolName === 'sandbox_network_access';
175
- const deniedRead = approval.deniedRead;
176
- const isDeniedReadShell = !!deniedRead;
177
- const isReadFileApproval = approval.toolName === 'read_file';
220
+ }, [approval.argumentsText, approval.toolName, isFolderReadApproval]);
178
221
  const deniedReadMenuItems = React.useMemo(() => {
179
222
  if (!deniedRead)
180
223
  return [];
@@ -193,7 +236,11 @@ const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigat
193
236
  return ['Allow once', 'Deny', 'Allow host for this session', 'Always allow host for this project'];
194
237
  }
195
238
  if (!isAskUser && !isDeniedReadShell) {
196
- return isReadFileApproval ? ['Approve', 'Allow this folder for this session', 'Reject'] : ['Approve', 'Reject'];
239
+ return isOutsideWorkspaceEdit
240
+ ? ['Allow once', 'Allow this file for this session', 'Allow this folder for this session', 'Reject']
241
+ : isFolderReadApproval
242
+ ? ['Allow once', 'Allow this folder for this session', 'Reject']
243
+ : ['Approve', 'Reject'];
197
244
  }
198
245
  if (isDeniedReadShell) {
199
246
  return deniedReadMenuItems;
@@ -214,9 +261,10 @@ const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigat
214
261
  hasMultipleQuestions,
215
262
  deniedReadMenuItems,
216
263
  isDeniedReadShell,
217
- isReadFileApproval,
264
+ isFolderReadApproval,
218
265
  isDockerHostControlApproval,
219
266
  isSandboxNetworkApproval,
267
+ isOutsideWorkspaceEdit,
220
268
  ]);
221
269
  // reset selection when question/approval changes; cannot derive user-controlled arrow-key state from props
222
270
  React.useEffect(() => {
@@ -225,6 +273,10 @@ const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigat
225
273
  setSelectedIndices(new Set());
226
274
  }, [currentQuestionIndex, approval.argumentsText, approval.toolName]);
227
275
  useInput((input, key) => {
276
+ if (isAskUser && key.escape) {
277
+ onCancel?.();
278
+ return;
279
+ }
228
280
  if (waitingForAskUserAnswer) {
229
281
  return;
230
282
  }
@@ -333,9 +385,15 @@ const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigat
333
385
  else if (selectedIndex === 0) {
334
386
  onApprove();
335
387
  }
336
- else if (isReadFileApproval && selectedIndex === 1) {
388
+ else if (isFolderReadApproval && selectedIndex === 1) {
337
389
  onApprove(READ_FILE_SESSION_APPROVE_ANSWER);
338
390
  }
391
+ else if (isOutsideWorkspaceEdit && selectedIndex === 1) {
392
+ onApprove('allow-edit-file-session');
393
+ }
394
+ else if (isOutsideWorkspaceEdit && selectedIndex === 2) {
395
+ onApprove('allow-edit-folder-session');
396
+ }
339
397
  else {
340
398
  onReject();
341
399
  }
@@ -396,13 +454,7 @@ const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigat
396
454
  }
397
455
  }
398
456
  else if (approval.toolName === 'shell') {
399
- let parsedShell = null;
400
- try {
401
- parsedShell = JSON.parse(approval.argumentsText);
402
- }
403
- catch {
404
- // Fall back to ShellPrompt with raw command string if parsing fails
405
- }
457
+ const parsedShell = parseShellApprovalArgs(approval.argumentsText);
406
458
  content = parsedShell ? (React.createElement(ShellPrompt, { args: parsedShell })) : (React.createElement(ShellPrompt, { args: { commands: approval.argumentsText } }));
407
459
  }
408
460
  else if (approval.toolName === TOOL_NAME_SEARCH_REPLACE) {
@@ -545,16 +597,41 @@ const ApprovalPrompt = ({ approval, onApprove, onReject, onTypeAnswer, onNavigat
545
597
  return (React.createElement(Box, { flexDirection: "column" },
546
598
  React.createElement(Text, { color: "yellow" }, isDockerHostControlApproval ? (React.createElement(Text, { bold: true, color: "red" }, "Docker Host Control")) : (React.createElement(React.Fragment, null,
547
599
  approval.agentName,
548
- isUnsandboxedShellApproval ? ' wants to run in unsandboxed mode: ' : ' wants to run: ',
600
+ isOutsideWorkspaceEdit
601
+ ? ' is requesting permission to edit a file outside the workspace with '
602
+ : isFolderReadApproval
603
+ ? ' wants to read outside the workspace with '
604
+ : isUnsandboxedShellApproval
605
+ ? ' wants to run in unsandboxed mode: '
606
+ : ' wants to run: ',
549
607
  React.createElement(Text, { bold: true }, approval.toolName)))),
550
608
  content,
551
609
  isDockerHostControlApproval && (React.createElement(Text, { color: "red" }, "This command can control your Docker daemon. It can bypass filesystem and network sandbox restrictions, mount host files, run privileged or persistent workloads, and is effectively equivalent to host access.")),
552
610
  approval.llmAdvisory && React.createElement(LLMAdvisory, { advisory: approval.llmAdvisory }),
553
611
  !isAskUser && !isDeniedReadShell && (React.createElement(Box, { flexDirection: "column", marginTop: 1 },
554
- React.createElement(Text, null, isDockerHostControlApproval ? 'Allow Docker host access?' : 'Allow this action?'),
612
+ React.createElement(Text, null, isDockerHostControlApproval
613
+ ? 'Allow Docker host access?'
614
+ : isOutsideWorkspaceEdit
615
+ ? 'Allow permission to edit this file outside the workspace?'
616
+ : isFolderReadApproval
617
+ ? 'Allow this read outside the workspace?'
618
+ : 'Allow this action?'),
555
619
  React.createElement(Box, { flexDirection: "column", marginLeft: 1 }, askUserMenuItems.map((item, index) => (React.createElement(Text, { key: item, color: selectedIndex === index ? (item === 'Reject' || item === 'Deny' ? 'red' : 'green') : undefined },
556
620
  selectedIndex === index ? '❯ ' : ' ',
557
- item))))))));
621
+ item)))),
622
+ isFolderReadApproval && folderReadGrantPath && (React.createElement(Box, { marginTop: 1 },
623
+ React.createElement(Text, { color: "#64748b" },
624
+ "\"Allow this folder\" lets read_file, grep and glob read ",
625
+ folderReadGrantPath,
626
+ " for the rest of this session."))),
627
+ isOutsideWorkspaceEdit && approval.outsideWorkspaceEdit && (React.createElement(Box, { marginTop: 1 },
628
+ React.createElement(Text, { color: "#64748b" },
629
+ "File scope permits only ",
630
+ approval.outsideWorkspaceEdit.path,
631
+ "; folder scope permits edits beneath",
632
+ ' ',
633
+ approval.outsideWorkspaceEdit.folder,
634
+ " for this session.")))))));
558
635
  };
559
636
  export default ApprovalPrompt;
560
637
  //# sourceMappingURL=ApprovalPrompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ApprovalPrompt.js","sourceRoot":"","sources":["../../../source/components/prompt/ApprovalPrompt.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAa,MAAM,OAAO,CAAC;AAClC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,gCAAgC,EAA2B,MAAM,iCAAiC,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAChH,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,GAC7B,MAAM,yCAAyC,CAAC;AACjD,OAAO,QAAQ,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,iCAAiC,EAAE,MAAM,yDAAyD,CAAC;AAwD5G,MAAM,eAAe,GAAqD;IACxE,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE;IAChD,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;IACjD,WAAW,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE;CAC/C,CAAC;AAEF,MAAM,gBAAgB,GAAiC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAClE,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAE9E,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI;;gBACvB,EAAE,CAAC,KAAK;oBACL;YACP,oBAAC,IAAI;;gBAAG,IAAI,CAAC,IAAI,CAAQ,CACrB;QACL,IAAI,CAAC,IAAI,IAAI,oBAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,CACvC,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,WAAW,GAA4B,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IACxD,MAAM,GAAG,GAAI,IAAY,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IACzD,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC;QACrD,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,IACpB,GAAG,CACC,CACH;QACL,IAAI,CAAC,GAAG,IAAI,CACX,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS;;gBAAO,IAAI,CAAC,GAAG,CAAQ,CACxC,CACP;QACA,IAAI,CAAC,UAAU,IAAI,CAClB,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS;;gBAAW,IAAI,CAAC,UAAU;qBAAU,CACrD,CACP;QACA,IAAI,CAAC,iBAAiB,IAAI,CACzB,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS;;gBAAc,IAAI,CAAC,iBAAiB;yBAAc,CACnE,CACP,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAoC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IACxE,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,IAAI,+BAElB;YACP,oBAAC,IAAI;;gBAAG,IAAI,CAAC,IAAI,CAAQ,CACrB;QACL,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC1C,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;YACnE,OAAO,CACL,oBAAC,GAAG,IAAC,GAAG,EAAE,GAAG,EAAE,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC7D,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,oBAAC,IAAI,IAAC,KAAK,EAAC,MAAM;;oBAAe,GAAG,GAAG,CAAC;wBAAS;gBAClF,oBAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,CACpB,CACP,CAAC;QACJ,CAAC,CAAC,CACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAiC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;IAClE,8CAA8C;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;SAC3B,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC;SACzB,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,qBAEjB;YACP,oBAAC,IAAI;;gBAAG,IAAI,CAAC,IAAI,CAAQ,CACrB;QACN,oBAAC,QAAQ,IAAC,IAAI,EAAE,SAAS,GAAI,CACzB,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,WAAW,GAAqE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IACrG,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC;IAC9C,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9E,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9E,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,eAAe,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC;IAErH,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAC,OAAO,EAAC,WAAW,EAAE,WAAW;QAC9G,oBAAC,GAAG;YACF,oBAAC,IAAI,IAAC,KAAK,EAAE,WAAW,EAAE,IAAI,UAC3B,KAAK,CACD;YACP,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS;;gBAAI,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK;qBAAU,CAChF;QACN,oBAAC,IAAI,IAAC,MAAM,QAAC,KAAK,EAAC,SAAS,IACzB,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,GAAG,CACrD,CACH,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAAc,CAAC,EACjC,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,kBAAkB,EAClB,oBAAoB,GAAG,CAAC,EACxB,uBAAuB,GAAG,KAAK,GAChC,EAAE,EAAE;IACH,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAc,IAAI,GAAG,EAAE,CAAC,CAAC;IAErF,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,KAAK,kBAAkB,CAAC;IAC3D,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAqB,GAAG,EAAE;QACzD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAgB,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IAExC,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAiB,GAAG,EAAE;QACvD,IAAI,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,WAAW,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChG,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,WAAW,CAAC,SAAS,CAAC;IAC/B,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,mBAAmB,GAAG,aAAa,CAAC,oBAAoB,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,aAAa,GAAG,CAAC,CAAC,mBAAmB,EAAE,eAAe,CAAC;IAC7D,MAAM,cAAc,GAAG,mBAAmB,EAAE,OAAO,IAAI,EAAE,CAAC;IAC1D,MAAM,mBAAmB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzE,MAAM,oBAAoB,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IAEtD,MAAM,0BAA0B,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACpD,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAClC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAsB,CAAC;YACvE,IAAI,MAAM,EAAE,OAAO,KAAK,aAAa,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,8CAA8C;QAChD,CAAC;QAED,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,QAAQ,CAAC,eAAkD,CAAC;YACpF,MAAM,YAAY,GAAG,eAAe,EAAE,SAAS,CAAC;YAChD,IAAI,YAAY,EAAE,CAAC;gBACjB,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;oBACrC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBACxC,IAAI,MAAM,EAAE,OAAO,KAAK,aAAa,EAAE,CAAC;wBACtC,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;qBAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;oBAC5C,IAAI,YAAY,CAAC,OAAO,KAAK,aAAa,EAAE,CAAC;wBAC3C,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wCAAwC;QAC1C,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE1E,MAAM,2BAA2B,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACrD,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QAChD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAsB,CAAC;YACvE,IAAI,OAAO,MAAM,EAAE,OAAO,KAAK,QAAQ;gBAAE,OAAO,iCAAiC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACpG,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,GAAI,QAAQ,CAAC,eAAmD,EAAE,SAAS,CAAC;YACtF,MAAM,MAAM,GAAG,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAkC,CAAC;YACrG,OAAO,OAAO,MAAM,EAAE,OAAO,KAAK,QAAQ,IAAI,iCAAiC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClG,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,eAAe,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE1E,MAAM,wBAAwB,GAAG,QAAQ,CAAC,QAAQ,KAAK,wBAAwB,CAAC;IAChF,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IACvC,MAAM,iBAAiB,GAAG,CAAC,CAAC,UAAU,CAAC;IACvC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,QAAQ,KAAK,WAAW,CAAC;IAE7D,MAAM,mBAAmB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC7C,IAAI,CAAC,UAAU;YAAE,OAAO,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;QAC7C,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACnC,OAAO,KAAK,CAAC;IACf,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC1C,IAAI,2BAA2B,EAAE,CAAC;YAChC,OAAO,CAAC,oBAAoB,EAAE,MAAM,EAAE,wBAAwB,EAAE,+BAA+B,CAAC,CAAC;QACnG,CAAC;QACD,IAAI,wBAAwB,EAAE,CAAC;YAC7B,OAAO,CAAC,YAAY,EAAE,MAAM,EAAE,6BAA6B,EAAE,oCAAoC,CAAC,CAAC;QACrG,CAAC;QACD,IAAI,CAAC,SAAS,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACrC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,oCAAoC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAClH,CAAC;QACD,IAAI,iBAAiB,EAAE,CAAC;YACtB,OAAO,mBAAmB,CAAC;QAC7B,CAAC;QAED,MAAM,KAAK,GAAG,aAAa;YACzB,CAAC,CAAC,CAAC,GAAG,mBAAmB,EAAE,qBAAqB,EAAE,4BAA4B,EAAE,sBAAsB,CAAC;YACvG,CAAC,CAAC,CAAC,GAAG,mBAAmB,EAAE,4BAA4B,EAAE,sBAAsB,CAAC,CAAC;QAEnF,8DAA8D;QAC9D,IAAI,oBAAoB,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC,EAAE;QACD,SAAS;QACT,aAAa;QACb,mBAAmB;QACnB,oBAAoB;QACpB,mBAAmB;QACnB,iBAAiB;QACjB,kBAAkB;QAClB,2BAA2B;QAC3B,wBAAwB;KACzB,CAAC,CAAC;IAEH,2GAA2G;IAC3G,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,0GAA0G;QAC1G,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACpB,kBAAkB,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAChC,CAAC,EAAE,CAAC,oBAAoB,EAAE,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEtE,QAAQ,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACtB,IAAI,uBAAuB,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAClB,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,mCAAmC;QACnC,IAAI,KAAK,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;YACnC,qFAAqF;YACrF,IAAI,aAAa,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;gBAC1C,kBAAkB,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;wBAC5B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;oBAC7B,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBAC1B,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,IAAI,2BAA2B,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBACjD,IAAI,QAAQ,KAAK,MAAM;oBAAE,QAAQ,EAAE,CAAC;qBAC/B,IAAI,QAAQ,KAAK,oBAAoB;oBAAE,SAAS,CAAC,mBAAmB,CAAC,CAAC;qBACtE,IAAI,QAAQ,KAAK,wBAAwB;oBAAE,SAAS,CAAC,sBAAsB,CAAC,CAAC;qBAC7E,IAAI,QAAQ,KAAK,+BAA+B;oBAAE,SAAS,CAAC,sBAAsB,CAAC,CAAC;gBACzF,OAAO;YACT,CAAC;YACD,IAAI,wBAAwB,EAAE,CAAC;gBAC7B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBACjD,IAAI,QAAQ,KAAK,MAAM;oBAAE,QAAQ,EAAE,CAAC;qBAC/B,IAAI,QAAQ,KAAK,YAAY;oBAAE,SAAS,CAAC,YAAY,CAAC,CAAC;qBACvD,IAAI,QAAQ,KAAK,6BAA6B;oBAAE,SAAS,CAAC,eAAe,CAAC,CAAC;qBAC3E,IAAI,QAAQ,KAAK,oCAAoC;oBAAE,SAAS,CAAC,eAAe,CAAC,CAAC;gBACvF,OAAO;YACT,CAAC;YACD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,aAAa,CAAC,CAAC;gBACpD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;oBACxB,QAAQ,EAAE,CAAC;gBACb,CAAC;qBAAM,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;oBACrC,SAAS,CAAC,YAAY,CAAC,CAAC;gBAC1B,CAAC;qBAAM,IAAI,QAAQ,KAAK,8BAA8B,EAAE,CAAC;oBACvD,SAAS,CAAC,gBAAgB,CAAC,CAAC;gBAC9B,CAAC;qBAAM,IAAI,QAAQ,KAAK,sBAAsB,EAAE,CAAC;oBAC/C,SAAS,CAAC,kBAAkB,CAAC,CAAC;gBAChC,CAAC;gBACD,OAAO;YACT,CAAC;YACD,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,QAAQ,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBAEjD,IAAI,QAAQ,KAAK,4BAA4B,EAAE,CAAC;oBAC9C,YAAY,EAAE,EAAE,CAAC;gBACnB,CAAC;qBAAM,IAAI,QAAQ,KAAK,sBAAsB,EAAE,CAAC;oBAC/C,SAAS,CAAC,uBAAuB,CAAC,CAAC;gBACrC,CAAC;qBAAM,IAAI,QAAQ,KAAK,4BAA4B,EAAE,CAAC;oBACrD,kBAAkB,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;qBAAM,IAAI,QAAQ,KAAK,4BAA4B,EAAE,CAAC;oBACrD,kBAAkB,EAAE,CAAC,MAAM,CAAC,CAAC;gBAC/B,CAAC;qBAAM,IAAI,aAAa,EAAE,CAAC;oBACzB,IAAI,QAAQ,KAAK,qBAAqB,EAAE,CAAC;wBACvC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;6BACvC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC;6BACxC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;wBACjE,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;oBACpC,CAAC;yBAAM,IAAI,aAAa,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;wBACjD,qCAAqC;wBACrC,kBAAkB,CAAC,CAAC,IAAI,EAAE,EAAE;4BAC1B,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;4BAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;gCAC5B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;4BAC7B,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;4BAC1B,CAAC;4BACD,OAAO,IAAI,CAAC;wBACd,CAAC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,QAAQ,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;iBAAM,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;gBAC/B,SAAS,EAAE,CAAC;YACd,CAAC;iBAAM,IAAI,kBAAkB,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;gBACrD,SAAS,CAAC,gCAAgC,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QAED,IAAI,wBAAwB,EAAE,CAAC;YAC7B,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,SAAS,CAAC,YAAY,CAAC,CAAC;YAC1B,CAAC;YACD,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,SAAS,IAAI,CAAC,iBAAiB,IAAI,CAAC,2BAA2B,EAAE,CAAC;YAC5E,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,SAAS,EAAE,CAAC;YACd,CAAC;YAED,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;QACD,IAAI,iBAAiB,EAAE,CAAC;YACtB,6DAA6D;YAC7D,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,SAAS,CAAC,YAAY,CAAC,CAAC;YAC1B,CAAC;YACD,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;gBAClB,QAAQ,EAAE,CAAC;YACb,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,iDAAiD;IACjD,IAAI,QAAQ,CAAC,QAAQ,KAAK,oBAAoB,EAAE,CAAC;QAC/C,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;YACzB,oBAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,IAAI,UACtB,QAAQ,CAAC,aAAa,CAClB;YACP,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC;gBACtC,oBAAC,IAAI,mCAAgC;gBACrC,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC;oBACvC,oBAAC,IAAI,IAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;wBAAG,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;8BAAW;oBACrG,oBAAC,IAAI,IAAC,KAAK,EAAE,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;wBAAG,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;6BAAU,CAC9F,CACF,CACF,CACP,CAAC;IACJ,CAAC;IAED,8DAA8D;IAC9D,IAAI,OAAO,GAAoB,CAC7B,oBAAC,GAAG,IAAC,SAAS,EAAE,CAAC;QACf,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,IACpB,QAAQ,CAAC,aAAa,CAClB,CACH,CACP,CAAC;IAEF,IAAI,QAAQ,CAAC,QAAQ,KAAK,qBAAqB,EAAE,CAAC;QAChD,IAAI,gBAAgB,GAA0B,IAAI,CAAC;QACnD,IAAI,CAAC;YACH,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;QAClD,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO,GAAG,oBAAC,gBAAgB,IAAC,IAAI,EAAE,gBAAgB,GAAI,CAAC;QACzD,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzC,IAAI,WAAW,GAAqB,IAAI,CAAC;QACzC,IAAI,CAAC;YACH,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YACP,oEAAoE;QACtE,CAAC;QACD,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CACtB,oBAAC,WAAW,IAAC,IAAI,EAAE,WAAW,GAAI,CACnC,CAAC,CAAC,CAAC,CACF,oBAAC,WAAW,IAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,aAAa,EAAE,GAAI,CAC5D,CAAC;IACJ,CAAC;SAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,wBAAwB,EAAE,CAAC;QAC1D,IAAI,mBAAmB,GAA6B,IAAI,CAAC;QACzD,IAAI,CAAC;YACH,mBAAmB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAC3D,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;QAClD,CAAC;QACD,IAAI,mBAAmB,EAAE,CAAC;YACxB,OAAO,GAAG,oBAAC,mBAAmB,IAAC,IAAI,EAAE,mBAAmB,GAAI,CAAC;QAC/D,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;QAC/C,IAAI,gBAAgB,GAA0B,IAAI,CAAC;QACnD,IAAI,CAAC;YACH,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QACxD,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;QAClD,CAAC;QACD,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO,GAAG,oBAAC,gBAAgB,IAAC,IAAI,EAAE,gBAAgB,GAAI,CAAC;QACzD,CAAC;IACH,CAAC;SAAM,IAAI,SAAS,EAAE,CAAC;QACrB,MAAM,YAAY,GAAG,mBAAmB,EAAE,QAAQ,IAAI,kBAAkB,CAAC;QACzE,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CAAC;QAE5C,iDAAiD;QACjD,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,mBAAmB,GAAG,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC;QAClE,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE1F,IAAI,sBAAsB,GAAG,iBAAiB,EAAE,WAAW,IAAI,EAAE,CAAC;QAElE,oDAAoD;QACpD,IAAI,CAAC,sBAAsB,EAAE,CAAC;YAC5B,IAAI,mBAAmB,KAAK,4BAA4B,EAAE,CAAC;gBACzD,sBAAsB,GAAG,kCAAkC,CAAC;YAC9D,CAAC;iBAAM,IAAI,mBAAmB,KAAK,sBAAsB,EAAE,CAAC;gBAC1D,sBAAsB,GAAG,2CAA2C,CAAC;YACvE,CAAC;iBAAM,IAAI,mBAAmB,KAAK,qBAAqB,EAAE,CAAC;gBACzD,sBAAsB,GAAG,8BAA8B,CAAC;YAC1D,CAAC;iBAAM,IAAI,mBAAmB,KAAK,4BAA4B,EAAE,CAAC;gBAChE,sBAAsB,GAAG,oCAAoC,CAAC;YAChE,CAAC;iBAAM,IAAI,mBAAmB,KAAK,4BAA4B,EAAE,CAAC;gBAChE,sBAAsB,GAAG,gCAAgC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAC3B,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACpC,MAAM,QAAQ,GAAG,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC;YAC7C,MAAM,aAAa,GAAG,GAAG,KAAK,CAAC,IAAI,QAAQ,CAAC;YAC5C,MAAM,YAAY,GAAG,IAAI,KAAK,4BAA4B,IAAI,IAAI,KAAK,4BAA4B,CAAC;YAEpG,IAAI,KAAK,GAAG,IAAI,CAAC;YACjB,IAAI,IAAI,KAAK,4BAA4B,IAAI,IAAI,KAAK,sBAAsB,IAAI,YAAY,EAAE,CAAC;gBAC7F,cAAc;YAChB,CAAC;iBAAM,IAAI,aAAa,IAAI,QAAQ,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC5D,KAAK,GAAG,QAAQ,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpE,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzD,CAAC;YACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,2BAA2B;QACtD,CAAC,CAAC,EACF,EAAE,CACH,CAAC;QAEF,OAAO,GAAG,CACR,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;YACzB,oBAAC,GAAG,IAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC;gBACpE,oBAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,EAAC,IAAI;oBACtB,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,oBAAoB,GAAG,CAAC,IAAI,cAAc,IAAI,CAAC,CAAC,CAAC,EAAE;oBACrF,YAAY,CACR,CACH;YACL,uBAAuB,CAAC,CAAC,CAAC,CACzB,oBAAC,GAAG,IAAC,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC;gBAC9B,oBAAC,IAAI,IAAC,KAAK,EAAC,MAAM,4DAAwD,CACtE,CACP,CAAC,CAAC,CAAC,CACF,oBAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,SAAS,EAAE,CAAC;gBAEhD,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAE,YAAY,IAC5C,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;oBAClC,MAAM,QAAQ,GAAG,GAAG,GAAG,cAAc,CAAC,MAAM,CAAC;oBAC7C,MAAM,aAAa,GAAG,GAAG,KAAK,CAAC,IAAI,QAAQ,CAAC;oBAC5C,MAAM,YAAY,GAAG,IAAI,KAAK,4BAA4B,IAAI,IAAI,KAAK,4BAA4B,CAAC;oBAEpG,IAAI,KAAK,GAAG,IAAI,CAAC;oBACjB,IAAI,IAAI,KAAK,4BAA4B,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;wBAC7E,cAAc;oBAChB,CAAC;yBAAM,IAAI,YAAY,EAAE,CAAC;wBACxB,cAAc;oBAChB,CAAC;yBAAM,IAAI,aAAa,IAAI,QAAQ,EAAE,CAAC;wBACrC,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC5D,KAAK,GAAG,QAAQ,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACpE,CAAC;yBAAM,CAAC;wBACN,KAAK,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACzD,CAAC;oBAED,MAAM,KAAK,GAAG,YAAY;wBACxB,CAAC,CAAC,aAAa,KAAK,GAAG;4BACrB,CAAC,CAAC,MAAM;4BACR,CAAC,CAAC,SAAS;wBACb,CAAC,CAAC,aAAa,KAAK,GAAG;4BACvB,CAAC,CAAC,IAAI,KAAK,sBAAsB;gCAC/B,CAAC,CAAC,KAAK;gCACP,CAAC,CAAC,IAAI,KAAK,4BAA4B;oCACvC,CAAC,CAAC,MAAM;oCACR,CAAC,CAAC,OAAO;4BACX,CAAC,CAAC,aAAa;gCACf,CAAC,CAAC,QAAQ;gCACV,CAAC,CAAC,SAAS,CAAC;oBAEd,OAAO,CACL,oBAAC,IAAI,IAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK;wBAC1B,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;wBACnC,KAAK,CACD,CACR,CAAC;gBACJ,CAAC,CAAC,CACE;gBAGN,oBAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,QAAQ,EAAE,CAAC,EACX,WAAW,EAAE,CAAC,EACd,WAAW,EAAC,QAAQ,EACpB,SAAS,EAAE,KAAK,EAChB,YAAY,EAAE,KAAK,EACnB,WAAW,EAAE,KAAK,EAClB,UAAU,EAAE,IAAI,EAChB,WAAW,EAAC,SAAS;oBAErB,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,QAAQ,qBAElB;oBACP,oBAAC,GAAG,IAAC,SAAS,EAAE,CAAC,IACd,sBAAsB,CAAC,CAAC,CAAC,CACxB,oBAAC,IAAI,IAAC,KAAK,EAAC,OAAO,IAAE,sBAAsB,CAAQ,CACpD,CAAC,CAAC,CAAC,CACF,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,EAAC,MAAM,sCAErB,CACR,CACG,CACF,CACF,CACP,CACG,CACP,CAAC;IACJ,CAAC;IAED,IAAI,iBAAiB,IAAI,UAAU,EAAE,CAAC;QACpC,8DAA8D;QAC9D,MAAM,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QACrE,MAAM,sBAAsB,GAAG,UAAU,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QACrF,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;YACzB,oBAAC,IAAI,IAAC,KAAK,EAAC,KAAK,EAAC,IAAI,yCAEf;YACP,oBAAC,IAAI,IAAC,KAAK,EAAC,KAAK;;gBAAG,WAAW,CAAQ;YACtC,OAAO;YACR,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,IACpD,mBAAmB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;gBACrC,MAAM,KAAK,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,sBAAsB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC;gBACvF,OAAO,CACL,oBAAC,IAAI,IAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBAC9D,aAAa,KAAK,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;oBACnC,IAAI,CACA,CACR,CAAC;YACJ,CAAC,CAAC,CACE;YACL,CAAC,UAAU,CAAC,SAAS,IAAI,CACxB,oBAAC,GAAG,IAAC,SAAS,EAAE,CAAC;gBACf,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS;;oBACwC,sBAAsB,CAC5E,CACH,CACP;YACA,UAAU,CAAC,SAAS,IAAI,CACvB,oBAAC,GAAG,IAAC,SAAS,EAAE,CAAC;gBACf,oBAAC,IAAI,IAAC,KAAK,EAAC,SAAS,8FAEd,CACH,CACP,CACG,CACP,CAAC;IACJ,CAAC;IAED,OAAO,CACL,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ;QACzB,oBAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,IACjB,2BAA2B,CAAC,CAAC,CAAC,CAC7B,oBAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,KAAK,0BAEf,CACR,CAAC,CAAC,CAAC,CACF;YACG,QAAQ,CAAC,SAAS;YAClB,0BAA0B,CAAC,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC,iBAAiB;YACvF,oBAAC,IAAI,IAAC,IAAI,UAAE,QAAQ,CAAC,QAAQ,CAAQ,CACpC,CACJ,CACI;QACN,OAAO;QACP,2BAA2B,IAAI,CAC9B,oBAAC,IAAI,IAAC,KAAK,EAAC,KAAK,sNAGV,CACR;QACA,QAAQ,CAAC,WAAW,IAAI,oBAAC,WAAW,IAAC,QAAQ,EAAE,QAAQ,CAAC,WAAW,GAAI;QACvE,CAAC,SAAS,IAAI,CAAC,iBAAiB,IAAI,CACnC,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC;YACtC,oBAAC,IAAI,QAAE,2BAA2B,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,oBAAoB,CAAQ;YAC/F,oBAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,IACtC,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACrC,oBAAC,IAAI,IACH,GAAG,EAAE,IAAI,EACT,KAAK,EAAE,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;gBAEpG,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBACrC,IAAI,CACA,CACR,CAAC,CACE,CACF,CACP,CACG,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"ApprovalPrompt.js","sourceRoot":"","sources":["../../../source/components/prompt/ApprovalPrompt.tsx"],"names":[],"mappings":"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"}
@@ -1,44 +1,51 @@
1
1
  import React, { ReactNode } from 'react';
2
2
  import type { ImageRef } from 'ink-prompt';
3
- export type InputMode = 'text' | 'slash_commands' | 'path_completion' | 'settings_completion' | 'settings_value_completion' | 'model_selection' | 'skill_selection' | 'undo_selection' | 'provider_selection';
3
+ import type { MenuController, MenuFrame, MenuInteractionRegistry, MenuState } from '../components/input/menu-types.js';
4
+ export type InputMode = 'text' | 'slash_commands' | 'path_completion' | 'settings_completion' | 'settings_value_completion' | 'model_selection' | 'skill_selection' | 'rewind_selection' | 'provider_selection';
5
+ export declare function frameKindToLegacyMode(kind: MenuFrame['kind'] | undefined): InputMode;
4
6
  interface InputState {
5
7
  input: string;
8
+ stack: MenuState['stack'];
6
9
  mode: InputMode;
7
10
  cursorOffset: number;
8
11
  triggerIndex: number | null;
9
12
  images: ImageRef[];
10
13
  cursorOverride: number | null;
14
+ controller: MenuController;
15
+ interactions: MenuInteractionRegistry;
16
+ menuPromptLabel: string | undefined;
11
17
  }
12
18
  interface InputActions {
13
19
  setInput: (value: string) => void;
14
- /** Replace the entire input buffer and move cursor to end. */
15
20
  replaceInput: (value: string) => void;
16
- setMode: (mode: InputMode) => void;
17
21
  setCursorOffset: (offset: number) => void;
18
- setTriggerIndex: (index: number | null) => void;
19
22
  setImages: React.Dispatch<React.SetStateAction<ImageRef[]>>;
20
23
  setInputAndCursor: (value: string, cursorOffset: number, cursorOverride?: number | null) => void;
21
24
  setCursorOverride: (offset: number | null) => void;
25
+ setMenuPromptLabel: (label: string | undefined) => void;
22
26
  }
23
- export declare const InputProvider: ({ children }: {
27
+ export declare const InputProvider: ({ children, controller: providedController, }: {
24
28
  children: ReactNode;
29
+ controller?: MenuController;
25
30
  }) => React.JSX.Element;
26
31
  export declare const useInputContext: () => {
27
32
  input: string;
33
+ stack: MenuState['stack'];
28
34
  mode: InputMode;
29
35
  cursorOffset: number;
30
36
  triggerIndex: number | null;
31
37
  images: ImageRef[];
32
38
  cursorOverride: number | null;
39
+ controller: MenuController;
40
+ interactions: MenuInteractionRegistry;
41
+ menuPromptLabel: string | undefined;
33
42
  setInput: (value: string) => void;
34
- /** Replace the entire input buffer and move cursor to end. */
35
43
  replaceInput: (value: string) => void;
36
- setMode: (mode: InputMode) => void;
37
44
  setCursorOffset: (offset: number) => void;
38
- setTriggerIndex: (index: number | null) => void;
39
45
  setImages: React.Dispatch<React.SetStateAction<ImageRef[]>>;
40
46
  setInputAndCursor: (value: string, cursorOffset: number, cursorOverride?: number | null) => void;
41
47
  setCursorOverride: (offset: number | null) => void;
48
+ setMenuPromptLabel: (label: string | undefined) => void;
42
49
  };
43
50
  export declare const useInputActions: () => InputActions;
44
51
  export declare const useInputState: () => InputState;
@@ -1 +1 @@
1
- {"version":3,"file":"InputContext.d.ts","sourceRoot":"","sources":["../../source/context/InputContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAA6D,SAAS,EAAE,MAAM,OAAO,CAAC;AACpG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,gBAAgB,GAChB,iBAAiB,GACjB,qBAAqB,GACrB,2BAA2B,GAC3B,iBAAiB,GACjB,iBAAiB,GACjB,gBAAgB,GAChB,oBAAoB,CAAC;AAEzB,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,YAAY;IACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,8DAA8D;IAC9D,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IACnC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAChD,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC5D,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjG,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CACpD;AAKD,eAAO,MAAM,aAAa,iBAAkB;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,sBA6ClE,CAAC;AAEF,eAAO,MAAM,eAAe;WAtEnB,MAAM;UACP,SAAS;kBACD,MAAM;kBACN,MAAM,GAAG,IAAI;YACnB,QAAQ,EAAE;oBACF,MAAM,GAAG,IAAI;cAInB,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;IACjC,8DAA8D;kBAChD,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;aAC5B,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI;qBACjB,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI;qBACxB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI;eACpC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;uBACxC,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI;uBAC7E,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI;CA4DnD,CAAC;AAEF,eAAO,MAAM,eAAe,oBAM3B,CAAC;AAEF,eAAO,MAAM,aAAa,kBAMzB,CAAC"}
1
+ {"version":3,"file":"InputContext.d.ts","sourceRoot":"","sources":["../../source/context/InputContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAOZ,SAAS,EACV,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG3C,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAwBvH,MAAM,MAAM,SAAS,GACjB,MAAM,GACN,gBAAgB,GAChB,iBAAiB,GACjB,qBAAqB,GACrB,2BAA2B,GAC3B,iBAAiB,GACjB,iBAAiB,GACjB,kBAAkB,GAClB,oBAAoB,CAAC;AAEzB,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,GAAG,SAAS,CAqBpF;AAED,UAAU,UAAU;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,cAAc,CAAC;IAC3B,YAAY,EAAE,uBAAuB,CAAC;IACtC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,UAAU,YAAY;IACpB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC5D,iBAAiB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACjG,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACnD,kBAAkB,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;CACzD;AAKD,eAAO,MAAM,aAAa,kDAGvB;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B,sBA+FA,CAAC;AAEF,eAAO,MAAM,eAAe;WAhInB,MAAM;WACN,SAAS,CAAC,OAAO,CAAC;UACnB,SAAS;kBACD,MAAM;kBACN,MAAM,GAAG,IAAI;YACnB,QAAQ,EAAE;oBACF,MAAM,GAAG,IAAI;gBACjB,cAAc;kBACZ,uBAAuB;qBACpB,MAAM,GAAG,SAAS;cAIzB,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;kBACnB,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI;qBACpB,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI;eAC9B,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;uBACxC,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI;uBAC7E,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI;wBAC9B,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI;CAoHxD,CAAC;AAEF,eAAO,MAAM,eAAe,oBAM3B,CAAC;AAEF,eAAO,MAAM,aAAa,kBAMzB,CAAC"}
@@ -1,32 +1,109 @@
1
- import React, { createContext, useContext, useMemo, useState, useCallback } from 'react';
1
+ import React, { createContext, useContext, useMemo, useState, useCallback, useSyncExternalStore, } from 'react';
2
+ import { MenuControllerImpl } from '../components/input/menu-controller.js';
3
+ import { createDefaultTriggerRegistry } from '../components/input/triggers.js';
4
+ const DEFAULT_MENU_COMMANDS = [
5
+ {
6
+ name: '/model',
7
+ description: 'Select a model',
8
+ action: () => { },
9
+ completion: { type: 'model', trigger: '/model ' },
10
+ },
11
+ {
12
+ name: '/settings',
13
+ description: 'Open settings',
14
+ action: () => { },
15
+ completion: { type: 'settings', trigger: '/settings ', resetTrigger: '/settings reset ' },
16
+ },
17
+ {
18
+ name: '/skills',
19
+ description: 'Select a skill',
20
+ action: () => { },
21
+ completion: { type: 'skills', trigger: '/skills ' },
22
+ },
23
+ ];
24
+ export function frameKindToLegacyMode(kind) {
25
+ switch (kind) {
26
+ case 'slash':
27
+ return 'slash_commands';
28
+ case 'path':
29
+ return 'path_completion';
30
+ case 'settings':
31
+ return 'settings_completion';
32
+ case 'settings_value':
33
+ return 'settings_value_completion';
34
+ case 'model':
35
+ return 'model_selection';
36
+ case 'skills':
37
+ return 'skill_selection';
38
+ case 'rewind':
39
+ return 'rewind_selection';
40
+ case 'providers':
41
+ return 'provider_selection';
42
+ default:
43
+ return 'text';
44
+ }
45
+ }
2
46
  const InputStateContext = createContext(undefined);
3
47
  const InputActionsContext = createContext(undefined);
4
- export const InputProvider = ({ children }) => {
5
- const [input, setInput] = useState('');
6
- const [mode, setMode] = useState('text');
7
- const [cursorOffset, setCursorOffset] = useState(0);
8
- const [triggerIndex, setTriggerIndex] = useState(null);
48
+ export const InputProvider = ({ children, controller: providedController, }) => {
49
+ const [controller] = useState(() => providedController ??
50
+ new MenuControllerImpl({ triggerRegistry: createDefaultTriggerRegistry(DEFAULT_MENU_COMMANDS) }));
51
+ const interactions = controller.getInteractionRegistry();
52
+ const subscribe = useCallback((listener) => controller.subscribe(listener), [controller]);
53
+ const getSnapshot = useCallback(() => controller.getSnapshot(), [controller]);
54
+ const snapshot = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);
9
55
  const [images, setImages] = useState([]);
10
56
  const [cursorOverride, setCursorOverride] = useState(null);
57
+ const [menuPromptLabel, setMenuPromptLabel] = useState(undefined);
58
+ const activeFrame = snapshot.stack.at(-1);
59
+ const mode = frameKindToLegacyMode(activeFrame?.kind);
60
+ const triggerIndex = activeFrame && 'binding' in activeFrame ? activeFrame.binding.replacement.start : null;
61
+ const cursorOffset = snapshot.editor.cursor;
62
+ const setInput = useCallback((value) => {
63
+ controller.replaceText(value);
64
+ }, [controller]);
65
+ const setCursorOffset = useCallback((offset) => {
66
+ controller.applyEditorEdit({ type: 'move-cursor', cursor: offset });
67
+ }, [controller]);
11
68
  const setInputAndCursor = useCallback((value, offset, override = null) => {
12
- setInput(value);
13
- setCursorOffset(offset);
69
+ controller.replaceText(value, offset);
14
70
  setCursorOverride(override);
15
- }, []);
71
+ }, [controller]);
16
72
  const replaceInput = useCallback((value) => {
17
- setInputAndCursor(value, value.length);
18
- }, [setInputAndCursor]);
19
- const state = useMemo(() => ({ input, mode, cursorOffset, triggerIndex, images, cursorOverride }), [input, mode, cursorOffset, triggerIndex, images, cursorOverride]);
73
+ controller.replaceText(value);
74
+ }, [controller]);
75
+ const state = useMemo(() => ({
76
+ input: snapshot.editor.text,
77
+ stack: snapshot.stack,
78
+ mode,
79
+ cursorOffset,
80
+ triggerIndex,
81
+ images,
82
+ cursorOverride,
83
+ controller,
84
+ interactions,
85
+ menuPromptLabel,
86
+ }), [
87
+ snapshot.editor.text,
88
+ snapshot.stack,
89
+ mode,
90
+ cursorOffset,
91
+ triggerIndex,
92
+ images,
93
+ cursorOverride,
94
+ controller,
95
+ interactions,
96
+ menuPromptLabel,
97
+ ]);
20
98
  const actions = useMemo(() => ({
21
99
  setInput,
22
100
  replaceInput,
23
- setMode,
24
101
  setCursorOffset,
25
- setTriggerIndex,
26
102
  setImages,
27
103
  setInputAndCursor,
28
104
  setCursorOverride,
29
- }), [replaceInput, setInputAndCursor]);
105
+ setMenuPromptLabel,
106
+ }), [setInput, replaceInput, setCursorOffset, setInputAndCursor, setMenuPromptLabel]);
30
107
  return (React.createElement(InputStateContext.Provider, { value: state },
31
108
  React.createElement(InputActionsContext.Provider, { value: actions }, children)));
32
109
  };
@@ -1 +1 @@
1
- {"version":3,"file":"InputContext.js","sourceRoot":"","sources":["../../source/context/InputContext.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputContext.js","sourceRoot":"","sources":["../../source/context/InputContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EACZ,aAAa,EACb,UAAU,EACV,OAAO,EACP,QAAQ,EACR,WAAW,EACX,oBAAoB,GAErB,MAAM,OAAO,CAAC;AAEf,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAI/E,MAAM,qBAAqB,GAAmB;IAC5C;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,gBAAgB;QAC7B,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;QAChB,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE;KAClD;IACD;QACE,IAAI,EAAE,WAAW;QACjB,WAAW,EAAE,eAAe;QAC5B,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;QAChB,UAAU,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE;KAC1F;IACD;QACE,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,gBAAgB;QAC7B,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC;QAChB,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE;KACpD;CACF,CAAC;AAaF,MAAM,UAAU,qBAAqB,CAAC,IAAmC;IACvE,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,OAAO;YACV,OAAO,gBAAgB,CAAC;QAC1B,KAAK,MAAM;YACT,OAAO,iBAAiB,CAAC;QAC3B,KAAK,UAAU;YACb,OAAO,qBAAqB,CAAC;QAC/B,KAAK,gBAAgB;YACnB,OAAO,2BAA2B,CAAC;QACrC,KAAK,OAAO;YACV,OAAO,iBAAiB,CAAC;QAC3B,KAAK,QAAQ;YACX,OAAO,iBAAiB,CAAC;QAC3B,KAAK,QAAQ;YACX,OAAO,kBAAkB,CAAC;QAC5B,KAAK,WAAW;YACd,OAAO,oBAAoB,CAAC;QAC9B;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC;AAyBD,MAAM,iBAAiB,GAAG,aAAa,CAAyB,SAAS,CAAC,CAAC;AAC3E,MAAM,mBAAmB,GAAG,aAAa,CAA2B,SAAS,CAAC,CAAC;AAE/E,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,QAAQ,EACR,UAAU,EAAE,kBAAkB,GAI/B,EAAE,EAAE;IACH,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAC3B,GAAG,EAAE,CACH,kBAAkB;QAClB,IAAI,kBAAkB,CAAC,EAAE,eAAe,EAAE,4BAA4B,CAAC,qBAAqB,CAAC,EAAE,CAAC,CACnG,CAAC;IACF,MAAM,YAAY,GAAG,UAAU,CAAC,sBAAsB,EAAE,CAAC;IACzD,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,QAAoB,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IACtG,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IAE3E,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAa,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC1E,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAqB,SAAS,CAAC,CAAC;IAEtF,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,WAAW,IAAI,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5G,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;IAE5C,MAAM,QAAQ,GAAG,WAAW,CAC1B,CAAC,KAAa,EAAE,EAAE;QAChB,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,eAAe,GAAG,WAAW,CACjC,CAAC,MAAc,EAAE,EAAE;QACjB,UAAU,CAAC,eAAe,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACtE,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,KAAa,EAAE,MAAc,EAAE,QAAQ,GAAkB,IAAI,EAAE,EAAE;QAChE,UAAU,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,YAAY,GAAG,WAAW,CAC9B,CAAC,KAAa,EAAE,EAAE;QAChB,UAAU,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAC,CAAC;QACL,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI;QAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,IAAI;QACJ,YAAY;QACZ,YAAY;QACZ,MAAM;QACN,cAAc;QACd,UAAU;QACV,YAAY;QACZ,eAAe;KAChB,CAAC,EACF;QACE,QAAQ,CAAC,MAAM,CAAC,IAAI;QACpB,QAAQ,CAAC,KAAK;QACd,IAAI;QACJ,YAAY;QACZ,YAAY;QACZ,MAAM;QACN,cAAc;QACd,UAAU;QACV,YAAY;QACZ,eAAe;KAChB,CACF,CAAC;IAEF,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE,CAAC,CAAC;QACL,QAAQ;QACR,YAAY;QACZ,eAAe;QACf,SAAS;QACT,iBAAiB;QACjB,iBAAiB;QACjB,kBAAkB;KACnB,CAAC,EACF,CAAC,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,kBAAkB,CAAC,CACjF,CAAC;IAEF,OAAO,CACL,oBAAC,iBAAiB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK;QACtC,oBAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,OAAO,IAAG,QAAQ,CAAgC,CAC5D,CAC9B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,KAAK,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,OAAO,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAChD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,KAAK,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}