@qduc/term2 0.6.1 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (659) hide show
  1. package/dist/agent.d.ts +9 -1
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +158 -69
  4. package/dist/agent.js.map +1 -1
  5. package/dist/agent.test.js +165 -15
  6. package/dist/agent.test.js.map +1 -1
  7. package/dist/app.d.ts +14 -3
  8. package/dist/app.d.ts.map +1 -1
  9. package/dist/app.js +192 -28
  10. package/dist/app.js.map +1 -1
  11. package/dist/app.large-uncached-warning.test.d.ts +2 -0
  12. package/dist/app.large-uncached-warning.test.d.ts.map +1 -0
  13. package/dist/app.large-uncached-warning.test.js +15 -0
  14. package/dist/app.large-uncached-warning.test.js.map +1 -0
  15. package/dist/app.startup-banner.test.js +3 -19
  16. package/dist/app.startup-banner.test.js.map +1 -1
  17. package/dist/cli.integration.test.d.ts +2 -0
  18. package/dist/cli.integration.test.d.ts.map +1 -0
  19. package/dist/cli.integration.test.js +102 -0
  20. package/dist/cli.integration.test.js.map +1 -0
  21. package/dist/cli.js +158 -71
  22. package/dist/cli.js.map +1 -1
  23. package/dist/commands/auto-approve-command.d.ts +10 -0
  24. package/dist/commands/auto-approve-command.d.ts.map +1 -0
  25. package/dist/commands/auto-approve-command.js +40 -0
  26. package/dist/commands/auto-approve-command.js.map +1 -0
  27. package/dist/commands/clear-command.d.ts +3 -0
  28. package/dist/commands/clear-command.d.ts.map +1 -0
  29. package/dist/commands/clear-command.js +12 -0
  30. package/dist/commands/clear-command.js.map +1 -0
  31. package/dist/commands/copy-command.d.ts +10 -0
  32. package/dist/commands/copy-command.d.ts.map +1 -0
  33. package/dist/commands/copy-command.js +25 -0
  34. package/dist/commands/copy-command.js.map +1 -0
  35. package/dist/commands/effort-command.d.ts +11 -0
  36. package/dist/commands/effort-command.d.ts.map +1 -0
  37. package/dist/commands/effort-command.js +34 -0
  38. package/dist/commands/effort-command.js.map +1 -0
  39. package/dist/commands/guarded-settings-command.d.ts +14 -0
  40. package/dist/commands/guarded-settings-command.d.ts.map +1 -0
  41. package/dist/commands/guarded-settings-command.js +23 -0
  42. package/dist/commands/guarded-settings-command.js.map +1 -0
  43. package/dist/commands/handoff-command.d.ts +10 -0
  44. package/dist/commands/handoff-command.d.ts.map +1 -0
  45. package/dist/commands/handoff-command.js +17 -0
  46. package/dist/commands/handoff-command.js.map +1 -0
  47. package/dist/commands/mode-commands.d.ts +32 -0
  48. package/dist/commands/mode-commands.d.ts.map +1 -0
  49. package/dist/commands/mode-commands.js +64 -0
  50. package/dist/commands/mode-commands.js.map +1 -0
  51. package/dist/commands/model-command.d.ts +11 -0
  52. package/dist/commands/model-command.d.ts.map +1 -0
  53. package/dist/commands/model-command.js +35 -0
  54. package/dist/commands/model-command.js.map +1 -0
  55. package/dist/commands/quit-command.d.ts +3 -0
  56. package/dist/commands/quit-command.d.ts.map +1 -0
  57. package/dist/commands/quit-command.js +10 -0
  58. package/dist/commands/quit-command.js.map +1 -0
  59. package/dist/commands/retry-command.d.ts +19 -0
  60. package/dist/commands/retry-command.d.ts.map +1 -0
  61. package/dist/commands/retry-command.js +30 -0
  62. package/dist/commands/retry-command.js.map +1 -0
  63. package/dist/commands/undo-command.d.ts +15 -0
  64. package/dist/commands/undo-command.d.ts.map +1 -0
  65. package/dist/commands/undo-command.js +28 -0
  66. package/dist/commands/undo-command.js.map +1 -0
  67. package/dist/commands/usage-command.d.ts +3 -0
  68. package/dist/commands/usage-command.d.ts.map +1 -0
  69. package/dist/commands/usage-command.js +11 -0
  70. package/dist/commands/usage-command.js.map +1 -0
  71. package/dist/components/Banner.d.ts.map +1 -1
  72. package/dist/components/Banner.js +35 -17
  73. package/dist/components/Banner.js.map +1 -1
  74. package/dist/components/BottomArea.d.ts +10 -1
  75. package/dist/components/BottomArea.d.ts.map +1 -1
  76. package/dist/components/BottomArea.js +8 -6
  77. package/dist/components/BottomArea.js.map +1 -1
  78. package/dist/components/BottomArea.test.js +14 -1
  79. package/dist/components/BottomArea.test.js.map +1 -1
  80. package/dist/components/CommandMessage.d.ts.map +1 -1
  81. package/dist/components/CommandMessage.js +31 -1
  82. package/dist/components/CommandMessage.js.map +1 -1
  83. package/dist/components/CommandMessage.test.js +150 -31
  84. package/dist/components/CommandMessage.test.js.map +1 -1
  85. package/dist/components/Common/MenuContainer.d.ts +20 -0
  86. package/dist/components/Common/MenuContainer.d.ts.map +1 -0
  87. package/dist/components/Common/MenuContainer.js +52 -0
  88. package/dist/components/Common/MenuContainer.js.map +1 -0
  89. package/dist/components/Common/ScrollableTabBar.d.ts +26 -0
  90. package/dist/components/Common/ScrollableTabBar.d.ts.map +1 -0
  91. package/dist/components/Common/ScrollableTabBar.js +26 -0
  92. package/dist/components/Common/ScrollableTabBar.js.map +1 -0
  93. package/dist/components/Common/compute-visible-tabs.d.ts +16 -0
  94. package/dist/components/Common/compute-visible-tabs.d.ts.map +1 -0
  95. package/dist/components/Common/compute-visible-tabs.js +53 -0
  96. package/dist/components/Common/compute-visible-tabs.js.map +1 -0
  97. package/dist/components/Common/compute-visible-tabs.test.d.ts +2 -0
  98. package/dist/components/Common/compute-visible-tabs.test.d.ts.map +1 -0
  99. package/dist/components/Common/compute-visible-tabs.test.js +97 -0
  100. package/dist/components/Common/compute-visible-tabs.test.js.map +1 -0
  101. package/dist/components/HandoffConfirmationPrompt.d.ts +9 -0
  102. package/dist/components/HandoffConfirmationPrompt.d.ts.map +1 -0
  103. package/dist/components/HandoffConfirmationPrompt.js +38 -0
  104. package/dist/components/HandoffConfirmationPrompt.js.map +1 -0
  105. package/dist/components/HandoffConfirmationPrompt.test.d.ts +2 -0
  106. package/dist/components/HandoffConfirmationPrompt.test.d.ts.map +1 -0
  107. package/dist/components/HandoffConfirmationPrompt.test.js +12 -0
  108. package/dist/components/HandoffConfirmationPrompt.test.js.map +1 -0
  109. package/dist/components/Input/PopupManager.d.ts +5 -1
  110. package/dist/components/Input/PopupManager.d.ts.map +1 -1
  111. package/dist/components/Input/PopupManager.js +2 -2
  112. package/dist/components/Input/PopupManager.js.map +1 -1
  113. package/dist/components/Input/popup-key-navigation.js +2 -2
  114. package/dist/components/Input/popup-key-navigation.js.map +1 -1
  115. package/dist/components/Input/popup-key-navigation.test.js +5 -3
  116. package/dist/components/Input/popup-key-navigation.test.js.map +1 -1
  117. package/dist/components/Input/popup-props.d.ts.map +1 -1
  118. package/dist/components/Input/popup-props.js +4 -0
  119. package/dist/components/Input/popup-props.js.map +1 -1
  120. package/dist/components/Input/popup-props.test.d.ts +2 -0
  121. package/dist/components/Input/popup-props.test.d.ts.map +1 -0
  122. package/dist/components/Input/popup-props.test.js +70 -0
  123. package/dist/components/Input/popup-props.test.js.map +1 -0
  124. package/dist/components/InputBox.d.ts +1 -1
  125. package/dist/components/InputBox.d.ts.map +1 -1
  126. package/dist/components/InputBox.js +67 -14
  127. package/dist/components/InputBox.js.map +1 -1
  128. package/dist/components/InputBox.test.js +192 -12
  129. package/dist/components/InputBox.test.js.map +1 -1
  130. package/dist/components/MessageList.d.ts +1 -0
  131. package/dist/components/MessageList.d.ts.map +1 -1
  132. package/dist/components/MessageList.js.map +1 -1
  133. package/dist/components/ModelSelectionMenu.d.ts.map +1 -1
  134. package/dist/components/ModelSelectionMenu.js +29 -125
  135. package/dist/components/ModelSelectionMenu.js.map +1 -1
  136. package/dist/components/ModelSelectionMenu.test.js +9 -5
  137. package/dist/components/ModelSelectionMenu.test.js.map +1 -1
  138. package/dist/components/PathSelectionMenu.d.ts.map +1 -1
  139. package/dist/components/PathSelectionMenu.js +15 -55
  140. package/dist/components/PathSelectionMenu.js.map +1 -1
  141. package/dist/components/SettingsSelectionMenu.d.ts +4 -1
  142. package/dist/components/SettingsSelectionMenu.d.ts.map +1 -1
  143. package/dist/components/SettingsSelectionMenu.js +48 -104
  144. package/dist/components/SettingsSelectionMenu.js.map +1 -1
  145. package/dist/components/SettingsSelectionMenu.scroll.test.js +140 -0
  146. package/dist/components/SettingsSelectionMenu.scroll.test.js.map +1 -1
  147. package/dist/components/SettingsSelectionMenu.test.js +38 -5
  148. package/dist/components/SettingsSelectionMenu.test.js.map +1 -1
  149. package/dist/components/SettingsValueSelectionMenu.d.ts.map +1 -1
  150. package/dist/components/SettingsValueSelectionMenu.js +24 -51
  151. package/dist/components/SettingsValueSelectionMenu.js.map +1 -1
  152. package/dist/components/SlashCommandMenu.d.ts +1 -0
  153. package/dist/components/SlashCommandMenu.d.ts.map +1 -1
  154. package/dist/components/SlashCommandMenu.js +11 -14
  155. package/dist/components/SlashCommandMenu.js.map +1 -1
  156. package/dist/components/StatusBar.d.ts +6 -0
  157. package/dist/components/StatusBar.d.ts.map +1 -1
  158. package/dist/components/StatusBar.js +51 -4
  159. package/dist/components/StatusBar.js.map +1 -1
  160. package/dist/components/StatusBar.test.js +47 -0
  161. package/dist/components/StatusBar.test.js.map +1 -1
  162. package/dist/components/UndoSelectionMenu.d.ts.map +1 -1
  163. package/dist/components/UndoSelectionMenu.js +6 -33
  164. package/dist/components/UndoSelectionMenu.js.map +1 -1
  165. package/dist/context/InputContext.stability.test.js +9 -7
  166. package/dist/context/InputContext.stability.test.js.map +1 -1
  167. package/dist/contracts/conversation.d.ts +3 -0
  168. package/dist/contracts/conversation.d.ts.map +1 -1
  169. package/dist/env-setup.js +1 -0
  170. package/dist/env-setup.js.map +1 -1
  171. package/dist/hooks/use-app-commands.d.ts +20 -21
  172. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  173. package/dist/hooks/use-app-commands.js +65 -330
  174. package/dist/hooks/use-app-commands.js.map +1 -1
  175. package/dist/hooks/use-app-commands.test.js +146 -3
  176. package/dist/hooks/use-app-commands.test.js.map +1 -1
  177. package/dist/hooks/use-conversation.clear.test.js +61 -8
  178. package/dist/hooks/use-conversation.clear.test.js.map +1 -1
  179. package/dist/hooks/use-conversation.d.ts +25 -2
  180. package/dist/hooks/use-conversation.d.ts.map +1 -1
  181. package/dist/hooks/use-conversation.js +91 -30
  182. package/dist/hooks/use-conversation.js.map +1 -1
  183. package/dist/hooks/use-escape-key.d.ts +8 -1
  184. package/dist/hooks/use-escape-key.d.ts.map +1 -1
  185. package/dist/hooks/use-escape-key.js +15 -4
  186. package/dist/hooks/use-escape-key.js.map +1 -1
  187. package/dist/hooks/use-escape-key.test.js +135 -28
  188. package/dist/hooks/use-escape-key.test.js.map +1 -1
  189. package/dist/hooks/use-input-history.test.js +14 -8
  190. package/dist/hooks/use-input-history.test.js.map +1 -1
  191. package/dist/hooks/use-mode-handlers.d.ts +16 -2
  192. package/dist/hooks/use-mode-handlers.d.ts.map +1 -1
  193. package/dist/hooks/use-mode-handlers.js +37 -2
  194. package/dist/hooks/use-mode-handlers.js.map +1 -1
  195. package/dist/hooks/use-model-selection.d.ts +6 -1
  196. package/dist/hooks/use-model-selection.d.ts.map +1 -1
  197. package/dist/hooks/use-model-selection.js +50 -8
  198. package/dist/hooks/use-model-selection.js.map +1 -1
  199. package/dist/hooks/use-model-selection.test.js +306 -50
  200. package/dist/hooks/use-model-selection.test.js.map +1 -1
  201. package/dist/hooks/use-path-completion.d.ts +4 -0
  202. package/dist/hooks/use-path-completion.d.ts.map +1 -1
  203. package/dist/hooks/use-path-completion.js +23 -17
  204. package/dist/hooks/use-path-completion.js.map +1 -1
  205. package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
  206. package/dist/hooks/use-runtime-settings.js +9 -4
  207. package/dist/hooks/use-runtime-settings.js.map +1 -1
  208. package/dist/hooks/use-runtime-settings.test.d.ts +2 -0
  209. package/dist/hooks/use-runtime-settings.test.d.ts.map +1 -0
  210. package/dist/hooks/use-runtime-settings.test.js +44 -0
  211. package/dist/hooks/use-runtime-settings.test.js.map +1 -0
  212. package/dist/hooks/use-selection.d.ts +6 -2
  213. package/dist/hooks/use-selection.d.ts.map +1 -1
  214. package/dist/hooks/use-selection.js +53 -16
  215. package/dist/hooks/use-selection.js.map +1 -1
  216. package/dist/hooks/use-selection.test.d.ts +2 -0
  217. package/dist/hooks/use-selection.test.d.ts.map +1 -0
  218. package/dist/hooks/use-selection.test.js +132 -0
  219. package/dist/hooks/use-selection.test.js.map +1 -0
  220. package/dist/hooks/use-settings-completion.d.ts +19 -0
  221. package/dist/hooks/use-settings-completion.d.ts.map +1 -1
  222. package/dist/hooks/use-settings-completion.js +106 -18
  223. package/dist/hooks/use-settings-completion.js.map +1 -1
  224. package/dist/hooks/use-settings-completion.scroll.test.js +68 -29
  225. package/dist/hooks/use-settings-completion.scroll.test.js.map +1 -1
  226. package/dist/hooks/use-settings-completion.test.js +36 -1
  227. package/dist/hooks/use-settings-completion.test.js.map +1 -1
  228. package/dist/hooks/use-settings-value-completion.d.ts +7 -1
  229. package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
  230. package/dist/hooks/use-settings-value-completion.js +18 -7
  231. package/dist/hooks/use-settings-value-completion.js.map +1 -1
  232. package/dist/hooks/use-slash-commands.d.ts +5 -0
  233. package/dist/hooks/use-slash-commands.d.ts.map +1 -1
  234. package/dist/hooks/use-slash-commands.js +32 -2
  235. package/dist/hooks/use-slash-commands.js.map +1 -1
  236. package/dist/hooks/use-slash-commands.test.js +35 -5
  237. package/dist/hooks/use-slash-commands.test.js.map +1 -1
  238. package/dist/hooks/use-trigger-detection.test.js +9 -6
  239. package/dist/hooks/use-trigger-detection.test.js.map +1 -1
  240. package/dist/hooks/use-undo-selection.d.ts +4 -0
  241. package/dist/hooks/use-undo-selection.d.ts.map +1 -1
  242. package/dist/hooks/use-undo-selection.js +20 -1
  243. package/dist/hooks/use-undo-selection.js.map +1 -1
  244. package/dist/lib/openai-agent-client.d.ts +10 -3
  245. package/dist/lib/openai-agent-client.d.ts.map +1 -1
  246. package/dist/lib/openai-agent-client.flex-tier.test.js +8 -3
  247. package/dist/lib/openai-agent-client.flex-tier.test.js.map +1 -1
  248. package/dist/lib/openai-agent-client.js +198 -38
  249. package/dist/lib/openai-agent-client.js.map +1 -1
  250. package/dist/lib/openai-agent-client.public-methods.test.js +193 -0
  251. package/dist/lib/openai-agent-client.public-methods.test.js.map +1 -1
  252. package/dist/lib/openai-agent-client.test.js +71 -1
  253. package/dist/lib/openai-agent-client.test.js.map +1 -1
  254. package/dist/lib/tool-invoke.d.ts +3 -2
  255. package/dist/lib/tool-invoke.d.ts.map +1 -1
  256. package/dist/lib/tool-invoke.js +213 -10
  257. package/dist/lib/tool-invoke.js.map +1 -1
  258. package/dist/lib/tool-invoke.test.js +103 -0
  259. package/dist/lib/tool-invoke.test.js.map +1 -1
  260. package/dist/lib/tool-selection-policy.d.ts.map +1 -1
  261. package/dist/lib/tool-selection-policy.js +43 -2
  262. package/dist/lib/tool-selection-policy.js.map +1 -1
  263. package/dist/lib/tool-selection-policy.test.js +39 -0
  264. package/dist/lib/tool-selection-policy.test.js.map +1 -1
  265. package/dist/prompts/codex.md +105 -97
  266. package/dist/prompts/fragments/gpt-5.3-codex.md +7 -0
  267. package/dist/prompts/fragments/gpt-5.4-small.md +6 -0
  268. package/dist/prompts/fragments/gpt-5.4.md +7 -0
  269. package/dist/prompts/fragments/gpt-5.5.md +7 -0
  270. package/dist/prompts/gpt-5-modern.md +90 -54
  271. package/dist/prompts/plan-mode-info.md +14 -3
  272. package/dist/prompts/prompt-constructor.d.ts +19 -0
  273. package/dist/prompts/prompt-constructor.d.ts.map +1 -0
  274. package/dist/prompts/prompt-constructor.js +53 -0
  275. package/dist/prompts/prompt-constructor.js.map +1 -0
  276. package/dist/prompts/prompt-constructor.test.d.ts +2 -0
  277. package/dist/prompts/prompt-constructor.test.d.ts.map +1 -0
  278. package/dist/prompts/prompt-constructor.test.js +99 -0
  279. package/dist/prompts/prompt-constructor.test.js.map +1 -0
  280. package/dist/prompts/prompt-constructor.test.ts +112 -0
  281. package/dist/prompts/prompt-constructor.ts +91 -0
  282. package/dist/prompts/prompt-profiles.d.ts +17 -0
  283. package/dist/prompts/prompt-profiles.d.ts.map +1 -0
  284. package/dist/prompts/prompt-profiles.js +61 -0
  285. package/dist/prompts/prompt-profiles.js.map +1 -0
  286. package/dist/prompts/prompt-profiles.ts +77 -0
  287. package/dist/prompts/prompt-selector.d.ts.map +1 -1
  288. package/dist/prompts/prompt-selector.js +3 -21
  289. package/dist/prompts/prompt-selector.js.map +1 -1
  290. package/dist/prompts/prompt-selector.ts +3 -25
  291. package/dist/prompts/reasoning-efficiency.d.ts.map +1 -1
  292. package/dist/prompts/reasoning-efficiency.js +2 -0
  293. package/dist/prompts/reasoning-efficiency.js.map +1 -1
  294. package/dist/prompts/reasoning-efficiency.test.d.ts +2 -0
  295. package/dist/prompts/reasoning-efficiency.test.d.ts.map +1 -0
  296. package/dist/prompts/reasoning-efficiency.test.js +11 -0
  297. package/dist/prompts/reasoning-efficiency.test.js.map +1 -0
  298. package/dist/prompts/reasoning-efficiency.test.ts +12 -0
  299. package/dist/prompts/reasoning-efficiency.ts +2 -0
  300. package/dist/prompts/search-via-shell.d.ts.map +1 -1
  301. package/dist/prompts/search-via-shell.js +0 -1
  302. package/dist/prompts/search-via-shell.js.map +1 -1
  303. package/dist/prompts/search-via-shell.test.js +19 -16
  304. package/dist/prompts/search-via-shell.test.js.map +1 -1
  305. package/dist/prompts/search-via-shell.test.ts +20 -16
  306. package/dist/prompts/search-via-shell.ts +0 -1
  307. package/dist/prompts/shell-auto-approval.d.ts +2 -2
  308. package/dist/prompts/shell-auto-approval.d.ts.map +1 -1
  309. package/dist/prompts/shell-auto-approval.js +6 -6
  310. package/dist/prompts/shell-auto-approval.js.map +1 -1
  311. package/dist/prompts/shell-auto-approval.ts +6 -6
  312. package/dist/prompts/simple-prev.md +55 -0
  313. package/dist/prompts/simple.md +31 -53
  314. package/dist/prompts/subagent-delegation.js +2 -2
  315. package/dist/prompts/subagent-delegation.js.map +1 -1
  316. package/dist/prompts/subagent-delegation.test.js +12 -10
  317. package/dist/prompts/subagent-delegation.test.js.map +1 -1
  318. package/dist/prompts/subagent-delegation.test.ts +13 -10
  319. package/dist/prompts/subagent-delegation.ts +2 -2
  320. package/dist/prompts/worktree-hygiene.md +9 -0
  321. package/dist/providers/ai-sdk-logging-fetch.d.ts.map +1 -1
  322. package/dist/providers/ai-sdk-logging-fetch.js +78 -3
  323. package/dist/providers/ai-sdk-logging-fetch.js.map +1 -1
  324. package/dist/providers/ai-sdk-logging-fetch.test.js +143 -0
  325. package/dist/providers/ai-sdk-logging-fetch.test.js.map +1 -1
  326. package/dist/providers/codex-responses-model.d.ts +21 -0
  327. package/dist/providers/codex-responses-model.d.ts.map +1 -0
  328. package/dist/providers/codex-responses-model.js +180 -0
  329. package/dist/providers/codex-responses-model.js.map +1 -0
  330. package/dist/providers/codex-responses-model.test.d.ts +2 -0
  331. package/dist/providers/codex-responses-model.test.d.ts.map +1 -0
  332. package/dist/providers/codex-responses-model.test.js +354 -0
  333. package/dist/providers/codex-responses-model.test.js.map +1 -0
  334. package/dist/providers/codex.provider.d.ts +27 -0
  335. package/dist/providers/codex.provider.d.ts.map +1 -0
  336. package/dist/providers/codex.provider.js +482 -0
  337. package/dist/providers/codex.provider.js.map +1 -0
  338. package/dist/providers/codex.provider.test.d.ts +2 -0
  339. package/dist/providers/codex.provider.test.d.ts.map +1 -0
  340. package/dist/providers/codex.provider.test.js +607 -0
  341. package/dist/providers/codex.provider.test.js.map +1 -0
  342. package/dist/providers/custom-provider-adapter.test.js +59 -3
  343. package/dist/providers/custom-provider-adapter.test.js.map +1 -1
  344. package/dist/providers/fallback-responses-model.d.ts +20 -0
  345. package/dist/providers/fallback-responses-model.d.ts.map +1 -0
  346. package/dist/providers/fallback-responses-model.js +346 -0
  347. package/dist/providers/fallback-responses-model.js.map +1 -0
  348. package/dist/providers/fallback-responses-model.test.d.ts +2 -0
  349. package/dist/providers/fallback-responses-model.test.d.ts.map +1 -0
  350. package/dist/providers/fallback-responses-model.test.js +568 -0
  351. package/dist/providers/fallback-responses-model.test.js.map +1 -0
  352. package/dist/providers/fetch/compose.d.ts +7 -0
  353. package/dist/providers/fetch/compose.d.ts.map +1 -0
  354. package/dist/providers/fetch/compose.js +20 -0
  355. package/dist/providers/fetch/compose.js.map +1 -0
  356. package/dist/providers/fetch/composer.d.ts +13 -0
  357. package/dist/providers/fetch/composer.d.ts.map +1 -0
  358. package/dist/providers/fetch/composer.js +15 -0
  359. package/dist/providers/fetch/composer.js.map +1 -0
  360. package/dist/providers/fetch/composer.test.d.ts +2 -0
  361. package/dist/providers/fetch/composer.test.d.ts.map +1 -0
  362. package/dist/providers/fetch/composer.test.js +448 -0
  363. package/dist/providers/fetch/composer.test.js.map +1 -0
  364. package/dist/providers/fetch/logging-middleware.d.ts +16 -0
  365. package/dist/providers/fetch/logging-middleware.d.ts.map +1 -0
  366. package/dist/providers/fetch/logging-middleware.js +214 -0
  367. package/dist/providers/fetch/logging-middleware.js.map +1 -0
  368. package/dist/providers/index.d.ts +1 -0
  369. package/dist/providers/index.d.ts.map +1 -1
  370. package/dist/providers/index.js +1 -0
  371. package/dist/providers/index.js.map +1 -1
  372. package/dist/providers/llama-cpp.provider.d.ts +3 -0
  373. package/dist/providers/llama-cpp.provider.d.ts.map +1 -0
  374. package/dist/providers/llama-cpp.provider.js +34 -0
  375. package/dist/providers/llama-cpp.provider.js.map +1 -0
  376. package/dist/providers/openai-compatible-middleware.d.ts +7 -0
  377. package/dist/providers/openai-compatible-middleware.d.ts.map +1 -0
  378. package/dist/providers/openai-compatible-middleware.js +133 -0
  379. package/dist/providers/openai-compatible-middleware.js.map +1 -0
  380. package/dist/providers/openai-compatible-models.d.ts +6 -0
  381. package/dist/providers/openai-compatible-models.d.ts.map +1 -0
  382. package/dist/providers/openai-compatible-models.js +17 -0
  383. package/dist/providers/openai-compatible-models.js.map +1 -0
  384. package/dist/providers/openai-compatible-response-normalizer.d.ts +7 -0
  385. package/dist/providers/openai-compatible-response-normalizer.d.ts.map +1 -0
  386. package/dist/providers/openai-compatible-response-normalizer.js +58 -0
  387. package/dist/providers/openai-compatible-response-normalizer.js.map +1 -0
  388. package/dist/providers/openai-compatible.provider.d.ts +6 -3
  389. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  390. package/dist/providers/openai-compatible.provider.js +71 -327
  391. package/dist/providers/openai-compatible.provider.js.map +1 -1
  392. package/dist/providers/openai-compatible.provider.test.js +106 -1
  393. package/dist/providers/openai-compatible.provider.test.js.map +1 -1
  394. package/dist/providers/openai.provider.js +44 -10
  395. package/dist/providers/openai.provider.js.map +1 -1
  396. package/dist/providers/opencode.provider.d.ts +19 -0
  397. package/dist/providers/opencode.provider.d.ts.map +1 -0
  398. package/dist/providers/opencode.provider.js +45 -0
  399. package/dist/providers/opencode.provider.js.map +1 -0
  400. package/dist/providers/openrouter.provider.d.ts +2 -3
  401. package/dist/providers/openrouter.provider.d.ts.map +1 -1
  402. package/dist/providers/openrouter.provider.js +23 -24
  403. package/dist/providers/openrouter.provider.js.map +1 -1
  404. package/dist/providers/openrouter.provider.request-preprocessing.test.js +12 -9
  405. package/dist/providers/openrouter.provider.request-preprocessing.test.js.map +1 -1
  406. package/dist/providers/protocol-client.d.ts +17 -0
  407. package/dist/providers/protocol-client.d.ts.map +1 -0
  408. package/dist/providers/protocol-client.js +57 -0
  409. package/dist/providers/protocol-client.js.map +1 -0
  410. package/dist/providers/protocol-client.test.d.ts +2 -0
  411. package/dist/providers/protocol-client.test.d.ts.map +1 -0
  412. package/dist/providers/protocol-client.test.js +55 -0
  413. package/dist/providers/protocol-client.test.js.map +1 -0
  414. package/dist/providers/registry.d.ts +1 -0
  415. package/dist/providers/registry.d.ts.map +1 -1
  416. package/dist/providers/registry.js.map +1 -1
  417. package/dist/providers/registry.test.js +6 -22
  418. package/dist/providers/registry.test.js.map +1 -1
  419. package/dist/providers/timed-responses-ws-model.d.ts +20 -0
  420. package/dist/providers/timed-responses-ws-model.d.ts.map +1 -0
  421. package/dist/providers/timed-responses-ws-model.js +381 -0
  422. package/dist/providers/timed-responses-ws-model.js.map +1 -0
  423. package/dist/providers/timed-responses-ws-model.test.d.ts +2 -0
  424. package/dist/providers/timed-responses-ws-model.test.d.ts.map +1 -0
  425. package/dist/providers/timed-responses-ws-model.test.js +441 -0
  426. package/dist/providers/timed-responses-ws-model.test.js.map +1 -0
  427. package/dist/providers/timed-ws-connection.d.ts +26 -0
  428. package/dist/providers/timed-ws-connection.d.ts.map +1 -0
  429. package/dist/providers/timed-ws-connection.js +156 -0
  430. package/dist/providers/timed-ws-connection.js.map +1 -0
  431. package/dist/providers/timed-ws-connection.test.d.ts +2 -0
  432. package/dist/providers/timed-ws-connection.test.d.ts.map +1 -0
  433. package/dist/providers/timed-ws-connection.test.js +223 -0
  434. package/dist/providers/timed-ws-connection.test.js.map +1 -0
  435. package/dist/providers/timed-ws-timeouts.d.ts +6 -0
  436. package/dist/providers/timed-ws-timeouts.d.ts.map +1 -0
  437. package/dist/providers/timed-ws-timeouts.js +6 -0
  438. package/dist/providers/timed-ws-timeouts.js.map +1 -0
  439. package/dist/scripts/eval-auto-approval/dataset.d.ts +2 -2
  440. package/dist/services/approval-flow-coordinator.d.ts.map +1 -1
  441. package/dist/services/approval-flow-coordinator.js +17 -1
  442. package/dist/services/approval-flow-coordinator.js.map +1 -1
  443. package/dist/services/approval-flow-coordinator.test.js +22 -0
  444. package/dist/services/approval-flow-coordinator.test.js.map +1 -1
  445. package/dist/services/command-message-streaming.d.ts.map +1 -1
  446. package/dist/services/command-message-streaming.js +8 -6
  447. package/dist/services/command-message-streaming.js.map +1 -1
  448. package/dist/services/command-message-streaming.test.js +4 -2
  449. package/dist/services/command-message-streaming.test.js.map +1 -1
  450. package/dist/services/conversation-clear-save.test.js +37 -66
  451. package/dist/services/conversation-clear-save.test.js.map +1 -1
  452. package/dist/services/conversation-events.d.ts +48 -1
  453. package/dist/services/conversation-events.d.ts.map +1 -1
  454. package/dist/services/conversation-history-repair.d.ts.map +1 -1
  455. package/dist/services/conversation-history-repair.js +81 -26
  456. package/dist/services/conversation-history-repair.js.map +1 -1
  457. package/dist/services/conversation-integration.test.js +112 -1
  458. package/dist/services/conversation-integration.test.js.map +1 -1
  459. package/dist/services/conversation-log-events.d.ts +113 -0
  460. package/dist/services/conversation-log-events.d.ts.map +1 -0
  461. package/dist/services/conversation-log-events.js +12 -0
  462. package/dist/services/conversation-log-events.js.map +1 -0
  463. package/dist/services/conversation-log-writer.d.ts +40 -0
  464. package/dist/services/conversation-log-writer.d.ts.map +1 -0
  465. package/dist/services/conversation-log-writer.js +264 -0
  466. package/dist/services/conversation-log-writer.js.map +1 -0
  467. package/dist/services/conversation-persistence-types.d.ts +46 -0
  468. package/dist/services/conversation-persistence-types.d.ts.map +1 -0
  469. package/dist/services/conversation-persistence-types.js +2 -0
  470. package/dist/services/conversation-persistence-types.js.map +1 -0
  471. package/dist/services/conversation-persistence.d.ts +44 -39
  472. package/dist/services/conversation-persistence.d.ts.map +1 -1
  473. package/dist/services/conversation-persistence.js +273 -83
  474. package/dist/services/conversation-persistence.js.map +1 -1
  475. package/dist/services/conversation-persistence.test.js +708 -624
  476. package/dist/services/conversation-persistence.test.js.map +1 -1
  477. package/dist/services/conversation-replay.d.ts +26 -0
  478. package/dist/services/conversation-replay.d.ts.map +1 -0
  479. package/dist/services/conversation-replay.js +460 -0
  480. package/dist/services/conversation-replay.js.map +1 -0
  481. package/dist/services/conversation-replay.test.d.ts +2 -0
  482. package/dist/services/conversation-replay.test.d.ts.map +1 -0
  483. package/dist/services/conversation-replay.test.js +492 -0
  484. package/dist/services/conversation-replay.test.js.map +1 -0
  485. package/dist/services/conversation-result-builder.d.ts +2 -0
  486. package/dist/services/conversation-result-builder.d.ts.map +1 -1
  487. package/dist/services/conversation-result-builder.js +12 -2
  488. package/dist/services/conversation-result-builder.js.map +1 -1
  489. package/dist/services/conversation-result-builder.test.js +179 -0
  490. package/dist/services/conversation-result-builder.test.js.map +1 -1
  491. package/dist/services/conversation-retry-policy.d.ts +17 -0
  492. package/dist/services/conversation-retry-policy.d.ts.map +1 -1
  493. package/dist/services/conversation-retry-policy.js +38 -5
  494. package/dist/services/conversation-retry-policy.js.map +1 -1
  495. package/dist/services/conversation-retry-policy.test.js +60 -1
  496. package/dist/services/conversation-retry-policy.test.js.map +1 -1
  497. package/dist/services/conversation-service.d.ts +12 -3
  498. package/dist/services/conversation-service.d.ts.map +1 -1
  499. package/dist/services/conversation-service.js +18 -3
  500. package/dist/services/conversation-service.js.map +1 -1
  501. package/dist/services/conversation-session.d.ts +23 -7
  502. package/dist/services/conversation-session.d.ts.map +1 -1
  503. package/dist/services/conversation-session.js +620 -67
  504. package/dist/services/conversation-session.js.map +1 -1
  505. package/dist/services/conversation-store.d.ts +16 -13
  506. package/dist/services/conversation-store.d.ts.map +1 -1
  507. package/dist/services/conversation-store.js +62 -191
  508. package/dist/services/conversation-store.js.map +1 -1
  509. package/dist/services/conversation-store.merge-modes.removed.d.ts +2 -0
  510. package/dist/services/conversation-store.merge-modes.removed.d.ts.map +1 -0
  511. package/dist/services/conversation-store.merge-modes.removed.js +2 -0
  512. package/dist/services/conversation-store.merge-modes.removed.js.map +1 -0
  513. package/dist/services/conversation-store.merge-modes.test.d.ts +2 -0
  514. package/dist/services/conversation-store.merge-modes.test.d.ts.map +1 -0
  515. package/dist/services/conversation-store.merge-modes.test.js +2 -0
  516. package/dist/services/conversation-store.merge-modes.test.js.map +1 -0
  517. package/dist/services/conversation-store.test.js +157 -294
  518. package/dist/services/conversation-store.test.js.map +1 -1
  519. package/dist/services/conversation-turn-items.d.ts +5 -0
  520. package/dist/services/conversation-turn-items.d.ts.map +1 -0
  521. package/dist/services/conversation-turn-items.js +351 -0
  522. package/dist/services/conversation-turn-items.js.map +1 -0
  523. package/dist/services/conversation-turn-items.test.d.ts +2 -0
  524. package/dist/services/conversation-turn-items.test.d.ts.map +1 -0
  525. package/dist/services/conversation-turn-items.test.js +68 -0
  526. package/dist/services/conversation-turn-items.test.js.map +1 -0
  527. package/dist/services/input-surge-guard.d.ts +4 -0
  528. package/dist/services/input-surge-guard.d.ts.map +1 -1
  529. package/dist/services/input-surge-guard.js +2 -2
  530. package/dist/services/input-surge-guard.js.map +1 -1
  531. package/dist/services/input-surge-guard.test.js +15 -1
  532. package/dist/services/input-surge-guard.test.js.map +1 -1
  533. package/dist/services/large-uncached-input-guard.d.ts +35 -0
  534. package/dist/services/large-uncached-input-guard.d.ts.map +1 -0
  535. package/dist/services/large-uncached-input-guard.js +127 -0
  536. package/dist/services/large-uncached-input-guard.js.map +1 -0
  537. package/dist/services/large-uncached-input-guard.test.d.ts +2 -0
  538. package/dist/services/large-uncached-input-guard.test.d.ts.map +1 -0
  539. package/dist/services/large-uncached-input-guard.test.js +160 -0
  540. package/dist/services/large-uncached-input-guard.test.js.map +1 -0
  541. package/dist/services/model-service.d.ts +2 -0
  542. package/dist/services/model-service.d.ts.map +1 -1
  543. package/dist/services/model-service.js +7 -0
  544. package/dist/services/model-service.js.map +1 -1
  545. package/dist/services/provider-traffic.d.ts.map +1 -1
  546. package/dist/services/provider-traffic.js +82 -24
  547. package/dist/services/provider-traffic.js.map +1 -1
  548. package/dist/services/provider-traffic.test.js +98 -6
  549. package/dist/services/provider-traffic.test.js.map +1 -1
  550. package/dist/services/repro-error.test.d.ts +2 -0
  551. package/dist/services/repro-error.test.d.ts.map +1 -0
  552. package/dist/services/repro-error.test.js +38 -0
  553. package/dist/services/repro-error.test.js.map +1 -0
  554. package/dist/services/rtk-service.d.ts.map +1 -1
  555. package/dist/services/rtk-service.js +1 -2
  556. package/dist/services/rtk-service.js.map +1 -1
  557. package/dist/services/settings-schema.d.ts +36 -28
  558. package/dist/services/settings-schema.d.ts.map +1 -1
  559. package/dist/services/settings-schema.js +7 -2
  560. package/dist/services/settings-schema.js.map +1 -1
  561. package/dist/services/settings-sources.d.ts.map +1 -1
  562. package/dist/services/settings-sources.js +1 -0
  563. package/dist/services/settings-sources.js.map +1 -1
  564. package/dist/services/stream-event-processor.d.ts +4 -0
  565. package/dist/services/stream-event-processor.d.ts.map +1 -1
  566. package/dist/services/stream-event-processor.js +78 -39
  567. package/dist/services/stream-event-processor.js.map +1 -1
  568. package/dist/services/stream-event-processor.test.js +71 -0
  569. package/dist/services/stream-event-processor.test.js.map +1 -1
  570. package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
  571. package/dist/services/subagents/subagent-manager.js +120 -46
  572. package/dist/services/subagents/subagent-manager.js.map +1 -1
  573. package/dist/services/subagents/subagent-manager.test.js +361 -11
  574. package/dist/services/subagents/subagent-manager.test.js.map +1 -1
  575. package/dist/services/subagents/subagent-session.d.ts +1 -1
  576. package/dist/services/subagents/subagent-session.d.ts.map +1 -1
  577. package/dist/services/subagents/subagent-session.js +2 -2
  578. package/dist/services/subagents/subagent-session.js.map +1 -1
  579. package/dist/services/subagents/subagent-session.test.js +3 -3
  580. package/dist/services/subagents/subagent-session.test.js.map +1 -1
  581. package/dist/services/subagents/types.d.ts +2 -1
  582. package/dist/services/subagents/types.d.ts.map +1 -1
  583. package/dist/services/terminal-result-collector.d.ts.map +1 -1
  584. package/dist/services/terminal-result-collector.js +49 -1
  585. package/dist/services/terminal-result-collector.js.map +1 -1
  586. package/dist/services/terminal-result-collector.test.js +44 -0
  587. package/dist/services/terminal-result-collector.test.js.map +1 -1
  588. package/dist/services/tool-call-arguments.d.ts +20 -0
  589. package/dist/services/tool-call-arguments.d.ts.map +1 -0
  590. package/dist/services/tool-call-arguments.js +49 -0
  591. package/dist/services/tool-call-arguments.js.map +1 -0
  592. package/dist/services/tool-execution-ledger.d.ts +41 -0
  593. package/dist/services/tool-execution-ledger.d.ts.map +1 -0
  594. package/dist/services/tool-execution-ledger.js +269 -0
  595. package/dist/services/tool-execution-ledger.js.map +1 -0
  596. package/dist/services/tool-execution-ledger.test.d.ts +2 -0
  597. package/dist/services/tool-execution-ledger.test.d.ts.map +1 -0
  598. package/dist/services/tool-execution-ledger.test.js +271 -0
  599. package/dist/services/tool-execution-ledger.test.js.map +1 -0
  600. package/dist/tools/apply-patch.d.ts +8 -0
  601. package/dist/tools/apply-patch.d.ts.map +1 -1
  602. package/dist/tools/apply-patch.js +187 -14
  603. package/dist/tools/apply-patch.js.map +1 -1
  604. package/dist/tools/apply-patch.test.js +81 -0
  605. package/dist/tools/apply-patch.test.js.map +1 -1
  606. package/dist/tools/edit-healing.d.ts.map +1 -1
  607. package/dist/tools/edit-healing.js +9 -3
  608. package/dist/tools/edit-healing.js.map +1 -1
  609. package/dist/tools/run-subagent.d.ts +0 -1
  610. package/dist/tools/run-subagent.d.ts.map +1 -1
  611. package/dist/tools/run-subagent.js +1 -8
  612. package/dist/tools/run-subagent.js.map +1 -1
  613. package/dist/tools/run-subagent.test.js +0 -18
  614. package/dist/tools/run-subagent.test.js.map +1 -1
  615. package/dist/tools/search-replace.d.ts.map +1 -1
  616. package/dist/tools/search-replace.js +92 -140
  617. package/dist/tools/search-replace.js.map +1 -1
  618. package/dist/utils/clipboard.d.ts +7 -0
  619. package/dist/utils/clipboard.d.ts.map +1 -1
  620. package/dist/utils/clipboard.js +83 -4
  621. package/dist/utils/clipboard.js.map +1 -1
  622. package/dist/utils/clipboard.test.js +152 -2
  623. package/dist/utils/clipboard.test.js.map +1 -1
  624. package/dist/utils/conversation-event-handler.d.ts.map +1 -1
  625. package/dist/utils/conversation-event-handler.js +36 -1
  626. package/dist/utils/conversation-event-handler.js.map +1 -1
  627. package/dist/utils/conversation-event-handler.test.js +116 -0
  628. package/dist/utils/conversation-event-handler.test.js.map +1 -1
  629. package/dist/utils/error-helpers.d.ts +1 -0
  630. package/dist/utils/error-helpers.d.ts.map +1 -1
  631. package/dist/utils/error-helpers.js +61 -0
  632. package/dist/utils/error-helpers.js.map +1 -1
  633. package/dist/utils/error-helpers.test.js +13 -1
  634. package/dist/utils/error-helpers.test.js.map +1 -1
  635. package/dist/utils/extract-command-messages.d.ts.map +1 -1
  636. package/dist/utils/extract-command-messages.js +8 -4
  637. package/dist/utils/extract-command-messages.js.map +1 -1
  638. package/dist/utils/ink-render-options.d.ts +1 -1
  639. package/dist/utils/ink-render-options.d.ts.map +1 -1
  640. package/dist/utils/ink-render-options.js +1 -1
  641. package/dist/utils/ink-render-options.js.map +1 -1
  642. package/dist/utils/message-utils.d.ts +7 -0
  643. package/dist/utils/message-utils.d.ts.map +1 -0
  644. package/dist/utils/message-utils.js +31 -0
  645. package/dist/utils/message-utils.js.map +1 -0
  646. package/dist/utils/resume-list.d.ts +15 -0
  647. package/dist/utils/resume-list.d.ts.map +1 -0
  648. package/dist/utils/resume-list.js +68 -0
  649. package/dist/utils/resume-list.js.map +1 -0
  650. package/dist/utils/resume-list.test.d.ts +2 -0
  651. package/dist/utils/resume-list.test.d.ts.map +1 -0
  652. package/dist/utils/resume-list.test.js +89 -0
  653. package/dist/utils/resume-list.test.js.map +1 -0
  654. package/dist/utils/streaming-session-factory.d.ts +2 -0
  655. package/dist/utils/streaming-session-factory.d.ts.map +1 -1
  656. package/dist/utils/streaming-session-factory.js +4 -0
  657. package/dist/utils/streaming-session-factory.js.map +1 -1
  658. package/package.json +2 -2
  659. package/readme.md +22 -7
@@ -10,6 +10,7 @@ import { executeWithRetry } from './retry-executor.js';
10
10
  import { shouldUseNativePatchTool, shouldUseStrictToolSchema } from './tool-selection-policy.js';
11
11
  import { isFlexServiceTierTimeout } from '../utils/flex-service-tier.js';
12
12
  import { SubagentManager } from '../services/subagents/subagent-manager.js';
13
+ import { fetchModels, getModelDefaultReasoningLevel } from '../services/model-service.js';
13
14
  /**
14
15
  * Wraps a tool definition's needsApproval so that structurally invalid params
15
16
  * (those that fail Zod schema validation) never trigger an approval prompt.
@@ -75,13 +76,21 @@ export class OpenAIAgentClient {
75
76
  #editor;
76
77
  #subagentManager;
77
78
  #subagentEventSink = null;
79
+ #activeSubagentsCount = 0;
80
+ #pendingClearSink = false;
78
81
  /**
79
82
  * Forward real-time subagent activity events to the active conversation
80
83
  * turn. The session sets this for the duration of a send and clears it
81
84
  * afterwards so events reach the UI's onEvent callback.
82
85
  */
83
86
  setSubagentEventSink(sink) {
84
- this.#subagentEventSink = sink;
87
+ if (sink === null && this.#activeSubagentsCount > 0) {
88
+ this.#pendingClearSink = true;
89
+ }
90
+ else {
91
+ this.#subagentEventSink = sink;
92
+ this.#pendingClearSink = false;
93
+ }
85
94
  }
86
95
  #resetMentorState() {
87
96
  this.#subagentManager.resetMentorSession();
@@ -108,7 +117,7 @@ export class OpenAIAgentClient {
108
117
  this.#maxTurns = maxTurns ?? 20;
109
118
  this.#retryAttempts = retryAttempts ?? 2;
110
119
  this.#agent = this.#createAgent({ model, reasoningEffort });
111
- this.#runner = this.#createRunner(this.#provider);
120
+ this.#runner = null;
112
121
  // Subscribe to settings changes that affect agent definition (prompt,
113
122
  // tools, model, provider, modes) and rebuild the agent automatically.
114
123
  this.#settings.onChange?.((changedKey) => {
@@ -183,7 +192,7 @@ export class OpenAIAgentClient {
183
192
  model: this.#model,
184
193
  reasoningEffort: this.#reasoningEffort,
185
194
  });
186
- this.#runner = this.#createRunner(this.#provider);
195
+ this.#runner = null;
187
196
  this.#resetMentorState();
188
197
  }
189
198
  getProvider() {
@@ -209,6 +218,7 @@ export class OpenAIAgentClient {
209
218
  params,
210
219
  toolCallId,
211
220
  error: error instanceof Error ? error.message : String(error),
221
+ stack: error instanceof Error ? error.stack : undefined,
212
222
  });
213
223
  return `Tool execution intercepted but failed: ${error instanceof Error ? error.message : String(error)}`;
214
224
  }
@@ -234,6 +244,16 @@ export class OpenAIAgentClient {
234
244
  loggingService: this.#logger,
235
245
  });
236
246
  }
247
+ #getOrCreateRunner(providerId) {
248
+ if (providerId !== this.#provider) {
249
+ return this.#createRunner(providerId);
250
+ }
251
+ if (this.#runner) {
252
+ return this.#runner;
253
+ }
254
+ this.#runner = this.#createRunner(providerId);
255
+ return this.#runner;
256
+ }
237
257
  setRetryCallback(callback) {
238
258
  this.#retryCallback = callback;
239
259
  }
@@ -285,13 +305,25 @@ export class OpenAIAgentClient {
285
305
  this.#refreshAgent();
286
306
  this.#logger.debug('Conversation and agent refreshed');
287
307
  }
288
- async startStream(userInput, { previousResponseId } = {}) {
308
+ async startStream(userInput, { previousResponseId, sessionId } = {}) {
289
309
  // Abort any previous operation
290
310
  this.abort();
311
+ let agentRefreshed = false;
312
+ // Ensure Codex models are fetched/cached if reasoningEffort is default, so we can apply default_reasoning_level
313
+ if (this.#provider === 'codex' && this.#settings.get('agent.reasoningEffort') === 'default') {
314
+ try {
315
+ await fetchModels({ settingsService: this.#settings, loggingService: this.#logger }, 'codex');
316
+ this.#refreshAgent();
317
+ agentRefreshed = true;
318
+ }
319
+ catch (err) {
320
+ // ignore
321
+ }
322
+ }
291
323
  // Refresh agent instructions for the first message of a session to ensure
292
324
  // directory structure and AGENTS.md content are up to date.
293
325
  const isFirstMessage = !previousResponseId && (!Array.isArray(userInput) || (userInput.length > 0 && userInput.length <= 1));
294
- if (isFirstMessage) {
326
+ if (isFirstMessage && !agentRefreshed) {
295
327
  this.#refreshAgent();
296
328
  }
297
329
  // Create correlation ID for this stream
@@ -318,11 +350,12 @@ export class OpenAIAgentClient {
318
350
  maxTurns: this.#maxTurns,
319
351
  signal,
320
352
  };
353
+ const agentForRun = this.#getAgentForRun(this.#agent, { sessionId });
321
354
  const { supportsConversationChaining } = this.#getProviderCapabilities(this.#provider);
322
355
  if (supportsConversationChaining && previousResponseId) {
323
356
  options.previousResponseId = previousResponseId;
324
357
  }
325
- const result = await this.#executeWithRetry(() => this.#runAgent(this.#agent, userInput, options));
358
+ const result = await this.#executeWithRetry(() => this.#runAgent(agentForRun, userInput, options));
326
359
  return result;
327
360
  }
328
361
  catch (error) {
@@ -334,6 +367,7 @@ export class OpenAIAgentClient {
334
367
  provider: this.#provider,
335
368
  model: this.#model,
336
369
  error: error instanceof Error ? error.message : String(error),
370
+ stack: error instanceof Error ? error.stack : undefined,
337
371
  inputType: Array.isArray(userInput) ? 'array' : typeof userInput,
338
372
  inputLength: typeof userInput === 'string' ? userInput.length : undefined,
339
373
  inputItems: Array.isArray(userInput) ? userInput.length : undefined,
@@ -341,20 +375,21 @@ export class OpenAIAgentClient {
341
375
  throw error;
342
376
  }
343
377
  }
344
- async continueRun(state, { previousResponseId } = {}) {
378
+ async continueRun(state, { previousResponseId, sessionId } = {}) {
345
379
  this.abort();
346
380
  this.#currentAbortController = new AbortController();
347
381
  const signal = this.#currentAbortController.signal;
348
382
  const options = {
349
383
  signal,
350
384
  };
385
+ const agentForRun = this.#getAgentForRun(this.#agent, { sessionId });
351
386
  const { supportsConversationChaining } = this.#getProviderCapabilities(this.#provider);
352
387
  if (supportsConversationChaining && previousResponseId) {
353
388
  options.previousResponseId = previousResponseId;
354
389
  }
355
- return this.#executeWithRetry(() => this.#runAgent(this.#agent, state, options));
390
+ return this.#executeWithRetry(() => this.#runAgent(agentForRun, state, options));
356
391
  }
357
- async continueRunStream(state, { previousResponseId } = {}) {
392
+ async continueRunStream(state, { previousResponseId, sessionId } = {}) {
358
393
  this.abort();
359
394
  this.#currentAbortController = new AbortController();
360
395
  const signal = this.#currentAbortController.signal;
@@ -363,11 +398,12 @@ export class OpenAIAgentClient {
363
398
  maxTurns: this.#maxTurns,
364
399
  signal,
365
400
  };
401
+ const agentForRun = this.#getAgentForRun(this.#agent, { sessionId });
366
402
  const { supportsConversationChaining } = this.#getProviderCapabilities(this.#provider);
367
403
  if (supportsConversationChaining && previousResponseId) {
368
404
  options.previousResponseId = previousResponseId;
369
405
  }
370
- return this.#executeWithRetry(() => this.#runAgent(this.#agent, state, options));
406
+ return this.#executeWithRetry(() => this.#runAgent(agentForRun, state, options));
371
407
  }
372
408
  #runAgentWithProvider(providerId, runner, agent, input, options) {
373
409
  // The Agents SDK enables tracing by default and exports spans to OpenAI.
@@ -394,7 +430,7 @@ export class OpenAIAgentClient {
394
430
  async #runAgent(agent, input, options) {
395
431
  const shouldResetServiceTierOverride = this.#serviceTierOverrideForNextRequest === 'standard';
396
432
  try {
397
- return await this.#runAgentWithProvider(this.#provider, this.#runner, agent, input, options);
433
+ return await this.#runAgentWithProvider(this.#provider, this.#getOrCreateRunner(this.#provider), agent, input, options);
398
434
  }
399
435
  finally {
400
436
  if (shouldResetServiceTierOverride) {
@@ -421,6 +457,16 @@ export class OpenAIAgentClient {
421
457
  model: options.model || this.#model,
422
458
  provider: tempProvider,
423
459
  });
460
+ const isDefaultSetting = this.#settings.get('agent.reasoningEffort') === 'default';
461
+ if (tempProvider === 'codex' && isDefaultSetting) {
462
+ try {
463
+ await fetchModels({ settingsService: this.#settings, loggingService: this.#logger }, 'codex');
464
+ this.#refreshAgent();
465
+ }
466
+ catch (err) {
467
+ // ignore
468
+ }
469
+ }
424
470
  try {
425
471
  // Create a temporary agent for this specific chat request if params differ
426
472
  let agentForChat = this.#agent;
@@ -428,9 +474,16 @@ export class OpenAIAgentClient {
428
474
  const tempEffort = options.reasoningEffort || this.#reasoningEffort;
429
475
  if (options.model || options.reasoningEffort || options.instructions || options.provider) {
430
476
  const modelSettings = {};
431
- if (tempEffort && tempEffort !== 'default') {
477
+ let effectiveEffort = tempEffort;
478
+ if (tempProvider === 'codex' && isDefaultSetting && (!effectiveEffort || effectiveEffort === 'default')) {
479
+ const defaultReasoningLevel = getModelDefaultReasoningLevel('codex', tempModel);
480
+ if (defaultReasoningLevel) {
481
+ effectiveEffort = defaultReasoningLevel;
482
+ }
483
+ }
484
+ if (effectiveEffort && effectiveEffort !== 'default') {
432
485
  modelSettings.reasoning = {
433
- effort: tempEffort,
486
+ effort: effectiveEffort,
434
487
  summary: 'auto',
435
488
  };
436
489
  }
@@ -443,10 +496,7 @@ export class OpenAIAgentClient {
443
496
  });
444
497
  }
445
498
  // If provider is different from main provider, we need a separate runner
446
- let runnerForChat = this.#runner;
447
- if (tempProvider !== this.#provider) {
448
- runnerForChat = this.#createRunner(tempProvider);
449
- }
499
+ const runnerForChat = this.#getOrCreateRunner(tempProvider);
450
500
  // We use a simplified run flow for chat
451
501
  const result = await this.#runAgentWithProvider(tempProvider, runnerForChat, agentForChat, message, {
452
502
  stream: false,
@@ -457,6 +507,7 @@ export class OpenAIAgentClient {
457
507
  catch (error) {
458
508
  this.#logger.error('Agent chat failed', {
459
509
  error: error instanceof Error ? error.message : String(error),
510
+ stack: error instanceof Error ? error.stack : undefined,
460
511
  });
461
512
  throw error; // Propagate error
462
513
  }
@@ -468,13 +519,30 @@ export class OpenAIAgentClient {
468
519
  model: options.model || this.#model,
469
520
  provider: tempProvider,
470
521
  });
522
+ const isDefaultSetting = this.#settings.get('agent.reasoningEffort') === 'default';
523
+ if (tempProvider === 'codex' && isDefaultSetting) {
524
+ try {
525
+ await fetchModels({ settingsService: this.#settings, loggingService: this.#logger }, 'codex');
526
+ this.#refreshAgent();
527
+ }
528
+ catch (err) {
529
+ // ignore
530
+ }
531
+ }
471
532
  try {
472
533
  const tempModel = options.model || this.#model;
473
534
  const tempEffort = options.reasoningEffort || this.#reasoningEffort;
474
535
  const modelSettings = {};
475
- if (tempEffort && tempEffort !== 'default') {
536
+ let effectiveEffort = tempEffort;
537
+ if (tempProvider === 'codex' && isDefaultSetting && (!effectiveEffort || effectiveEffort === 'default')) {
538
+ const defaultReasoningLevel = getModelDefaultReasoningLevel('codex', tempModel);
539
+ if (defaultReasoningLevel) {
540
+ effectiveEffort = defaultReasoningLevel;
541
+ }
542
+ }
543
+ if (effectiveEffort && effectiveEffort !== 'default') {
476
544
  modelSettings.reasoning = {
477
- effort: tempEffort,
545
+ effort: effectiveEffort,
478
546
  summary: 'auto',
479
547
  };
480
548
  }
@@ -485,10 +553,7 @@ export class OpenAIAgentClient {
485
553
  instructions: options.instructions || 'You are a helpful assistant.',
486
554
  outputType: options.outputType,
487
555
  });
488
- let runnerForChat = this.#runner;
489
- if (tempProvider !== this.#provider) {
490
- runnerForChat = this.#createRunner(tempProvider);
491
- }
556
+ const runnerForChat = this.#getOrCreateRunner(tempProvider);
492
557
  const result = await this.#runAgentWithProvider(tempProvider, runnerForChat, agentForChat, message, {
493
558
  stream: false,
494
559
  maxTurns: 1,
@@ -498,6 +563,7 @@ export class OpenAIAgentClient {
498
563
  catch (error) {
499
564
  this.#logger.error('Agent structured chat failed', {
500
565
  error: error instanceof Error ? error.message : String(error),
566
+ stack: error instanceof Error ? error.stack : undefined,
501
567
  });
502
568
  throw error;
503
569
  }
@@ -520,9 +586,21 @@ export class OpenAIAgentClient {
520
586
  }
521
587
  return '';
522
588
  }
589
+ #getAgentForRun(agent, { sessionId } = {}) {
590
+ if (this.#provider !== 'codex' || !sessionId) {
591
+ return agent;
592
+ }
593
+ return agent.clone({
594
+ modelSettings: {
595
+ ...(agent.modelSettings || {}),
596
+ prompt_cache_key: sessionId,
597
+ },
598
+ });
599
+ }
523
600
  #createMentor = async (question) => {
601
+ this.#activeSubagentsCount++;
524
602
  try {
525
- const result = await this.#subagentManager.run({ role: 'mentor', task: question });
603
+ const result = await this.#subagentManager.run({ role: 'mentor', task: question, parentTool: 'ask_mentor' });
526
604
  if (result.status === 'failed') {
527
605
  throw new Error(result.error || 'Mentor consultation failed');
528
606
  }
@@ -531,9 +609,17 @@ export class OpenAIAgentClient {
531
609
  catch (error) {
532
610
  this.#logger.error('Mentor consultation failed', {
533
611
  error: error instanceof Error ? error.message : String(error),
612
+ stack: error instanceof Error ? error.stack : undefined,
534
613
  });
535
614
  throw error;
536
615
  }
616
+ finally {
617
+ this.#activeSubagentsCount--;
618
+ if (this.#activeSubagentsCount === 0 && this.#pendingClearSink) {
619
+ this.#subagentEventSink = null;
620
+ this.#pendingClearSink = false;
621
+ }
622
+ }
537
623
  };
538
624
  #runSubagent = async (params, _context, details) => {
539
625
  // Forward any resumeState from the SDK (populated in the Agent.asTool
@@ -542,16 +628,27 @@ export class OpenAIAgentClient {
542
628
  const detailsRecord = details;
543
629
  const request = {
544
630
  ...params,
631
+ parentTool: 'run_subagent',
545
632
  ...(detailsRecord?.resumeState ? { resumeState: detailsRecord.resumeState } : {}),
546
633
  ...(detailsRecord?.signal ? { signal: detailsRecord.signal } : {}),
547
634
  };
548
- const result = await this.#subagentManager.run(request);
549
- // saveAgentToolRunResult is not exported as a public API from
550
- // @openai/agents-core, so we cannot call it here. The nestedRunResult
551
- // is preserved on the SubagentResult for use by the caller and will
552
- // be propagated back through the conversation result builder when the
553
- // run_subagent is registered via Agent.asTool (future work).
554
- return result;
635
+ this.#activeSubagentsCount++;
636
+ try {
637
+ const result = await this.#subagentManager.run(request);
638
+ // saveAgentToolRunResult is not exported as a public API from
639
+ // @openai/agents-core, so we cannot call it here. The nestedRunResult
640
+ // is preserved on the SubagentResult for use by the caller and will
641
+ // be propagated back through the conversation result builder when the
642
+ // run_subagent is registered via Agent.asTool (future work).
643
+ return result;
644
+ }
645
+ finally {
646
+ this.#activeSubagentsCount--;
647
+ if (this.#activeSubagentsCount === 0 && this.#pendingClearSink) {
648
+ this.#subagentEventSink = null;
649
+ this.#pendingClearSink = false;
650
+ }
651
+ }
555
652
  };
556
653
  #createAgent({ model, reasoningEffort, temperature, } = {}) {
557
654
  const resolvedModel = model?.trim() || this.#settings.get('agent.model');
@@ -575,8 +672,18 @@ export class OpenAIAgentClient {
575
672
  resolvedModel,
576
673
  shouldUseNativePatchTool: shouldUseNativePatchToolForModel,
577
674
  });
675
+ let effectiveReasoningEffort = reasoningEffort;
676
+ const isDefaultSetting = this.#settings.get('agent.reasoningEffort') === 'default';
677
+ if (this.#provider === 'codex' &&
678
+ isDefaultSetting &&
679
+ (!effectiveReasoningEffort || effectiveReasoningEffort === 'default')) {
680
+ const defaultReasoningLevel = getModelDefaultReasoningLevel('codex', resolvedModel);
681
+ if (defaultReasoningLevel) {
682
+ effectiveReasoningEffort = defaultReasoningLevel;
683
+ }
684
+ }
578
685
  const modelSettings = this.#buildModelSettings({
579
- reasoningEffort,
686
+ reasoningEffort: effectiveReasoningEffort,
580
687
  resolvedTemperature,
581
688
  });
582
689
  const agent = new Agent({
@@ -589,11 +696,11 @@ export class OpenAIAgentClient {
589
696
  // Only add defaultRunOptions if an explicit effort is set (not
590
697
  // 'default'). This ensures the API receives the param only when
591
698
  // intended.
592
- if (reasoningEffort && reasoningEffort !== 'default') {
699
+ if (effectiveReasoningEffort && effectiveReasoningEffort !== 'default') {
593
700
  agent.defaultRunOptions = {
594
701
  ...(agent.defaultRunOptions || {}),
595
702
  // Pass through to underlying client for models that support it
596
- reasoning: { effort: reasoningEffort },
703
+ reasoning: { effort: effectiveReasoningEffort },
597
704
  };
598
705
  }
599
706
  return agent;
@@ -641,11 +748,32 @@ export class OpenAIAgentClient {
641
748
  });
642
749
  return trimToolOutput(rejected, undefined, maxOutputLengthValue ?? undefined);
643
750
  }
644
- // Normal execution
645
- const result = await definition.execute(params, _context, details);
646
- return trimToolOutput(result, undefined, maxOutputLengthValue ?? undefined);
751
+ // Combine parent abort signal with any tool timeout signal passed by details
752
+ const parentSignal = this.#currentAbortController?.signal;
753
+ const toolSignal = details?.signal;
754
+ const combined = combineAbortSignals(parentSignal, toolSignal);
755
+ const combinedSignal = combined?.signal;
756
+ const cleanupSignal = combined?.cleanup;
757
+ const wrappedDetails = details
758
+ ? Object.create(Object.getPrototypeOf(details), {
759
+ ...Object.getOwnPropertyDescriptors(details),
760
+ ...(combinedSignal
761
+ ? { signal: { value: combinedSignal, writable: true, enumerable: true, configurable: true } }
762
+ : {}),
763
+ })
764
+ : combinedSignal
765
+ ? { signal: combinedSignal }
766
+ : undefined;
767
+ try {
768
+ // Normal execution with combined abort signal
769
+ const result = await definition.execute(params, _context, wrappedDetails);
770
+ return trimToolOutput(result, undefined, maxOutputLengthValue ?? undefined);
771
+ }
772
+ finally {
773
+ cleanupSignal?.();
774
+ }
647
775
  },
648
- })));
776
+ }), definition.parameters));
649
777
  // Add native applyPatchTool for gpt-5.1 on OpenAI provider
650
778
  if (shouldUseNativePatchTool) {
651
779
  const nativePatchTool = applyPatchTool({
@@ -732,10 +860,42 @@ export class OpenAIAgentClient {
732
860
  service_tier: 'flex',
733
861
  };
734
862
  }
863
+ if (this.#provider === 'codex') {
864
+ modelSettings.store = false;
865
+ modelSettings.include = ['reasoning.encrypted_content'];
866
+ }
735
867
  return modelSettings;
736
868
  }
737
869
  getSettings() {
738
870
  return this.#settings;
739
871
  }
740
872
  }
873
+ export function combineAbortSignals(signal1, signal2) {
874
+ if (!signal1 && !signal2)
875
+ return undefined;
876
+ if (!signal1)
877
+ return { signal: signal2, cleanup: () => { } };
878
+ if (!signal2)
879
+ return { signal: signal1, cleanup: () => { } };
880
+ if (typeof AbortSignal.any === 'function') {
881
+ return { signal: AbortSignal.any([signal1, signal2]), cleanup: () => { } };
882
+ }
883
+ const controller = new AbortController();
884
+ const onAbort = () => {
885
+ controller.abort();
886
+ cleanup();
887
+ };
888
+ const cleanup = () => {
889
+ signal1.removeEventListener('abort', onAbort);
890
+ signal2.removeEventListener('abort', onAbort);
891
+ };
892
+ if (signal1.aborted || signal2.aborted) {
893
+ controller.abort();
894
+ }
895
+ else {
896
+ signal1.addEventListener('abort', onAbort);
897
+ signal2.addEventListener('abort', onAbort);
898
+ }
899
+ return { signal: controller.signal, cleanup };
900
+ }
741
901
  //# sourceMappingURL=openai-agent-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai-agent-client.js","sourceRoot":"","sources":["../../source/lib/openai-agent-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai-agent-client.js","sourceRoot":"","sources":["../../source/lib/openai-agent-client.ts"],"names":[],"mappings":"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"}