@qduc/term2 0.7.3 → 0.8.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 (2435) hide show
  1. package/dist/agent.d.ts +2 -0
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +31 -31
  4. package/dist/agent.js.map +1 -1
  5. package/dist/agent.test.js +167 -130
  6. package/dist/agent.test.js.map +1 -1
  7. package/dist/app-helpers.d.ts +12 -0
  8. package/dist/app-helpers.d.ts.map +1 -0
  9. package/dist/app-helpers.js +36 -0
  10. package/dist/app-helpers.js.map +1 -0
  11. package/dist/app-helpers.test.d.ts +2 -0
  12. package/dist/app-helpers.test.d.ts.map +1 -0
  13. package/dist/app-helpers.test.js +62 -0
  14. package/dist/app-helpers.test.js.map +1 -0
  15. package/dist/app.applyRuntimeSetting.test.d.ts +2 -0
  16. package/dist/app.applyRuntimeSetting.test.d.ts.map +1 -0
  17. package/dist/app.applyRuntimeSetting.test.js +57 -0
  18. package/dist/app.applyRuntimeSetting.test.js.map +1 -0
  19. package/dist/app.d.ts +8 -20
  20. package/dist/app.d.ts.map +1 -1
  21. package/dist/app.js +84 -261
  22. package/dist/app.js.map +1 -1
  23. package/dist/app.navigate-question.test.d.ts +2 -0
  24. package/dist/app.navigate-question.test.d.ts.map +1 -0
  25. package/dist/app.navigate-question.test.js +194 -0
  26. package/dist/app.navigate-question.test.js.map +1 -0
  27. package/dist/app.parseInput.test.js +11 -11
  28. package/dist/app.parseInput.test.js.map +1 -1
  29. package/dist/app.startup-banner.test.js +5 -36
  30. package/dist/app.startup-banner.test.js.map +1 -1
  31. package/dist/app.test.d.ts +2 -0
  32. package/dist/app.test.d.ts.map +1 -0
  33. package/dist/app.test.js +377 -0
  34. package/dist/app.test.js.map +1 -0
  35. package/dist/cli.integration.test.js +31 -31
  36. package/dist/cli.integration.test.js.map +1 -1
  37. package/dist/cli.js +28 -20
  38. package/dist/cli.js.map +1 -1
  39. package/dist/commands/auto-approve-command.d.ts +1 -1
  40. package/dist/commands/auto-approve-command.d.ts.map +1 -1
  41. package/dist/commands/auto-approve-command.js +1 -1
  42. package/dist/commands/copy-command.d.ts +1 -1
  43. package/dist/commands/copy-command.d.ts.map +1 -1
  44. package/dist/commands/copy-command.js +1 -1
  45. package/dist/commands/copy-command.js.map +1 -1
  46. package/dist/commands/effort-command.d.ts +1 -1
  47. package/dist/commands/effort-command.d.ts.map +1 -1
  48. package/dist/commands/effort-command.js +1 -1
  49. package/dist/commands/guarded-settings-command.d.ts +1 -1
  50. package/dist/commands/guarded-settings-command.d.ts.map +1 -1
  51. package/dist/commands/handoff-command.d.ts +1 -1
  52. package/dist/commands/handoff-command.d.ts.map +1 -1
  53. package/dist/commands/handoff-command.js +1 -1
  54. package/dist/commands/handoff-command.js.map +1 -1
  55. package/dist/commands/mode-commands.d.ts +1 -1
  56. package/dist/commands/mode-commands.d.ts.map +1 -1
  57. package/dist/commands/model-command.d.ts +1 -1
  58. package/dist/commands/model-command.d.ts.map +1 -1
  59. package/dist/commands/model-command.js +2 -2
  60. package/dist/commands/model-command.js.map +1 -1
  61. package/dist/commands/skills-command.d.ts +9 -0
  62. package/dist/commands/skills-command.d.ts.map +1 -0
  63. package/dist/commands/skills-command.js +23 -0
  64. package/dist/commands/skills-command.js.map +1 -0
  65. package/dist/commands/skills-command.test.d.ts +2 -0
  66. package/dist/commands/skills-command.test.d.ts.map +1 -0
  67. package/dist/commands/skills-command.test.js +104 -0
  68. package/dist/commands/skills-command.test.js.map +1 -0
  69. package/dist/components/ApprovalPrompt.ask-user.test.js +100 -6
  70. package/dist/components/ApprovalPrompt.ask-user.test.js.map +1 -1
  71. package/dist/components/ApprovalPrompt.d.ts +2 -0
  72. package/dist/components/ApprovalPrompt.d.ts.map +1 -1
  73. package/dist/components/ApprovalPrompt.js +72 -16
  74. package/dist/components/ApprovalPrompt.js.map +1 -1
  75. package/dist/components/BottomArea.d.ts +6 -0
  76. package/dist/components/BottomArea.d.ts.map +1 -1
  77. package/dist/components/BottomArea.js +36 -10
  78. package/dist/components/BottomArea.js.map +1 -1
  79. package/dist/components/BottomArea.test.js +69 -0
  80. package/dist/components/BottomArea.test.js.map +1 -1
  81. package/dist/components/ChatMessage.test.d.ts +2 -0
  82. package/dist/components/ChatMessage.test.d.ts.map +1 -0
  83. package/dist/components/ChatMessage.test.js +20 -0
  84. package/dist/components/ChatMessage.test.js.map +1 -0
  85. package/dist/components/CommandMessage.d.ts +1 -0
  86. package/dist/components/CommandMessage.d.ts.map +1 -1
  87. package/dist/components/CommandMessage.js +528 -114
  88. package/dist/components/CommandMessage.js.map +1 -1
  89. package/dist/components/CommandMessage.test.js +526 -1
  90. package/dist/components/CommandMessage.test.js.map +1 -1
  91. package/dist/components/Common/MenuContainer.d.ts.map +1 -1
  92. package/dist/components/Common/MenuContainer.js.map +1 -1
  93. package/dist/components/Common/MenuContainer.test.d.ts.map +1 -1
  94. package/dist/components/Common/MenuContainer.test.js +24 -53
  95. package/dist/components/Common/MenuContainer.test.js.map +1 -1
  96. package/dist/components/Common/ScrollableTabBar.d.ts.map +1 -1
  97. package/dist/components/Common/ScrollableTabBar.js.map +1 -1
  98. package/dist/components/Common/compute-visible-tabs.d.ts.map +1 -1
  99. package/dist/components/Common/compute-visible-tabs.js.map +1 -1
  100. package/dist/components/Common/compute-visible-tabs.test.d.ts.map +1 -1
  101. package/dist/components/Common/compute-visible-tabs.test.js +28 -28
  102. package/dist/components/Common/compute-visible-tabs.test.js.map +1 -1
  103. package/dist/components/ErrorBoundary.d.ts +1 -1
  104. package/dist/components/ErrorBoundary.d.ts.map +1 -1
  105. package/dist/components/ErrorBoundary.test.js +21 -16
  106. package/dist/components/ErrorBoundary.test.js.map +1 -1
  107. package/dist/components/Input/PopupManager.d.ts +9 -1
  108. package/dist/components/Input/PopupManager.d.ts.map +1 -1
  109. package/dist/components/Input/PopupManager.js +10 -8
  110. package/dist/components/Input/PopupManager.js.map +1 -1
  111. package/dist/components/Input/determine-active-menu.d.ts +3 -0
  112. package/dist/components/Input/determine-active-menu.d.ts.map +1 -1
  113. package/dist/components/Input/determine-active-menu.js +10 -2
  114. package/dist/components/Input/determine-active-menu.js.map +1 -1
  115. package/dist/components/Input/input-width.d.ts.map +1 -1
  116. package/dist/components/Input/input-width.js.map +1 -1
  117. package/dist/components/Input/input-width.test.d.ts +2 -0
  118. package/dist/components/Input/input-width.test.d.ts.map +1 -0
  119. package/dist/components/Input/input-width.test.js +23 -0
  120. package/dist/components/Input/input-width.test.js.map +1 -0
  121. package/dist/components/Input/insertions.d.ts +8 -0
  122. package/dist/components/Input/insertions.d.ts.map +1 -1
  123. package/dist/components/Input/insertions.js +12 -0
  124. package/dist/components/Input/insertions.js.map +1 -1
  125. package/dist/components/Input/insertions.test.d.ts +2 -0
  126. package/dist/components/Input/insertions.test.d.ts.map +1 -0
  127. package/dist/components/Input/insertions.test.js +25 -0
  128. package/dist/components/Input/insertions.test.js.map +1 -0
  129. package/dist/components/Input/popup-key-navigation.d.ts.map +1 -1
  130. package/dist/components/Input/popup-key-navigation.js.map +1 -1
  131. package/dist/components/Input/popup-key-navigation.test.d.ts.map +1 -1
  132. package/dist/components/Input/popup-key-navigation.test.js +21 -21
  133. package/dist/components/Input/popup-key-navigation.test.js.map +1 -1
  134. package/dist/components/Input/popup-props.d.ts +3 -1
  135. package/dist/components/Input/popup-props.d.ts.map +1 -1
  136. package/dist/components/Input/popup-props.js +8 -1
  137. package/dist/components/Input/popup-props.js.map +1 -1
  138. package/dist/components/Input/popup-props.test.d.ts.map +1 -1
  139. package/dist/components/Input/popup-props.test.js +10 -3
  140. package/dist/components/Input/popup-props.test.js.map +1 -1
  141. package/dist/components/Input/triggers.d.ts +1 -0
  142. package/dist/components/Input/triggers.d.ts.map +1 -1
  143. package/dist/components/Input/triggers.js +1 -0
  144. package/dist/components/Input/triggers.js.map +1 -1
  145. package/dist/components/InputBox.d.ts +5 -3
  146. package/dist/components/InputBox.d.ts.map +1 -1
  147. package/dist/components/InputBox.js +129 -32
  148. package/dist/components/InputBox.js.map +1 -1
  149. package/dist/components/InputBox.menu-logic.test.js +51 -33
  150. package/dist/components/InputBox.menu-logic.test.js.map +1 -1
  151. package/dist/components/InputBox.test.js +372 -180
  152. package/dist/components/InputBox.test.js.map +1 -1
  153. package/dist/components/MarkdownRenderer.test.d.ts +2 -0
  154. package/dist/components/MarkdownRenderer.test.d.ts.map +1 -0
  155. package/dist/components/MarkdownRenderer.test.js +292 -0
  156. package/dist/components/MarkdownRenderer.test.js.map +1 -0
  157. package/dist/components/MessageList.d.ts.map +1 -1
  158. package/dist/components/MessageList.js +42 -15
  159. package/dist/components/MessageList.js.map +1 -1
  160. package/dist/components/MessageList.test.js +99 -0
  161. package/dist/components/MessageList.test.js.map +1 -1
  162. package/dist/components/ModelSelectionMenu.d.ts.map +1 -1
  163. package/dist/components/ModelSelectionMenu.js +15 -6
  164. package/dist/components/ModelSelectionMenu.js.map +1 -1
  165. package/dist/components/ProviderSelectionMenu.d.ts.map +1 -1
  166. package/dist/components/ProviderSelectionMenu.js +14 -0
  167. package/dist/components/ProviderSelectionMenu.js.map +1 -1
  168. package/dist/components/ProviderSelectionMenu.test.js +20 -0
  169. package/dist/components/ProviderSelectionMenu.test.js.map +1 -1
  170. package/dist/components/SubagentActivityMessage.d.ts.map +1 -1
  171. package/dist/components/SubagentActivityMessage.js +11 -2
  172. package/dist/components/SubagentActivityMessage.js.map +1 -1
  173. package/dist/components/command-message-helpers.d.ts +83 -0
  174. package/dist/components/command-message-helpers.d.ts.map +1 -0
  175. package/dist/components/command-message-helpers.js +598 -0
  176. package/dist/components/command-message-helpers.js.map +1 -0
  177. package/dist/components/command-message-helpers.test.d.ts +2 -0
  178. package/dist/components/command-message-helpers.test.d.ts.map +1 -0
  179. package/dist/components/command-message-helpers.test.js +222 -0
  180. package/dist/components/command-message-helpers.test.js.map +1 -0
  181. package/dist/components/layout/Banner.d.ts +9 -0
  182. package/dist/components/layout/Banner.d.ts.map +1 -0
  183. package/dist/components/layout/Banner.js +91 -0
  184. package/dist/components/layout/Banner.js.map +1 -0
  185. package/dist/components/layout/BottomArea.d.ts +68 -0
  186. package/dist/components/layout/BottomArea.d.ts.map +1 -0
  187. package/dist/components/layout/BottomArea.js +81 -0
  188. package/dist/components/layout/BottomArea.js.map +1 -0
  189. package/dist/components/layout/BottomArea.test.d.ts +2 -0
  190. package/dist/components/layout/BottomArea.test.d.ts.map +1 -0
  191. package/dist/components/layout/BottomArea.test.js +232 -0
  192. package/dist/components/layout/BottomArea.test.js.map +1 -0
  193. package/dist/components/layout/DiffView.d.ts +7 -0
  194. package/dist/components/layout/DiffView.d.ts.map +1 -0
  195. package/dist/components/layout/DiffView.js +80 -0
  196. package/dist/components/layout/DiffView.js.map +1 -0
  197. package/dist/components/layout/DiffView.test.d.ts +2 -0
  198. package/dist/components/layout/DiffView.test.d.ts.map +1 -0
  199. package/dist/components/layout/DiffView.test.js +47 -0
  200. package/dist/components/layout/DiffView.test.js.map +1 -0
  201. package/dist/components/layout/StatusBar.d.ts +20 -0
  202. package/dist/components/layout/StatusBar.d.ts.map +1 -0
  203. package/dist/components/layout/StatusBar.js +129 -0
  204. package/dist/components/layout/StatusBar.js.map +1 -0
  205. package/dist/components/layout/StatusBar.test.d.ts +2 -0
  206. package/dist/components/layout/StatusBar.test.d.ts.map +1 -0
  207. package/dist/components/layout/StatusBar.test.js +121 -0
  208. package/dist/components/layout/StatusBar.test.js.map +1 -0
  209. package/dist/components/menu/ModelSelectionMenu.d.ts +18 -0
  210. package/dist/components/menu/ModelSelectionMenu.d.ts.map +1 -0
  211. package/dist/components/menu/ModelSelectionMenu.js +45 -0
  212. package/dist/components/menu/ModelSelectionMenu.js.map +1 -0
  213. package/dist/components/menu/ModelSelectionMenu.test.d.ts +2 -0
  214. package/dist/components/menu/ModelSelectionMenu.test.d.ts.map +1 -0
  215. package/dist/components/menu/ModelSelectionMenu.test.js +86 -0
  216. package/dist/components/menu/ModelSelectionMenu.test.js.map +1 -0
  217. package/dist/components/menu/PathSelectionMenu.d.ts +15 -0
  218. package/dist/components/menu/PathSelectionMenu.d.ts.map +1 -0
  219. package/dist/components/menu/PathSelectionMenu.js +17 -0
  220. package/dist/components/menu/PathSelectionMenu.js.map +1 -0
  221. package/dist/components/menu/PathSelectionMenu.test.d.ts +2 -0
  222. package/dist/components/menu/PathSelectionMenu.test.d.ts.map +1 -0
  223. package/dist/components/menu/PathSelectionMenu.test.js +23 -0
  224. package/dist/components/menu/PathSelectionMenu.test.js.map +1 -0
  225. package/dist/components/menu/ProviderSelectionMenu.d.ts +15 -0
  226. package/dist/components/menu/ProviderSelectionMenu.d.ts.map +1 -0
  227. package/dist/components/menu/ProviderSelectionMenu.js +186 -0
  228. package/dist/components/menu/ProviderSelectionMenu.js.map +1 -0
  229. package/dist/components/menu/ProviderSelectionMenu.test.d.ts +2 -0
  230. package/dist/components/menu/ProviderSelectionMenu.test.d.ts.map +1 -0
  231. package/dist/components/menu/ProviderSelectionMenu.test.js +71 -0
  232. package/dist/components/menu/ProviderSelectionMenu.test.js.map +1 -0
  233. package/dist/components/menu/SettingsSelectionMenu.d.ts +14 -0
  234. package/dist/components/menu/SettingsSelectionMenu.d.ts.map +1 -0
  235. package/dist/components/menu/SettingsSelectionMenu.js +76 -0
  236. package/dist/components/menu/SettingsSelectionMenu.js.map +1 -0
  237. package/dist/components/menu/SettingsSelectionMenu.scroll.test.d.ts +2 -0
  238. package/dist/components/menu/SettingsSelectionMenu.scroll.test.d.ts.map +1 -0
  239. package/dist/components/menu/SettingsSelectionMenu.scroll.test.js +122 -0
  240. package/dist/components/menu/SettingsSelectionMenu.scroll.test.js.map +1 -0
  241. package/dist/components/menu/SettingsSelectionMenu.test.d.ts +2 -0
  242. package/dist/components/menu/SettingsSelectionMenu.test.d.ts.map +1 -0
  243. package/dist/components/menu/SettingsSelectionMenu.test.js +50 -0
  244. package/dist/components/menu/SettingsSelectionMenu.test.js.map +1 -0
  245. package/dist/components/menu/SettingsValueSelectionMenu.d.ts +13 -0
  246. package/dist/components/menu/SettingsValueSelectionMenu.d.ts.map +1 -0
  247. package/dist/components/menu/SettingsValueSelectionMenu.js +37 -0
  248. package/dist/components/menu/SettingsValueSelectionMenu.js.map +1 -0
  249. package/dist/components/menu/SettingsValueSelectionMenu.test.d.ts +2 -0
  250. package/dist/components/menu/SettingsValueSelectionMenu.test.d.ts.map +1 -0
  251. package/dist/components/menu/SettingsValueSelectionMenu.test.js +42 -0
  252. package/dist/components/menu/SettingsValueSelectionMenu.test.js.map +1 -0
  253. package/dist/components/menu/SkillSelectionMenu.d.ts +11 -0
  254. package/dist/components/menu/SkillSelectionMenu.d.ts.map +1 -0
  255. package/dist/components/menu/SkillSelectionMenu.js +38 -0
  256. package/dist/components/menu/SkillSelectionMenu.js.map +1 -0
  257. package/dist/components/menu/SkillSelectionMenu.test.d.ts +2 -0
  258. package/dist/components/menu/SkillSelectionMenu.test.d.ts.map +1 -0
  259. package/dist/components/menu/SkillSelectionMenu.test.js +114 -0
  260. package/dist/components/menu/SkillSelectionMenu.test.js.map +1 -0
  261. package/dist/components/menu/SlashCommandMenu.d.ts +11 -0
  262. package/dist/components/menu/SlashCommandMenu.d.ts.map +1 -0
  263. package/dist/components/menu/SlashCommandMenu.js +17 -0
  264. package/dist/components/menu/SlashCommandMenu.js.map +1 -0
  265. package/dist/components/menu/UndoSelectionMenu.d.ts +12 -0
  266. package/dist/components/menu/UndoSelectionMenu.d.ts.map +1 -0
  267. package/dist/components/menu/UndoSelectionMenu.js +19 -0
  268. package/dist/components/menu/UndoSelectionMenu.js.map +1 -0
  269. package/dist/components/menu/UndoSelectionMenu.test.d.ts +2 -0
  270. package/dist/components/menu/UndoSelectionMenu.test.d.ts.map +1 -0
  271. package/dist/components/menu/UndoSelectionMenu.test.js +35 -0
  272. package/dist/components/menu/UndoSelectionMenu.test.js.map +1 -0
  273. package/dist/components/message/ChatMessage.d.ts +8 -0
  274. package/dist/components/message/ChatMessage.d.ts.map +1 -0
  275. package/dist/components/message/ChatMessage.js +11 -0
  276. package/dist/components/message/ChatMessage.js.map +1 -0
  277. package/dist/components/message/ChatMessage.test.d.ts +2 -0
  278. package/dist/components/message/ChatMessage.test.d.ts.map +1 -0
  279. package/dist/components/message/ChatMessage.test.js +29 -0
  280. package/dist/components/message/ChatMessage.test.js.map +1 -0
  281. package/dist/components/message/CommandMessage.d.ts +18 -0
  282. package/dist/components/message/CommandMessage.d.ts.map +1 -0
  283. package/dist/components/message/CommandMessage.js +708 -0
  284. package/dist/components/message/CommandMessage.js.map +1 -0
  285. package/dist/components/message/CommandMessage.test.d.ts +2 -0
  286. package/dist/components/message/CommandMessage.test.d.ts.map +1 -0
  287. package/dist/components/message/CommandMessage.test.js +1017 -0
  288. package/dist/components/message/CommandMessage.test.js.map +1 -0
  289. package/dist/components/message/MessageList.d.ts +32 -0
  290. package/dist/components/message/MessageList.d.ts.map +1 -0
  291. package/dist/components/message/MessageList.js +233 -0
  292. package/dist/components/message/MessageList.js.map +1 -0
  293. package/dist/components/message/MessageList.test.d.ts +2 -0
  294. package/dist/components/message/MessageList.test.d.ts.map +1 -0
  295. package/dist/components/message/MessageList.test.js +562 -0
  296. package/dist/components/message/MessageList.test.js.map +1 -0
  297. package/dist/components/message/SubagentActivityMessage.d.ts +13 -0
  298. package/dist/components/message/SubagentActivityMessage.d.ts.map +1 -0
  299. package/dist/components/message/SubagentActivityMessage.js +72 -0
  300. package/dist/components/message/SubagentActivityMessage.js.map +1 -0
  301. package/dist/components/message/SubagentActivityMessage.test.d.ts +2 -0
  302. package/dist/components/message/SubagentActivityMessage.test.d.ts.map +1 -0
  303. package/dist/components/message/SubagentActivityMessage.test.js +191 -0
  304. package/dist/components/message/SubagentActivityMessage.test.js.map +1 -0
  305. package/dist/components/message/command-message-helpers.d.ts +84 -0
  306. package/dist/components/message/command-message-helpers.d.ts.map +1 -0
  307. package/dist/components/message/command-message-helpers.js +624 -0
  308. package/dist/components/message/command-message-helpers.js.map +1 -0
  309. package/dist/components/message/command-message-helpers.test.d.ts +2 -0
  310. package/dist/components/message/command-message-helpers.test.d.ts.map +1 -0
  311. package/dist/components/message/command-message-helpers.test.js +227 -0
  312. package/dist/components/message/command-message-helpers.test.js.map +1 -0
  313. package/dist/components/prompt/ApprovalPrompt.ask-user.test.d.ts +2 -0
  314. package/dist/components/prompt/ApprovalPrompt.ask-user.test.d.ts.map +1 -0
  315. package/dist/components/prompt/ApprovalPrompt.ask-user.test.js +285 -0
  316. package/dist/components/prompt/ApprovalPrompt.ask-user.test.js.map +1 -0
  317. package/dist/components/prompt/ApprovalPrompt.d.ts +14 -0
  318. package/dist/components/prompt/ApprovalPrompt.d.ts.map +1 -0
  319. package/dist/components/prompt/ApprovalPrompt.js +374 -0
  320. package/dist/components/prompt/ApprovalPrompt.js.map +1 -0
  321. package/dist/components/prompt/HandoffConfirmationPrompt.d.ts +9 -0
  322. package/dist/components/prompt/HandoffConfirmationPrompt.d.ts.map +1 -0
  323. package/dist/components/prompt/HandoffConfirmationPrompt.js +38 -0
  324. package/dist/components/prompt/HandoffConfirmationPrompt.js.map +1 -0
  325. package/dist/components/prompt/HandoffConfirmationPrompt.test.d.ts +2 -0
  326. package/dist/components/prompt/HandoffConfirmationPrompt.test.d.ts.map +1 -0
  327. package/dist/components/prompt/HandoffConfirmationPrompt.test.js +23 -0
  328. package/dist/components/prompt/HandoffConfirmationPrompt.test.js.map +1 -0
  329. package/dist/components/prompt/InputSurgeConfirmationPrompt.d.ts +9 -0
  330. package/dist/components/prompt/InputSurgeConfirmationPrompt.d.ts.map +1 -0
  331. package/dist/components/prompt/InputSurgeConfirmationPrompt.js +44 -0
  332. package/dist/components/prompt/InputSurgeConfirmationPrompt.js.map +1 -0
  333. package/dist/components/prompt/InputSurgeConfirmationPrompt.test.d.ts +2 -0
  334. package/dist/components/prompt/InputSurgeConfirmationPrompt.test.d.ts.map +1 -0
  335. package/dist/components/prompt/InputSurgeConfirmationPrompt.test.js +33 -0
  336. package/dist/components/prompt/InputSurgeConfirmationPrompt.test.js.map +1 -0
  337. package/dist/components/prompt/LargeUncachedConfirmationPrompt.d.ts +10 -0
  338. package/dist/components/prompt/LargeUncachedConfirmationPrompt.d.ts.map +1 -0
  339. package/dist/components/prompt/LargeUncachedConfirmationPrompt.js +49 -0
  340. package/dist/components/prompt/LargeUncachedConfirmationPrompt.js.map +1 -0
  341. package/dist/components/prompt/LargeUncachedConfirmationPrompt.test.d.ts +2 -0
  342. package/dist/components/prompt/LargeUncachedConfirmationPrompt.test.d.ts.map +1 -0
  343. package/dist/components/prompt/LargeUncachedConfirmationPrompt.test.js +41 -0
  344. package/dist/components/prompt/LargeUncachedConfirmationPrompt.test.js.map +1 -0
  345. package/dist/components/prompt/StandardModeConfirmationPrompt.d.ts +9 -0
  346. package/dist/components/prompt/StandardModeConfirmationPrompt.d.ts.map +1 -0
  347. package/dist/components/prompt/StandardModeConfirmationPrompt.js +38 -0
  348. package/dist/components/prompt/StandardModeConfirmationPrompt.js.map +1 -0
  349. package/dist/context/InputContext.d.ts +7 -1
  350. package/dist/context/InputContext.d.ts.map +1 -1
  351. package/dist/context/InputContext.images.test.js +12 -10
  352. package/dist/context/InputContext.images.test.js.map +1 -1
  353. package/dist/context/InputContext.js +17 -3
  354. package/dist/context/InputContext.js.map +1 -1
  355. package/dist/context/InputContext.stability.test.js +9 -11
  356. package/dist/context/InputContext.stability.test.js.map +1 -1
  357. package/dist/context/InputContext.test.js +125 -69
  358. package/dist/context/InputContext.test.js.map +1 -1
  359. package/dist/contracts/conversation.d.ts +2 -2
  360. package/dist/contracts/conversation.d.ts.map +1 -1
  361. package/dist/env-setup.test.js +3 -3
  362. package/dist/env-setup.test.js.map +1 -1
  363. package/dist/hooks/conversation-ui-reducer.ask-user-bugfix.test.d.ts +2 -0
  364. package/dist/hooks/conversation-ui-reducer.ask-user-bugfix.test.d.ts.map +1 -0
  365. package/dist/hooks/conversation-ui-reducer.ask-user-bugfix.test.js +160 -0
  366. package/dist/hooks/conversation-ui-reducer.ask-user-bugfix.test.js.map +1 -0
  367. package/dist/hooks/conversation-ui-reducer.d.ts +149 -0
  368. package/dist/hooks/conversation-ui-reducer.d.ts.map +1 -0
  369. package/dist/hooks/conversation-ui-reducer.js +259 -0
  370. package/dist/hooks/conversation-ui-reducer.js.map +1 -0
  371. package/dist/hooks/conversation-ui-reducer.multi-select.test.d.ts +2 -0
  372. package/dist/hooks/conversation-ui-reducer.multi-select.test.d.ts.map +1 -0
  373. package/dist/hooks/conversation-ui-reducer.multi-select.test.js +123 -0
  374. package/dist/hooks/conversation-ui-reducer.multi-select.test.js.map +1 -0
  375. package/dist/hooks/conversation-ui-reducer.test.d.ts +2 -0
  376. package/dist/hooks/conversation-ui-reducer.test.d.ts.map +1 -0
  377. package/dist/hooks/conversation-ui-reducer.test.js +280 -0
  378. package/dist/hooks/conversation-ui-reducer.test.js.map +1 -0
  379. package/dist/hooks/handoff-flow-reducer.d.ts +37 -0
  380. package/dist/hooks/handoff-flow-reducer.d.ts.map +1 -0
  381. package/dist/hooks/handoff-flow-reducer.js +58 -0
  382. package/dist/hooks/handoff-flow-reducer.js.map +1 -0
  383. package/dist/hooks/message-id.test.js +10 -10
  384. package/dist/hooks/message-id.test.js.map +1 -1
  385. package/dist/hooks/path-completion-filter.test.js +40 -40
  386. package/dist/hooks/path-completion-filter.test.js.map +1 -1
  387. package/dist/hooks/use-app-commands.d.ts +7 -4
  388. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  389. package/dist/hooks/use-app-commands.js +6 -2
  390. package/dist/hooks/use-app-commands.js.map +1 -1
  391. package/dist/hooks/use-app-commands.test.js +162 -119
  392. package/dist/hooks/use-app-commands.test.js.map +1 -1
  393. package/dist/hooks/use-conversation-messages.d.ts +27 -0
  394. package/dist/hooks/use-conversation-messages.d.ts.map +1 -0
  395. package/dist/hooks/use-conversation-messages.js +67 -0
  396. package/dist/hooks/use-conversation-messages.js.map +1 -0
  397. package/dist/hooks/use-conversation-messages.test.d.ts +2 -0
  398. package/dist/hooks/use-conversation-messages.test.d.ts.map +1 -0
  399. package/dist/hooks/use-conversation-messages.test.js +154 -0
  400. package/dist/hooks/use-conversation-messages.test.js.map +1 -0
  401. package/dist/hooks/use-conversation-settings.d.ts +17 -0
  402. package/dist/hooks/use-conversation-settings.d.ts.map +1 -0
  403. package/dist/hooks/use-conversation-settings.js +23 -0
  404. package/dist/hooks/use-conversation-settings.js.map +1 -0
  405. package/dist/hooks/use-conversation-settings.test.d.ts +2 -0
  406. package/dist/hooks/use-conversation-settings.test.d.ts.map +1 -0
  407. package/dist/hooks/use-conversation-settings.test.js +82 -0
  408. package/dist/hooks/use-conversation-settings.test.js.map +1 -0
  409. package/dist/hooks/use-conversation.approval-pending-filter.test.d.ts +2 -0
  410. package/dist/hooks/use-conversation.approval-pending-filter.test.d.ts.map +1 -0
  411. package/dist/hooks/use-conversation.approval-pending-filter.test.js +59 -0
  412. package/dist/hooks/use-conversation.approval-pending-filter.test.js.map +1 -0
  413. package/dist/hooks/use-conversation.ask-user-multi-select.test.d.ts +2 -0
  414. package/dist/hooks/use-conversation.ask-user-multi-select.test.d.ts.map +1 -0
  415. package/dist/hooks/use-conversation.ask-user-multi-select.test.js +159 -0
  416. package/dist/hooks/use-conversation.ask-user-multi-select.test.js.map +1 -0
  417. package/dist/hooks/use-conversation.clear.test.js +66 -32
  418. package/dist/hooks/use-conversation.clear.test.js.map +1 -1
  419. package/dist/hooks/use-conversation.d.ts +21 -54
  420. package/dist/hooks/use-conversation.d.ts.map +1 -1
  421. package/dist/hooks/use-conversation.js +192 -227
  422. package/dist/hooks/use-conversation.js.map +1 -1
  423. package/dist/hooks/use-conversation.resume.test.js +10 -8
  424. package/dist/hooks/use-conversation.resume.test.js.map +1 -1
  425. package/dist/hooks/use-escape-key.d.ts +1 -1
  426. package/dist/hooks/use-escape-key.d.ts.map +1 -1
  427. package/dist/hooks/use-escape-key.js +9 -1
  428. package/dist/hooks/use-escape-key.js.map +1 -1
  429. package/dist/hooks/use-escape-key.test.js +90 -62
  430. package/dist/hooks/use-escape-key.test.js.map +1 -1
  431. package/dist/hooks/use-handoff-flow.d.ts +30 -0
  432. package/dist/hooks/use-handoff-flow.d.ts.map +1 -0
  433. package/dist/hooks/use-handoff-flow.js +155 -0
  434. package/dist/hooks/use-handoff-flow.js.map +1 -0
  435. package/dist/hooks/use-handoff-flow.test.d.ts +2 -0
  436. package/dist/hooks/use-handoff-flow.test.d.ts.map +1 -0
  437. package/dist/hooks/use-handoff-flow.test.js +237 -0
  438. package/dist/hooks/use-handoff-flow.test.js.map +1 -0
  439. package/dist/hooks/use-input-history.test.js +7 -9
  440. package/dist/hooks/use-input-history.test.js.map +1 -1
  441. package/dist/hooks/use-mode-handlers.d.ts +7 -1
  442. package/dist/hooks/use-mode-handlers.d.ts.map +1 -1
  443. package/dist/hooks/use-mode-handlers.js +23 -2
  444. package/dist/hooks/use-mode-handlers.js.map +1 -1
  445. package/dist/hooks/use-mode-handlers.test.js +14 -5
  446. package/dist/hooks/use-mode-handlers.test.js.map +1 -1
  447. package/dist/hooks/use-model-selection.d.ts +2 -2
  448. package/dist/hooks/use-model-selection.d.ts.map +1 -1
  449. package/dist/hooks/use-model-selection.js +12 -10
  450. package/dist/hooks/use-model-selection.js.map +1 -1
  451. package/dist/hooks/use-model-selection.test.js +49 -75
  452. package/dist/hooks/use-model-selection.test.js.map +1 -1
  453. package/dist/hooks/use-path-completion.test.js +10 -10
  454. package/dist/hooks/use-path-completion.test.js.map +1 -1
  455. package/dist/hooks/use-pending-turn-guards.d.ts +43 -0
  456. package/dist/hooks/use-pending-turn-guards.d.ts.map +1 -0
  457. package/dist/hooks/use-pending-turn-guards.js +120 -0
  458. package/dist/hooks/use-pending-turn-guards.js.map +1 -0
  459. package/dist/hooks/use-pending-turn-guards.test.d.ts +2 -0
  460. package/dist/hooks/use-pending-turn-guards.test.d.ts.map +1 -0
  461. package/dist/hooks/use-pending-turn-guards.test.js +314 -0
  462. package/dist/hooks/use-pending-turn-guards.test.js.map +1 -0
  463. package/dist/hooks/use-provider-selection.d.ts +10 -15
  464. package/dist/hooks/use-provider-selection.d.ts.map +1 -1
  465. package/dist/hooks/use-provider-selection.js +143 -219
  466. package/dist/hooks/use-provider-selection.js.map +1 -1
  467. package/dist/hooks/use-provider-selection.test.js +207 -141
  468. package/dist/hooks/use-provider-selection.test.js.map +1 -1
  469. package/dist/hooks/use-runtime-settings.d.ts +2 -2
  470. package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
  471. package/dist/hooks/use-runtime-settings.js +5 -1
  472. package/dist/hooks/use-runtime-settings.js.map +1 -1
  473. package/dist/hooks/use-runtime-settings.test.js +6 -7
  474. package/dist/hooks/use-runtime-settings.test.js.map +1 -1
  475. package/dist/hooks/use-selection.test.js +37 -37
  476. package/dist/hooks/use-selection.test.js.map +1 -1
  477. package/dist/hooks/use-setting.d.ts +1 -1
  478. package/dist/hooks/use-setting.d.ts.map +1 -1
  479. package/dist/hooks/use-settings-completion.d.ts +1 -1
  480. package/dist/hooks/use-settings-completion.d.ts.map +1 -1
  481. package/dist/hooks/use-settings-completion.js +4 -1
  482. package/dist/hooks/use-settings-completion.js.map +1 -1
  483. package/dist/hooks/use-settings-completion.scroll.test.js +19 -19
  484. package/dist/hooks/use-settings-completion.scroll.test.js.map +1 -1
  485. package/dist/hooks/use-settings-completion.test.js +105 -105
  486. package/dist/hooks/use-settings-completion.test.js.map +1 -1
  487. package/dist/hooks/use-settings-value-completion.d.ts +1 -1
  488. package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
  489. package/dist/hooks/use-settings-value-completion.js +9 -1
  490. package/dist/hooks/use-settings-value-completion.js.map +1 -1
  491. package/dist/hooks/use-settings-value-completion.test.js +91 -80
  492. package/dist/hooks/use-settings-value-completion.test.js.map +1 -1
  493. package/dist/hooks/use-shell-mode.d.ts +2 -2
  494. package/dist/hooks/use-shell-mode.d.ts.map +1 -1
  495. package/dist/hooks/use-shell-mode.js +17 -8
  496. package/dist/hooks/use-shell-mode.js.map +1 -1
  497. package/dist/hooks/use-skill-selection.d.ts +22 -0
  498. package/dist/hooks/use-skill-selection.d.ts.map +1 -0
  499. package/dist/hooks/use-skill-selection.js +67 -0
  500. package/dist/hooks/use-skill-selection.js.map +1 -0
  501. package/dist/hooks/use-skill-selection.test.d.ts +2 -0
  502. package/dist/hooks/use-skill-selection.test.d.ts.map +1 -0
  503. package/dist/hooks/use-skill-selection.test.js +68 -0
  504. package/dist/hooks/use-skill-selection.test.js.map +1 -0
  505. package/dist/hooks/use-slash-commands.d.ts +2 -1
  506. package/dist/hooks/use-slash-commands.d.ts.map +1 -1
  507. package/dist/hooks/use-slash-commands.js +12 -6
  508. package/dist/hooks/use-slash-commands.js.map +1 -1
  509. package/dist/hooks/use-slash-commands.test.js +81 -67
  510. package/dist/hooks/use-slash-commands.test.js.map +1 -1
  511. package/dist/hooks/use-terminal-focus-notifier.d.ts +14 -0
  512. package/dist/hooks/use-terminal-focus-notifier.d.ts.map +1 -0
  513. package/dist/hooks/use-terminal-focus-notifier.js +70 -0
  514. package/dist/hooks/use-terminal-focus-notifier.js.map +1 -0
  515. package/dist/hooks/use-terminal-focus-notifier.test.d.ts +2 -0
  516. package/dist/hooks/use-terminal-focus-notifier.test.d.ts.map +1 -0
  517. package/dist/hooks/use-terminal-focus-notifier.test.js +138 -0
  518. package/dist/hooks/use-terminal-focus-notifier.test.js.map +1 -0
  519. package/dist/hooks/use-terminal-width.js +1 -1
  520. package/dist/hooks/use-trigger-detection.d.ts +6 -1
  521. package/dist/hooks/use-trigger-detection.d.ts.map +1 -1
  522. package/dist/hooks/use-trigger-detection.js +35 -14
  523. package/dist/hooks/use-trigger-detection.js.map +1 -1
  524. package/dist/hooks/use-trigger-detection.test.js +56 -14
  525. package/dist/hooks/use-trigger-detection.test.js.map +1 -1
  526. package/dist/lib/agent-chat-service.d.ts +36 -0
  527. package/dist/lib/agent-chat-service.d.ts.map +1 -0
  528. package/dist/lib/agent-chat-service.js +181 -0
  529. package/dist/lib/agent-chat-service.js.map +1 -0
  530. package/dist/lib/agent-chat-service.test.d.ts +2 -0
  531. package/dist/lib/agent-chat-service.test.d.ts.map +1 -0
  532. package/dist/lib/agent-chat-service.test.js +155 -0
  533. package/dist/lib/agent-chat-service.test.js.map +1 -0
  534. package/dist/lib/agent-client.d.ts +76 -0
  535. package/dist/lib/agent-client.d.ts.map +1 -0
  536. package/dist/lib/agent-client.js +190 -0
  537. package/dist/lib/agent-client.js.map +1 -0
  538. package/dist/lib/agent-configuration.d.ts +72 -0
  539. package/dist/lib/agent-configuration.d.ts.map +1 -0
  540. package/dist/lib/agent-configuration.js +202 -0
  541. package/dist/lib/agent-configuration.js.map +1 -0
  542. package/dist/lib/agent-configuration.test.d.ts +2 -0
  543. package/dist/lib/agent-configuration.test.d.ts.map +1 -0
  544. package/dist/lib/agent-configuration.test.js +332 -0
  545. package/dist/lib/agent-configuration.test.js.map +1 -0
  546. package/dist/lib/agent-factory.d.ts +34 -0
  547. package/dist/lib/agent-factory.d.ts.map +1 -0
  548. package/dist/lib/agent-factory.js +240 -0
  549. package/dist/lib/agent-factory.js.map +1 -0
  550. package/dist/lib/agent-factory.test.d.ts +2 -0
  551. package/dist/lib/agent-factory.test.d.ts.map +1 -0
  552. package/dist/lib/agent-factory.test.js +175 -0
  553. package/dist/lib/agent-factory.test.js.map +1 -0
  554. package/dist/lib/agent-run-orchestrator.d.ts +38 -0
  555. package/dist/lib/agent-run-orchestrator.d.ts.map +1 -0
  556. package/dist/lib/agent-run-orchestrator.js +262 -0
  557. package/dist/lib/agent-run-orchestrator.js.map +1 -0
  558. package/dist/lib/agent-run-orchestrator.test.d.ts +2 -0
  559. package/dist/lib/agent-run-orchestrator.test.d.ts.map +1 -0
  560. package/dist/lib/agent-run-orchestrator.test.js +237 -0
  561. package/dist/lib/agent-run-orchestrator.test.js.map +1 -0
  562. package/dist/lib/ask-user-answer-store.d.ts +9 -0
  563. package/dist/lib/ask-user-answer-store.d.ts.map +1 -0
  564. package/dist/lib/ask-user-answer-store.js +19 -0
  565. package/dist/lib/ask-user-answer-store.js.map +1 -0
  566. package/dist/lib/ask-user-answer-store.test.d.ts +2 -0
  567. package/dist/lib/ask-user-answer-store.test.d.ts.map +1 -0
  568. package/dist/lib/ask-user-answer-store.test.js +41 -0
  569. package/dist/lib/ask-user-answer-store.test.js.map +1 -0
  570. package/dist/lib/chained-input-filter.d.ts +23 -0
  571. package/dist/lib/chained-input-filter.d.ts.map +1 -0
  572. package/dist/lib/chained-input-filter.js +93 -0
  573. package/dist/lib/chained-input-filter.js.map +1 -0
  574. package/dist/lib/chained-input-filter.test.d.ts +2 -0
  575. package/dist/lib/chained-input-filter.test.d.ts.map +1 -0
  576. package/dist/lib/chained-input-filter.test.js +198 -0
  577. package/dist/lib/chained-input-filter.test.js.map +1 -0
  578. package/dist/lib/editor-impl.d.ts.map +1 -1
  579. package/dist/lib/editor-impl.js +22 -5
  580. package/dist/lib/editor-impl.js.map +1 -1
  581. package/dist/lib/editor-impl.test.js +33 -33
  582. package/dist/lib/editor-impl.test.js.map +1 -1
  583. package/dist/lib/openai-agent-client.chat.test.js +18 -18
  584. package/dist/lib/openai-agent-client.chat.test.js.map +1 -1
  585. package/dist/lib/openai-agent-client.d.ts +30 -41
  586. package/dist/lib/openai-agent-client.d.ts.map +1 -1
  587. package/dist/lib/openai-agent-client.flex-tier.test.js +16 -16
  588. package/dist/lib/openai-agent-client.flex-tier.test.js.map +1 -1
  589. package/dist/lib/openai-agent-client.js +258 -531
  590. package/dist/lib/openai-agent-client.js.map +1 -1
  591. package/dist/lib/openai-agent-client.public-methods.test.js +443 -188
  592. package/dist/lib/openai-agent-client.public-methods.test.js.map +1 -1
  593. package/dist/lib/openai-agent-client.test.js +100 -168
  594. package/dist/lib/openai-agent-client.test.js.map +1 -1
  595. package/dist/lib/openai-strict-tool-schema.test.js +9 -9
  596. package/dist/lib/openai-strict-tool-schema.test.js.map +1 -1
  597. package/dist/lib/retry-executor.d.ts.map +1 -1
  598. package/dist/lib/retry-executor.js +10 -65
  599. package/dist/lib/retry-executor.js.map +1 -1
  600. package/dist/lib/retry-executor.test.js +36 -38
  601. package/dist/lib/retry-executor.test.js.map +1 -1
  602. package/dist/lib/runner-manager.d.ts +22 -0
  603. package/dist/lib/runner-manager.d.ts.map +1 -0
  604. package/dist/lib/runner-manager.js +56 -0
  605. package/dist/lib/runner-manager.js.map +1 -0
  606. package/dist/lib/runner-manager.test.d.ts +2 -0
  607. package/dist/lib/runner-manager.test.d.ts.map +1 -0
  608. package/dist/lib/runner-manager.test.js +136 -0
  609. package/dist/lib/runner-manager.test.js.map +1 -0
  610. package/dist/lib/subagent-bridge.d.ts +45 -0
  611. package/dist/lib/subagent-bridge.d.ts.map +1 -0
  612. package/dist/lib/subagent-bridge.js +122 -0
  613. package/dist/lib/subagent-bridge.js.map +1 -0
  614. package/dist/lib/subagent-bridge.test.d.ts +2 -0
  615. package/dist/lib/subagent-bridge.test.d.ts.map +1 -0
  616. package/dist/lib/subagent-bridge.test.js +183 -0
  617. package/dist/lib/subagent-bridge.test.js.map +1 -0
  618. package/dist/lib/tool-interceptor-registry.d.ts +11 -0
  619. package/dist/lib/tool-interceptor-registry.d.ts.map +1 -0
  620. package/dist/lib/tool-interceptor-registry.js +35 -0
  621. package/dist/lib/tool-interceptor-registry.js.map +1 -0
  622. package/dist/lib/tool-interceptor-registry.test.d.ts +2 -0
  623. package/dist/lib/tool-interceptor-registry.test.d.ts.map +1 -0
  624. package/dist/lib/tool-interceptor-registry.test.js +108 -0
  625. package/dist/lib/tool-interceptor-registry.test.js.map +1 -0
  626. package/dist/lib/tool-invoke.d.ts +38 -2
  627. package/dist/lib/tool-invoke.d.ts.map +1 -1
  628. package/dist/lib/tool-invoke.js +76 -5
  629. package/dist/lib/tool-invoke.js.map +1 -1
  630. package/dist/lib/tool-invoke.test.js +136 -97
  631. package/dist/lib/tool-invoke.test.js.map +1 -1
  632. package/dist/lib/tool-selection-policy.test.js +43 -43
  633. package/dist/lib/tool-selection-policy.test.js.map +1 -1
  634. package/dist/non-interactive.d.ts +14 -7
  635. package/dist/non-interactive.d.ts.map +1 -1
  636. package/dist/non-interactive.js +15 -7
  637. package/dist/non-interactive.js.map +1 -1
  638. package/dist/non-interactive.test.js +67 -58
  639. package/dist/non-interactive.test.js.map +1 -1
  640. package/dist/prompts/gpt-5-modern.md +7 -8
  641. package/dist/prompts/gpt-5.4-mini.md +113 -0
  642. package/dist/prompts/gpt-5.5.md +59 -56
  643. package/dist/prompts/kimi.md +87 -0
  644. package/dist/prompts/mentor-addon.md +41 -40
  645. package/dist/prompts/orchestrator.md +5 -9
  646. package/dist/prompts/plan-mode-info.md +23 -14
  647. package/dist/prompts/prompt-constructor.d.ts.map +1 -1
  648. package/dist/prompts/prompt-constructor.js +9 -8
  649. package/dist/prompts/prompt-constructor.js.map +1 -1
  650. package/dist/prompts/prompt-constructor.test.js +42 -48
  651. package/dist/prompts/prompt-constructor.test.js.map +1 -1
  652. package/dist/prompts/prompt-constructor.test.ts +42 -49
  653. package/dist/prompts/prompt-constructor.ts +9 -8
  654. package/dist/prompts/prompt-profiles.d.ts.map +1 -1
  655. package/dist/prompts/prompt-profiles.js +7 -6
  656. package/dist/prompts/prompt-profiles.js.map +1 -1
  657. package/dist/prompts/prompt-profiles.ts +7 -6
  658. package/dist/prompts/prompt-selector.test.js +1 -1
  659. package/dist/prompts/prompt-selector.test.ts +1 -1
  660. package/dist/prompts/reasoning-efficiency.test.js +7 -7
  661. package/dist/prompts/reasoning-efficiency.test.js.map +1 -1
  662. package/dist/prompts/reasoning-efficiency.test.ts +7 -7
  663. package/dist/prompts/search-via-shell.test.js +22 -22
  664. package/dist/prompts/search-via-shell.test.js.map +1 -1
  665. package/dist/prompts/search-via-shell.test.ts +22 -22
  666. package/dist/prompts/simple.md +53 -33
  667. package/dist/prompts/simple_prev.md +33 -0
  668. package/dist/prompts/simple_prev2.md +33 -0
  669. package/dist/prompts/simple_v2.md +84 -0
  670. package/dist/prompts/simple_v3.md +267 -0
  671. package/dist/prompts/subagent-delegation.d.ts.map +1 -1
  672. package/dist/prompts/subagent-delegation.js +6 -4
  673. package/dist/prompts/subagent-delegation.js.map +1 -1
  674. package/dist/prompts/subagent-delegation.test.js +29 -22
  675. package/dist/prompts/subagent-delegation.test.js.map +1 -1
  676. package/dist/prompts/subagent-delegation.test.ts +30 -22
  677. package/dist/prompts/subagent-delegation.ts +6 -4
  678. package/dist/prompts/subagents/mentor-mode.md +20 -0
  679. package/dist/prompts/subagents/mentor.md +12 -2
  680. package/dist/prompts/subagents/worktree-hygiene.md +1 -1
  681. package/dist/prompts/worktree-hygiene.md +4 -3
  682. package/dist/providers/ai-sdk-agents-adapter.test.js +17 -17
  683. package/dist/providers/ai-sdk-agents-adapter.test.js.map +1 -1
  684. package/dist/providers/ai-sdk-anthropic.provider.test.js +34 -34
  685. package/dist/providers/ai-sdk-anthropic.provider.test.js.map +1 -1
  686. package/dist/providers/ai-sdk-message-normalizer.d.ts.map +1 -1
  687. package/dist/providers/ai-sdk-message-normalizer.js +13 -1
  688. package/dist/providers/ai-sdk-message-normalizer.js.map +1 -1
  689. package/dist/providers/ai-sdk-message-normalizer.test.js +32 -26
  690. package/dist/providers/ai-sdk-message-normalizer.test.js.map +1 -1
  691. package/dist/providers/ai-sdk-openrouter.provider.test.js +11 -11
  692. package/dist/providers/ai-sdk-openrouter.provider.test.js.map +1 -1
  693. package/dist/providers/anthropic-middleware.test.js +29 -29
  694. package/dist/providers/anthropic-middleware.test.js.map +1 -1
  695. package/dist/providers/codex-responses-model.d.ts +17 -5
  696. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  697. package/dist/providers/codex-responses-model.js +568 -12
  698. package/dist/providers/codex-responses-model.js.map +1 -1
  699. package/dist/providers/codex-responses-model.test.js +729 -98
  700. package/dist/providers/codex-responses-model.test.js.map +1 -1
  701. package/dist/providers/codex.provider.d.ts.map +1 -1
  702. package/dist/providers/codex.provider.js +23 -17
  703. package/dist/providers/codex.provider.js.map +1 -1
  704. package/dist/providers/codex.provider.test.js +131 -123
  705. package/dist/providers/codex.provider.test.js.map +1 -1
  706. package/dist/providers/common/openai-compatible-messages.d.ts.map +1 -1
  707. package/dist/providers/common/openai-compatible-messages.js +7 -0
  708. package/dist/providers/common/openai-compatible-messages.js.map +1 -1
  709. package/dist/providers/common/openai-compatible-messages.test.js +46 -42
  710. package/dist/providers/common/openai-compatible-messages.test.js.map +1 -1
  711. package/dist/providers/common/provider-errors.d.ts +9 -0
  712. package/dist/providers/common/provider-errors.d.ts.map +1 -1
  713. package/dist/providers/common/provider-errors.js +13 -0
  714. package/dist/providers/common/provider-errors.js.map +1 -1
  715. package/dist/providers/custom-provider-adapter.test.js +30 -22
  716. package/dist/providers/custom-provider-adapter.test.js.map +1 -1
  717. package/dist/providers/fallback-responses-model.d.ts +27 -3
  718. package/dist/providers/fallback-responses-model.d.ts.map +1 -1
  719. package/dist/providers/fallback-responses-model.js +189 -266
  720. package/dist/providers/fallback-responses-model.js.map +1 -1
  721. package/dist/providers/fallback-responses-model.test.js +495 -175
  722. package/dist/providers/fallback-responses-model.test.js.map +1 -1
  723. package/dist/providers/fetch/composer.d.ts +3 -3
  724. package/dist/providers/fetch/composer.d.ts.map +1 -1
  725. package/dist/providers/fetch/composer.js +11 -3
  726. package/dist/providers/fetch/composer.js.map +1 -1
  727. package/dist/providers/fetch/composer.test.js +158 -61
  728. package/dist/providers/fetch/composer.test.js.map +1 -1
  729. package/dist/providers/fetch/logging-middleware.d.ts +2 -3
  730. package/dist/providers/fetch/logging-middleware.d.ts.map +1 -1
  731. package/dist/providers/fetch/logging-middleware.js +16 -93
  732. package/dist/providers/fetch/logging-middleware.js.map +1 -1
  733. package/dist/providers/fetch/rate-limit-middleware.d.ts +15 -0
  734. package/dist/providers/fetch/rate-limit-middleware.d.ts.map +1 -0
  735. package/dist/providers/fetch/rate-limit-middleware.js +55 -0
  736. package/dist/providers/fetch/rate-limit-middleware.js.map +1 -0
  737. package/dist/providers/index.d.ts +1 -1
  738. package/dist/providers/index.d.ts.map +1 -1
  739. package/dist/providers/index.js +1 -1
  740. package/dist/providers/index.js.map +1 -1
  741. package/dist/providers/openai-compatible-lazy.d.ts.map +1 -1
  742. package/dist/providers/openai-compatible-lazy.js +1 -0
  743. package/dist/providers/openai-compatible-lazy.js.map +1 -1
  744. package/dist/providers/openai-compatible-middleware.d.ts.map +1 -1
  745. package/dist/providers/openai-compatible-middleware.js +9 -0
  746. package/dist/providers/openai-compatible-middleware.js.map +1 -1
  747. package/dist/providers/openai-compatible.provider.d.ts +2 -1
  748. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  749. package/dist/providers/openai-compatible.provider.js +18 -8
  750. package/dist/providers/openai-compatible.provider.js.map +1 -1
  751. package/dist/providers/openai-compatible.provider.test.js +223 -217
  752. package/dist/providers/openai-compatible.provider.test.js.map +1 -1
  753. package/dist/providers/openai.provider.d.ts +3 -3
  754. package/dist/providers/openai.provider.d.ts.map +1 -1
  755. package/dist/providers/openai.provider.js +32 -24
  756. package/dist/providers/openai.provider.js.map +1 -1
  757. package/dist/providers/openai.provider.test.js +46 -12
  758. package/dist/providers/openai.provider.test.js.map +1 -1
  759. package/dist/providers/opencode.provider.test.js +71 -71
  760. package/dist/providers/opencode.provider.test.js.map +1 -1
  761. package/dist/providers/openrouter.provider.createRunner.test.js +35 -33
  762. package/dist/providers/openrouter.provider.createRunner.test.js.map +1 -1
  763. package/dist/providers/openrouter.provider.js +1 -1
  764. package/dist/providers/openrouter.provider.js.map +1 -1
  765. package/dist/providers/openrouter.provider.request-preprocessing.test.js +6 -6
  766. package/dist/providers/openrouter.provider.request-preprocessing.test.js.map +1 -1
  767. package/dist/providers/provider-service.d.ts +37 -0
  768. package/dist/providers/provider-service.d.ts.map +1 -0
  769. package/dist/providers/provider-service.js +192 -0
  770. package/dist/providers/provider-service.js.map +1 -0
  771. package/dist/providers/provider-service.test.d.ts +2 -0
  772. package/dist/providers/provider-service.test.d.ts.map +1 -0
  773. package/dist/providers/provider-service.test.js +233 -0
  774. package/dist/providers/provider-service.test.js.map +1 -0
  775. package/dist/providers/registry.d.ts +7 -0
  776. package/dist/providers/registry.d.ts.map +1 -1
  777. package/dist/providers/registry.js +25 -0
  778. package/dist/providers/registry.js.map +1 -1
  779. package/dist/providers/registry.test.js +71 -46
  780. package/dist/providers/registry.test.js.map +1 -1
  781. package/dist/providers/retrying-model.d.ts +21 -0
  782. package/dist/providers/retrying-model.d.ts.map +1 -0
  783. package/dist/providers/retrying-model.js +95 -0
  784. package/dist/providers/retrying-model.js.map +1 -0
  785. package/dist/providers/retrying-model.test.d.ts +2 -0
  786. package/dist/providers/retrying-model.test.d.ts.map +1 -0
  787. package/dist/providers/retrying-model.test.js +103 -0
  788. package/dist/providers/retrying-model.test.js.map +1 -0
  789. package/dist/providers/web-search/exa.provider.test.js +22 -23
  790. package/dist/providers/web-search/exa.provider.test.js.map +1 -1
  791. package/dist/providers/web-search/registry.test.js +32 -33
  792. package/dist/providers/web-search/registry.test.js.map +1 -1
  793. package/dist/providers/web-search/tavily.provider.test.js +22 -23
  794. package/dist/providers/web-search/tavily.provider.test.js.map +1 -1
  795. package/dist/scripts/eval-auto-approval/dataset.d.ts +3 -3
  796. package/dist/scripts/eval-auto-approval/dataset.test.js +19 -19
  797. package/dist/scripts/eval-auto-approval/dataset.test.js.map +1 -1
  798. package/dist/scripts/eval-auto-approval/leaderboard.test.js +87 -83
  799. package/dist/scripts/eval-auto-approval/leaderboard.test.js.map +1 -1
  800. package/dist/scripts/eval-auto-approval/metrics.test.js +13 -13
  801. package/dist/scripts/eval-auto-approval/metrics.test.js.map +1 -1
  802. package/dist/scripts/eval-auto-approval/report.test.js +3 -3
  803. package/dist/scripts/eval-auto-approval/report.test.js.map +1 -1
  804. package/dist/scripts/eval-auto-approval/runner-utils.test.js +30 -38
  805. package/dist/scripts/eval-auto-approval/runner-utils.test.js.map +1 -1
  806. package/dist/scripts/eval-auto-approval/runner.js +6 -6
  807. package/dist/scripts/eval-auto-approval/runner.js.map +1 -1
  808. package/dist/scripts/extract-provider-traffic.js +1 -1
  809. package/dist/scripts/extract-provider-traffic.js.map +1 -1
  810. package/dist/services/agent-stream.d.ts +2 -11
  811. package/dist/services/agent-stream.d.ts.map +1 -1
  812. package/dist/services/approval/approval-decision-policy.d.ts +20 -0
  813. package/dist/services/approval/approval-decision-policy.d.ts.map +1 -0
  814. package/dist/services/approval/approval-decision-policy.js +21 -0
  815. package/dist/services/approval/approval-decision-policy.js.map +1 -0
  816. package/dist/services/approval/approval-decision-policy.test.d.ts +2 -0
  817. package/dist/services/approval/approval-decision-policy.test.d.ts.map +1 -0
  818. package/dist/services/approval/approval-decision-policy.test.js +149 -0
  819. package/dist/services/approval/approval-decision-policy.test.js.map +1 -0
  820. package/dist/services/approval/approval-flow-coordinator.d.ts +61 -0
  821. package/dist/services/approval/approval-flow-coordinator.d.ts.map +1 -0
  822. package/dist/services/approval/approval-flow-coordinator.js +167 -0
  823. package/dist/services/approval/approval-flow-coordinator.js.map +1 -0
  824. package/dist/services/approval/approval-flow-coordinator.test.d.ts +2 -0
  825. package/dist/services/approval/approval-flow-coordinator.test.d.ts.map +1 -0
  826. package/dist/services/approval/approval-flow-coordinator.test.js +314 -0
  827. package/dist/services/approval/approval-flow-coordinator.test.js.map +1 -0
  828. package/dist/services/approval/approval-presentation-policy.d.ts +17 -0
  829. package/dist/services/approval/approval-presentation-policy.d.ts.map +1 -0
  830. package/dist/services/approval/approval-presentation-policy.js +44 -0
  831. package/dist/services/approval/approval-presentation-policy.js.map +1 -0
  832. package/dist/services/approval/approval-presentation-policy.test.d.ts +2 -0
  833. package/dist/services/approval/approval-presentation-policy.test.d.ts.map +1 -0
  834. package/dist/services/approval/approval-presentation-policy.test.js +74 -0
  835. package/dist/services/approval/approval-presentation-policy.test.js.map +1 -0
  836. package/dist/services/approval/approval-state.d.ts +52 -0
  837. package/dist/services/approval/approval-state.d.ts.map +1 -0
  838. package/dist/services/approval/approval-state.js +53 -0
  839. package/dist/services/approval/approval-state.js.map +1 -0
  840. package/dist/services/approval/approval-state.test.d.ts +2 -0
  841. package/dist/services/approval/approval-state.test.d.ts.map +1 -0
  842. package/dist/services/approval/approval-state.test.js +83 -0
  843. package/dist/services/approval/approval-state.test.js.map +1 -0
  844. package/dist/services/approval/shell-auto-approval-evaluator.d.ts +25 -0
  845. package/dist/services/approval/shell-auto-approval-evaluator.d.ts.map +1 -0
  846. package/dist/services/approval/shell-auto-approval-evaluator.js +401 -0
  847. package/dist/services/approval/shell-auto-approval-evaluator.js.map +1 -0
  848. package/dist/services/approval/shell-auto-approval-evaluator.test.d.ts +2 -0
  849. package/dist/services/approval/shell-auto-approval-evaluator.test.d.ts.map +1 -0
  850. package/dist/services/approval/shell-auto-approval-evaluator.test.js +437 -0
  851. package/dist/services/approval/shell-auto-approval-evaluator.test.js.map +1 -0
  852. package/dist/services/approval/shell-auto-approval-resolver.d.ts +25 -0
  853. package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -0
  854. package/dist/services/approval/shell-auto-approval-resolver.js +61 -0
  855. package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -0
  856. package/dist/services/approval/shell-auto-approval-resolver.test.d.ts +2 -0
  857. package/dist/services/approval/shell-auto-approval-resolver.test.d.ts.map +1 -0
  858. package/dist/services/approval/shell-auto-approval-resolver.test.js +120 -0
  859. package/dist/services/approval/shell-auto-approval-resolver.test.js.map +1 -0
  860. package/dist/services/approval/tool-approval-batch-coordinator.d.ts +39 -0
  861. package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -0
  862. package/dist/services/approval/tool-approval-batch-coordinator.js +114 -0
  863. package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -0
  864. package/dist/services/approval/tool-approval-policy-registry.d.ts +25 -0
  865. package/dist/services/approval/tool-approval-policy-registry.d.ts.map +1 -0
  866. package/dist/services/approval/tool-approval-policy-registry.js +26 -0
  867. package/dist/services/approval/tool-approval-policy-registry.js.map +1 -0
  868. package/dist/services/approval/tool-owner.d.ts +11 -0
  869. package/dist/services/approval/tool-owner.d.ts.map +1 -0
  870. package/dist/services/approval/tool-owner.js +58 -0
  871. package/dist/services/approval/tool-owner.js.map +1 -0
  872. package/dist/services/approval-continuation-runner.d.ts +59 -0
  873. package/dist/services/approval-continuation-runner.d.ts.map +1 -0
  874. package/dist/services/approval-continuation-runner.js +193 -0
  875. package/dist/services/approval-continuation-runner.js.map +1 -0
  876. package/dist/services/approval-flow-coordinator.d.ts +18 -3
  877. package/dist/services/approval-flow-coordinator.d.ts.map +1 -1
  878. package/dist/services/approval-flow-coordinator.js +25 -58
  879. package/dist/services/approval-flow-coordinator.js.map +1 -1
  880. package/dist/services/approval-flow-coordinator.test.js +64 -83
  881. package/dist/services/approval-flow-coordinator.test.js.map +1 -1
  882. package/dist/services/approval-state.d.ts +17 -2
  883. package/dist/services/approval-state.d.ts.map +1 -1
  884. package/dist/services/approval-state.js +5 -0
  885. package/dist/services/approval-state.js.map +1 -1
  886. package/dist/services/approval-state.test.js.map +1 -1
  887. package/dist/services/auto-approval-continuation-resolver.d.ts +31 -0
  888. package/dist/services/auto-approval-continuation-resolver.d.ts.map +1 -0
  889. package/dist/services/auto-approval-continuation-resolver.js +111 -0
  890. package/dist/services/auto-approval-continuation-resolver.js.map +1 -0
  891. package/dist/services/command-message-streaming.d.ts +1 -1
  892. package/dist/services/command-message-streaming.d.ts.map +1 -1
  893. package/dist/services/command-message-streaming.js +1 -1
  894. package/dist/services/command-message-streaming.js.map +1 -1
  895. package/dist/services/command-message-streaming.test.js +14 -14
  896. package/dist/services/command-message-streaming.test.js.map +1 -1
  897. package/dist/services/continuation-driver.d.ts +85 -0
  898. package/dist/services/continuation-driver.d.ts.map +1 -0
  899. package/dist/services/continuation-driver.js +426 -0
  900. package/dist/services/continuation-driver.js.map +1 -0
  901. package/dist/services/continuation-driver.test.d.ts +2 -0
  902. package/dist/services/continuation-driver.test.d.ts.map +1 -0
  903. package/dist/services/continuation-driver.test.js +503 -0
  904. package/dist/services/continuation-driver.test.js.map +1 -0
  905. package/dist/services/conversation/conversation-adapter-factory.d.ts +12 -0
  906. package/dist/services/conversation/conversation-adapter-factory.d.ts.map +1 -0
  907. package/dist/services/conversation/conversation-adapter-factory.js +18 -0
  908. package/dist/services/conversation/conversation-adapter-factory.js.map +1 -0
  909. package/dist/services/conversation/conversation-adapter.d.ts +43 -0
  910. package/dist/services/conversation/conversation-adapter.d.ts.map +1 -0
  911. package/dist/services/conversation/conversation-adapter.js +151 -0
  912. package/dist/services/conversation/conversation-adapter.js.map +1 -0
  913. package/dist/services/conversation/conversation-adapter.test.d.ts +2 -0
  914. package/dist/services/conversation/conversation-adapter.test.d.ts.map +1 -0
  915. package/dist/services/conversation/conversation-adapter.test.js +65 -0
  916. package/dist/services/conversation/conversation-adapter.test.js.map +1 -0
  917. package/dist/services/conversation/conversation-clear-save.test.d.ts +2 -0
  918. package/dist/services/conversation/conversation-clear-save.test.d.ts.map +1 -0
  919. package/dist/services/conversation/conversation-clear-save.test.js +56 -0
  920. package/dist/services/conversation/conversation-clear-save.test.js.map +1 -0
  921. package/dist/services/conversation/conversation-events.d.ts +160 -0
  922. package/dist/services/conversation/conversation-events.d.ts.map +1 -0
  923. package/dist/services/conversation/conversation-events.js +2 -0
  924. package/dist/services/conversation/conversation-events.js.map +1 -0
  925. package/dist/services/conversation/conversation-history-repair.d.ts +25 -0
  926. package/dist/services/conversation/conversation-history-repair.d.ts.map +1 -0
  927. package/dist/services/conversation/conversation-history-repair.js +282 -0
  928. package/dist/services/conversation/conversation-history-repair.js.map +1 -0
  929. package/dist/services/conversation/conversation-history-repair.test.d.ts +2 -0
  930. package/dist/services/conversation/conversation-history-repair.test.d.ts.map +1 -0
  931. package/dist/services/conversation/conversation-history-repair.test.js +79 -0
  932. package/dist/services/conversation/conversation-history-repair.test.js.map +1 -0
  933. package/dist/services/conversation/conversation-integration.test.d.ts +2 -0
  934. package/dist/services/conversation/conversation-integration.test.d.ts.map +1 -0
  935. package/dist/services/conversation/conversation-integration.test.js +273 -0
  936. package/dist/services/conversation/conversation-integration.test.js.map +1 -0
  937. package/dist/services/conversation/conversation-persistence-types.d.ts +46 -0
  938. package/dist/services/conversation/conversation-persistence-types.d.ts.map +1 -0
  939. package/dist/services/conversation/conversation-persistence-types.js +2 -0
  940. package/dist/services/conversation/conversation-persistence-types.js.map +1 -0
  941. package/dist/services/conversation/conversation-persistence.d.ts +60 -0
  942. package/dist/services/conversation/conversation-persistence.d.ts.map +1 -0
  943. package/dist/services/conversation/conversation-persistence.js +455 -0
  944. package/dist/services/conversation/conversation-persistence.js.map +1 -0
  945. package/dist/services/conversation/conversation-persistence.test.d.ts +2 -0
  946. package/dist/services/conversation/conversation-persistence.test.d.ts.map +1 -0
  947. package/dist/services/conversation/conversation-persistence.test.js +1073 -0
  948. package/dist/services/conversation/conversation-persistence.test.js.map +1 -0
  949. package/dist/services/conversation/conversation-replay.d.ts +26 -0
  950. package/dist/services/conversation/conversation-replay.d.ts.map +1 -0
  951. package/dist/services/conversation/conversation-replay.js +998 -0
  952. package/dist/services/conversation/conversation-replay.js.map +1 -0
  953. package/dist/services/conversation/conversation-replay.test.d.ts +2 -0
  954. package/dist/services/conversation/conversation-replay.test.d.ts.map +1 -0
  955. package/dist/services/conversation/conversation-replay.test.js +1221 -0
  956. package/dist/services/conversation/conversation-replay.test.js.map +1 -0
  957. package/dist/services/conversation/conversation-result-builder.d.ts +58 -0
  958. package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -0
  959. package/dist/services/conversation/conversation-result-builder.js +178 -0
  960. package/dist/services/conversation/conversation-result-builder.js.map +1 -0
  961. package/dist/services/conversation/conversation-result-builder.test.d.ts +2 -0
  962. package/dist/services/conversation/conversation-result-builder.test.d.ts.map +1 -0
  963. package/dist/services/conversation/conversation-result-builder.test.js +504 -0
  964. package/dist/services/conversation/conversation-result-builder.test.js.map +1 -0
  965. package/dist/services/conversation/conversation-runtime-factory.d.ts +33 -0
  966. package/dist/services/conversation/conversation-runtime-factory.d.ts.map +1 -0
  967. package/dist/services/conversation/conversation-runtime-factory.js +17 -0
  968. package/dist/services/conversation/conversation-runtime-factory.js.map +1 -0
  969. package/dist/services/conversation/conversation-service.d.ts +73 -0
  970. package/dist/services/conversation/conversation-service.d.ts.map +1 -0
  971. package/dist/services/conversation/conversation-service.js +106 -0
  972. package/dist/services/conversation/conversation-service.js.map +1 -0
  973. package/dist/services/conversation/conversation-service.test.d.ts +2 -0
  974. package/dist/services/conversation/conversation-service.test.d.ts.map +1 -0
  975. package/dist/services/conversation/conversation-service.test.js +1138 -0
  976. package/dist/services/conversation/conversation-service.test.js.map +1 -0
  977. package/dist/services/conversation/conversation-store-adapter.d.ts +45 -0
  978. package/dist/services/conversation/conversation-store-adapter.d.ts.map +1 -0
  979. package/dist/services/conversation/conversation-store-adapter.js +88 -0
  980. package/dist/services/conversation/conversation-store-adapter.js.map +1 -0
  981. package/dist/services/conversation/conversation-store-adapter.test.d.ts +2 -0
  982. package/dist/services/conversation/conversation-store-adapter.test.d.ts.map +1 -0
  983. package/dist/services/conversation/conversation-store-adapter.test.js +120 -0
  984. package/dist/services/conversation/conversation-store-adapter.test.js.map +1 -0
  985. package/dist/services/conversation/conversation-store.d.ts +77 -0
  986. package/dist/services/conversation/conversation-store.d.ts.map +1 -0
  987. package/dist/services/conversation/conversation-store.js +303 -0
  988. package/dist/services/conversation/conversation-store.js.map +1 -0
  989. package/dist/services/conversation/conversation-store.test.d.ts +2 -0
  990. package/dist/services/conversation/conversation-store.test.d.ts.map +1 -0
  991. package/dist/services/conversation/conversation-store.test.js +411 -0
  992. package/dist/services/conversation/conversation-store.test.js.map +1 -0
  993. package/dist/services/conversation/conversation-turn-items.d.ts +25 -0
  994. package/dist/services/conversation/conversation-turn-items.d.ts.map +1 -0
  995. package/dist/services/conversation/conversation-turn-items.js +404 -0
  996. package/dist/services/conversation/conversation-turn-items.js.map +1 -0
  997. package/dist/services/conversation/conversation-turn-items.test.d.ts +2 -0
  998. package/dist/services/conversation/conversation-turn-items.test.d.ts.map +1 -0
  999. package/dist/services/conversation/conversation-turn-items.test.js +68 -0
  1000. package/dist/services/conversation/conversation-turn-items.test.js.map +1 -0
  1001. package/dist/services/conversation-adapter.d.ts +50 -0
  1002. package/dist/services/conversation-adapter.d.ts.map +1 -0
  1003. package/dist/services/conversation-adapter.js +147 -0
  1004. package/dist/services/conversation-adapter.js.map +1 -0
  1005. package/dist/services/conversation-agent-client.d.ts +46 -0
  1006. package/dist/services/conversation-agent-client.d.ts.map +1 -0
  1007. package/dist/services/conversation-agent-client.js +2 -0
  1008. package/dist/services/conversation-agent-client.js.map +1 -0
  1009. package/dist/services/conversation-events.d.ts +13 -1
  1010. package/dist/services/conversation-events.d.ts.map +1 -1
  1011. package/dist/services/conversation-logger.d.ts +23 -0
  1012. package/dist/services/conversation-logger.d.ts.map +1 -0
  1013. package/dist/services/conversation-logger.js +141 -0
  1014. package/dist/services/conversation-logger.js.map +1 -0
  1015. package/dist/services/conversation-logger.test.d.ts +2 -0
  1016. package/dist/services/conversation-logger.test.d.ts.map +1 -0
  1017. package/dist/services/conversation-logger.test.js +221 -0
  1018. package/dist/services/conversation-logger.test.js.map +1 -0
  1019. package/dist/services/conversation-persistence.test.js +20 -14
  1020. package/dist/services/conversation-persistence.test.js.map +1 -1
  1021. package/dist/services/conversation-replay.d.ts.map +1 -1
  1022. package/dist/services/conversation-replay.js +9 -1
  1023. package/dist/services/conversation-replay.js.map +1 -1
  1024. package/dist/services/conversation-result-builder.d.ts +7 -0
  1025. package/dist/services/conversation-result-builder.d.ts.map +1 -1
  1026. package/dist/services/conversation-result-builder.js +24 -2
  1027. package/dist/services/conversation-result-builder.js.map +1 -1
  1028. package/dist/services/conversation-result-builder.test.js +23 -0
  1029. package/dist/services/conversation-result-builder.test.js.map +1 -1
  1030. package/dist/services/conversation-result-resolver.d.ts +25 -0
  1031. package/dist/services/conversation-result-resolver.d.ts.map +1 -0
  1032. package/dist/services/conversation-result-resolver.js +79 -0
  1033. package/dist/services/conversation-result-resolver.js.map +1 -0
  1034. package/dist/services/conversation-result-resolver.test.d.ts +2 -0
  1035. package/dist/services/conversation-result-resolver.test.d.ts.map +1 -0
  1036. package/dist/services/conversation-result-resolver.test.js +186 -0
  1037. package/dist/services/conversation-result-resolver.test.js.map +1 -0
  1038. package/dist/services/conversation-retry-policy.d.ts +11 -9
  1039. package/dist/services/conversation-retry-policy.d.ts.map +1 -1
  1040. package/dist/services/conversation-retry-policy.js +10 -52
  1041. package/dist/services/conversation-retry-policy.js.map +1 -1
  1042. package/dist/services/conversation-retry-policy.test.js +4 -3
  1043. package/dist/services/conversation-retry-policy.test.js.map +1 -1
  1044. package/dist/services/conversation-service.d.ts +8 -7
  1045. package/dist/services/conversation-service.d.ts.map +1 -1
  1046. package/dist/services/conversation-service.js +31 -29
  1047. package/dist/services/conversation-service.js.map +1 -1
  1048. package/dist/services/conversation-service.test.d.ts +2 -0
  1049. package/dist/services/conversation-service.test.d.ts.map +1 -0
  1050. package/dist/services/conversation-service.test.js +1102 -0
  1051. package/dist/services/conversation-service.test.js.map +1 -0
  1052. package/dist/services/conversation-session-composition.d.ts +85 -0
  1053. package/dist/services/conversation-session-composition.d.ts.map +1 -0
  1054. package/dist/services/conversation-session-composition.js +246 -0
  1055. package/dist/services/conversation-session-composition.js.map +1 -0
  1056. package/dist/services/conversation-session-factory.d.ts +47 -0
  1057. package/dist/services/conversation-session-factory.d.ts.map +1 -0
  1058. package/dist/services/conversation-session-factory.js +41 -0
  1059. package/dist/services/conversation-session-factory.js.map +1 -0
  1060. package/dist/services/conversation-session-factory.test.d.ts +2 -0
  1061. package/dist/services/conversation-session-factory.test.d.ts.map +1 -0
  1062. package/dist/services/conversation-session-factory.test.js +197 -0
  1063. package/dist/services/conversation-session-factory.test.js.map +1 -0
  1064. package/dist/services/conversation-session-reasoning.test.js +4 -3
  1065. package/dist/services/conversation-session-reasoning.test.js.map +1 -1
  1066. package/dist/services/conversation-session.auto-approval.test.js +86 -55
  1067. package/dist/services/conversation-session.auto-approval.test.js.map +1 -1
  1068. package/dist/services/conversation-session.characterization.test.d.ts +2 -0
  1069. package/dist/services/conversation-session.characterization.test.d.ts.map +1 -0
  1070. package/dist/services/conversation-session.characterization.test.js +1051 -0
  1071. package/dist/services/conversation-session.characterization.test.js.map +1 -0
  1072. package/dist/services/conversation-session.d.ts +16 -107
  1073. package/dist/services/conversation-session.d.ts.map +1 -1
  1074. package/dist/services/conversation-session.input-surge.test.d.ts +2 -0
  1075. package/dist/services/conversation-session.input-surge.test.d.ts.map +1 -0
  1076. package/dist/services/conversation-session.input-surge.test.js +240 -0
  1077. package/dist/services/conversation-session.input-surge.test.js.map +1 -0
  1078. package/dist/services/conversation-session.isolation.test.d.ts +2 -0
  1079. package/dist/services/conversation-session.isolation.test.d.ts.map +1 -0
  1080. package/dist/services/conversation-session.isolation.test.js +291 -0
  1081. package/dist/services/conversation-session.isolation.test.js.map +1 -0
  1082. package/dist/services/conversation-session.js +19 -1258
  1083. package/dist/services/conversation-session.js.map +1 -1
  1084. package/dist/services/conversation-session.stream.test.d.ts +2 -0
  1085. package/dist/services/conversation-session.stream.test.d.ts.map +1 -0
  1086. package/dist/services/conversation-session.stream.test.js +2099 -0
  1087. package/dist/services/conversation-session.stream.test.js.map +1 -0
  1088. package/dist/services/conversation-session.tool-started.test.d.ts +2 -0
  1089. package/dist/services/conversation-session.tool-started.test.d.ts.map +1 -0
  1090. package/dist/services/conversation-session.tool-started.test.js +244 -0
  1091. package/dist/services/conversation-session.tool-started.test.js.map +1 -0
  1092. package/dist/services/conversation-store-adapter.d.ts +45 -0
  1093. package/dist/services/conversation-store-adapter.d.ts.map +1 -0
  1094. package/dist/services/conversation-store-adapter.js +88 -0
  1095. package/dist/services/conversation-store-adapter.js.map +1 -0
  1096. package/dist/services/conversation-store-adapter.test.d.ts +2 -0
  1097. package/dist/services/conversation-store-adapter.test.d.ts.map +1 -0
  1098. package/dist/services/conversation-store-adapter.test.js +120 -0
  1099. package/dist/services/conversation-store-adapter.test.js.map +1 -0
  1100. package/dist/services/conversation-terminal-adapter.d.ts +50 -0
  1101. package/dist/services/conversation-terminal-adapter.d.ts.map +1 -0
  1102. package/dist/services/conversation-terminal-adapter.js +147 -0
  1103. package/dist/services/conversation-terminal-adapter.js.map +1 -0
  1104. package/dist/services/conversation-turn-runner.d.ts +70 -0
  1105. package/dist/services/conversation-turn-runner.d.ts.map +1 -0
  1106. package/dist/services/conversation-turn-runner.js +396 -0
  1107. package/dist/services/conversation-turn-runner.js.map +1 -0
  1108. package/dist/services/execution-context.test.js +15 -15
  1109. package/dist/services/execution-context.test.js.map +1 -1
  1110. package/dist/services/file-service.test.js +13 -13
  1111. package/dist/services/file-service.test.js.map +1 -1
  1112. package/dist/services/generation-guard.d.ts +16 -0
  1113. package/dist/services/generation-guard.d.ts.map +1 -0
  1114. package/dist/services/generation-guard.js +29 -0
  1115. package/dist/services/generation-guard.js.map +1 -0
  1116. package/dist/services/generation-guard.test.d.ts +2 -0
  1117. package/dist/services/generation-guard.test.d.ts.map +1 -0
  1118. package/dist/services/generation-guard.test.js +404 -0
  1119. package/dist/services/generation-guard.test.js.map +1 -0
  1120. package/dist/services/history-service.d.ts +2 -3
  1121. package/dist/services/history-service.d.ts.map +1 -1
  1122. package/dist/services/history-service.js +0 -52
  1123. package/dist/services/history-service.js.map +1 -1
  1124. package/dist/services/history-service.test.js +13 -13
  1125. package/dist/services/history-service.test.js.map +1 -1
  1126. package/dist/services/initial-turn-runner.d.ts +75 -0
  1127. package/dist/services/initial-turn-runner.d.ts.map +1 -0
  1128. package/dist/services/initial-turn-runner.js +437 -0
  1129. package/dist/services/initial-turn-runner.js.map +1 -0
  1130. package/dist/services/initial-turn-runner.test.d.ts +2 -0
  1131. package/dist/services/initial-turn-runner.test.d.ts.map +1 -0
  1132. package/dist/services/initial-turn-runner.test.js +358 -0
  1133. package/dist/services/initial-turn-runner.test.js.map +1 -0
  1134. package/dist/services/input-surge-guard.d.ts +3 -6
  1135. package/dist/services/input-surge-guard.d.ts.map +1 -1
  1136. package/dist/services/input-surge-guard.js +4 -79
  1137. package/dist/services/input-surge-guard.js.map +1 -1
  1138. package/dist/services/input-surge-guard.test.js +28 -39
  1139. package/dist/services/input-surge-guard.test.js.map +1 -1
  1140. package/dist/services/interruption-info.d.ts.map +1 -1
  1141. package/dist/services/interruption-info.js +11 -9
  1142. package/dist/services/interruption-info.js.map +1 -1
  1143. package/dist/services/interruption-info.test.js +65 -58
  1144. package/dist/services/interruption-info.test.js.map +1 -1
  1145. package/dist/services/large-uncached-input-guard.test.js +28 -28
  1146. package/dist/services/large-uncached-input-guard.test.js.map +1 -1
  1147. package/dist/services/logging/assistant-turn-journal.d.ts +56 -0
  1148. package/dist/services/logging/assistant-turn-journal.d.ts.map +1 -0
  1149. package/dist/services/logging/assistant-turn-journal.js +139 -0
  1150. package/dist/services/logging/assistant-turn-journal.js.map +1 -0
  1151. package/dist/services/logging/assistant-turn-journal.test.d.ts +2 -0
  1152. package/dist/services/logging/assistant-turn-journal.test.d.ts.map +1 -0
  1153. package/dist/services/logging/assistant-turn-journal.test.js +118 -0
  1154. package/dist/services/logging/assistant-turn-journal.test.js.map +1 -0
  1155. package/dist/services/logging/conversation-log-events.d.ts +158 -0
  1156. package/dist/services/logging/conversation-log-events.d.ts.map +1 -0
  1157. package/dist/services/logging/conversation-log-events.js +12 -0
  1158. package/dist/services/logging/conversation-log-events.js.map +1 -0
  1159. package/dist/services/logging/conversation-log-writer.d.ts +40 -0
  1160. package/dist/services/logging/conversation-log-writer.d.ts.map +1 -0
  1161. package/dist/services/logging/conversation-log-writer.js +275 -0
  1162. package/dist/services/logging/conversation-log-writer.js.map +1 -0
  1163. package/dist/services/logging/conversation-logger.d.ts +29 -0
  1164. package/dist/services/logging/conversation-logger.d.ts.map +1 -0
  1165. package/dist/services/logging/conversation-logger.js +189 -0
  1166. package/dist/services/logging/conversation-logger.js.map +1 -0
  1167. package/dist/services/logging/conversation-logger.test.d.ts +2 -0
  1168. package/dist/services/logging/conversation-logger.test.d.ts.map +1 -0
  1169. package/dist/services/logging/conversation-logger.test.js +387 -0
  1170. package/dist/services/logging/conversation-logger.test.js.map +1 -0
  1171. package/dist/services/logging/logging-contract.d.ts +55 -0
  1172. package/dist/services/logging/logging-contract.d.ts.map +1 -0
  1173. package/dist/services/logging/logging-contract.js +141 -0
  1174. package/dist/services/logging/logging-contract.js.map +1 -0
  1175. package/dist/services/logging/logging-contract.test.d.ts +2 -0
  1176. package/dist/services/logging/logging-contract.test.d.ts.map +1 -0
  1177. package/dist/services/logging/logging-contract.test.js +100 -0
  1178. package/dist/services/logging/logging-contract.test.js.map +1 -0
  1179. package/dist/services/logging/logging-service.d.ts +87 -0
  1180. package/dist/services/logging/logging-service.d.ts.map +1 -0
  1181. package/dist/services/logging/logging-service.js +339 -0
  1182. package/dist/services/logging/logging-service.js.map +1 -0
  1183. package/dist/services/logging/logging-service.test.d.ts +2 -0
  1184. package/dist/services/logging/logging-service.test.d.ts.map +1 -0
  1185. package/dist/services/logging/logging-service.test.js +464 -0
  1186. package/dist/services/logging/logging-service.test.js.map +1 -0
  1187. package/dist/services/logging/provider-traffic.d.ts +112 -0
  1188. package/dist/services/logging/provider-traffic.d.ts.map +1 -0
  1189. package/dist/services/logging/provider-traffic.js +1020 -0
  1190. package/dist/services/logging/provider-traffic.js.map +1 -0
  1191. package/dist/services/logging/provider-traffic.test.d.ts +2 -0
  1192. package/dist/services/logging/provider-traffic.test.d.ts.map +1 -0
  1193. package/dist/services/logging/provider-traffic.test.js +577 -0
  1194. package/dist/services/logging/provider-traffic.test.js.map +1 -0
  1195. package/dist/services/logging-contract.d.ts +2 -2
  1196. package/dist/services/logging-service.d.ts +0 -1
  1197. package/dist/services/logging-service.d.ts.map +1 -1
  1198. package/dist/services/logging-service.js +0 -46
  1199. package/dist/services/logging-service.js.map +1 -1
  1200. package/dist/services/logging-service.test.d.ts +2 -0
  1201. package/dist/services/logging-service.test.d.ts.map +1 -0
  1202. package/dist/services/logging-service.test.js +467 -0
  1203. package/dist/services/logging-service.test.js.map +1 -0
  1204. package/dist/services/mode-notices.d.ts.map +1 -1
  1205. package/dist/services/mode-notices.js +9 -4
  1206. package/dist/services/mode-notices.js.map +1 -1
  1207. package/dist/services/model-service.d.ts.map +1 -1
  1208. package/dist/services/model-service.js +12 -1
  1209. package/dist/services/model-service.js.map +1 -1
  1210. package/dist/services/model-service.test.js +75 -33
  1211. package/dist/services/model-service.test.js.map +1 -1
  1212. package/dist/services/notification-service.d.ts +1 -1
  1213. package/dist/services/notification-service.d.ts.map +1 -1
  1214. package/dist/services/notification-service.js +1 -1
  1215. package/dist/services/notification-service.js.map +1 -1
  1216. package/dist/services/notification-service.test.js +75 -75
  1217. package/dist/services/notification-service.test.js.map +1 -1
  1218. package/dist/services/plan-mode-interceptor.test.js +25 -25
  1219. package/dist/services/plan-mode-interceptor.test.js.map +1 -1
  1220. package/dist/services/provider-continuity.d.ts +17 -0
  1221. package/dist/services/provider-continuity.d.ts.map +1 -0
  1222. package/dist/services/provider-continuity.js +31 -0
  1223. package/dist/services/provider-continuity.js.map +1 -0
  1224. package/dist/services/provider-continuity.test.d.ts +2 -0
  1225. package/dist/services/provider-continuity.test.d.ts.map +1 -0
  1226. package/dist/services/provider-continuity.test.js +47 -0
  1227. package/dist/services/provider-continuity.test.js.map +1 -0
  1228. package/dist/services/provider-traffic.test.js +22 -22
  1229. package/dist/services/provider-traffic.test.js.map +1 -1
  1230. package/dist/services/recovery-executor.d.ts +15 -0
  1231. package/dist/services/recovery-executor.d.ts.map +1 -0
  1232. package/dist/services/recovery-executor.js +93 -0
  1233. package/dist/services/recovery-executor.js.map +1 -0
  1234. package/dist/services/recovery-executor.test.d.ts +2 -0
  1235. package/dist/services/recovery-executor.test.d.ts.map +1 -0
  1236. package/dist/services/recovery-executor.test.js +192 -0
  1237. package/dist/services/recovery-executor.test.js.map +1 -0
  1238. package/dist/services/recovery-policy.d.ts +6 -0
  1239. package/dist/services/recovery-policy.d.ts.map +1 -0
  1240. package/dist/services/recovery-policy.js +56 -0
  1241. package/dist/services/recovery-policy.js.map +1 -0
  1242. package/dist/services/recovery-policy.test.d.ts +2 -0
  1243. package/dist/services/recovery-policy.test.d.ts.map +1 -0
  1244. package/dist/services/recovery-policy.test.js +103 -0
  1245. package/dist/services/recovery-policy.test.js.map +1 -0
  1246. package/dist/services/retry/conversation-retry-policy.d.ts +63 -0
  1247. package/dist/services/retry/conversation-retry-policy.d.ts.map +1 -0
  1248. package/dist/services/retry/conversation-retry-policy.js +76 -0
  1249. package/dist/services/retry/conversation-retry-policy.js.map +1 -0
  1250. package/dist/services/retry/conversation-retry-policy.test.d.ts +2 -0
  1251. package/dist/services/retry/conversation-retry-policy.test.d.ts.map +1 -0
  1252. package/dist/services/retry/conversation-retry-policy.test.js +181 -0
  1253. package/dist/services/retry/conversation-retry-policy.test.js.map +1 -0
  1254. package/dist/services/retry/recovery-executor.d.ts +15 -0
  1255. package/dist/services/retry/recovery-executor.d.ts.map +1 -0
  1256. package/dist/services/retry/recovery-executor.js +93 -0
  1257. package/dist/services/retry/recovery-executor.js.map +1 -0
  1258. package/dist/services/retry/recovery-executor.test.d.ts +2 -0
  1259. package/dist/services/retry/recovery-executor.test.d.ts.map +1 -0
  1260. package/dist/services/retry/recovery-executor.test.js +192 -0
  1261. package/dist/services/retry/recovery-executor.test.js.map +1 -0
  1262. package/dist/services/retry/recovery-policy.d.ts +6 -0
  1263. package/dist/services/retry/recovery-policy.d.ts.map +1 -0
  1264. package/dist/services/retry/recovery-policy.js +56 -0
  1265. package/dist/services/retry/recovery-policy.js.map +1 -0
  1266. package/dist/services/retry/recovery-policy.test.d.ts +2 -0
  1267. package/dist/services/retry/recovery-policy.test.d.ts.map +1 -0
  1268. package/dist/services/retry/recovery-policy.test.js +103 -0
  1269. package/dist/services/retry/recovery-policy.test.js.map +1 -0
  1270. package/dist/services/retry/retry-classifier.d.ts +9 -0
  1271. package/dist/services/retry/retry-classifier.d.ts.map +1 -0
  1272. package/dist/services/retry/retry-classifier.js +48 -0
  1273. package/dist/services/retry/retry-classifier.js.map +1 -0
  1274. package/dist/services/retry/retry-classifier.test.d.ts +2 -0
  1275. package/dist/services/retry/retry-classifier.test.d.ts.map +1 -0
  1276. package/dist/services/retry/retry-classifier.test.js +206 -0
  1277. package/dist/services/retry/retry-classifier.test.js.map +1 -0
  1278. package/dist/services/retry/retry-contracts.d.ts +99 -0
  1279. package/dist/services/retry/retry-contracts.d.ts.map +1 -0
  1280. package/dist/services/retry/retry-contracts.js +2 -0
  1281. package/dist/services/retry/retry-contracts.js.map +1 -0
  1282. package/dist/services/retry/retry-error-classification.d.ts +30 -0
  1283. package/dist/services/retry/retry-error-classification.d.ts.map +1 -0
  1284. package/dist/services/retry/retry-error-classification.js +311 -0
  1285. package/dist/services/retry/retry-error-classification.js.map +1 -0
  1286. package/dist/services/retry/retry-error-classification.test.d.ts +2 -0
  1287. package/dist/services/retry/retry-error-classification.test.d.ts.map +1 -0
  1288. package/dist/services/retry/retry-error-classification.test.js +339 -0
  1289. package/dist/services/retry/retry-error-classification.test.js.map +1 -0
  1290. package/dist/services/retry/retry-event-presenter.d.ts +18 -0
  1291. package/dist/services/retry/retry-event-presenter.d.ts.map +1 -0
  1292. package/dist/services/retry/retry-event-presenter.js +109 -0
  1293. package/dist/services/retry/retry-event-presenter.js.map +1 -0
  1294. package/dist/services/retry/retry-event-presenter.test.d.ts +2 -0
  1295. package/dist/services/retry/retry-event-presenter.test.d.ts.map +1 -0
  1296. package/dist/services/retry/retry-event-presenter.test.js +179 -0
  1297. package/dist/services/retry/retry-event-presenter.test.js.map +1 -0
  1298. package/dist/services/retry/upstream-retry-policy.d.ts +15 -0
  1299. package/dist/services/retry/upstream-retry-policy.d.ts.map +1 -0
  1300. package/dist/services/retry/upstream-retry-policy.js +136 -0
  1301. package/dist/services/retry/upstream-retry-policy.js.map +1 -0
  1302. package/dist/services/retry/upstream-retry-policy.test.d.ts +2 -0
  1303. package/dist/services/retry/upstream-retry-policy.test.d.ts.map +1 -0
  1304. package/dist/services/retry/upstream-retry-policy.test.js +125 -0
  1305. package/dist/services/retry/upstream-retry-policy.test.js.map +1 -0
  1306. package/dist/services/retry-classifier.d.ts +9 -0
  1307. package/dist/services/retry-classifier.d.ts.map +1 -0
  1308. package/dist/services/retry-classifier.js +41 -0
  1309. package/dist/services/retry-classifier.js.map +1 -0
  1310. package/dist/services/retry-classifier.test.d.ts +2 -0
  1311. package/dist/services/retry-classifier.test.d.ts.map +1 -0
  1312. package/dist/services/retry-classifier.test.js +206 -0
  1313. package/dist/services/retry-classifier.test.js.map +1 -0
  1314. package/dist/services/retry-contracts.d.ts +99 -0
  1315. package/dist/services/retry-contracts.d.ts.map +1 -0
  1316. package/dist/services/retry-contracts.js +2 -0
  1317. package/dist/services/retry-contracts.js.map +1 -0
  1318. package/dist/services/retry-error-classification.d.ts +30 -0
  1319. package/dist/services/retry-error-classification.d.ts.map +1 -0
  1320. package/dist/services/retry-error-classification.js +223 -0
  1321. package/dist/services/retry-error-classification.js.map +1 -0
  1322. package/dist/services/retry-error-classification.test.d.ts +2 -0
  1323. package/dist/services/retry-error-classification.test.d.ts.map +1 -0
  1324. package/dist/services/retry-error-classification.test.js +195 -0
  1325. package/dist/services/retry-error-classification.test.js.map +1 -0
  1326. package/dist/services/retry-event-presenter.d.ts +18 -0
  1327. package/dist/services/retry-event-presenter.d.ts.map +1 -0
  1328. package/dist/services/retry-event-presenter.js +124 -0
  1329. package/dist/services/retry-event-presenter.js.map +1 -0
  1330. package/dist/services/retry-event-presenter.test.d.ts +2 -0
  1331. package/dist/services/retry-event-presenter.test.d.ts.map +1 -0
  1332. package/dist/services/retry-event-presenter.test.js +194 -0
  1333. package/dist/services/retry-event-presenter.test.js.map +1 -0
  1334. package/dist/services/retry-handler.d.ts +51 -0
  1335. package/dist/services/retry-handler.d.ts.map +1 -0
  1336. package/dist/services/retry-handler.js +72 -0
  1337. package/dist/services/retry-handler.js.map +1 -0
  1338. package/dist/services/retry-handler.test.d.ts +2 -0
  1339. package/dist/services/retry-handler.test.d.ts.map +1 -0
  1340. package/dist/services/retry-handler.test.js +237 -0
  1341. package/dist/services/retry-handler.test.js.map +1 -0
  1342. package/dist/services/rtk-service.test.js +125 -125
  1343. package/dist/services/rtk-service.test.js.map +1 -1
  1344. package/dist/services/service-interfaces.d.ts +35 -0
  1345. package/dist/services/service-interfaces.d.ts.map +1 -1
  1346. package/dist/services/session/continuation-driver.d.ts +47 -0
  1347. package/dist/services/session/continuation-driver.d.ts.map +1 -0
  1348. package/dist/services/session/continuation-driver.js +346 -0
  1349. package/dist/services/session/continuation-driver.js.map +1 -0
  1350. package/dist/services/session/continuation-driver.test.d.ts +2 -0
  1351. package/dist/services/session/continuation-driver.test.d.ts.map +1 -0
  1352. package/dist/services/session/continuation-driver.test.js +804 -0
  1353. package/dist/services/session/continuation-driver.test.js.map +1 -0
  1354. package/dist/services/session/continuation-plan-applier.d.ts +23 -0
  1355. package/dist/services/session/continuation-plan-applier.d.ts.map +1 -0
  1356. package/dist/services/session/continuation-plan-applier.js +96 -0
  1357. package/dist/services/session/continuation-plan-applier.js.map +1 -0
  1358. package/dist/services/session/continuation-plan-applier.test.d.ts +2 -0
  1359. package/dist/services/session/continuation-plan-applier.test.d.ts.map +1 -0
  1360. package/dist/services/session/continuation-plan-applier.test.js +257 -0
  1361. package/dist/services/session/continuation-plan-applier.test.js.map +1 -0
  1362. package/dist/services/session/continuation-recovery-handler.d.ts +42 -0
  1363. package/dist/services/session/continuation-recovery-handler.d.ts.map +1 -0
  1364. package/dist/services/session/continuation-recovery-handler.js +78 -0
  1365. package/dist/services/session/continuation-recovery-handler.js.map +1 -0
  1366. package/dist/services/session/continuation-recovery-handler.test.d.ts +2 -0
  1367. package/dist/services/session/continuation-recovery-handler.test.d.ts.map +1 -0
  1368. package/dist/services/session/continuation-recovery-handler.test.js +148 -0
  1369. package/dist/services/session/continuation-recovery-handler.test.js.map +1 -0
  1370. package/dist/services/session/continuation-state.d.ts +50 -0
  1371. package/dist/services/session/continuation-state.d.ts.map +1 -0
  1372. package/dist/services/session/continuation-state.js +74 -0
  1373. package/dist/services/session/continuation-state.js.map +1 -0
  1374. package/dist/services/session/continuation-state.test.d.ts +2 -0
  1375. package/dist/services/session/continuation-state.test.d.ts.map +1 -0
  1376. package/dist/services/session/continuation-state.test.js +140 -0
  1377. package/dist/services/session/continuation-state.test.js.map +1 -0
  1378. package/dist/services/session/continuation-stream-cycle.d.ts +43 -0
  1379. package/dist/services/session/continuation-stream-cycle.d.ts.map +1 -0
  1380. package/dist/services/session/continuation-stream-cycle.js +61 -0
  1381. package/dist/services/session/continuation-stream-cycle.js.map +1 -0
  1382. package/dist/services/session/continuation-stream-cycle.test.d.ts +2 -0
  1383. package/dist/services/session/continuation-stream-cycle.test.d.ts.map +1 -0
  1384. package/dist/services/session/continuation-stream-cycle.test.js +139 -0
  1385. package/dist/services/session/continuation-stream-cycle.test.js.map +1 -0
  1386. package/dist/services/session/conversation-session-reasoning.test.d.ts +2 -0
  1387. package/dist/services/session/conversation-session-reasoning.test.d.ts.map +1 -0
  1388. package/dist/services/session/conversation-session-reasoning.test.js +67 -0
  1389. package/dist/services/session/conversation-session-reasoning.test.js.map +1 -0
  1390. package/dist/services/session/conversation-session.auto-approval.test.d.ts +2 -0
  1391. package/dist/services/session/conversation-session.auto-approval.test.d.ts.map +1 -0
  1392. package/dist/services/session/conversation-session.auto-approval.test.js +714 -0
  1393. package/dist/services/session/conversation-session.auto-approval.test.js.map +1 -0
  1394. package/dist/services/session/conversation-session.characterization.test.d.ts +2 -0
  1395. package/dist/services/session/conversation-session.characterization.test.d.ts.map +1 -0
  1396. package/dist/services/session/conversation-session.characterization.test.js +1266 -0
  1397. package/dist/services/session/conversation-session.characterization.test.js.map +1 -0
  1398. package/dist/services/session/conversation-session.d.ts +31 -0
  1399. package/dist/services/session/conversation-session.d.ts.map +1 -0
  1400. package/dist/services/session/conversation-session.input-surge.test.d.ts +2 -0
  1401. package/dist/services/session/conversation-session.input-surge.test.d.ts.map +1 -0
  1402. package/dist/services/session/conversation-session.input-surge.test.js +263 -0
  1403. package/dist/services/session/conversation-session.input-surge.test.js.map +1 -0
  1404. package/dist/services/session/conversation-session.isolation.test.d.ts +2 -0
  1405. package/dist/services/session/conversation-session.isolation.test.d.ts.map +1 -0
  1406. package/dist/services/session/conversation-session.isolation.test.js +290 -0
  1407. package/dist/services/session/conversation-session.isolation.test.js.map +1 -0
  1408. package/dist/services/session/conversation-session.js +33 -0
  1409. package/dist/services/session/conversation-session.js.map +1 -0
  1410. package/dist/services/session/conversation-session.stream.test.d.ts +2 -0
  1411. package/dist/services/session/conversation-session.stream.test.d.ts.map +1 -0
  1412. package/dist/services/session/conversation-session.stream.test.js +2150 -0
  1413. package/dist/services/session/conversation-session.stream.test.js.map +1 -0
  1414. package/dist/services/session/conversation-session.tool-started.test.d.ts +2 -0
  1415. package/dist/services/session/conversation-session.tool-started.test.d.ts.map +1 -0
  1416. package/dist/services/session/conversation-session.tool-started.test.js +244 -0
  1417. package/dist/services/session/conversation-session.tool-started.test.js.map +1 -0
  1418. package/dist/services/session/initial-input-preparer.d.ts +33 -0
  1419. package/dist/services/session/initial-input-preparer.d.ts.map +1 -0
  1420. package/dist/services/session/initial-input-preparer.js +49 -0
  1421. package/dist/services/session/initial-input-preparer.js.map +1 -0
  1422. package/dist/services/session/initial-input-preparer.test.d.ts +2 -0
  1423. package/dist/services/session/initial-input-preparer.test.d.ts.map +1 -0
  1424. package/dist/services/session/initial-input-preparer.test.js +113 -0
  1425. package/dist/services/session/initial-input-preparer.test.js.map +1 -0
  1426. package/dist/services/session/initial-stream-cycle.d.ts +44 -0
  1427. package/dist/services/session/initial-stream-cycle.d.ts.map +1 -0
  1428. package/dist/services/session/initial-stream-cycle.js +53 -0
  1429. package/dist/services/session/initial-stream-cycle.js.map +1 -0
  1430. package/dist/services/session/initial-stream-cycle.test.d.ts +2 -0
  1431. package/dist/services/session/initial-stream-cycle.test.d.ts.map +1 -0
  1432. package/dist/services/session/initial-stream-cycle.test.js +105 -0
  1433. package/dist/services/session/initial-stream-cycle.test.js.map +1 -0
  1434. package/dist/services/session/initial-turn-recovery-handler.d.ts +45 -0
  1435. package/dist/services/session/initial-turn-recovery-handler.d.ts.map +1 -0
  1436. package/dist/services/session/initial-turn-recovery-handler.js +136 -0
  1437. package/dist/services/session/initial-turn-recovery-handler.js.map +1 -0
  1438. package/dist/services/session/initial-turn-recovery-handler.test.d.ts +2 -0
  1439. package/dist/services/session/initial-turn-recovery-handler.test.d.ts.map +1 -0
  1440. package/dist/services/session/initial-turn-recovery-handler.test.js +91 -0
  1441. package/dist/services/session/initial-turn-recovery-handler.test.js.map +1 -0
  1442. package/dist/services/session/initial-turn-runner.d.ts +35 -0
  1443. package/dist/services/session/initial-turn-runner.d.ts.map +1 -0
  1444. package/dist/services/session/initial-turn-runner.js +161 -0
  1445. package/dist/services/session/initial-turn-runner.js.map +1 -0
  1446. package/dist/services/session/initial-turn-runner.test.d.ts +2 -0
  1447. package/dist/services/session/initial-turn-runner.test.d.ts.map +1 -0
  1448. package/dist/services/session/initial-turn-runner.test.js +384 -0
  1449. package/dist/services/session/initial-turn-runner.test.js.map +1 -0
  1450. package/dist/services/session/session-adapter-bridge.d.ts +12 -0
  1451. package/dist/services/session/session-adapter-bridge.d.ts.map +1 -0
  1452. package/dist/services/session/session-adapter-bridge.js +11 -0
  1453. package/dist/services/session/session-adapter-bridge.js.map +1 -0
  1454. package/dist/services/session/session-composition.d.ts +163 -0
  1455. package/dist/services/session/session-composition.d.ts.map +1 -0
  1456. package/dist/services/session/session-composition.js +383 -0
  1457. package/dist/services/session/session-composition.js.map +1 -0
  1458. package/dist/services/session/session-composition.test.d.ts +2 -0
  1459. package/dist/services/session/session-composition.test.d.ts.map +1 -0
  1460. package/dist/services/session/session-composition.test.js +200 -0
  1461. package/dist/services/session/session-composition.test.js.map +1 -0
  1462. package/dist/services/session/session-context-service.d.ts +8 -0
  1463. package/dist/services/session/session-context-service.d.ts.map +1 -0
  1464. package/dist/services/session/session-context-service.js +19 -0
  1465. package/dist/services/session/session-context-service.js.map +1 -0
  1466. package/dist/services/session/session-context-service.test.d.ts +2 -0
  1467. package/dist/services/session/session-context-service.test.d.ts.map +1 -0
  1468. package/dist/services/session/session-context-service.test.js +38 -0
  1469. package/dist/services/session/session-context-service.test.js.map +1 -0
  1470. package/dist/services/session/session-factory.d.ts +6 -0
  1471. package/dist/services/session/session-factory.d.ts.map +1 -0
  1472. package/dist/services/session/session-factory.js +6 -0
  1473. package/dist/services/session/session-factory.js.map +1 -0
  1474. package/dist/services/session/session-factory.test.d.ts +2 -0
  1475. package/dist/services/session/session-factory.test.d.ts.map +1 -0
  1476. package/dist/services/session/session-factory.test.js +198 -0
  1477. package/dist/services/session/session-factory.test.js.map +1 -0
  1478. package/dist/services/session/session-input-planner.d.ts +95 -0
  1479. package/dist/services/session/session-input-planner.d.ts.map +1 -0
  1480. package/dist/services/session/session-input-planner.js +196 -0
  1481. package/dist/services/session/session-input-planner.js.map +1 -0
  1482. package/dist/services/session/session-lifecycle.d.ts +84 -0
  1483. package/dist/services/session/session-lifecycle.d.ts.map +1 -0
  1484. package/dist/services/session/session-lifecycle.js +147 -0
  1485. package/dist/services/session/session-lifecycle.js.map +1 -0
  1486. package/dist/services/session/session-lifecycle.test.d.ts +2 -0
  1487. package/dist/services/session/session-lifecycle.test.d.ts.map +1 -0
  1488. package/dist/services/session/session-lifecycle.test.js +194 -0
  1489. package/dist/services/session/session-lifecycle.test.js.map +1 -0
  1490. package/dist/services/session/session-manager.d.ts +58 -0
  1491. package/dist/services/session/session-manager.d.ts.map +1 -0
  1492. package/dist/services/session/session-manager.js +92 -0
  1493. package/dist/services/session/session-manager.js.map +1 -0
  1494. package/dist/services/session/session-manager.test.d.ts +2 -0
  1495. package/dist/services/session/session-manager.test.d.ts.map +1 -0
  1496. package/dist/services/session/session-manager.test.js +37 -0
  1497. package/dist/services/session/session-manager.test.js.map +1 -0
  1498. package/dist/services/session/session-runtime-controller.d.ts +26 -0
  1499. package/dist/services/session/session-runtime-controller.d.ts.map +1 -0
  1500. package/dist/services/session/session-runtime-controller.js +46 -0
  1501. package/dist/services/session/session-runtime-controller.js.map +1 -0
  1502. package/dist/services/session/session-stream-processor.d.ts +50 -0
  1503. package/dist/services/session/session-stream-processor.d.ts.map +1 -0
  1504. package/dist/services/session/session-stream-processor.js +189 -0
  1505. package/dist/services/session/session-stream-processor.js.map +1 -0
  1506. package/dist/services/session/session-stream-processor.test.d.ts +2 -0
  1507. package/dist/services/session/session-stream-processor.test.d.ts.map +1 -0
  1508. package/dist/services/session/session-stream-processor.test.js +608 -0
  1509. package/dist/services/session/session-stream-processor.test.js.map +1 -0
  1510. package/dist/services/session/session-tool-tracker.d.ts +131 -0
  1511. package/dist/services/session/session-tool-tracker.d.ts.map +1 -0
  1512. package/dist/services/session/session-tool-tracker.js +253 -0
  1513. package/dist/services/session/session-tool-tracker.js.map +1 -0
  1514. package/dist/services/session/session-tool-tracker.test.d.ts +2 -0
  1515. package/dist/services/session/session-tool-tracker.test.d.ts.map +1 -0
  1516. package/dist/services/session/session-tool-tracker.test.js +54 -0
  1517. package/dist/services/session/session-tool-tracker.test.js.map +1 -0
  1518. package/dist/services/session/terminal-result-collector.d.ts +12 -0
  1519. package/dist/services/session/terminal-result-collector.d.ts.map +1 -0
  1520. package/dist/services/session/terminal-result-collector.js +139 -0
  1521. package/dist/services/session/terminal-result-collector.js.map +1 -0
  1522. package/dist/services/session/terminal-result-collector.test.d.ts +2 -0
  1523. package/dist/services/session/terminal-result-collector.test.d.ts.map +1 -0
  1524. package/dist/services/session/terminal-result-collector.test.js +240 -0
  1525. package/dist/services/session/terminal-result-collector.test.js.map +1 -0
  1526. package/dist/services/session/turn-attempt-factory.d.ts +43 -0
  1527. package/dist/services/session/turn-attempt-factory.d.ts.map +1 -0
  1528. package/dist/services/session/turn-attempt-factory.js +58 -0
  1529. package/dist/services/session/turn-attempt-factory.js.map +1 -0
  1530. package/dist/services/session/turn-attempt-factory.test.d.ts +2 -0
  1531. package/dist/services/session/turn-attempt-factory.test.d.ts.map +1 -0
  1532. package/dist/services/session/turn-attempt-factory.test.js +83 -0
  1533. package/dist/services/session/turn-attempt-factory.test.js.map +1 -0
  1534. package/dist/services/session/turn-attempt.d.ts +38 -0
  1535. package/dist/services/session/turn-attempt.d.ts.map +1 -0
  1536. package/dist/services/session/turn-attempt.js +99 -0
  1537. package/dist/services/session/turn-attempt.js.map +1 -0
  1538. package/dist/services/session/turn-attempt.test.d.ts +2 -0
  1539. package/dist/services/session/turn-attempt.test.d.ts.map +1 -0
  1540. package/dist/services/session/turn-attempt.test.js +167 -0
  1541. package/dist/services/session/turn-attempt.test.js.map +1 -0
  1542. package/dist/services/session/turn-coordinator.d.ts +30 -0
  1543. package/dist/services/session/turn-coordinator.d.ts.map +1 -0
  1544. package/dist/services/session/turn-coordinator.js +108 -0
  1545. package/dist/services/session/turn-coordinator.js.map +1 -0
  1546. package/dist/services/session/turn-coordinator.test.d.ts +2 -0
  1547. package/dist/services/session/turn-coordinator.test.d.ts.map +1 -0
  1548. package/dist/services/session/turn-coordinator.test.js +303 -0
  1549. package/dist/services/session/turn-coordinator.test.js.map +1 -0
  1550. package/dist/services/session/turn-executor.d.ts +28 -0
  1551. package/dist/services/session/turn-executor.d.ts.map +1 -0
  1552. package/dist/services/session/turn-executor.js +67 -0
  1553. package/dist/services/session/turn-executor.js.map +1 -0
  1554. package/dist/services/session/turn-item-accumulator.d.ts +21 -0
  1555. package/dist/services/session/turn-item-accumulator.d.ts.map +1 -0
  1556. package/dist/services/session/turn-item-accumulator.js +56 -0
  1557. package/dist/services/session/turn-item-accumulator.js.map +1 -0
  1558. package/dist/services/session/turn-item-accumulator.test.d.ts +2 -0
  1559. package/dist/services/session/turn-item-accumulator.test.d.ts.map +1 -0
  1560. package/dist/services/session/turn-item-accumulator.test.js +75 -0
  1561. package/dist/services/session/turn-item-accumulator.test.js.map +1 -0
  1562. package/dist/services/session/turn-outcome-adapters.d.ts +26 -0
  1563. package/dist/services/session/turn-outcome-adapters.d.ts.map +1 -0
  1564. package/dist/services/session/turn-outcome-adapters.js +45 -0
  1565. package/dist/services/session/turn-outcome-adapters.js.map +1 -0
  1566. package/dist/services/session/turn-outcome-adapters.test.d.ts +2 -0
  1567. package/dist/services/session/turn-outcome-adapters.test.d.ts.map +1 -0
  1568. package/dist/services/session/turn-outcome-adapters.test.js +101 -0
  1569. package/dist/services/session/turn-outcome-adapters.test.js.map +1 -0
  1570. package/dist/services/session/turn-status-machine.d.ts +25 -0
  1571. package/dist/services/session/turn-status-machine.d.ts.map +1 -0
  1572. package/dist/services/session/turn-status-machine.js +49 -0
  1573. package/dist/services/session/turn-status-machine.js.map +1 -0
  1574. package/dist/services/session/turn-status-machine.test.d.ts +2 -0
  1575. package/dist/services/session/turn-status-machine.test.d.ts.map +1 -0
  1576. package/dist/services/session/turn-status-machine.test.js +95 -0
  1577. package/dist/services/session/turn-status-machine.test.js.map +1 -0
  1578. package/dist/services/session/turn-transition.d.ts +57 -0
  1579. package/dist/services/session/turn-transition.d.ts.map +1 -0
  1580. package/dist/services/session/turn-transition.js +67 -0
  1581. package/dist/services/session/turn-transition.js.map +1 -0
  1582. package/dist/services/session/turn-transition.test.d.ts +2 -0
  1583. package/dist/services/session/turn-transition.test.d.ts.map +1 -0
  1584. package/dist/services/session/turn-transition.test.js +123 -0
  1585. package/dist/services/session/turn-transition.test.js.map +1 -0
  1586. package/dist/services/session-input-planner.d.ts +87 -0
  1587. package/dist/services/session-input-planner.d.ts.map +1 -0
  1588. package/dist/services/session-input-planner.js +183 -0
  1589. package/dist/services/session-input-planner.js.map +1 -0
  1590. package/dist/services/session-lifecycle.d.ts +84 -0
  1591. package/dist/services/session-lifecycle.d.ts.map +1 -0
  1592. package/dist/services/session-lifecycle.js +147 -0
  1593. package/dist/services/session-lifecycle.js.map +1 -0
  1594. package/dist/services/session-lifecycle.test.d.ts +2 -0
  1595. package/dist/services/session-lifecycle.test.d.ts.map +1 -0
  1596. package/dist/services/session-lifecycle.test.js +195 -0
  1597. package/dist/services/session-lifecycle.test.js.map +1 -0
  1598. package/dist/services/session-manager.d.ts +57 -0
  1599. package/dist/services/session-manager.d.ts.map +1 -0
  1600. package/dist/services/session-manager.js +87 -0
  1601. package/dist/services/session-manager.js.map +1 -0
  1602. package/dist/services/session-manager.test.d.ts +2 -0
  1603. package/dist/services/session-manager.test.d.ts.map +1 -0
  1604. package/dist/services/session-manager.test.js +38 -0
  1605. package/dist/services/session-manager.test.js.map +1 -0
  1606. package/dist/services/session-retry-orchestrator.d.ts +135 -0
  1607. package/dist/services/session-retry-orchestrator.d.ts.map +1 -0
  1608. package/dist/services/session-retry-orchestrator.js +297 -0
  1609. package/dist/services/session-retry-orchestrator.js.map +1 -0
  1610. package/dist/services/session-runtime-controller.d.ts +26 -0
  1611. package/dist/services/session-runtime-controller.d.ts.map +1 -0
  1612. package/dist/services/session-runtime-controller.js +46 -0
  1613. package/dist/services/session-runtime-controller.js.map +1 -0
  1614. package/dist/services/session-state-controller.d.ts +83 -0
  1615. package/dist/services/session-state-controller.d.ts.map +1 -0
  1616. package/dist/services/session-state-controller.js +149 -0
  1617. package/dist/services/session-state-controller.js.map +1 -0
  1618. package/dist/services/session-state-controller.test.d.ts +2 -0
  1619. package/dist/services/session-state-controller.test.d.ts.map +1 -0
  1620. package/dist/services/session-state-controller.test.js +125 -0
  1621. package/dist/services/session-state-controller.test.js.map +1 -0
  1622. package/dist/services/session-state-facade.d.ts +57 -0
  1623. package/dist/services/session-state-facade.d.ts.map +1 -0
  1624. package/dist/services/session-state-facade.js +87 -0
  1625. package/dist/services/session-state-facade.js.map +1 -0
  1626. package/dist/services/session-stream-processor.d.ts +47 -0
  1627. package/dist/services/session-stream-processor.d.ts.map +1 -0
  1628. package/dist/services/session-stream-processor.js +179 -0
  1629. package/dist/services/session-stream-processor.js.map +1 -0
  1630. package/dist/services/session-stream-processor.test.d.ts +2 -0
  1631. package/dist/services/session-stream-processor.test.d.ts.map +1 -0
  1632. package/dist/services/session-stream-processor.test.js +395 -0
  1633. package/dist/services/session-stream-processor.test.js.map +1 -0
  1634. package/dist/services/session-tool-tracker.d.ts +112 -0
  1635. package/dist/services/session-tool-tracker.d.ts.map +1 -0
  1636. package/dist/services/session-tool-tracker.js +220 -0
  1637. package/dist/services/session-tool-tracker.js.map +1 -0
  1638. package/dist/services/settings/settings-env.d.ts +9 -0
  1639. package/dist/services/settings/settings-env.d.ts.map +1 -0
  1640. package/dist/services/settings/settings-env.js +81 -0
  1641. package/dist/services/settings/settings-env.js.map +1 -0
  1642. package/dist/services/settings/settings-env.test.d.ts +2 -0
  1643. package/dist/services/settings/settings-env.test.d.ts.map +1 -0
  1644. package/dist/services/settings/settings-env.test.js +36 -0
  1645. package/dist/services/settings/settings-env.test.js.map +1 -0
  1646. package/dist/services/settings/settings-merger.d.ts +26 -0
  1647. package/dist/services/settings/settings-merger.d.ts.map +1 -0
  1648. package/dist/services/settings/settings-merger.js +124 -0
  1649. package/dist/services/settings/settings-merger.js.map +1 -0
  1650. package/dist/services/settings/settings-merger.test.d.ts +2 -0
  1651. package/dist/services/settings/settings-merger.test.d.ts.map +1 -0
  1652. package/dist/services/settings/settings-merger.test.js +26 -0
  1653. package/dist/services/settings/settings-merger.test.js.map +1 -0
  1654. package/dist/services/settings/settings-persistence.d.ts +33 -0
  1655. package/dist/services/settings/settings-persistence.d.ts.map +1 -0
  1656. package/dist/services/settings/settings-persistence.js +156 -0
  1657. package/dist/services/settings/settings-persistence.js.map +1 -0
  1658. package/dist/services/settings/settings-persistence.test.d.ts +2 -0
  1659. package/dist/services/settings/settings-persistence.test.d.ts.map +1 -0
  1660. package/dist/services/settings/settings-persistence.test.js +103 -0
  1661. package/dist/services/settings/settings-persistence.test.js.map +1 -0
  1662. package/dist/services/settings/settings-schema.d.ts +555 -0
  1663. package/dist/services/settings/settings-schema.d.ts.map +1 -0
  1664. package/dist/services/settings/settings-schema.js +502 -0
  1665. package/dist/services/settings/settings-schema.js.map +1 -0
  1666. package/dist/services/settings/settings-schema.test.d.ts +2 -0
  1667. package/dist/services/settings/settings-schema.test.d.ts.map +1 -0
  1668. package/dist/services/settings/settings-schema.test.js +123 -0
  1669. package/dist/services/settings/settings-schema.test.js.map +1 -0
  1670. package/dist/services/settings/settings-service.d.ts +93 -0
  1671. package/dist/services/settings/settings-service.d.ts.map +1 -0
  1672. package/dist/services/settings/settings-service.js +449 -0
  1673. package/dist/services/settings/settings-service.js.map +1 -0
  1674. package/dist/services/settings/settings-service.mock.d.ts +20 -0
  1675. package/dist/services/settings/settings-service.mock.d.ts.map +1 -0
  1676. package/dist/services/settings/settings-service.mock.js +55 -0
  1677. package/dist/services/settings/settings-service.mock.js.map +1 -0
  1678. package/dist/services/settings/settings-service.test.d.ts +2 -0
  1679. package/dist/services/settings/settings-service.test.d.ts.map +1 -0
  1680. package/dist/services/settings/settings-service.test.js +924 -0
  1681. package/dist/services/settings/settings-service.test.js.map +1 -0
  1682. package/dist/services/settings/settings-sources.d.ts +5 -0
  1683. package/dist/services/settings/settings-sources.d.ts.map +1 -0
  1684. package/dist/services/settings/settings-sources.js +97 -0
  1685. package/dist/services/settings/settings-sources.js.map +1 -0
  1686. package/dist/services/settings/settings-sources.test.d.ts +2 -0
  1687. package/dist/services/settings/settings-sources.test.d.ts.map +1 -0
  1688. package/dist/services/settings/settings-sources.test.js +40 -0
  1689. package/dist/services/settings/settings-sources.test.js.map +1 -0
  1690. package/dist/services/settings-merger.d.ts.map +1 -1
  1691. package/dist/services/settings-merger.js +2 -0
  1692. package/dist/services/settings-merger.js.map +1 -1
  1693. package/dist/services/settings-schema.d.ts +25 -2
  1694. package/dist/services/settings-schema.d.ts.map +1 -1
  1695. package/dist/services/settings-schema.js +19 -0
  1696. package/dist/services/settings-schema.js.map +1 -1
  1697. package/dist/services/settings-schema.test.js +7 -1
  1698. package/dist/services/settings-schema.test.js.map +1 -1
  1699. package/dist/services/settings-service.d.ts +0 -1
  1700. package/dist/services/settings-service.d.ts.map +1 -1
  1701. package/dist/services/settings-service.js +1 -44
  1702. package/dist/services/settings-service.js.map +1 -1
  1703. package/dist/services/settings-service.test.d.ts +2 -0
  1704. package/dist/services/settings-service.test.d.ts.map +1 -0
  1705. package/dist/services/settings-service.test.js +929 -0
  1706. package/dist/services/settings-service.test.js.map +1 -0
  1707. package/dist/services/settings-sources.d.ts.map +1 -1
  1708. package/dist/services/settings-sources.js +1 -0
  1709. package/dist/services/settings-sources.js.map +1 -1
  1710. package/dist/services/shell-auto-approval-evaluator.d.ts +7 -3
  1711. package/dist/services/shell-auto-approval-evaluator.d.ts.map +1 -1
  1712. package/dist/services/shell-auto-approval-evaluator.js +8 -6
  1713. package/dist/services/shell-auto-approval-evaluator.js.map +1 -1
  1714. package/dist/services/shell-auto-approval-evaluator.test.js +30 -22
  1715. package/dist/services/shell-auto-approval-evaluator.test.js.map +1 -1
  1716. package/dist/services/shell-auto-approval-resolver.d.ts +2 -2
  1717. package/dist/services/shell-auto-approval-resolver.d.ts.map +1 -1
  1718. package/dist/services/shell-auto-approval-resolver.js.map +1 -1
  1719. package/dist/services/skills/skills-service.d.ts +44 -0
  1720. package/dist/services/skills/skills-service.d.ts.map +1 -0
  1721. package/dist/services/skills/skills-service.js +228 -0
  1722. package/dist/services/skills/skills-service.js.map +1 -0
  1723. package/dist/services/skills/skills-service.test.d.ts +2 -0
  1724. package/dist/services/skills/skills-service.test.d.ts.map +1 -0
  1725. package/dist/services/skills/skills-service.test.js +187 -0
  1726. package/dist/services/skills/skills-service.test.js.map +1 -0
  1727. package/dist/services/ssh-service.test.js +60 -70
  1728. package/dist/services/ssh-service.test.js.map +1 -1
  1729. package/dist/services/stream-event-parsing.d.ts.map +1 -1
  1730. package/dist/services/stream-event-parsing.js +4 -1
  1731. package/dist/services/stream-event-parsing.js.map +1 -1
  1732. package/dist/services/stream-event-parsing.test.js +19 -12
  1733. package/dist/services/stream-event-parsing.test.js.map +1 -1
  1734. package/dist/services/stream-event-processor.d.ts +9 -2
  1735. package/dist/services/stream-event-processor.d.ts.map +1 -1
  1736. package/dist/services/stream-event-processor.js +149 -3
  1737. package/dist/services/stream-event-processor.js.map +1 -1
  1738. package/dist/services/stream-event-processor.test.js +661 -50
  1739. package/dist/services/stream-event-processor.test.js.map +1 -1
  1740. package/dist/services/stream-snapshot.d.ts +42 -0
  1741. package/dist/services/stream-snapshot.d.ts.map +1 -0
  1742. package/dist/services/stream-snapshot.js +45 -0
  1743. package/dist/services/stream-snapshot.js.map +1 -0
  1744. package/dist/services/subagents/execution-runner.d.ts +20 -0
  1745. package/dist/services/subagents/execution-runner.d.ts.map +1 -0
  1746. package/dist/services/subagents/execution-runner.js +169 -0
  1747. package/dist/services/subagents/execution-runner.js.map +1 -0
  1748. package/dist/services/subagents/mentor-runner.d.ts +17 -0
  1749. package/dist/services/subagents/mentor-runner.d.ts.map +1 -0
  1750. package/dist/services/subagents/mentor-runner.js +97 -0
  1751. package/dist/services/subagents/mentor-runner.js.map +1 -0
  1752. package/dist/services/subagents/nested-runner.d.ts +42 -0
  1753. package/dist/services/subagents/nested-runner.d.ts.map +1 -0
  1754. package/dist/services/subagents/nested-runner.js +299 -0
  1755. package/dist/services/subagents/nested-runner.js.map +1 -0
  1756. package/dist/services/subagents/nested-runner.test.d.ts +2 -0
  1757. package/dist/services/subagents/nested-runner.test.d.ts.map +1 -0
  1758. package/dist/services/subagents/nested-runner.test.js +560 -0
  1759. package/dist/services/subagents/nested-runner.test.js.map +1 -0
  1760. package/dist/services/subagents/role-loader.d.ts +16 -0
  1761. package/dist/services/subagents/role-loader.d.ts.map +1 -0
  1762. package/dist/services/subagents/role-loader.js +174 -0
  1763. package/dist/services/subagents/role-loader.js.map +1 -0
  1764. package/dist/services/subagents/runtime.d.ts +26 -0
  1765. package/dist/services/subagents/runtime.d.ts.map +1 -0
  1766. package/dist/services/subagents/runtime.js +53 -0
  1767. package/dist/services/subagents/runtime.js.map +1 -0
  1768. package/dist/services/subagents/subagent-client-types.d.ts +20 -0
  1769. package/dist/services/subagents/subagent-client-types.d.ts.map +1 -0
  1770. package/dist/services/subagents/subagent-client-types.js +2 -0
  1771. package/dist/services/subagents/subagent-client-types.js.map +1 -0
  1772. package/dist/services/subagents/subagent-manager.d.ts +12 -5
  1773. package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
  1774. package/dist/services/subagents/subagent-manager.js +25 -896
  1775. package/dist/services/subagents/subagent-manager.js.map +1 -1
  1776. package/dist/services/subagents/subagent-manager.test.js +626 -537
  1777. package/dist/services/subagents/subagent-manager.test.js.map +1 -1
  1778. package/dist/services/subagents/subagent-session.js +1 -1
  1779. package/dist/services/subagents/subagent-session.js.map +1 -1
  1780. package/dist/services/subagents/subagent-session.test.js +41 -41
  1781. package/dist/services/subagents/subagent-session.test.js.map +1 -1
  1782. package/dist/services/subagents/tool-policy.d.ts +53 -0
  1783. package/dist/services/subagents/tool-policy.d.ts.map +1 -0
  1784. package/dist/services/subagents/tool-policy.js +426 -0
  1785. package/dist/services/subagents/tool-policy.js.map +1 -0
  1786. package/dist/services/subagents/types.d.ts +4 -2
  1787. package/dist/services/subagents/types.d.ts.map +1 -1
  1788. package/dist/services/subagents/types.js +1 -1
  1789. package/dist/services/subagents/types.js.map +1 -1
  1790. package/dist/services/subagents/utils.d.ts +26 -0
  1791. package/dist/services/subagents/utils.d.ts.map +1 -0
  1792. package/dist/services/subagents/utils.js +128 -0
  1793. package/dist/services/subagents/utils.js.map +1 -0
  1794. package/dist/services/test-helpers/mock-stream.d.ts +14 -0
  1795. package/dist/services/test-helpers/mock-stream.d.ts.map +1 -0
  1796. package/dist/services/test-helpers/mock-stream.js +28 -0
  1797. package/dist/services/test-helpers/mock-stream.js.map +1 -0
  1798. package/dist/services/tool-execution-ledger.d.ts +15 -0
  1799. package/dist/services/tool-execution-ledger.d.ts.map +1 -1
  1800. package/dist/services/tool-execution-ledger.js +62 -11
  1801. package/dist/services/tool-execution-ledger.js.map +1 -1
  1802. package/dist/services/tool-execution-ledger.test.js +162 -57
  1803. package/dist/services/tool-execution-ledger.test.js.map +1 -1
  1804. package/dist/services/turn-attempt.d.ts +38 -0
  1805. package/dist/services/turn-attempt.d.ts.map +1 -0
  1806. package/dist/services/turn-attempt.js +99 -0
  1807. package/dist/services/turn-attempt.js.map +1 -0
  1808. package/dist/services/turn-attempt.test.d.ts +2 -0
  1809. package/dist/services/turn-attempt.test.d.ts.map +1 -0
  1810. package/dist/services/turn-attempt.test.js +167 -0
  1811. package/dist/services/turn-attempt.test.js.map +1 -0
  1812. package/dist/services/turn-coordinator.d.ts +30 -0
  1813. package/dist/services/turn-coordinator.d.ts.map +1 -0
  1814. package/dist/services/turn-coordinator.js +121 -0
  1815. package/dist/services/turn-coordinator.js.map +1 -0
  1816. package/dist/services/turn-coordinator.test.d.ts +2 -0
  1817. package/dist/services/turn-coordinator.test.d.ts.map +1 -0
  1818. package/dist/services/turn-coordinator.test.js +231 -0
  1819. package/dist/services/turn-coordinator.test.js.map +1 -0
  1820. package/dist/services/turn-execution-orchestrator.d.ts +79 -0
  1821. package/dist/services/turn-execution-orchestrator.d.ts.map +1 -0
  1822. package/dist/services/turn-execution-orchestrator.js +687 -0
  1823. package/dist/services/turn-execution-orchestrator.js.map +1 -0
  1824. package/dist/services/turn-execution-orchestrator.test.d.ts +2 -0
  1825. package/dist/services/turn-execution-orchestrator.test.d.ts.map +1 -0
  1826. package/dist/services/turn-execution-orchestrator.test.js +236 -0
  1827. package/dist/services/turn-execution-orchestrator.test.js.map +1 -0
  1828. package/dist/services/turn-item-accumulator.d.ts +21 -0
  1829. package/dist/services/turn-item-accumulator.d.ts.map +1 -0
  1830. package/dist/services/turn-item-accumulator.js +56 -0
  1831. package/dist/services/turn-item-accumulator.js.map +1 -0
  1832. package/dist/services/turn-item-accumulator.test.d.ts +2 -0
  1833. package/dist/services/turn-item-accumulator.test.d.ts.map +1 -0
  1834. package/dist/services/turn-item-accumulator.test.js +75 -0
  1835. package/dist/services/turn-item-accumulator.test.js.map +1 -0
  1836. package/dist/services/turn-status-machine.d.ts +25 -0
  1837. package/dist/services/turn-status-machine.d.ts.map +1 -0
  1838. package/dist/services/turn-status-machine.js +49 -0
  1839. package/dist/services/turn-status-machine.js.map +1 -0
  1840. package/dist/services/turn-status-machine.test.d.ts +2 -0
  1841. package/dist/services/turn-status-machine.test.d.ts.map +1 -0
  1842. package/dist/services/turn-status-machine.test.js +95 -0
  1843. package/dist/services/turn-status-machine.test.js.map +1 -0
  1844. package/dist/services/upstream-retry-policy.d.ts +15 -0
  1845. package/dist/services/upstream-retry-policy.d.ts.map +1 -0
  1846. package/dist/services/upstream-retry-policy.js +121 -0
  1847. package/dist/services/upstream-retry-policy.js.map +1 -0
  1848. package/dist/services/upstream-retry-policy.test.d.ts +2 -0
  1849. package/dist/services/upstream-retry-policy.test.d.ts.map +1 -0
  1850. package/dist/services/upstream-retry-policy.test.js +93 -0
  1851. package/dist/services/upstream-retry-policy.test.js.map +1 -0
  1852. package/dist/slash-commands.d.ts +3 -0
  1853. package/dist/slash-commands.d.ts.map +1 -1
  1854. package/dist/slash-commands.js.map +1 -1
  1855. package/dist/slash-commands.test.js +7 -7
  1856. package/dist/slash-commands.test.js.map +1 -1
  1857. package/dist/test-helpers/conversation-session-with-adapter.d.ts +7 -0
  1858. package/dist/test-helpers/conversation-session-with-adapter.d.ts.map +1 -0
  1859. package/dist/test-helpers/conversation-session-with-adapter.js +11 -0
  1860. package/dist/test-helpers/conversation-session-with-adapter.js.map +1 -0
  1861. package/dist/test-helpers/ink-testing.d.ts +15 -0
  1862. package/dist/test-helpers/ink-testing.d.ts.map +1 -0
  1863. package/dist/test-helpers/ink-testing.js +44 -0
  1864. package/dist/test-helpers/ink-testing.js.map +1 -0
  1865. package/dist/test-helpers/ink-testing.test.d.ts +2 -0
  1866. package/dist/test-helpers/ink-testing.test.d.ts.map +1 -0
  1867. package/dist/test-helpers/ink-testing.test.js +35 -0
  1868. package/dist/test-helpers/ink-testing.test.js.map +1 -0
  1869. package/dist/tools/agent/activate-skill.d.ts +4 -0
  1870. package/dist/tools/agent/activate-skill.d.ts.map +1 -0
  1871. package/dist/tools/agent/activate-skill.js +86 -0
  1872. package/dist/tools/agent/activate-skill.js.map +1 -0
  1873. package/dist/tools/agent/ask-mentor.d.ts +11 -0
  1874. package/dist/tools/agent/ask-mentor.d.ts.map +1 -0
  1875. package/dist/tools/agent/ask-mentor.js +52 -0
  1876. package/dist/tools/agent/ask-mentor.js.map +1 -0
  1877. package/dist/tools/agent/ask-mentor.test.d.ts +2 -0
  1878. package/dist/tools/agent/ask-mentor.test.d.ts.map +1 -0
  1879. package/dist/tools/agent/ask-mentor.test.js +53 -0
  1880. package/dist/tools/agent/ask-mentor.test.js.map +1 -0
  1881. package/dist/tools/agent/ask-user-constants.d.ts +10 -0
  1882. package/dist/tools/agent/ask-user-constants.d.ts.map +1 -0
  1883. package/dist/tools/agent/ask-user-constants.js +14 -0
  1884. package/dist/tools/agent/ask-user-constants.js.map +1 -0
  1885. package/dist/tools/agent/ask-user.d.ts +17 -0
  1886. package/dist/tools/agent/ask-user.d.ts.map +1 -0
  1887. package/dist/tools/agent/ask-user.js +113 -0
  1888. package/dist/tools/agent/ask-user.js.map +1 -0
  1889. package/dist/tools/agent/ask-user.test.d.ts +2 -0
  1890. package/dist/tools/agent/ask-user.test.d.ts.map +1 -0
  1891. package/dist/tools/agent/ask-user.test.js +192 -0
  1892. package/dist/tools/agent/ask-user.test.js.map +1 -0
  1893. package/dist/tools/agent/run-subagent.d.ts +18 -0
  1894. package/dist/tools/agent/run-subagent.d.ts.map +1 -0
  1895. package/dist/tools/agent/run-subagent.js +200 -0
  1896. package/dist/tools/agent/run-subagent.js.map +1 -0
  1897. package/dist/tools/agent/run-subagent.test.d.ts +2 -0
  1898. package/dist/tools/agent/run-subagent.test.d.ts.map +1 -0
  1899. package/dist/tools/agent/run-subagent.test.js +189 -0
  1900. package/dist/tools/agent/run-subagent.test.js.map +1 -0
  1901. package/dist/tools/ask-user-constants.d.ts +1 -1
  1902. package/dist/tools/ask-user-constants.d.ts.map +1 -1
  1903. package/dist/tools/ask-user-constants.js +1 -1
  1904. package/dist/tools/ask-user-constants.js.map +1 -1
  1905. package/dist/tools/ask-user.d.ts +5 -2
  1906. package/dist/tools/ask-user.d.ts.map +1 -1
  1907. package/dist/tools/ask-user.js +60 -9
  1908. package/dist/tools/ask-user.js.map +1 -1
  1909. package/dist/tools/ask-user.test.js +91 -28
  1910. package/dist/tools/ask-user.test.js.map +1 -1
  1911. package/dist/tools/command-message-formatters.test.js +9 -9
  1912. package/dist/tools/command-message-formatters.test.js.map +1 -1
  1913. package/dist/tools/edit-healing.js +1 -1
  1914. package/dist/tools/edit-healing.js.map +1 -1
  1915. package/dist/tools/file/apply-patch.d.ts +44 -0
  1916. package/dist/tools/file/apply-patch.d.ts.map +1 -0
  1917. package/dist/tools/file/apply-patch.js +576 -0
  1918. package/dist/tools/file/apply-patch.js.map +1 -0
  1919. package/dist/tools/file/apply-patch.test.d.ts +2 -0
  1920. package/dist/tools/file/apply-patch.test.d.ts.map +1 -0
  1921. package/dist/tools/file/apply-patch.test.js +307 -0
  1922. package/dist/tools/file/apply-patch.test.js.map +1 -0
  1923. package/dist/tools/file/create-file.d.ts +19 -0
  1924. package/dist/tools/file/create-file.d.ts.map +1 -0
  1925. package/dist/tools/file/create-file.js +189 -0
  1926. package/dist/tools/file/create-file.js.map +1 -0
  1927. package/dist/tools/file/create-file.test.d.ts +2 -0
  1928. package/dist/tools/file/create-file.test.d.ts.map +1 -0
  1929. package/dist/tools/file/create-file.test.js +386 -0
  1930. package/dist/tools/file/create-file.test.js.map +1 -0
  1931. package/dist/tools/file/edit-healing.d.ts +25 -0
  1932. package/dist/tools/file/edit-healing.d.ts.map +1 -0
  1933. package/dist/tools/file/edit-healing.js +274 -0
  1934. package/dist/tools/file/edit-healing.js.map +1 -0
  1935. package/dist/tools/file/edit-healing.test.d.ts +2 -0
  1936. package/dist/tools/file/edit-healing.test.d.ts.map +1 -0
  1937. package/dist/tools/file/edit-healing.test.js +117 -0
  1938. package/dist/tools/file/edit-healing.test.js.map +1 -0
  1939. package/dist/tools/file/file-locks.d.ts +3 -0
  1940. package/dist/tools/file/file-locks.d.ts.map +1 -0
  1941. package/dist/tools/file/file-locks.js +37 -0
  1942. package/dist/tools/file/file-locks.js.map +1 -0
  1943. package/dist/tools/file/find-files.d.ts +18 -0
  1944. package/dist/tools/file/find-files.d.ts.map +1 -0
  1945. package/dist/tools/file/find-files.js +176 -0
  1946. package/dist/tools/file/find-files.js.map +1 -0
  1947. package/dist/tools/file/find-files.test.d.ts +2 -0
  1948. package/dist/tools/file/find-files.test.d.ts.map +1 -0
  1949. package/dist/tools/file/find-files.test.js +193 -0
  1950. package/dist/tools/file/find-files.test.js.map +1 -0
  1951. package/dist/tools/file/read-file.d.ts +17 -0
  1952. package/dist/tools/file/read-file.d.ts.map +1 -0
  1953. package/dist/tools/file/read-file.js +130 -0
  1954. package/dist/tools/file/read-file.js.map +1 -0
  1955. package/dist/tools/file/read-file.test.d.ts +2 -0
  1956. package/dist/tools/file/read-file.test.d.ts.map +1 -0
  1957. package/dist/tools/file/read-file.test.js +166 -0
  1958. package/dist/tools/file/read-file.test.js.map +1 -0
  1959. package/dist/tools/file/search-replace-matcher.d.ts +50 -0
  1960. package/dist/tools/file/search-replace-matcher.d.ts.map +1 -0
  1961. package/dist/tools/file/search-replace-matcher.js +343 -0
  1962. package/dist/tools/file/search-replace-matcher.js.map +1 -0
  1963. package/dist/tools/file/search-replace.d.ts +35 -0
  1964. package/dist/tools/file/search-replace.d.ts.map +1 -0
  1965. package/dist/tools/file/search-replace.js +478 -0
  1966. package/dist/tools/file/search-replace.js.map +1 -0
  1967. package/dist/tools/file/search-replace.test.d.ts +2 -0
  1968. package/dist/tools/file/search-replace.test.d.ts.map +1 -0
  1969. package/dist/tools/file/search-replace.test.js +1282 -0
  1970. package/dist/tools/file/search-replace.test.js.map +1 -0
  1971. package/dist/tools/format-helpers.d.ts +63 -5
  1972. package/dist/tools/format-helpers.d.ts.map +1 -1
  1973. package/dist/tools/format-helpers.js +30 -7
  1974. package/dist/tools/format-helpers.js.map +1 -1
  1975. package/dist/tools/format-helpers.test.js +29 -29
  1976. package/dist/tools/format-helpers.test.js.map +1 -1
  1977. package/dist/tools/grep.d.ts +5 -0
  1978. package/dist/tools/grep.d.ts.map +1 -1
  1979. package/dist/tools/grep.js +32 -9
  1980. package/dist/tools/grep.js.map +1 -1
  1981. package/dist/tools/grep.test.js +108 -1
  1982. package/dist/tools/grep.test.js.map +1 -1
  1983. package/dist/tools/languages/go.d.ts.map +1 -1
  1984. package/dist/tools/languages/go.js.map +1 -1
  1985. package/dist/tools/languages/python.d.ts.map +1 -1
  1986. package/dist/tools/languages/python.js.map +1 -1
  1987. package/dist/tools/run-subagent.d.ts +6 -1
  1988. package/dist/tools/run-subagent.d.ts.map +1 -1
  1989. package/dist/tools/run-subagent.js +3 -2
  1990. package/dist/tools/run-subagent.js.map +1 -1
  1991. package/dist/tools/run-subagent.test.js +7 -6
  1992. package/dist/tools/run-subagent.test.js.map +1 -1
  1993. package/dist/tools/search.d.ts +1 -1
  1994. package/dist/tools/search.d.ts.map +1 -1
  1995. package/dist/tools/search.js +3 -1
  1996. package/dist/tools/search.js.map +1 -1
  1997. package/dist/tools/shell-and-grep-formatters.test.d.ts +2 -0
  1998. package/dist/tools/shell-and-grep-formatters.test.d.ts.map +1 -0
  1999. package/dist/tools/shell-and-grep-formatters.test.js +25 -0
  2000. package/dist/tools/shell-and-grep-formatters.test.js.map +1 -0
  2001. package/dist/tools/shell.d.ts.map +1 -1
  2002. package/dist/tools/shell.js +1 -0
  2003. package/dist/tools/shell.js.map +1 -1
  2004. package/dist/tools/system/code-context.d.ts +27 -0
  2005. package/dist/tools/system/code-context.d.ts.map +1 -0
  2006. package/dist/tools/system/code-context.js +524 -0
  2007. package/dist/tools/system/code-context.js.map +1 -0
  2008. package/dist/tools/system/code-context.test.d.ts +2 -0
  2009. package/dist/tools/system/code-context.test.d.ts.map +1 -0
  2010. package/dist/tools/system/code-context.test.js +646 -0
  2011. package/dist/tools/system/code-context.test.js.map +1 -0
  2012. package/dist/tools/system/grep.d.ts +23 -0
  2013. package/dist/tools/system/grep.d.ts.map +1 -0
  2014. package/dist/tools/system/grep.js +246 -0
  2015. package/dist/tools/system/grep.js.map +1 -0
  2016. package/dist/tools/system/grep.test.d.ts +2 -0
  2017. package/dist/tools/system/grep.test.d.ts.map +1 -0
  2018. package/dist/tools/system/grep.test.js +146 -0
  2019. package/dist/tools/system/grep.test.js.map +1 -0
  2020. package/dist/tools/system/shell.d.ts +24 -0
  2021. package/dist/tools/system/shell.d.ts.map +1 -0
  2022. package/dist/tools/system/shell.js +289 -0
  2023. package/dist/tools/system/shell.js.map +1 -0
  2024. package/dist/tools/system/shell.test.d.ts +2 -0
  2025. package/dist/tools/system/shell.test.d.ts.map +1 -0
  2026. package/dist/tools/system/shell.test.js +300 -0
  2027. package/dist/tools/system/shell.test.js.map +1 -0
  2028. package/dist/tools/tool-names.test.js +7 -7
  2029. package/dist/tools/tool-names.test.js.map +1 -1
  2030. package/dist/tools/tool-parameter-schema.test.js +68 -71
  2031. package/dist/tools/tool-parameter-schema.test.js.map +1 -1
  2032. package/dist/tools/types.d.ts +2 -1
  2033. package/dist/tools/types.d.ts.map +1 -1
  2034. package/dist/tools/utils.test.js +14 -14
  2035. package/dist/tools/utils.test.js.map +1 -1
  2036. package/dist/tools/web/web-fetch.d.ts +20 -0
  2037. package/dist/tools/web/web-fetch.d.ts.map +1 -0
  2038. package/dist/tools/web/web-fetch.js +114 -0
  2039. package/dist/tools/web/web-fetch.js.map +1 -0
  2040. package/dist/tools/web/web-fetch.test.d.ts +2 -0
  2041. package/dist/tools/web/web-fetch.test.d.ts.map +1 -0
  2042. package/dist/tools/web/web-fetch.test.js +158 -0
  2043. package/dist/tools/web/web-fetch.test.js.map +1 -0
  2044. package/dist/tools/web/web-search.d.ts +29 -0
  2045. package/dist/tools/web/web-search.d.ts.map +1 -0
  2046. package/dist/tools/web/web-search.js +104 -0
  2047. package/dist/tools/web/web-search.js.map +1 -0
  2048. package/dist/tools/web/web-search.test.d.ts +2 -0
  2049. package/dist/tools/web/web-search.test.d.ts.map +1 -0
  2050. package/dist/tools/web/web-search.test.js +174 -0
  2051. package/dist/tools/web/web-search.test.js.map +1 -0
  2052. package/dist/types/message.d.ts +55 -0
  2053. package/dist/types/message.d.ts.map +1 -0
  2054. package/dist/types/message.js +6 -0
  2055. package/dist/types/message.js.map +1 -0
  2056. package/dist/types/terminal.d.ts +4 -0
  2057. package/dist/types/terminal.d.ts.map +1 -0
  2058. package/dist/types/terminal.js +2 -0
  2059. package/dist/types/terminal.js.map +1 -0
  2060. package/dist/types/user-turn.d.ts +7 -0
  2061. package/dist/types/user-turn.d.ts.map +1 -1
  2062. package/dist/types/user-turn.js +31 -4
  2063. package/dist/types/user-turn.js.map +1 -1
  2064. package/dist/types/user-turn.test.js +66 -12
  2065. package/dist/types/user-turn.test.js.map +1 -1
  2066. package/dist/utils/ai/flex-service-tier.d.ts +2 -0
  2067. package/dist/utils/ai/flex-service-tier.d.ts.map +1 -0
  2068. package/dist/utils/ai/flex-service-tier.js +20 -0
  2069. package/dist/utils/ai/flex-service-tier.js.map +1 -0
  2070. package/dist/utils/ai/flex-service-tier.test.d.ts +2 -0
  2071. package/dist/utils/ai/flex-service-tier.test.d.ts.map +1 -0
  2072. package/dist/utils/ai/flex-service-tier.test.js +25 -0
  2073. package/dist/utils/ai/flex-service-tier.test.js.map +1 -0
  2074. package/dist/utils/ai/model-provider-arg.d.ts +5 -0
  2075. package/dist/utils/ai/model-provider-arg.d.ts.map +1 -0
  2076. package/dist/utils/ai/model-provider-arg.js +15 -0
  2077. package/dist/utils/ai/model-provider-arg.js.map +1 -0
  2078. package/dist/utils/ai/model-provider-arg.test.d.ts +2 -0
  2079. package/dist/utils/ai/model-provider-arg.test.d.ts.map +1 -0
  2080. package/dist/utils/ai/model-provider-arg.test.js +21 -0
  2081. package/dist/utils/ai/model-provider-arg.test.js.map +1 -0
  2082. package/dist/utils/ai/model-settings.d.ts +12 -0
  2083. package/dist/utils/ai/model-settings.d.ts.map +1 -0
  2084. package/dist/utils/ai/model-settings.js +53 -0
  2085. package/dist/utils/ai/model-settings.js.map +1 -0
  2086. package/dist/utils/ai/provider-credentials.d.ts +10 -0
  2087. package/dist/utils/ai/provider-credentials.d.ts.map +1 -0
  2088. package/dist/utils/ai/provider-credentials.js +22 -0
  2089. package/dist/utils/ai/provider-credentials.js.map +1 -0
  2090. package/dist/utils/ai/provider-traffic-extractor.d.ts +20 -0
  2091. package/dist/utils/ai/provider-traffic-extractor.d.ts.map +1 -0
  2092. package/dist/utils/ai/provider-traffic-extractor.js +206 -0
  2093. package/dist/utils/ai/provider-traffic-extractor.js.map +1 -0
  2094. package/dist/utils/ai/provider-traffic-extractor.test.d.ts +2 -0
  2095. package/dist/utils/ai/provider-traffic-extractor.test.d.ts.map +1 -0
  2096. package/dist/utils/ai/provider-traffic-extractor.test.js +88 -0
  2097. package/dist/utils/ai/provider-traffic-extractor.test.js.map +1 -0
  2098. package/dist/utils/ai/token-usage.d.ts +45 -0
  2099. package/dist/utils/ai/token-usage.d.ts.map +1 -0
  2100. package/dist/utils/ai/token-usage.js +298 -0
  2101. package/dist/utils/ai/token-usage.js.map +1 -0
  2102. package/dist/utils/ai/token-usage.test.d.ts +2 -0
  2103. package/dist/utils/ai/token-usage.test.d.ts.map +1 -0
  2104. package/dist/utils/ai/token-usage.test.js +277 -0
  2105. package/dist/utils/ai/token-usage.test.js.map +1 -0
  2106. package/dist/utils/clipboard.d.ts +2 -2
  2107. package/dist/utils/clipboard.d.ts.map +1 -1
  2108. package/dist/utils/clipboard.js +1 -1
  2109. package/dist/utils/clipboard.js.map +1 -1
  2110. package/dist/utils/clipboard.test.js +51 -57
  2111. package/dist/utils/clipboard.test.js.map +1 -1
  2112. package/dist/utils/command-logger.test.d.ts +2 -0
  2113. package/dist/utils/command-logger.test.d.ts.map +1 -0
  2114. package/dist/utils/command-logger.test.js +32 -0
  2115. package/dist/utils/command-logger.test.js.map +1 -0
  2116. package/dist/utils/command-safety.git.test.d.ts +2 -0
  2117. package/dist/utils/command-safety.git.test.d.ts.map +1 -0
  2118. package/dist/utils/command-safety.git.test.js +74 -0
  2119. package/dist/utils/command-safety.git.test.js.map +1 -0
  2120. package/dist/utils/command-safety.test.d.ts +2 -0
  2121. package/dist/utils/command-safety.test.d.ts.map +1 -0
  2122. package/dist/utils/command-safety.test.js +66 -0
  2123. package/dist/utils/command-safety.test.js.map +1 -0
  2124. package/dist/utils/conversation/apply-conversation-result.d.ts +55 -0
  2125. package/dist/utils/conversation/apply-conversation-result.d.ts.map +1 -0
  2126. package/dist/utils/conversation/apply-conversation-result.js +103 -0
  2127. package/dist/utils/conversation/apply-conversation-result.js.map +1 -0
  2128. package/dist/utils/conversation/apply-conversation-result.test.d.ts +2 -0
  2129. package/dist/utils/conversation/apply-conversation-result.test.d.ts.map +1 -0
  2130. package/dist/utils/conversation/apply-conversation-result.test.js +185 -0
  2131. package/dist/utils/conversation/apply-conversation-result.test.js.map +1 -0
  2132. package/dist/utils/conversation/conversation-event-handler.d.ts +34 -0
  2133. package/dist/utils/conversation/conversation-event-handler.d.ts.map +1 -0
  2134. package/dist/utils/conversation/conversation-event-handler.js +538 -0
  2135. package/dist/utils/conversation/conversation-event-handler.js.map +1 -0
  2136. package/dist/utils/conversation/conversation-event-handler.test.d.ts +2 -0
  2137. package/dist/utils/conversation/conversation-event-handler.test.d.ts.map +1 -0
  2138. package/dist/utils/conversation/conversation-event-handler.test.js +1453 -0
  2139. package/dist/utils/conversation/conversation-event-handler.test.js.map +1 -0
  2140. package/dist/utils/conversation/conversation-utils.d.ts +44 -0
  2141. package/dist/utils/conversation/conversation-utils.d.ts.map +1 -0
  2142. package/dist/utils/conversation/conversation-utils.js +109 -0
  2143. package/dist/utils/conversation/conversation-utils.js.map +1 -0
  2144. package/dist/utils/conversation/conversation-utils.test.d.ts +2 -0
  2145. package/dist/utils/conversation/conversation-utils.test.d.ts.map +1 -0
  2146. package/dist/utils/conversation/conversation-utils.test.js +191 -0
  2147. package/dist/utils/conversation/conversation-utils.test.js.map +1 -0
  2148. package/dist/utils/conversation/markdown-commit-frontier.d.ts +11 -0
  2149. package/dist/utils/conversation/markdown-commit-frontier.d.ts.map +1 -0
  2150. package/dist/utils/conversation/markdown-commit-frontier.js +46 -0
  2151. package/dist/utils/conversation/markdown-commit-frontier.js.map +1 -0
  2152. package/dist/utils/conversation/markdown-commit-frontier.test.d.ts +2 -0
  2153. package/dist/utils/conversation/markdown-commit-frontier.test.d.ts.map +1 -0
  2154. package/dist/utils/conversation/markdown-commit-frontier.test.js +40 -0
  2155. package/dist/utils/conversation/markdown-commit-frontier.test.js.map +1 -0
  2156. package/dist/utils/conversation/message-buffer.d.ts +2 -0
  2157. package/dist/utils/conversation/message-buffer.d.ts.map +1 -0
  2158. package/dist/utils/conversation/message-buffer.js +15 -0
  2159. package/dist/utils/conversation/message-buffer.js.map +1 -0
  2160. package/dist/utils/conversation/message-buffer.test.d.ts +2 -0
  2161. package/dist/utils/conversation/message-buffer.test.d.ts.map +1 -0
  2162. package/dist/utils/conversation/message-buffer.test.js +17 -0
  2163. package/dist/utils/conversation/message-buffer.test.js.map +1 -0
  2164. package/dist/utils/conversation/message-utils.d.ts +36 -0
  2165. package/dist/utils/conversation/message-utils.d.ts.map +1 -0
  2166. package/dist/utils/conversation/message-utils.js +105 -0
  2167. package/dist/utils/conversation/message-utils.js.map +1 -0
  2168. package/dist/utils/conversation/message-utils.test.d.ts +2 -0
  2169. package/dist/utils/conversation/message-utils.test.d.ts.map +1 -0
  2170. package/dist/utils/conversation/message-utils.test.js +167 -0
  2171. package/dist/utils/conversation/message-utils.test.js.map +1 -0
  2172. package/dist/utils/conversation-event-handler.d.ts +8 -42
  2173. package/dist/utils/conversation-event-handler.d.ts.map +1 -1
  2174. package/dist/utils/conversation-event-handler.js +196 -34
  2175. package/dist/utils/conversation-event-handler.js.map +1 -1
  2176. package/dist/utils/conversation-event-handler.test.js +396 -27
  2177. package/dist/utils/conversation-event-handler.test.js.map +1 -1
  2178. package/dist/utils/error-helpers.d.ts.map +1 -1
  2179. package/dist/utils/error-helpers.js +12 -0
  2180. package/dist/utils/error-helpers.js.map +1 -1
  2181. package/dist/utils/error-helpers.test.js +99 -69
  2182. package/dist/utils/error-helpers.test.js.map +1 -1
  2183. package/dist/utils/extract-command-messages.d.ts +1 -1
  2184. package/dist/utils/extract-command-messages.d.ts.map +1 -1
  2185. package/dist/utils/extract-command-messages.js +11 -9
  2186. package/dist/utils/extract-command-messages.js.map +1 -1
  2187. package/dist/utils/extract-command-messages.test.d.ts +2 -0
  2188. package/dist/utils/extract-command-messages.test.d.ts.map +1 -0
  2189. package/dist/utils/extract-command-messages.test.js +700 -0
  2190. package/dist/utils/extract-command-messages.test.js.map +1 -0
  2191. package/dist/utils/header-sanitizer.test.js +11 -11
  2192. package/dist/utils/header-sanitizer.test.js.map +1 -1
  2193. package/dist/utils/home-directory-start-guard.test.js +22 -22
  2194. package/dist/utils/home-directory-start-guard.test.js.map +1 -1
  2195. package/dist/utils/inject-warning-into-tool-output.d.ts +6 -0
  2196. package/dist/utils/inject-warning-into-tool-output.d.ts.map +1 -1
  2197. package/dist/utils/inject-warning-into-tool-output.js +28 -2
  2198. package/dist/utils/inject-warning-into-tool-output.js.map +1 -1
  2199. package/dist/utils/inject-warning-into-tool-output.test.d.ts +2 -0
  2200. package/dist/utils/inject-warning-into-tool-output.test.d.ts.map +1 -0
  2201. package/dist/utils/inject-warning-into-tool-output.test.js +149 -0
  2202. package/dist/utils/inject-warning-into-tool-output.test.js.map +1 -0
  2203. package/dist/utils/ink-render-options.test.d.ts +2 -0
  2204. package/dist/utils/ink-render-options.test.d.ts.map +1 -0
  2205. package/dist/utils/ink-render-options.test.js +7 -0
  2206. package/dist/utils/ink-render-options.test.js.map +1 -0
  2207. package/dist/utils/log-truncation.d.ts +42 -2
  2208. package/dist/utils/log-truncation.d.ts.map +1 -1
  2209. package/dist/utils/log-truncation.js +24 -6
  2210. package/dist/utils/log-truncation.js.map +1 -1
  2211. package/dist/utils/log-truncation.test.js +3 -2
  2212. package/dist/utils/log-truncation.test.js.map +1 -1
  2213. package/dist/utils/message-utils.d.ts +1 -1
  2214. package/dist/utils/message-utils.d.ts.map +1 -1
  2215. package/dist/utils/output/diff.d.ts +2 -0
  2216. package/dist/utils/output/diff.d.ts.map +1 -0
  2217. package/dist/utils/output/diff.js +42 -0
  2218. package/dist/utils/output/diff.js.map +1 -0
  2219. package/dist/utils/output/diff.test.d.ts +2 -0
  2220. package/dist/utils/output/diff.test.d.ts.map +1 -0
  2221. package/dist/utils/output/diff.test.js +85 -0
  2222. package/dist/utils/output/diff.test.js.map +1 -0
  2223. package/dist/utils/output/log-truncation.d.ts +49 -0
  2224. package/dist/utils/output/log-truncation.d.ts.map +1 -0
  2225. package/dist/utils/output/log-truncation.js +186 -0
  2226. package/dist/utils/output/log-truncation.js.map +1 -0
  2227. package/dist/utils/output/log-truncation.test.d.ts +2 -0
  2228. package/dist/utils/output/log-truncation.test.d.ts.map +1 -0
  2229. package/dist/utils/output/log-truncation.test.js +175 -0
  2230. package/dist/utils/output/log-truncation.test.js.map +1 -0
  2231. package/dist/utils/output/log-viewer-filters.d.ts +29 -0
  2232. package/dist/utils/output/log-viewer-filters.d.ts.map +1 -0
  2233. package/dist/utils/output/log-viewer-filters.js +49 -0
  2234. package/dist/utils/output/log-viewer-filters.js.map +1 -0
  2235. package/dist/utils/output/log-viewer-filters.test.d.ts +2 -0
  2236. package/dist/utils/output/log-viewer-filters.test.d.ts.map +1 -0
  2237. package/dist/utils/output/log-viewer-filters.test.js +48 -0
  2238. package/dist/utils/output/log-viewer-filters.test.js.map +1 -0
  2239. package/dist/utils/output/output-trim.d.ts +31 -0
  2240. package/dist/utils/output/output-trim.d.ts.map +1 -0
  2241. package/dist/utils/output/output-trim.js +79 -0
  2242. package/dist/utils/output/output-trim.js.map +1 -0
  2243. package/dist/utils/output/output-trim.test.d.ts +2 -0
  2244. package/dist/utils/output/output-trim.test.d.ts.map +1 -0
  2245. package/dist/utils/output/output-trim.test.js +183 -0
  2246. package/dist/utils/output/output-trim.test.js.map +1 -0
  2247. package/dist/utils/output/synchronized-output.d.ts +35 -0
  2248. package/dist/utils/output/synchronized-output.d.ts.map +1 -0
  2249. package/dist/utils/output/synchronized-output.js +66 -0
  2250. package/dist/utils/output/synchronized-output.js.map +1 -0
  2251. package/dist/utils/output/synchronized-output.test.d.ts +2 -0
  2252. package/dist/utils/output/synchronized-output.test.d.ts.map +1 -0
  2253. package/dist/utils/output/synchronized-output.test.js +70 -0
  2254. package/dist/utils/output/synchronized-output.test.js.map +1 -0
  2255. package/dist/utils/output/trim-tool-output.d.ts +2 -0
  2256. package/dist/utils/output/trim-tool-output.d.ts.map +1 -0
  2257. package/dist/utils/output/trim-tool-output.js +52 -0
  2258. package/dist/utils/output/trim-tool-output.js.map +1 -0
  2259. package/dist/utils/output/trim-tool-output.test.d.ts +2 -0
  2260. package/dist/utils/output/trim-tool-output.test.d.ts.map +1 -0
  2261. package/dist/utils/output/trim-tool-output.test.js +32 -0
  2262. package/dist/utils/output/trim-tool-output.test.js.map +1 -0
  2263. package/dist/utils/output/tty-osc.d.ts +27 -0
  2264. package/dist/utils/output/tty-osc.d.ts.map +1 -0
  2265. package/dist/utils/output/tty-osc.js +66 -0
  2266. package/dist/utils/output/tty-osc.js.map +1 -0
  2267. package/dist/utils/output/tty-osc.test.d.ts +2 -0
  2268. package/dist/utils/output/tty-osc.test.d.ts.map +1 -0
  2269. package/dist/utils/output/tty-osc.test.js +130 -0
  2270. package/dist/utils/output/tty-osc.test.js.map +1 -0
  2271. package/dist/utils/output/viewport.d.ts +6 -0
  2272. package/dist/utils/output/viewport.d.ts.map +1 -0
  2273. package/dist/utils/output/viewport.js +20 -0
  2274. package/dist/utils/output/viewport.js.map +1 -0
  2275. package/dist/utils/output/viewport.test.d.ts +2 -0
  2276. package/dist/utils/output/viewport.test.d.ts.map +1 -0
  2277. package/dist/utils/output/viewport.test.js +43 -0
  2278. package/dist/utils/output/viewport.test.js.map +1 -0
  2279. package/dist/utils/output-trim.test.d.ts +2 -0
  2280. package/dist/utils/output-trim.test.d.ts.map +1 -0
  2281. package/dist/utils/output-trim.test.js +183 -0
  2282. package/dist/utils/output-trim.test.js.map +1 -0
  2283. package/dist/utils/resume-list.d.ts +1 -1
  2284. package/dist/utils/resume-list.d.ts.map +1 -1
  2285. package/dist/utils/resume-list.js +1 -1
  2286. package/dist/utils/resume-list.js.map +1 -1
  2287. package/dist/utils/resume-list.test.js +31 -31
  2288. package/dist/utils/resume-list.test.js.map +1 -1
  2289. package/dist/utils/settings-command.d.ts +1 -1
  2290. package/dist/utils/settings-command.d.ts.map +1 -1
  2291. package/dist/utils/settings-command.js +15 -4
  2292. package/dist/utils/settings-command.js.map +1 -1
  2293. package/dist/utils/settings-command.test.d.ts +2 -0
  2294. package/dist/utils/settings-command.test.d.ts.map +1 -0
  2295. package/dist/utils/settings-command.test.js +230 -0
  2296. package/dist/utils/settings-command.test.js.map +1 -0
  2297. package/dist/utils/shell/command-logger.d.ts +11 -0
  2298. package/dist/utils/shell/command-logger.d.ts.map +1 -0
  2299. package/dist/utils/shell/command-logger.js +34 -0
  2300. package/dist/utils/shell/command-logger.js.map +1 -0
  2301. package/dist/utils/shell/command-logger.test.d.ts +2 -0
  2302. package/dist/utils/shell/command-logger.test.d.ts.map +1 -0
  2303. package/dist/utils/shell/command-logger.test.js +32 -0
  2304. package/dist/utils/shell/command-logger.test.js.map +1 -0
  2305. package/dist/utils/shell/command-safety/constants.d.ts +21 -0
  2306. package/dist/utils/shell/command-safety/constants.d.ts.map +1 -0
  2307. package/dist/utils/shell/command-safety/constants.js +265 -0
  2308. package/dist/utils/shell/command-safety/constants.js.map +1 -0
  2309. package/dist/utils/shell/command-safety/find-helpers.d.ts +15 -0
  2310. package/dist/utils/shell/command-safety/find-helpers.d.ts.map +1 -0
  2311. package/dist/utils/shell/command-safety/find-helpers.js +131 -0
  2312. package/dist/utils/shell/command-safety/find-helpers.js.map +1 -0
  2313. package/dist/utils/shell/command-safety/handlers/find-handler.d.ts +6 -0
  2314. package/dist/utils/shell/command-safety/handlers/find-handler.d.ts.map +1 -0
  2315. package/dist/utils/shell/command-safety/handlers/find-handler.js +106 -0
  2316. package/dist/utils/shell/command-safety/handlers/find-handler.js.map +1 -0
  2317. package/dist/utils/shell/command-safety/handlers/git-handler.d.ts +6 -0
  2318. package/dist/utils/shell/command-safety/handlers/git-handler.d.ts.map +1 -0
  2319. package/dist/utils/shell/command-safety/handlers/git-handler.js +92 -0
  2320. package/dist/utils/shell/command-safety/handlers/git-handler.js.map +1 -0
  2321. package/dist/utils/shell/command-safety/handlers/index.d.ts +13 -0
  2322. package/dist/utils/shell/command-safety/handlers/index.d.ts.map +1 -0
  2323. package/dist/utils/shell/command-safety/handlers/index.js +20 -0
  2324. package/dist/utils/shell/command-safety/handlers/index.js.map +1 -0
  2325. package/dist/utils/shell/command-safety/handlers/sed-handler.d.ts +6 -0
  2326. package/dist/utils/shell/command-safety/handlers/sed-handler.d.ts.map +1 -0
  2327. package/dist/utils/shell/command-safety/handlers/sed-handler.js +95 -0
  2328. package/dist/utils/shell/command-safety/handlers/sed-handler.js.map +1 -0
  2329. package/dist/utils/shell/command-safety/handlers/types.d.ts +36 -0
  2330. package/dist/utils/shell/command-safety/handlers/types.d.ts.map +1 -0
  2331. package/dist/utils/shell/command-safety/handlers/types.js +2 -0
  2332. package/dist/utils/shell/command-safety/handlers/types.js.map +1 -0
  2333. package/dist/utils/shell/command-safety/index.d.ts +23 -0
  2334. package/dist/utils/shell/command-safety/index.d.ts.map +1 -0
  2335. package/dist/utils/shell/command-safety/index.js +227 -0
  2336. package/dist/utils/shell/command-safety/index.js.map +1 -0
  2337. package/dist/utils/shell/command-safety/path-analysis.d.ts +4 -0
  2338. package/dist/utils/shell/command-safety/path-analysis.d.ts.map +1 -0
  2339. package/dist/utils/shell/command-safety/path-analysis.js +269 -0
  2340. package/dist/utils/shell/command-safety/path-analysis.js.map +1 -0
  2341. package/dist/utils/shell/command-safety/utils.d.ts +2 -0
  2342. package/dist/utils/shell/command-safety/utils.d.ts.map +1 -0
  2343. package/dist/utils/shell/command-safety/utils.js +20 -0
  2344. package/dist/utils/shell/command-safety/utils.js.map +1 -0
  2345. package/dist/utils/shell/command-safety.evaluator-false-positives.test.d.ts +2 -0
  2346. package/dist/utils/shell/command-safety.evaluator-false-positives.test.d.ts.map +1 -0
  2347. package/dist/utils/shell/command-safety.evaluator-false-positives.test.js +72 -0
  2348. package/dist/utils/shell/command-safety.evaluator-false-positives.test.js.map +1 -0
  2349. package/dist/utils/shell/command-safety.find.test.d.ts +2 -0
  2350. package/dist/utils/shell/command-safety.find.test.d.ts.map +1 -0
  2351. package/dist/utils/shell/command-safety.find.test.js +314 -0
  2352. package/dist/utils/shell/command-safety.find.test.js.map +1 -0
  2353. package/dist/utils/shell/command-safety.git.test.d.ts +2 -0
  2354. package/dist/utils/shell/command-safety.git.test.d.ts.map +1 -0
  2355. package/dist/utils/shell/command-safety.git.test.js +74 -0
  2356. package/dist/utils/shell/command-safety.git.test.js.map +1 -0
  2357. package/dist/utils/shell/command-safety.path.test.d.ts +2 -0
  2358. package/dist/utils/shell/command-safety.path.test.d.ts.map +1 -0
  2359. package/dist/utils/shell/command-safety.path.test.js +353 -0
  2360. package/dist/utils/shell/command-safety.path.test.js.map +1 -0
  2361. package/dist/utils/shell/command-safety.red-yellow-policy.test.d.ts +2 -0
  2362. package/dist/utils/shell/command-safety.red-yellow-policy.test.d.ts.map +1 -0
  2363. package/dist/utils/shell/command-safety.red-yellow-policy.test.js +36 -0
  2364. package/dist/utils/shell/command-safety.red-yellow-policy.test.js.map +1 -0
  2365. package/dist/utils/shell/command-safety.specialized-handlers.test.d.ts +2 -0
  2366. package/dist/utils/shell/command-safety.specialized-handlers.test.d.ts.map +1 -0
  2367. package/dist/utils/shell/command-safety.specialized-handlers.test.js +20 -0
  2368. package/dist/utils/shell/command-safety.specialized-handlers.test.js.map +1 -0
  2369. package/dist/utils/shell/command-safety.test.d.ts +2 -0
  2370. package/dist/utils/shell/command-safety.test.d.ts.map +1 -0
  2371. package/dist/utils/shell/command-safety.test.js +64 -0
  2372. package/dist/utils/shell/command-safety.test.js.map +1 -0
  2373. package/dist/utils/shell/execute-shell.d.ts +26 -0
  2374. package/dist/utils/shell/execute-shell.d.ts.map +1 -0
  2375. package/dist/utils/shell/execute-shell.js +68 -0
  2376. package/dist/utils/shell/execute-shell.js.map +1 -0
  2377. package/dist/utils/shell/execute-shell.test.d.ts +2 -0
  2378. package/dist/utils/shell/execute-shell.test.d.ts.map +1 -0
  2379. package/dist/utils/shell/execute-shell.test.js +89 -0
  2380. package/dist/utils/shell/execute-shell.test.js.map +1 -0
  2381. package/dist/utils/shell/shell-output.d.ts +17 -0
  2382. package/dist/utils/shell/shell-output.d.ts.map +1 -0
  2383. package/dist/utils/shell/shell-output.js +53 -0
  2384. package/dist/utils/shell/shell-output.js.map +1 -0
  2385. package/dist/utils/shell/shell-output.test.d.ts +2 -0
  2386. package/dist/utils/shell/shell-output.test.d.ts.map +1 -0
  2387. package/dist/utils/shell/shell-output.test.js +49 -0
  2388. package/dist/utils/shell/shell-output.test.js.map +1 -0
  2389. package/dist/utils/ssh-config-parser.test.js +37 -37
  2390. package/dist/utils/ssh-config-parser.test.js.map +1 -1
  2391. package/dist/utils/streaming/extract-command-messages.d.ts +5 -0
  2392. package/dist/utils/streaming/extract-command-messages.d.ts.map +1 -0
  2393. package/dist/utils/streaming/extract-command-messages.js +125 -0
  2394. package/dist/utils/streaming/extract-command-messages.js.map +1 -0
  2395. package/dist/utils/streaming/extract-command-messages.test.d.ts +2 -0
  2396. package/dist/utils/streaming/extract-command-messages.test.d.ts.map +1 -0
  2397. package/dist/utils/streaming/extract-command-messages.test.js +700 -0
  2398. package/dist/utils/streaming/extract-command-messages.test.js.map +1 -0
  2399. package/dist/utils/streaming/streaming-session-factory.d.ts +33 -0
  2400. package/dist/utils/streaming/streaming-session-factory.d.ts.map +1 -0
  2401. package/dist/utils/streaming/streaming-session-factory.js +117 -0
  2402. package/dist/utils/streaming/streaming-session-factory.js.map +1 -0
  2403. package/dist/utils/streaming/streaming-session-factory.test.d.ts +2 -0
  2404. package/dist/utils/streaming/streaming-session-factory.test.d.ts.map +1 -0
  2405. package/dist/utils/streaming/streaming-session-factory.test.js +148 -0
  2406. package/dist/utils/streaming/streaming-session-factory.test.js.map +1 -0
  2407. package/dist/utils/streaming/streaming-updater.d.ts +8 -0
  2408. package/dist/utils/streaming/streaming-updater.d.ts.map +1 -0
  2409. package/dist/utils/streaming/streaming-updater.js +41 -0
  2410. package/dist/utils/streaming/streaming-updater.js.map +1 -0
  2411. package/dist/utils/streaming/streaming-updater.test.d.ts +2 -0
  2412. package/dist/utils/streaming/streaming-updater.test.d.ts.map +1 -0
  2413. package/dist/utils/streaming/streaming-updater.test.js +73 -0
  2414. package/dist/utils/streaming/streaming-updater.test.js.map +1 -0
  2415. package/dist/utils/streaming-session-factory.d.ts +8 -7
  2416. package/dist/utils/streaming-session-factory.d.ts.map +1 -1
  2417. package/dist/utils/streaming-session-factory.js +15 -18
  2418. package/dist/utils/streaming-session-factory.js.map +1 -1
  2419. package/dist/utils/streaming-updater.test.d.ts +2 -0
  2420. package/dist/utils/streaming-updater.test.d.ts.map +1 -0
  2421. package/dist/utils/streaming-updater.test.js +73 -0
  2422. package/dist/utils/streaming-updater.test.js.map +1 -0
  2423. package/dist/utils/test-render.d.ts +14 -0
  2424. package/dist/utils/test-render.d.ts.map +1 -0
  2425. package/dist/utils/test-render.js +44 -0
  2426. package/dist/utils/test-render.js.map +1 -0
  2427. package/dist/utils/throttle.test.d.ts +2 -0
  2428. package/dist/utils/throttle.test.d.ts.map +1 -0
  2429. package/dist/utils/throttle.test.js +64 -0
  2430. package/dist/utils/throttle.test.js.map +1 -0
  2431. package/dist/utils/trim-tool-output.test.d.ts +2 -0
  2432. package/dist/utils/trim-tool-output.test.d.ts.map +1 -0
  2433. package/dist/utils/trim-tool-output.test.js +32 -0
  2434. package/dist/utils/trim-tool-output.test.js.map +1 -0
  2435. package/package.json +33 -32
@@ -1,391 +1,38 @@
1
- import { Agent, run, tool as createTool, RunState } from '@openai/agents';
2
1
  import { randomUUID } from 'node:crypto';
3
- import path from 'node:path';
4
- import fs from 'node:fs';
5
- import { getProvider } from '../../providers/index.js';
6
- import { SubagentSession } from './subagent-session.js';
7
- import { executeWithRetry } from '../../lib/retry-executor.js';
8
- import { decideRecoverableModelRetry, MAX_SUBAGENT_MODEL_RETRIES } from '../conversation-retry-policy.js';
9
- import { wrapToolInvoke } from '../../lib/tool-invoke.js';
10
- import { wrapNeedsApproval } from '../../lib/openai-agent-client.js';
11
- import { toOpenAIStrictToolSchema } from '../../lib/openai-strict-tool-schema.js';
12
- import { shouldUseStrictToolSchema, shouldPreferPatchEditingModel } from '../../lib/tool-selection-policy.js';
13
- import { createReadFileToolDefinition } from '../../tools/read-file.js';
14
- import { createGrepToolDefinition } from '../../tools/grep.js';
15
- import { createFindFilesToolDefinition } from '../../tools/find-files.js';
16
- import { createReadCodeOutlineToolDefinition, createCodeContextSearchToolDefinition, } from '../../tools/code-context.js';
17
- import { createWebSearchToolDefinition } from '../../tools/web-search.js';
18
- import { createWebFetchToolDefinition } from '../../tools/web-fetch.js';
19
- import { createApplyPatchToolDefinition } from '../../tools/apply-patch.js';
20
- import { createSearchReplaceToolDefinition } from '../../tools/search-replace.js';
21
- import { createCreateFileToolDefinition } from '../../tools/create-file.js';
22
- import { createShellToolDefinition } from '../../tools/shell.js';
23
- import { registerToolFormatters } from '../../tools/command-message-formatters.js';
24
- import { trimToolOutput } from '../../utils/trim-tool-output.js';
25
- import { injectWarningIntoToolOutput } from '../../utils/inject-warning-into-tool-output.js';
26
- import { extractUsage, normalizeAgentRunUsage } from '../../utils/token-usage.js';
27
- import { getEnvInfo, getAgentsInstructions } from '../../agent.js';
28
- import { tryAcquireFileLock } from '../../tools/file-locks.js';
29
- import { classifyCommand, SafetyStatus } from '../../utils/command-safety/index.js';
30
- import { evaluateShellAutoApprovalAdvisories } from '../shell-auto-approval-evaluator.js';
31
- const BASE_PROMPT_PATH = path.join(import.meta.dirname, '../../prompts');
32
- const PROMPTS_DIR = path.join(BASE_PROMPT_PATH, 'subagents');
33
- // Reads a prompt markdown file. The build does not copy `.md` files into
34
- // `dist`, so when running compiled code we fall back to the original
35
- // `source/prompts` tree (this also lets tests run against source directly).
36
- function resolvePrompt(promptPath) {
37
- try {
38
- return fs.readFileSync(promptPath, 'utf-8').trim();
39
- }
40
- catch (e) {
41
- const relativePromptPath = path.relative(BASE_PROMPT_PATH, promptPath);
42
- const sourcePromptPath = path.join(import.meta.dirname, '../../../source/prompts', relativePromptPath.startsWith('..') ? path.basename(promptPath) : relativePromptPath);
43
- if (sourcePromptPath !== promptPath && fs.existsSync(sourcePromptPath)) {
44
- return fs.readFileSync(sourcePromptPath, 'utf-8').trim();
45
- }
46
- throw new Error(`Failed to read prompt file at ${promptPath}: ${e.message}`);
47
- }
48
- }
49
- const MUTATING_TOOL_NAMES = new Set(['apply_patch', 'search_replace', 'create_file', 'shell']);
50
- const ROLE_MAX_TURNS_DEFAULT = 20;
51
- function parseFrontmatter(content) {
52
- const match = content.match(/^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/);
53
- if (!match) {
54
- return { frontmatter: {}, body: content };
55
- }
56
- const frontmatterText = match[1];
57
- const body = match[2];
58
- const frontmatter = {};
59
- for (const line of frontmatterText.split('\n')) {
60
- const colonIdx = line.indexOf(':');
61
- if (colonIdx === -1)
62
- continue;
63
- const key = line.slice(0, colonIdx).trim();
64
- let raw = line.slice(colonIdx + 1).trim();
65
- const quoted = raw.length >= 2 && ((raw.startsWith('"') && raw.endsWith('"')) || (raw.startsWith("'") && raw.endsWith("'")));
66
- if (quoted) {
67
- frontmatter[key] = raw.slice(1, -1);
68
- continue;
69
- }
70
- if (raw === 'true') {
71
- frontmatter[key] = true;
72
- }
73
- else if (raw === 'false') {
74
- frontmatter[key] = false;
75
- }
76
- else if (!isNaN(Number(raw)) && raw !== '') {
77
- frontmatter[key] = Number(raw);
78
- }
79
- else {
80
- frontmatter[key] = raw;
81
- }
82
- }
83
- return { frontmatter, body: body.trim() };
84
- }
85
- function loadRoleDefinition(role, settings) {
86
- const filePath = path.join(PROMPTS_DIR, `${role}.md`);
87
- let content;
88
- try {
89
- content = resolvePrompt(filePath);
90
- }
91
- catch (error) {
92
- throw new Error(`Unknown subagent role: "${role}". No definition found at ${filePath}. Error: ${error.message}`);
93
- }
94
- const { frontmatter, body } = parseFrontmatter(content);
95
- const subagentPrefix = role === 'mentor' ? 'agent.mentor' : `agent.subagent${role.charAt(0).toUpperCase() + role.slice(1)}`;
96
- const resolve = (value, subagentKey, fallbackKey, defaultValue) => {
97
- if (value === 'inherit' || value === undefined || value === null || value === '') {
98
- const subagentVal = settings.get(subagentKey);
99
- if (subagentVal !== undefined && subagentVal !== null) {
100
- return subagentVal;
101
- }
102
- if (fallbackKey) {
103
- return settings.get(fallbackKey) ?? defaultValue;
104
- }
105
- return defaultValue;
106
- }
107
- return value;
108
- };
109
- return {
110
- role,
111
- name: frontmatter.name ?? role,
112
- instructions: body,
113
- canRead: frontmatter.canRead ?? false,
114
- canWrite: frontmatter.canWrite ?? false,
115
- canSearchWeb: frontmatter.canSearchWeb ?? false,
116
- canRunShell: frontmatter.canRunShell ?? false,
117
- maxTurns: frontmatter.maxTurns ?? ROLE_MAX_TURNS_DEFAULT,
118
- model: resolve(frontmatter.model, `${subagentPrefix}Model`, 'agent.model', 'gpt-4o'),
119
- provider: resolve(frontmatter.provider, `${subagentPrefix}Provider`, 'agent.provider', 'openai'),
120
- reasoningEffort: resolve(frontmatter.reasoningEffort, `${subagentPrefix}ReasoningEffort`, undefined, 'default'),
121
- description: frontmatter.description ?? '',
122
- };
123
- }
124
- function selectSubagentBasePromptFile(model) {
125
- const normalizedModel = model.toLowerCase();
126
- if (normalizedModel.includes('gpt-5') && normalizedModel.includes('codex')) {
127
- return 'base-codex.md';
128
- }
129
- if (normalizedModel.includes('sonnet') || normalizedModel.includes('haiku')) {
130
- return 'base-anthropic.md';
131
- }
132
- if (normalizedModel.includes('gpt-5')) {
133
- return 'base-gpt-5-modern.md';
134
- }
135
- return 'base-simple.md';
136
- }
137
- function resolveSubagentSearchViaShell(settings, model, canRunShell) {
138
- const searchViaShellSetting = settings.get('app.searchViaShell') ?? 'auto';
139
- if (searchViaShellSetting === 'on')
140
- return canRunShell;
141
- if (searchViaShellSetting === 'off')
142
- return false;
143
- return shouldPreferPatchEditingModel(model) && canRunShell;
144
- }
145
- function buildAvailableToolGuidance(toolDefinitions, searchViaShell) {
146
- const toolNames = toolDefinitions.map((tool) => tool.name);
147
- const hasTool = (name) => toolNames.includes(name);
148
- const lines = [
149
- '## Available Tool Guidance',
150
- '',
151
- `Registered tools: ${toolNames.length > 0 ? toolNames.map((name) => `\`${name}\``).join(', ') : 'none'}.`,
152
- '',
153
- 'Use only these tools. If a tool mentioned elsewhere is not listed here, it is not available.',
154
- ];
155
- if (searchViaShell && hasTool('shell')) {
156
- lines.push('For workspace search, use `shell` with commands like `rg` for text search and `fd` for file search.');
157
- }
158
- else if (hasTool('grep') || hasTool('find_files')) {
159
- const searchTools = ['grep', 'find_files'].filter(hasTool).map((name) => `\`${name}\``);
160
- lines.push(`For workspace search, use the dedicated search tools: ${searchTools.join(', ')}.`);
161
- }
162
- else {
163
- lines.push('No dedicated workspace search tool is available. Use `read_file` and provided context where possible.');
164
- }
165
- if (hasTool('read_code_outline') || hasTool('code_context_search')) {
166
- const codeContextTools = ['read_code_outline', 'code_context_search'].filter(hasTool).map((name) => `\`${name}\``);
167
- lines.push(`For code structure and symbol context, use: ${codeContextTools.join(', ')}.`);
168
- }
169
- else {
170
- lines.push('Code-context tools are not available in this run.');
171
- }
172
- if (hasTool('read_file')) {
173
- lines.push('Use `read_file` for exact file contents before drawing conclusions or editing.');
174
- }
175
- if (hasTool('shell')) {
176
- lines.push('Use `shell` only for commands that are safe, bounded, and relevant to the assigned task.');
177
- }
178
- if (hasTool('apply_patch') || hasTool('search_replace') || hasTool('create_file')) {
179
- const writeTools = ['apply_patch', 'search_replace', 'create_file'].filter(hasTool).map((name) => `\`${name}\``);
180
- lines.push(`For edits, use the registered write tools: ${writeTools.join(', ')}.`);
181
- }
182
- if (hasTool('web_search') || hasTool('web_fetch')) {
183
- lines.push('Use web tools only when current external information or documentation is needed.');
184
- }
185
- return lines.join('\n');
186
- }
187
- function buildAgentTools(toolDefinitions, options) {
188
- const providerDef = getProvider(options.providerId);
189
- const capabilities = {
190
- supportsConversationChaining: providerDef?.capabilities?.supportsConversationChaining ?? false,
191
- supportsTracingControl: providerDef?.capabilities?.supportsTracingControl ?? false,
192
- usesStrictToolSchema: providerDef?.capabilities?.usesStrictToolSchema,
193
- };
194
- const useStrictSchema = shouldUseStrictToolSchema({
195
- providerId: options.providerId,
196
- capabilities,
197
- });
198
- return toolDefinitions.map((definition) => wrapToolInvoke(createTool({
199
- name: definition.name,
200
- description: definition.description,
201
- parameters: useStrictSchema ? toOpenAIStrictToolSchema(definition.parameters) : definition.parameters,
202
- needsApproval: wrapNeedsApproval(definition),
203
- execute: async (params, _context, details) => {
204
- options.onToolStart?.(definition.name, params, formatRunningCommandMessages(definition, params));
205
- const maxOutputLength = options.settings.get('shell.maxOutputChars');
206
- const result = await definition.execute(params, _context, details);
207
- options.onToolComplete?.(definition.name);
208
- let trimmedResult = trimToolOutput(result, undefined, maxOutputLength ?? undefined);
209
- // Inject warning when turns are approaching maxTurns
210
- const userContext = _context?.context;
211
- if (userContext && typeof userContext.turnCount === 'number' && typeof userContext.maxTurns === 'number') {
212
- const turnsLeft = userContext.maxTurns - userContext.turnCount;
213
- if (turnsLeft >= 0 && turnsLeft <= 5) {
214
- const warning = `\n\n[Warning: You are approaching the maximum turn limit. You have ${turnsLeft} turns left. Please prepare to wrap up your work and provide a situation update message describing what has been completed and what remains to be done.]`;
215
- trimmedResult = injectWarningIntoToolOutput(trimmedResult, warning);
216
- }
217
- }
218
- return trimmedResult;
219
- },
220
- })));
221
- }
222
- function formatRunningCommandMessages(definition, params) {
223
- const callId = `subagent-tool-${randomUUID()}`;
224
- const item = {
225
- id: callId,
226
- rawItem: {
227
- id: callId,
228
- callId,
229
- arguments: params,
230
- output: '',
231
- },
232
- };
233
- try {
234
- const messages = definition.formatCommandMessage(item, 0, new Map());
235
- if (messages.length > 0) {
236
- return messages.map((message, index) => ({
237
- ...message,
238
- id: `${callId}-${index}`,
239
- status: 'running',
240
- output: '',
241
- success: undefined,
242
- failureReason: undefined,
243
- toolName: message.toolName ?? definition.name,
244
- toolArgs: message.toolArgs ?? params,
245
- }));
246
- }
247
- }
248
- catch {
249
- // Fall back to the tool name if a formatter cannot handle an in-flight item.
250
- }
251
- return [
252
- {
253
- id: `${callId}-0`,
254
- sender: 'command',
255
- status: 'running',
256
- command: definition.name,
257
- output: '',
258
- toolName: definition.name,
259
- toolArgs: params,
260
- },
261
- ];
262
- }
263
- function runWithProvider(providerId, runner, agent, input, options) {
264
- const providerDef = getProvider(providerId);
265
- const supportsTracingControl = providerDef?.capabilities?.supportsTracingControl ?? false;
266
- const effectiveOptions = { ...options };
267
- if (!supportsTracingControl) {
268
- effectiveOptions.tracingDisabled = true;
269
- }
270
- if (!runner && providerId !== 'openai') {
271
- const label = providerDef?.label || providerId;
272
- throw new Error(`${label} is configured but could not be initialized. ` +
273
- `Please check that all required credentials and provider settings are set.`);
274
- }
275
- return runner ? runner.run(agent, input, effectiveOptions) : run(agent, input, effectiveOptions);
276
- }
277
- function isToolHistoryItem(raw) {
278
- const type = typeof raw?.type === 'string' ? raw.type : '';
279
- if (raw?.role === 'tool')
280
- return true;
281
- return /tool|function_call/i.test(type);
282
- }
283
- function assistantText(raw) {
284
- if (raw?.role !== 'assistant')
285
- return null;
286
- const content = raw?.content;
287
- if (typeof content === 'string')
288
- return content;
289
- if (Array.isArray(content)) {
290
- return content
291
- .filter((c) => typeof c?.text === 'string')
292
- .map((c) => c.text)
293
- .join('');
294
- }
295
- return null;
296
- }
297
- /**
298
- * Returns only the subagent's final answer. When the run used tools, the
299
- * answer is the last assistant message that appears strictly after the last
300
- * tool item, so intermediate narration emitted between tool calls does not
301
- * leak into the parent agent context.
302
- *
303
- * When the run ends with a tool call and no trailing narration, falls back to
304
- * the last assistant message found anywhere in the history (which may precede
305
- * the last tool call) to avoid returning an empty string for runs that
306
- * completed successfully via write operations.
307
- */
308
- function extractFinalText(result) {
309
- if (typeof result.finalOutput === 'string' && result.finalOutput) {
310
- return result.finalOutput;
311
- }
312
- if (Array.isArray(result.history)) {
313
- const history = result.history;
314
- let lastToolIndex = -1;
315
- for (let i = history.length - 1; i >= 0; i--) {
316
- if (isToolHistoryItem(history[i]?.rawItem ?? history[i])) {
317
- lastToolIndex = i;
318
- break;
319
- }
320
- }
321
- // Look for an assistant message after the last tool item.
322
- for (let i = history.length - 1; i > lastToolIndex; i--) {
323
- const text = assistantText(history[i]?.rawItem ?? history[i]);
324
- if (text !== null)
325
- return text;
326
- }
327
- // Fallback: the run ended with a tool call and no narration. Return the
328
- // last assistant message found anywhere so the caller gets a non-empty
329
- // summary rather than an empty string.
330
- for (let i = history.length - 1; i >= 0; i--) {
331
- const text = assistantText(history[i]?.rawItem ?? history[i]);
332
- if (text !== null)
333
- return text;
334
- }
335
- }
336
- return '';
337
- }
338
- function aggregateToolUsage(toolCounts) {
339
- return Array.from(toolCounts.entries()).map(([toolName, count]) => ({ toolName, count }));
340
- }
341
- function buildSubagentRetryTask(originalTask, errorMessage, toolNames, retryType, hallucinatedToolName) {
342
- const availableTools = toolNames.length > 0 ? toolNames.join(', ') : 'none';
343
- let instruction;
344
- if (retryType === 'hallucination' && hallucinatedToolName && hallucinatedToolName !== 'unknown') {
345
- instruction =
346
- `The tool "${hallucinatedToolName}" does not exist. Do not attempt to use it. ` +
347
- `Available tools: ${availableTools}.`;
348
- }
349
- else if (retryType === 'parsing_error') {
350
- instruction = `Your previous tool call could not be parsed. Ensure all tool arguments are valid JSON and try again.`;
351
- }
352
- else {
353
- instruction = `Please produce a final textual answer now. Do not call any more tools; provide a direct response to the original task.`;
354
- }
355
- return `${originalTask}\n\n` + `[System: Previous attempt failed with error: ${errorMessage}. ${instruction}]`;
356
- }
2
+ import { createSubagentRuntime } from './runtime.js';
3
+ import { loadRoleDefinition } from './role-loader.js';
4
+ import { isAbortLike, safeEmit } from './utils.js';
5
+ import { normalizeAgentRunUsage, extractUsage } from '../../utils/ai/token-usage.js';
357
6
  export class SubagentManager {
358
7
  #logger;
359
8
  #settings;
360
- #sessionContextService;
361
- #executionContext;
362
9
  #onEvent;
363
- #mentorSession;
364
- #agentClient;
10
+ #runtime;
365
11
  constructor(deps) {
366
12
  this.#logger = deps.logger;
367
13
  this.#settings = deps.settings;
368
- this.#sessionContextService = deps.sessionContextService;
369
- this.#executionContext = deps.executionContext;
370
14
  this.#onEvent = deps.onEvent;
371
- this.#agentClient = deps.agentClient;
372
- this.#mentorSession = new SubagentSession(randomUUID(), 'mentor');
373
- }
374
- #emit(event) {
375
- try {
376
- this.#onEvent?.(event);
377
- }
378
- catch (error) {
379
- this.#logger.debug('Subagent event emit failed', { error: error?.message });
380
- }
15
+ this.#runtime = createSubagentRuntime(deps);
381
16
  }
382
17
  resetMentorSession() {
383
- this.#mentorSession.reset();
18
+ this.#runtime.mentorRunner.reset();
19
+ }
20
+ clearCache() {
21
+ this.#runtime.nestedRunner.clearCache();
22
+ }
23
+ getRoleAgentTool(role) {
24
+ return this.#runtime.nestedRunner.getRoleAgentTool(role);
25
+ }
26
+ getRoleAgent(role) {
27
+ return this.#runtime.nestedRunner.getRoleAgent(role);
28
+ }
29
+ async runAsTool(request, context, details) {
30
+ return this.#runtime.nestedRunner.runAsTool(request, context, details);
384
31
  }
385
32
  async run(request) {
386
33
  const agentId = randomUUID();
387
34
  this.#logger.debug('SubagentManager.run', { agentId, role: request.role, taskLength: request.task.length });
388
- this.#emit({
35
+ safeEmit(this.#logger, this.#onEvent, {
389
36
  type: 'subagent_started',
390
37
  agentId,
391
38
  role: request.role,
@@ -394,9 +41,9 @@ export class SubagentManager {
394
41
  });
395
42
  try {
396
43
  const result = request.role === 'mentor'
397
- ? await this.#runMentor(agentId, request.task, request.signal)
398
- : await this.#runSubagent(agentId, request, loadRoleDefinition(request.role, this.#settings));
399
- this.#emit({ type: 'subagent_completed', result });
44
+ ? await this.#runtime.mentorRunner.run(agentId, request.task, request.signal)
45
+ : await this.#runtime.executionRunner.run(agentId, request, loadRoleDefinition(request.role, this.#settings));
46
+ safeEmit(this.#logger, this.#onEvent, { type: 'subagent_completed', result });
400
47
  return result;
401
48
  }
402
49
  catch (error) {
@@ -406,13 +53,7 @@ export class SubagentManager {
406
53
  error: error?.message,
407
54
  stack: error instanceof Error ? error.stack : undefined,
408
55
  });
409
- // Detect abort-like errors (user cancellation, stream abort) and
410
- // normalize to 'cancelled' status so the parent can distinguish
411
- // intentional user-initiated cancellation from unexpected failures.
412
- const isAbort = error?.name === 'AbortError' ||
413
- error?.message?.includes('abort') ||
414
- error?.message?.includes('cancel') ||
415
- error?.code === 'ERR_ABORTED';
56
+ const isAbort = isAbortLike(error?.message, error);
416
57
  const usage = normalizeAgentRunUsage(error?.state?.usage) ?? extractUsage(error);
417
58
  const result = {
418
59
  agentId,
@@ -424,521 +65,9 @@ export class SubagentManager {
424
65
  error: error?.message || String(error),
425
66
  ...(usage ? { usage } : {}),
426
67
  };
427
- this.#emit({ type: 'subagent_completed', result });
68
+ safeEmit(this.#logger, this.#onEvent, { type: 'subagent_completed', result });
428
69
  return result;
429
70
  }
430
71
  }
431
- async #runMentor(agentId, task, signal) {
432
- const mentorModel = this.#settings.get('agent.mentorModel');
433
- if (!mentorModel) {
434
- throw new Error('Mentor model is not configured');
435
- }
436
- const mentorProvider = this.#settings.get('agent.mentorProvider') ?? this.#settings.get('agent.provider') ?? 'openai';
437
- const mentorMode = this.#settings.get('app.mentorMode');
438
- // model/provider/reasoning stay on the mentor-specific settings (compat
439
- // bridge); the prompt body and maxTurns come from the mentor role markdown.
440
- const definition = loadRoleDefinition('mentor', this.#settings);
441
- const baseInstructions = mentorMode
442
- ? 'You are a senior architect acting as a peer reviewer. You have no codebase access—you rely on what the user reports.\n\n' +
443
- 'Your role is adversarial review, not rubber-stamping:\n' +
444
- '- Challenge assumptions, even when reasoning sounds solid\n' +
445
- '- Probe for gaps: what did they not check? What could go wrong?\n' +
446
- '- Suggest alternatives they may have dismissed too quickly\n' +
447
- '- Ask for evidence when confidence seems misplaced\n\n' +
448
- 'When satisfied, give clear approval with specific next steps. When not, say exactly what needs more investigation.\n\n' +
449
- "Be concise. Push back hard, but don't block unnecessarily."
450
- : definition.instructions;
451
- const envInfo = getEnvInfo(this.#settings, this.#executionContext);
452
- const cwd = this.#executionContext?.getCwd() ?? process.cwd();
453
- const agentsInstructions = this.#executionContext?.isRemote() ? '' : getAgentsInstructions(cwd);
454
- const instructions = `${baseInstructions}\n\nEnvironment: ${envInfo}${agentsInstructions}`;
455
- this.#mentorSession.switchProvider(mentorProvider);
456
- const mentorRunner = this.#mentorSession.ensureRunner(mentorProvider, (providerId) => {
457
- const providerDef = getProvider(providerId);
458
- return (providerDef?.createRunner?.({
459
- settingsService: this.#settings,
460
- loggingService: this.#logger,
461
- sessionContextService: this.#sessionContextService,
462
- }) ?? null);
463
- });
464
- const mentorAgent = this.#mentorSession.ensureAgent(() => {
465
- const reasoningEffort = this.#settings.get('agent.mentorReasoningEffort');
466
- const modelSettings = {};
467
- if (reasoningEffort && reasoningEffort !== 'default') {
468
- modelSettings.reasoning = { effort: reasoningEffort, summary: 'auto' };
469
- }
470
- return new Agent({
471
- name: definition.name,
472
- model: mentorModel,
473
- ...(Object.keys(modelSettings).length > 0 ? { modelSettings } : {}),
474
- instructions,
475
- });
476
- });
477
- this.#mentorSession.addUserMessage(task);
478
- const providerDef = getProvider(mentorProvider);
479
- const supportsChaining = providerDef?.capabilities?.supportsConversationChaining ?? false;
480
- const input = this.#mentorSession.getInput(task, supportsChaining);
481
- const subagentContext = {
482
- turnCount: 0,
483
- maxTurns: definition.maxTurns,
484
- };
485
- const runOptions = {
486
- ...this.#mentorSession.getRunOptions(supportsChaining, definition.maxTurns),
487
- context: subagentContext,
488
- callModelInputFilter: (args) => {
489
- if (args.context) {
490
- args.context.turnCount = (args.context.turnCount ?? 0) + 1;
491
- }
492
- return args.modelData;
493
- },
494
- ...(signal ? { signal } : {}),
495
- };
496
- const result = await runWithProvider(mentorProvider, mentorRunner, mentorAgent, input, runOptions);
497
- this.#mentorSession.appendOutput(result);
498
- return {
499
- agentId,
500
- role: 'mentor',
501
- status: 'completed',
502
- finalText: extractFinalText(result),
503
- filesChanged: [],
504
- toolsUsed: [],
505
- usage: normalizeAgentRunUsage(result?.state?.usage) ?? extractUsage(result),
506
- };
507
- }
508
- async #runSubagent(agentId, request, definition) {
509
- const toolCounts = new Map();
510
- const filesChanged = [];
511
- const searchViaShell = resolveSubagentSearchViaShell(this.#settings, definition.model, definition.canRunShell);
512
- const toolDefinitions = this.#buildToolDefinitions(definition, filesChanged, request.task, searchViaShell);
513
- const providerId = definition.provider;
514
- let mutatingToolAttempted = false;
515
- const tools = buildAgentTools(toolDefinitions, {
516
- providerId,
517
- logger: this.#logger,
518
- settings: this.#settings,
519
- onToolStart: (name, _params, commandMessages) => {
520
- toolCounts.set(name, (toolCounts.get(name) ?? 0) + 1);
521
- if (MUTATING_TOOL_NAMES.has(name))
522
- mutatingToolAttempted = true;
523
- this.#emit({
524
- type: 'subagent_tool_started',
525
- agentId,
526
- role: request.role,
527
- toolName: name,
528
- commandMessages,
529
- });
530
- },
531
- });
532
- const providerDef = getProvider(providerId);
533
- const runner = providerId !== 'openai'
534
- ? providerDef?.createRunner?.({
535
- settingsService: this.#settings,
536
- loggingService: this.#logger,
537
- sessionContextService: this.#sessionContextService,
538
- }) ?? null
539
- : null;
540
- const modelSettings = {};
541
- if (definition.reasoningEffort && definition.reasoningEffort !== 'default') {
542
- modelSettings.reasoning = { effort: definition.reasoningEffort, summary: 'auto' };
543
- }
544
- const envInfo = getEnvInfo(this.#settings, this.#executionContext);
545
- const cwd = this.#executionContext?.getCwd() ?? process.cwd();
546
- const agentsInstructions = this.#executionContext?.isRemote() ? '' : getAgentsInstructions(cwd);
547
- const modelPrompt = resolvePrompt(path.join(PROMPTS_DIR, selectSubagentBasePromptFile(definition.model)));
548
- const worktreeHygiene = resolvePrompt(path.join(PROMPTS_DIR, 'worktree-hygiene.md'));
549
- const toolGuidance = buildAvailableToolGuidance(toolDefinitions, searchViaShell);
550
- const fullInstructions = [
551
- modelPrompt,
552
- worktreeHygiene,
553
- definition.instructions,
554
- toolGuidance,
555
- `Environment: ${envInfo}${agentsInstructions}`,
556
- ]
557
- .filter(Boolean)
558
- .join('\n\n');
559
- const agent = new Agent({
560
- name: definition.name,
561
- model: definition.model,
562
- ...(Object.keys(modelSettings).length > 0 ? { modelSettings } : {}),
563
- instructions: fullInstructions,
564
- tools,
565
- });
566
- // When resuming from a nested agent-tool run (e.g. worker approvals),
567
- // restore the SDK RunState from the serialized resumeState string.
568
- // This is populated by the SDK in the Agent.asTool path. When
569
- // run_subagent is registered as a plain function tool,
570
- // details.resumeState is not populated by the SDK, so this branch is
571
- // dead code until run_subagent switches to Agent.asTool registration.
572
- const initialInput = request.resumeState
573
- ? await RunState.fromString(agent, request.resumeState)
574
- : request.task;
575
- let runInput = initialInput;
576
- let modelRetryCount = 0;
577
- while (true) {
578
- try {
579
- const subagentContext = {
580
- turnCount: 0,
581
- maxTurns: definition.maxTurns,
582
- };
583
- const result = await executeWithRetry({
584
- operation: () => runWithProvider(providerId, runner, agent, runInput, {
585
- stream: false,
586
- maxTurns: definition.maxTurns,
587
- context: subagentContext,
588
- callModelInputFilter: (args) => {
589
- if (args.context) {
590
- args.context.turnCount = (args.context.turnCount ?? 0) + 1;
591
- }
592
- return args.modelData;
593
- },
594
- ...(request.signal ? { signal: request.signal } : {}),
595
- }),
596
- retryAttempts: this.#settings.get('agent.retryAttempts') ?? 2,
597
- provider: providerId,
598
- model: definition.model,
599
- traceId: this.#logger.getCorrelationId?.() ?? undefined,
600
- logger: this.#logger,
601
- });
602
- return {
603
- agentId,
604
- role: request.role,
605
- status: 'completed',
606
- finalText: extractFinalText(result),
607
- filesChanged: [...new Set(filesChanged)],
608
- toolsUsed: aggregateToolUsage(toolCounts),
609
- usage: normalizeAgentRunUsage(result?.state?.usage) ?? extractUsage(result),
610
- nestedRunResult: result,
611
- };
612
- }
613
- catch (error) {
614
- const decision = decideRecoverableModelRetry(error, modelRetryCount, MAX_SUBAGENT_MODEL_RETRIES);
615
- if (decision.kind === 'no_retry')
616
- throw error;
617
- // Avoid unsafe retries after the subagent has already invoked any
618
- // mutating tool (write or shell), regardless of whether the write
619
- // succeeded. Even a failed write attempt may reflect a partial state
620
- // change that makes a retry unsafe (e.g. duplicate edits).
621
- if ((definition.canWrite || definition.canRunShell) && mutatingToolAttempted)
622
- throw error;
623
- modelRetryCount = decision.attempt;
624
- this.#logger.warn('Subagent model error retry', {
625
- eventType: 'retry.subagent_model_error',
626
- category: 'retry',
627
- phase: 'retry',
628
- agentId,
629
- role: request.role,
630
- retryType: decision.retryType,
631
- retryAttempt: decision.attempt,
632
- maxRetries: decision.maxRetries,
633
- errorMessage: decision.message,
634
- });
635
- this.#emit({
636
- type: 'retry',
637
- toolName: decision.toolName,
638
- attempt: decision.attempt,
639
- maxRetries: decision.maxRetries,
640
- errorMessage: decision.message,
641
- retryType: decision.retryType,
642
- });
643
- const availableToolNames = toolDefinitions.map((d) => d.name);
644
- runInput = buildSubagentRetryTask(typeof initialInput === 'string' ? initialInput : request.task, decision.message, availableToolNames, decision.retryType, decision.toolName);
645
- }
646
- }
647
- }
648
- #buildToolDefinitions(definition, filesChanged, taskContext, searchViaShell) {
649
- const tools = [];
650
- const cwd = this.#executionContext?.getCwd() ?? process.cwd();
651
- const isRemote = this.#executionContext?.isRemote() ?? false;
652
- if (definition.canRead) {
653
- tools.push(createReadFileToolDefinition({ executionContext: this.#executionContext, allowOutsideWorkspace: false }));
654
- if (!searchViaShell) {
655
- tools.push(createGrepToolDefinition({ executionContext: this.#executionContext }), createFindFilesToolDefinition({ executionContext: this.#executionContext }));
656
- }
657
- if (!isRemote) {
658
- tools.push(createReadCodeOutlineToolDefinition({ executionContext: this.#executionContext }), createCodeContextSearchToolDefinition({ executionContext: this.#executionContext }));
659
- }
660
- }
661
- if (definition.canSearchWeb) {
662
- tools.push(createWebSearchToolDefinition({ settingsService: this.#settings, loggingService: this.#logger }), createWebFetchToolDefinition({ settingsService: this.#settings, loggingService: this.#logger }));
663
- }
664
- if (definition.canRunShell) {
665
- const shellDef = createShellToolDefinition({
666
- settingsService: this.#settings,
667
- loggingService: this.#logger,
668
- executionContext: this.#executionContext,
669
- });
670
- if (definition.canWrite) {
671
- tools.push(this.#wrapShellTool(shellDef, cwd, filesChanged, taskContext));
672
- }
673
- else {
674
- tools.push(this.#wrapReadOnlyShellTool(shellDef));
675
- }
676
- }
677
- if (definition.canWrite) {
678
- const isGpt5 = shouldPreferPatchEditingModel(definition.model);
679
- if (isGpt5) {
680
- tools.push(this.#wrapWriteTool(createApplyPatchToolDefinition({
681
- settingsService: this.#settings,
682
- loggingService: this.#logger,
683
- executionContext: this.#executionContext,
684
- }), cwd, filesChanged, (params) => this.#extractPathsFromApplyPatch(params)));
685
- }
686
- else {
687
- tools.push(this.#wrapWriteTool(createSearchReplaceToolDefinition({
688
- settingsService: this.#settings,
689
- loggingService: this.#logger,
690
- executionContext: this.#executionContext,
691
- }), cwd, filesChanged, (params) => this.#extractPathsFromSearchReplace(params)), this.#wrapWriteTool(createCreateFileToolDefinition({
692
- settingsService: this.#settings,
693
- loggingService: this.#logger,
694
- executionContext: this.#executionContext,
695
- }), cwd, filesChanged, (params) => (params?.path ? [params.path] : [])));
696
- }
697
- }
698
- registerToolFormatters(tools);
699
- return tools;
700
- }
701
- #extractPathsFromApplyPatch(params) {
702
- if (Array.isArray(params?.operations)) {
703
- return params.operations.map((op) => op?.path).filter(Boolean);
704
- }
705
- return params?.path ? [params.path] : [];
706
- }
707
- #extractPathsFromSearchReplace(params) {
708
- return params?.path ? [params.path] : [];
709
- }
710
- #extractSuccessfulWritePaths(result) {
711
- if (typeof result !== 'string')
712
- return [];
713
- try {
714
- const parsed = JSON.parse(result);
715
- if (Array.isArray(parsed?.output)) {
716
- return parsed.output
717
- .filter((item) => item?.success === true && typeof item?.path === 'string')
718
- .map((item) => item.path);
719
- }
720
- if (parsed?.success === true && typeof parsed?.path === 'string') {
721
- return [parsed.path];
722
- }
723
- }
724
- catch {
725
- return [];
726
- }
727
- return [];
728
- }
729
- #tryAcquireWorkerWriteLocks(paths, cwd) {
730
- const uniqueResolvedPaths = [...new Set(paths.map((filePath) => path.resolve(cwd, filePath)))];
731
- const releases = [];
732
- for (const resolvedPath of uniqueResolvedPaths) {
733
- const release = tryAcquireFileLock(resolvedPath);
734
- if (!release) {
735
- for (const unlock of releases.reverse()) {
736
- unlock();
737
- }
738
- return null;
739
- }
740
- releases.push(release);
741
- }
742
- return () => {
743
- for (const unlock of releases.reverse()) {
744
- unlock();
745
- }
746
- };
747
- }
748
- /**
749
- * Wraps the shell tool for worker subagents:
750
- * - Sets needsApproval to always return false. Workers run synchronously
751
- * inside a blocked parent tool call and have no foreground approval channel,
752
- * so SDK interruptions (triggered by needsApproval returning true) would
753
- * silently hang or fail.
754
- * - Gates execution via command safety classification instead. Safe (GREEN)
755
- * commands execute normally; dangerous (YELLOW/RED) commands are blocked
756
- * and return an error string to the model without executing.
757
- * - For GREEN commands that perform write operations (redirects to paths
758
- * within the workspace), enforces the worker write boundary and acquires
759
- * file locks so that shell-based writes and structured writes (apply_patch,
760
- * create_file) share the same safety guarantees.
761
- */
762
- /**
763
- * Parse a shell command string and extract file paths used as redirect
764
- * targets or explicit path arguments that look like write operations.
765
- * Returns resolved absolute paths.
766
- */
767
- #extractPathsFromCommand(command, cwd) {
768
- const paths = [];
769
- try {
770
- classifyCommand(command, this.#logger);
771
- // classifyCommand only returns a status, not parsed paths. For now
772
- // we tokenize the command to find redirect targets and path-like
773
- // arguments. This is a simple heuristic — comprehensive path
774
- // extraction from AST is tracked as future work.
775
- const tokens = command.match(/>\s*(\S+)|>>\s*(\S+)|tee\s+(\S+)/gi);
776
- if (tokens) {
777
- for (const token of tokens) {
778
- const match = token.match(/>+\s*(\S+)|tee\s+(\S+)/);
779
- if (match) {
780
- const p = match[1] ?? match[2];
781
- if (p) {
782
- const resolved = path.resolve(cwd, p);
783
- paths.push(resolved);
784
- }
785
- }
786
- }
787
- }
788
- }
789
- catch {
790
- // Parsing failure is non-fatal — proceed without path extraction
791
- }
792
- return [...new Set(paths)];
793
- }
794
- #wrapShellTool(definition, cwd, filesChanged, taskContext) {
795
- const originalExecute = definition.execute.bind(definition);
796
- return {
797
- ...definition,
798
- needsApproval: () => false,
799
- execute: async (params, context, details) => {
800
- const command = typeof params?.command === 'string' ? params.command : '';
801
- if (!command) {
802
- return originalExecute(params, context, details);
803
- }
804
- const status = classifyCommand(command, this.#logger);
805
- if (status === SafetyStatus.RED) {
806
- return `Error: command blocked for safety (${status}). Workers cannot run commands that require interactive approval. Command: ${command}`;
807
- }
808
- if (status === SafetyStatus.YELLOW) {
809
- const approved = await this.#isYellowCommandApproved(command, taskContext);
810
- if (!approved) {
811
- return `Error: command blocked for safety (${status}). Workers cannot run commands that require interactive approval. Command: ${command}`;
812
- }
813
- }
814
- // For GREEN commands, extract any file paths referenced in the
815
- // command (redirect targets, arguments that look like paths) and
816
- // enforce the write boundary and file locks.
817
- const extractedPaths = this.#extractPathsFromCommand(command, cwd);
818
- if (extractedPaths.length > 0) {
819
- for (const filePath of extractedPaths) {
820
- if (!this.#isWithinWriteBoundary(filePath, cwd)) {
821
- return `Error: command blocked — target path "${filePath}" is outside the allowed write boundary. Command: ${command}`;
822
- }
823
- }
824
- const releaseWorkerLocks = this.#tryAcquireWorkerWriteLocks(extractedPaths, cwd);
825
- if (!releaseWorkerLocks) {
826
- return 'Error: command blocked — one or more target files are already being modified by another worker.';
827
- }
828
- try {
829
- const result = await originalExecute(params, context, details);
830
- filesChanged.push(...extractedPaths);
831
- return result;
832
- }
833
- finally {
834
- releaseWorkerLocks();
835
- }
836
- }
837
- return originalExecute(params, context, details);
838
- },
839
- };
840
- }
841
- #wrapReadOnlyShellTool(definition) {
842
- const originalExecute = definition.execute.bind(definition);
843
- const cwd = this.#executionContext?.getCwd() ?? process.cwd();
844
- return {
845
- ...definition,
846
- needsApproval: () => false,
847
- execute: async (params, context, details) => {
848
- const command = typeof params?.command === 'string' ? params.command : '';
849
- if (!command) {
850
- return originalExecute(params, context, details);
851
- }
852
- const status = classifyCommand(command, this.#logger);
853
- if (status !== SafetyStatus.GREEN) {
854
- return `Error: command blocked - explorer can only run read-only (GREEN) shell commands. Command: ${command}`;
855
- }
856
- const writeTargets = this.#extractPathsFromCommand(command, cwd);
857
- if (writeTargets.length > 0) {
858
- return `Error: command blocked - explorer can only run read-only (GREEN) shell commands. Command: ${command}`;
859
- }
860
- return originalExecute(params, context, details);
861
- },
862
- };
863
- }
864
- async #isYellowCommandApproved(command, taskContext) {
865
- if (!this.#agentClient)
866
- return false;
867
- try {
868
- const advisories = await evaluateShellAutoApprovalAdvisories({
869
- commands: [{ id: '__subagent_worker_shell__', command }],
870
- history: taskContext
871
- ? [{ type: 'message', role: 'user', content: [{ type: 'input_text', text: taskContext }] }]
872
- : [],
873
- settingsService: this.#settings,
874
- agentClient: this.#agentClient,
875
- logger: this.#logger,
876
- sessionContextService: this.#sessionContextService,
877
- });
878
- return advisories.get('__subagent_worker_shell__')?.approved === true;
879
- }
880
- catch (error) {
881
- this.#logger.warn('Worker shell YELLOW auto-approval evaluation failed', {
882
- error: error?.message || String(error),
883
- });
884
- return false;
885
- }
886
- }
887
- // Writes outside the workspace root are always rejected.
888
- #isWithinWriteBoundary(filePath, cwd) {
889
- const boundaries = [cwd];
890
- const resolved = path.resolve(cwd, filePath);
891
- return boundaries.some((boundary) => {
892
- const resolvedBoundary = path.resolve(cwd, boundary);
893
- return resolved === resolvedBoundary || resolved.startsWith(resolvedBoundary + path.sep);
894
- });
895
- }
896
- #wrapWriteTool(definition, cwd, filesChanged, extractPaths) {
897
- const originalExecute = definition.execute.bind(definition);
898
- return {
899
- ...definition,
900
- // In-boundary writes are auto-approved (there is no foreground approval
901
- // channel for a subagent running inside a blocked parent tool call), and
902
- // out-of-boundary writes are rejected deterministically by execute() below.
903
- // Either way no interactive approval is required, so this never returns true.
904
- needsApproval: () => false,
905
- execute: async (params, context) => {
906
- const paths = extractPaths(params);
907
- for (const filePath of paths) {
908
- if (!this.#isWithinWriteBoundary(filePath, cwd)) {
909
- return JSON.stringify({
910
- output: [
911
- {
912
- success: false,
913
- error: `Write rejected: path "${filePath}" is outside the allowed write boundary.`,
914
- },
915
- ],
916
- });
917
- }
918
- }
919
- const releaseWorkerLocks = this.#tryAcquireWorkerWriteLocks(paths, cwd);
920
- if (!releaseWorkerLocks) {
921
- return JSON.stringify({
922
- output: [
923
- {
924
- success: false,
925
- error: 'Write rejected: one or more target files are already being modified by another worker.',
926
- },
927
- ],
928
- });
929
- }
930
- try {
931
- const result = await originalExecute(params, context);
932
- for (const successfulPath of this.#extractSuccessfulWritePaths(result)) {
933
- filesChanged.push(successfulPath);
934
- }
935
- return result;
936
- }
937
- finally {
938
- releaseWorkerLocks();
939
- }
940
- },
941
- };
942
- }
943
72
  }
944
73
  //# sourceMappingURL=subagent-manager.js.map