@qduc/term2 0.7.0 → 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 (641) hide show
  1. package/dist/agent.d.ts +0 -1
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +28 -8
  4. package/dist/agent.js.map +1 -1
  5. package/dist/agent.lite-mode.test.d.ts +2 -0
  6. package/dist/agent.lite-mode.test.d.ts.map +1 -0
  7. package/dist/agent.lite-mode.test.js +39 -0
  8. package/dist/agent.lite-mode.test.js.map +1 -0
  9. package/dist/app.d.ts.map +1 -1
  10. package/dist/app.js +35 -11
  11. package/dist/app.js.map +1 -1
  12. package/dist/cli.integration.test.d.ts +2 -0
  13. package/dist/cli.integration.test.d.ts.map +1 -0
  14. package/dist/cli.integration.test.js +102 -0
  15. package/dist/cli.integration.test.js.map +1 -0
  16. package/dist/cli.js +20 -3
  17. package/dist/cli.js.map +1 -1
  18. package/dist/commands/auto-approve-command.d.ts +10 -0
  19. package/dist/commands/auto-approve-command.d.ts.map +1 -0
  20. package/dist/commands/auto-approve-command.js +40 -0
  21. package/dist/commands/auto-approve-command.js.map +1 -0
  22. package/dist/commands/clear-command.d.ts +3 -0
  23. package/dist/commands/clear-command.d.ts.map +1 -0
  24. package/dist/commands/clear-command.js +12 -0
  25. package/dist/commands/clear-command.js.map +1 -0
  26. package/dist/commands/copy-command.d.ts +10 -0
  27. package/dist/commands/copy-command.d.ts.map +1 -0
  28. package/dist/commands/copy-command.js +25 -0
  29. package/dist/commands/copy-command.js.map +1 -0
  30. package/dist/commands/effort-command.d.ts +11 -0
  31. package/dist/commands/effort-command.d.ts.map +1 -0
  32. package/dist/commands/effort-command.js +34 -0
  33. package/dist/commands/effort-command.js.map +1 -0
  34. package/dist/commands/guarded-settings-command.d.ts +14 -0
  35. package/dist/commands/guarded-settings-command.d.ts.map +1 -0
  36. package/dist/commands/guarded-settings-command.js +23 -0
  37. package/dist/commands/guarded-settings-command.js.map +1 -0
  38. package/dist/commands/handoff-command.d.ts +10 -0
  39. package/dist/commands/handoff-command.d.ts.map +1 -0
  40. package/dist/commands/handoff-command.js +17 -0
  41. package/dist/commands/handoff-command.js.map +1 -0
  42. package/dist/commands/mode-commands.d.ts +32 -0
  43. package/dist/commands/mode-commands.d.ts.map +1 -0
  44. package/dist/commands/mode-commands.js +64 -0
  45. package/dist/commands/mode-commands.js.map +1 -0
  46. package/dist/commands/model-command.d.ts +11 -0
  47. package/dist/commands/model-command.d.ts.map +1 -0
  48. package/dist/commands/model-command.js +35 -0
  49. package/dist/commands/model-command.js.map +1 -0
  50. package/dist/commands/quit-command.d.ts +3 -0
  51. package/dist/commands/quit-command.d.ts.map +1 -0
  52. package/dist/commands/quit-command.js +10 -0
  53. package/dist/commands/quit-command.js.map +1 -0
  54. package/dist/commands/retry-command.d.ts +19 -0
  55. package/dist/commands/retry-command.d.ts.map +1 -0
  56. package/dist/commands/retry-command.js +30 -0
  57. package/dist/commands/retry-command.js.map +1 -0
  58. package/dist/commands/undo-command.d.ts +15 -0
  59. package/dist/commands/undo-command.d.ts.map +1 -0
  60. package/dist/commands/undo-command.js +28 -0
  61. package/dist/commands/undo-command.js.map +1 -0
  62. package/dist/commands/usage-command.d.ts +3 -0
  63. package/dist/commands/usage-command.d.ts.map +1 -0
  64. package/dist/commands/usage-command.js +11 -0
  65. package/dist/commands/usage-command.js.map +1 -0
  66. package/dist/components/ApprovalPrompt.test.d.ts +2 -0
  67. package/dist/components/ApprovalPrompt.test.d.ts.map +1 -0
  68. package/dist/components/ApprovalPrompt.test.js +23 -0
  69. package/dist/components/ApprovalPrompt.test.js.map +1 -0
  70. package/dist/components/BottomArea.d.ts +3 -0
  71. package/dist/components/BottomArea.d.ts.map +1 -1
  72. package/dist/components/BottomArea.js +3 -3
  73. package/dist/components/BottomArea.js.map +1 -1
  74. package/dist/components/InputBox.d.ts +1 -0
  75. package/dist/components/InputBox.d.ts.map +1 -1
  76. package/dist/components/InputBox.js +2 -1
  77. package/dist/components/InputBox.js.map +1 -1
  78. package/dist/components/LiveResponse.test.d.ts +2 -0
  79. package/dist/components/LiveResponse.test.d.ts.map +1 -0
  80. package/dist/components/LiveResponse.test.js +13 -0
  81. package/dist/components/LiveResponse.test.js.map +1 -0
  82. package/dist/components/ModelSelectionMenu.error-tabs.test.d.ts +2 -0
  83. package/dist/components/ModelSelectionMenu.error-tabs.test.d.ts.map +1 -0
  84. package/dist/components/ModelSelectionMenu.error-tabs.test.js +18 -0
  85. package/dist/components/ModelSelectionMenu.error-tabs.test.js.map +1 -0
  86. package/dist/components/StatusBar.d.ts +4 -0
  87. package/dist/components/StatusBar.d.ts.map +1 -1
  88. package/dist/components/StatusBar.js +17 -3
  89. package/dist/components/StatusBar.js.map +1 -1
  90. package/dist/components/StatusBar.test.js +15 -0
  91. package/dist/components/StatusBar.test.js.map +1 -1
  92. package/dist/components/TextInput.d.ts +42 -0
  93. package/dist/components/TextInput.d.ts.map +1 -0
  94. package/dist/components/TextInput.js +398 -0
  95. package/dist/components/TextInput.js.map +1 -0
  96. package/dist/components/TextInput.test.d.ts +2 -0
  97. package/dist/components/TextInput.test.d.ts.map +1 -0
  98. package/dist/components/TextInput.test.js +75 -0
  99. package/dist/components/TextInput.test.js.map +1 -0
  100. package/dist/contracts/conversation.d.ts +3 -0
  101. package/dist/contracts/conversation.d.ts.map +1 -1
  102. package/dist/debug_ask_mentor.d.ts +2 -0
  103. package/dist/debug_ask_mentor.d.ts.map +1 -0
  104. package/dist/debug_ask_mentor.js +73 -0
  105. package/dist/debug_ask_mentor.js.map +1 -0
  106. package/dist/hooks/use-app-commands.d.ts +11 -32
  107. package/dist/hooks/use-app-commands.d.ts.map +1 -1
  108. package/dist/hooks/use-app-commands.js +64 -369
  109. package/dist/hooks/use-app-commands.js.map +1 -1
  110. package/dist/hooks/use-app-commands.test.js +24 -15
  111. package/dist/hooks/use-app-commands.test.js.map +1 -1
  112. package/dist/hooks/use-conversation.clear.test.js +49 -1
  113. package/dist/hooks/use-conversation.clear.test.js.map +1 -1
  114. package/dist/hooks/use-conversation.d.ts +4 -1
  115. package/dist/hooks/use-conversation.d.ts.map +1 -1
  116. package/dist/hooks/use-conversation.js +11 -22
  117. package/dist/hooks/use-conversation.js.map +1 -1
  118. package/dist/hooks/use-conversation.max-turns-undo.test.d.ts +2 -0
  119. package/dist/hooks/use-conversation.max-turns-undo.test.d.ts.map +1 -0
  120. package/dist/hooks/use-conversation.max-turns-undo.test.js +118 -0
  121. package/dist/hooks/use-conversation.max-turns-undo.test.js.map +1 -0
  122. package/dist/hooks/use-mode-handlers.d.ts +4 -1
  123. package/dist/hooks/use-mode-handlers.d.ts.map +1 -1
  124. package/dist/hooks/use-mode-handlers.js +6 -1
  125. package/dist/hooks/use-mode-handlers.js.map +1 -1
  126. package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
  127. package/dist/hooks/use-runtime-settings.js +2 -2
  128. package/dist/hooks/use-runtime-settings.js.map +1 -1
  129. package/dist/hooks/use-runtime-settings.test.js +0 -1
  130. package/dist/hooks/use-runtime-settings.test.js.map +1 -1
  131. package/dist/hooks/use-slash-commands.d.ts.map +1 -1
  132. package/dist/hooks/use-slash-commands.js +10 -0
  133. package/dist/hooks/use-slash-commands.js.map +1 -1
  134. package/dist/hooks/use-slash-commands.test.js +35 -5
  135. package/dist/hooks/use-slash-commands.test.js.map +1 -1
  136. package/dist/hooks/use-undo-selection.d.ts.map +1 -1
  137. package/dist/hooks/use-undo-selection.js +3 -1
  138. package/dist/hooks/use-undo-selection.js.map +1 -1
  139. package/dist/lib/openai-agent-client.d.ts.map +1 -1
  140. package/dist/lib/openai-agent-client.flex-tier.test.js +8 -3
  141. package/dist/lib/openai-agent-client.flex-tier.test.js.map +1 -1
  142. package/dist/lib/openai-agent-client.js +7 -1
  143. package/dist/lib/openai-agent-client.js.map +1 -1
  144. package/dist/lib/shell.d.ts +7 -0
  145. package/dist/lib/shell.d.ts.map +1 -0
  146. package/dist/lib/shell.js +56 -0
  147. package/dist/lib/shell.js.map +1 -0
  148. package/dist/lib/tool-selection-policy.d.ts.map +1 -1
  149. package/dist/lib/tool-selection-policy.js +43 -2
  150. package/dist/lib/tool-selection-policy.js.map +1 -1
  151. package/dist/lib/tool-selection-policy.test.js +39 -0
  152. package/dist/lib/tool-selection-policy.test.js.map +1 -1
  153. package/dist/modes/companion/command-index.d.ts +26 -0
  154. package/dist/modes/companion/command-index.d.ts.map +1 -0
  155. package/dist/modes/companion/command-index.js +50 -0
  156. package/dist/modes/companion/command-index.js.map +1 -0
  157. package/dist/modes/companion/command-index.test.d.ts +2 -0
  158. package/dist/modes/companion/command-index.test.d.ts.map +1 -0
  159. package/dist/modes/companion/command-index.test.js +86 -0
  160. package/dist/modes/companion/command-index.test.js.map +1 -0
  161. package/dist/modes/companion/companion-app.d.ts +12 -0
  162. package/dist/modes/companion/companion-app.d.ts.map +1 -0
  163. package/dist/modes/companion/companion-app.js +297 -0
  164. package/dist/modes/companion/companion-app.js.map +1 -0
  165. package/dist/modes/companion/companion-session.d.ts +63 -0
  166. package/dist/modes/companion/companion-session.d.ts.map +1 -0
  167. package/dist/modes/companion/companion-session.js +146 -0
  168. package/dist/modes/companion/companion-session.js.map +1 -0
  169. package/dist/modes/companion/companion-session.test.d.ts +2 -0
  170. package/dist/modes/companion/companion-session.test.d.ts.map +1 -0
  171. package/dist/modes/companion/companion-session.test.js +28 -0
  172. package/dist/modes/companion/companion-session.test.js.map +1 -0
  173. package/dist/modes/companion/components/status-bar.d.ts +13 -0
  174. package/dist/modes/companion/components/status-bar.d.ts.map +1 -0
  175. package/dist/modes/companion/components/status-bar.js +26 -0
  176. package/dist/modes/companion/components/status-bar.js.map +1 -0
  177. package/dist/modes/companion/context-buffer.d.ts +65 -0
  178. package/dist/modes/companion/context-buffer.d.ts.map +1 -0
  179. package/dist/modes/companion/context-buffer.js +156 -0
  180. package/dist/modes/companion/context-buffer.js.map +1 -0
  181. package/dist/modes/companion/context-buffer.test.d.ts +2 -0
  182. package/dist/modes/companion/context-buffer.test.d.ts.map +1 -0
  183. package/dist/modes/companion/context-buffer.test.js +154 -0
  184. package/dist/modes/companion/context-buffer.test.js.map +1 -0
  185. package/dist/modes/companion/event-detector.d.ts +46 -0
  186. package/dist/modes/companion/event-detector.d.ts.map +1 -0
  187. package/dist/modes/companion/event-detector.js +169 -0
  188. package/dist/modes/companion/event-detector.js.map +1 -0
  189. package/dist/modes/companion/event-detector.test.d.ts +2 -0
  190. package/dist/modes/companion/event-detector.test.d.ts.map +1 -0
  191. package/dist/modes/companion/event-detector.test.js +121 -0
  192. package/dist/modes/companion/event-detector.test.js.map +1 -0
  193. package/dist/modes/companion/index.d.ts +33 -0
  194. package/dist/modes/companion/index.d.ts.map +1 -0
  195. package/dist/modes/companion/index.js +21 -0
  196. package/dist/modes/companion/index.js.map +1 -0
  197. package/dist/modes/companion/input-key-mapper.d.ts +3 -0
  198. package/dist/modes/companion/input-key-mapper.d.ts.map +1 -0
  199. package/dist/modes/companion/input-key-mapper.js +31 -0
  200. package/dist/modes/companion/input-key-mapper.js.map +1 -0
  201. package/dist/modes/companion/input-key-mapper.test.d.ts +2 -0
  202. package/dist/modes/companion/input-key-mapper.test.d.ts.map +1 -0
  203. package/dist/modes/companion/input-key-mapper.test.js +26 -0
  204. package/dist/modes/companion/input-key-mapper.test.js.map +1 -0
  205. package/dist/modes/companion/input-parser.d.ts +53 -0
  206. package/dist/modes/companion/input-parser.d.ts.map +1 -0
  207. package/dist/modes/companion/input-parser.js +114 -0
  208. package/dist/modes/companion/input-parser.js.map +1 -0
  209. package/dist/modes/companion/input-parser.test.d.ts +2 -0
  210. package/dist/modes/companion/input-parser.test.d.ts.map +1 -0
  211. package/dist/modes/companion/input-parser.test.js +123 -0
  212. package/dist/modes/companion/input-parser.test.js.map +1 -0
  213. package/dist/modes/companion/mode-manager.d.ts +41 -0
  214. package/dist/modes/companion/mode-manager.d.ts.map +1 -0
  215. package/dist/modes/companion/mode-manager.js +56 -0
  216. package/dist/modes/companion/mode-manager.js.map +1 -0
  217. package/dist/modes/companion/mode-manager.test.d.ts +2 -0
  218. package/dist/modes/companion/mode-manager.test.d.ts.map +1 -0
  219. package/dist/modes/companion/mode-manager.test.js +65 -0
  220. package/dist/modes/companion/mode-manager.test.js.map +1 -0
  221. package/dist/modes/companion/output-classifier.d.ts +15 -0
  222. package/dist/modes/companion/output-classifier.d.ts.map +1 -0
  223. package/dist/modes/companion/output-classifier.js +77 -0
  224. package/dist/modes/companion/output-classifier.js.map +1 -0
  225. package/dist/modes/companion/output-classifier.test.d.ts +2 -0
  226. package/dist/modes/companion/output-classifier.test.d.ts.map +1 -0
  227. package/dist/modes/companion/output-classifier.test.js +133 -0
  228. package/dist/modes/companion/output-classifier.test.js.map +1 -0
  229. package/dist/modes/companion/pty-wrapper.d.ts +46 -0
  230. package/dist/modes/companion/pty-wrapper.d.ts.map +1 -0
  231. package/dist/modes/companion/pty-wrapper.js +143 -0
  232. package/dist/modes/companion/pty-wrapper.js.map +1 -0
  233. package/dist/modes/companion/safety-classifier.d.ts +31 -0
  234. package/dist/modes/companion/safety-classifier.d.ts.map +1 -0
  235. package/dist/modes/companion/safety-classifier.js +140 -0
  236. package/dist/modes/companion/safety-classifier.js.map +1 -0
  237. package/dist/modes/companion/safety-classifier.test.d.ts +2 -0
  238. package/dist/modes/companion/safety-classifier.test.d.ts.map +1 -0
  239. package/dist/modes/companion/safety-classifier.test.js +151 -0
  240. package/dist/modes/companion/safety-classifier.test.js.map +1 -0
  241. package/dist/modes/companion/summarizer.d.ts +24 -0
  242. package/dist/modes/companion/summarizer.d.ts.map +1 -0
  243. package/dist/modes/companion/summarizer.js +132 -0
  244. package/dist/modes/companion/summarizer.js.map +1 -0
  245. package/dist/modes/companion/terminal-history.d.ts +27 -0
  246. package/dist/modes/companion/terminal-history.d.ts.map +1 -0
  247. package/dist/modes/companion/terminal-history.js +142 -0
  248. package/dist/modes/companion/terminal-history.js.map +1 -0
  249. package/dist/prompts/gpt-5-modern.md +0 -6
  250. package/dist/prompts/gpt-5.md +4 -7
  251. package/dist/prompts/search-via-shell.d.ts.map +1 -1
  252. package/dist/prompts/search-via-shell.js +0 -1
  253. package/dist/prompts/search-via-shell.js.map +1 -1
  254. package/dist/prompts/search-via-shell.ts +0 -1
  255. package/dist/prompts/shell-auto-approval.d.ts +2 -2
  256. package/dist/prompts/shell-auto-approval.d.ts.map +1 -1
  257. package/dist/prompts/shell-auto-approval.js +6 -6
  258. package/dist/prompts/shell-auto-approval.js.map +1 -1
  259. package/dist/prompts/shell-auto-approval.ts +6 -6
  260. package/dist/prompts/simple-mentor.md +215 -0
  261. package/dist/prompts/simple-prev.md +55 -0
  262. package/dist/prompts/simple.md +31 -53
  263. package/dist/prompts/subagent-delegation.js +2 -2
  264. package/dist/prompts/subagent-delegation.js.map +1 -1
  265. package/dist/prompts/subagent-delegation.ts +2 -2
  266. package/dist/providers/ai-sdk-openai-compatible.provider.d.ts +2 -0
  267. package/dist/providers/ai-sdk-openai-compatible.provider.d.ts.map +1 -1
  268. package/dist/providers/ai-sdk-openai-compatible.provider.js +8 -4
  269. package/dist/providers/ai-sdk-openai-compatible.provider.js.map +1 -1
  270. package/dist/providers/ai-sdk-openai-compatible.provider.test.js +119 -1
  271. package/dist/providers/ai-sdk-openai-compatible.provider.test.js.map +1 -1
  272. package/dist/providers/ai-sdk-openai.provider.d.ts +14 -0
  273. package/dist/providers/ai-sdk-openai.provider.d.ts.map +1 -0
  274. package/dist/providers/ai-sdk-openai.provider.js +18 -0
  275. package/dist/providers/ai-sdk-openai.provider.js.map +1 -0
  276. package/dist/providers/codex-responses-model.d.ts +4 -3
  277. package/dist/providers/codex-responses-model.d.ts.map +1 -1
  278. package/dist/providers/codex-responses-model.js +26 -16
  279. package/dist/providers/codex-responses-model.js.map +1 -1
  280. package/dist/providers/codex-responses-model.test.js +115 -1
  281. package/dist/providers/codex-responses-model.test.js.map +1 -1
  282. package/dist/providers/codex.provider.d.ts +0 -2
  283. package/dist/providers/codex.provider.d.ts.map +1 -1
  284. package/dist/providers/codex.provider.js +2 -6
  285. package/dist/providers/codex.provider.js.map +1 -1
  286. package/dist/providers/codex.provider.test.js +4 -31
  287. package/dist/providers/codex.provider.test.js.map +1 -1
  288. package/dist/providers/custom-provider-adapter.test.js +3 -3
  289. package/dist/providers/custom-provider-adapter.test.js.map +1 -1
  290. package/dist/providers/fallback-responses-model.d.ts.map +1 -1
  291. package/dist/providers/fallback-responses-model.js +152 -83
  292. package/dist/providers/fallback-responses-model.js.map +1 -1
  293. package/dist/providers/fallback-responses-model.test.js +289 -0
  294. package/dist/providers/fallback-responses-model.test.js.map +1 -1
  295. package/dist/providers/github-copilot/converters.d.ts +45 -0
  296. package/dist/providers/github-copilot/converters.d.ts.map +1 -0
  297. package/dist/providers/github-copilot/converters.js +118 -0
  298. package/dist/providers/github-copilot/converters.js.map +1 -0
  299. package/dist/providers/github-copilot/converters.test.d.ts +2 -0
  300. package/dist/providers/github-copilot/converters.test.d.ts.map +1 -0
  301. package/dist/providers/github-copilot/converters.test.js +162 -0
  302. package/dist/providers/github-copilot/converters.test.js.map +1 -0
  303. package/dist/providers/github-copilot/github-copilot.provider.d.ts +2 -0
  304. package/dist/providers/github-copilot/github-copilot.provider.d.ts.map +1 -0
  305. package/dist/providers/github-copilot/github-copilot.provider.js +75 -0
  306. package/dist/providers/github-copilot/github-copilot.provider.js.map +1 -0
  307. package/dist/providers/github-copilot/github-copilot.provider.test.d.ts +2 -0
  308. package/dist/providers/github-copilot/github-copilot.provider.test.d.ts.map +1 -0
  309. package/dist/providers/github-copilot/github-copilot.provider.test.js +26 -0
  310. package/dist/providers/github-copilot/github-copilot.provider.test.js.map +1 -0
  311. package/dist/providers/github-copilot/index.d.ts +4 -0
  312. package/dist/providers/github-copilot/index.d.ts.map +1 -0
  313. package/dist/providers/github-copilot/index.js +4 -0
  314. package/dist/providers/github-copilot/index.js.map +1 -0
  315. package/dist/providers/github-copilot/model.d.ts +24 -0
  316. package/dist/providers/github-copilot/model.d.ts.map +1 -0
  317. package/dist/providers/github-copilot/model.delta.test.d.ts +2 -0
  318. package/dist/providers/github-copilot/model.delta.test.d.ts.map +1 -0
  319. package/dist/providers/github-copilot/model.delta.test.js +15 -0
  320. package/dist/providers/github-copilot/model.delta.test.js.map +1 -0
  321. package/dist/providers/github-copilot/model.js +498 -0
  322. package/dist/providers/github-copilot/model.js.map +1 -0
  323. package/dist/providers/github-copilot/model.test.d.ts +2 -0
  324. package/dist/providers/github-copilot/model.test.d.ts.map +1 -0
  325. package/dist/providers/github-copilot/model.test.js +63 -0
  326. package/dist/providers/github-copilot/model.test.js.map +1 -0
  327. package/dist/providers/github-copilot/provider.d.ts +15 -0
  328. package/dist/providers/github-copilot/provider.d.ts.map +1 -0
  329. package/dist/providers/github-copilot/provider.js +25 -0
  330. package/dist/providers/github-copilot/provider.js.map +1 -0
  331. package/dist/providers/github-copilot/provider.test.d.ts +2 -0
  332. package/dist/providers/github-copilot/provider.test.d.ts.map +1 -0
  333. package/dist/providers/github-copilot/provider.test.js +52 -0
  334. package/dist/providers/github-copilot/provider.test.js.map +1 -0
  335. package/dist/providers/github-copilot/utils.d.ts +20 -0
  336. package/dist/providers/github-copilot/utils.d.ts.map +1 -0
  337. package/dist/providers/github-copilot/utils.js +142 -0
  338. package/dist/providers/github-copilot/utils.js.map +1 -0
  339. package/dist/providers/github-copilot/utils.test.d.ts +2 -0
  340. package/dist/providers/github-copilot/utils.test.d.ts.map +1 -0
  341. package/dist/providers/github-copilot/utils.test.js +21 -0
  342. package/dist/providers/github-copilot/utils.test.js.map +1 -0
  343. package/dist/providers/openai-compatible/api.d.ts +17 -0
  344. package/dist/providers/openai-compatible/api.d.ts.map +1 -0
  345. package/dist/providers/openai-compatible/api.js +58 -0
  346. package/dist/providers/openai-compatible/api.js.map +1 -0
  347. package/dist/providers/openai-compatible/model.d.ts +17 -0
  348. package/dist/providers/openai-compatible/model.d.ts.map +1 -0
  349. package/dist/providers/openai-compatible/model.js +473 -0
  350. package/dist/providers/openai-compatible/model.js.map +1 -0
  351. package/dist/providers/openai-compatible/provider.d.ts +22 -0
  352. package/dist/providers/openai-compatible/provider.d.ts.map +1 -0
  353. package/dist/providers/openai-compatible/provider.js +43 -0
  354. package/dist/providers/openai-compatible/provider.js.map +1 -0
  355. package/dist/providers/openai-compatible/reasoning-content.test.d.ts +2 -0
  356. package/dist/providers/openai-compatible/reasoning-content.test.d.ts.map +1 -0
  357. package/dist/providers/openai-compatible/reasoning-content.test.js +258 -0
  358. package/dist/providers/openai-compatible/reasoning-content.test.js.map +1 -0
  359. package/dist/providers/openai-compatible/utils.d.ts +3 -0
  360. package/dist/providers/openai-compatible/utils.d.ts.map +1 -0
  361. package/dist/providers/openai-compatible/utils.js +11 -0
  362. package/dist/providers/openai-compatible/utils.js.map +1 -0
  363. package/dist/providers/openai-compatible-behavior-gate.test.js +42 -1
  364. package/dist/providers/openai-compatible-behavior-gate.test.js.map +1 -1
  365. package/dist/providers/openai-compatible.provider.d.ts +2 -2
  366. package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
  367. package/dist/providers/openai-compatible.provider.js +3 -3
  368. package/dist/providers/openai-compatible.provider.js.map +1 -1
  369. package/dist/providers/openai.provider.js +5 -3
  370. package/dist/providers/openai.provider.js.map +1 -1
  371. package/dist/providers/openrouter/api.d.ts +39 -0
  372. package/dist/providers/openrouter/api.d.ts.map +1 -0
  373. package/dist/providers/openrouter/api.js +164 -0
  374. package/dist/providers/openrouter/api.js.map +1 -0
  375. package/dist/providers/openrouter/converters.d.ts +8 -0
  376. package/dist/providers/openrouter/converters.d.ts.map +1 -0
  377. package/dist/providers/openrouter/converters.js +391 -0
  378. package/dist/providers/openrouter/converters.js.map +1 -0
  379. package/dist/providers/openrouter/converters.test.d.ts +2 -0
  380. package/dist/providers/openrouter/converters.test.d.ts.map +1 -0
  381. package/dist/providers/openrouter/converters.test.js +179 -0
  382. package/dist/providers/openrouter/converters.test.js.map +1 -0
  383. package/dist/providers/openrouter/index.d.ts +4 -0
  384. package/dist/providers/openrouter/index.d.ts.map +1 -0
  385. package/dist/providers/openrouter/index.js +4 -0
  386. package/dist/providers/openrouter/index.js.map +1 -0
  387. package/dist/providers/openrouter/model.d.ts +14 -0
  388. package/dist/providers/openrouter/model.d.ts.map +1 -0
  389. package/dist/providers/openrouter/model.js +457 -0
  390. package/dist/providers/openrouter/model.js.map +1 -0
  391. package/dist/providers/openrouter/provider.d.ts +15 -0
  392. package/dist/providers/openrouter/provider.d.ts.map +1 -0
  393. package/dist/providers/openrouter/provider.js +21 -0
  394. package/dist/providers/openrouter/provider.js.map +1 -0
  395. package/dist/providers/openrouter/reasoning-content.test.d.ts +2 -0
  396. package/dist/providers/openrouter/reasoning-content.test.d.ts.map +1 -0
  397. package/dist/providers/openrouter/reasoning-content.test.js +122 -0
  398. package/dist/providers/openrouter/reasoning-content.test.js.map +1 -0
  399. package/dist/providers/openrouter/utils.d.ts +11 -0
  400. package/dist/providers/openrouter/utils.d.ts.map +1 -0
  401. package/dist/providers/openrouter/utils.js +29 -0
  402. package/dist/providers/openrouter/utils.js.map +1 -0
  403. package/dist/providers/openrouter.api.retry.test.d.ts +2 -0
  404. package/dist/providers/openrouter.api.retry.test.d.ts.map +1 -0
  405. package/dist/providers/openrouter.api.retry.test.js +148 -0
  406. package/dist/providers/openrouter.api.retry.test.js.map +1 -0
  407. package/dist/providers/openrouter.test.d.ts +2 -0
  408. package/dist/providers/openrouter.test.d.ts.map +1 -0
  409. package/dist/providers/openrouter.test.js +1449 -0
  410. package/dist/providers/openrouter.test.js.map +1 -0
  411. package/dist/providers/protocol-client.d.ts +17 -0
  412. package/dist/providers/protocol-client.d.ts.map +1 -0
  413. package/dist/providers/protocol-client.js +57 -0
  414. package/dist/providers/protocol-client.js.map +1 -0
  415. package/dist/providers/protocol-client.test.d.ts +2 -0
  416. package/dist/providers/protocol-client.test.d.ts.map +1 -0
  417. package/dist/providers/protocol-client.test.js +55 -0
  418. package/dist/providers/protocol-client.test.js.map +1 -0
  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/safety-checker.js +57 -0
  440. package/dist/services/check_mock.d.ts +2 -0
  441. package/dist/services/check_mock.d.ts.map +1 -0
  442. package/dist/services/check_mock.js +22 -0
  443. package/dist/services/check_mock.js.map +1 -0
  444. package/dist/services/command-message-streaming.d.ts.map +1 -1
  445. package/dist/services/command-message-streaming.js +8 -3
  446. package/dist/services/command-message-streaming.js.map +1 -1
  447. package/dist/services/conversation-clear-save.test.js +4 -5
  448. package/dist/services/conversation-clear-save.test.js.map +1 -1
  449. package/dist/services/conversation-events.d.ts +4 -0
  450. package/dist/services/conversation-events.d.ts.map +1 -1
  451. package/dist/services/conversation-history-repair.d.ts.map +1 -1
  452. package/dist/services/conversation-history-repair.js +81 -26
  453. package/dist/services/conversation-history-repair.js.map +1 -1
  454. package/dist/services/conversation-integration.test.js +109 -0
  455. package/dist/services/conversation-integration.test.js.map +1 -1
  456. package/dist/services/conversation-log-events.d.ts +16 -10
  457. package/dist/services/conversation-log-events.d.ts.map +1 -1
  458. package/dist/services/conversation-log-events.js +1 -1
  459. package/dist/services/conversation-log-events.js.map +1 -1
  460. package/dist/services/conversation-log-writer.js +1 -1
  461. package/dist/services/conversation-log-writer.js.map +1 -1
  462. package/dist/services/conversation-persistence-types.d.ts +32 -0
  463. package/dist/services/conversation-persistence-types.d.ts.map +1 -1
  464. package/dist/services/conversation-persistence.d.ts +6 -0
  465. package/dist/services/conversation-persistence.d.ts.map +1 -1
  466. package/dist/services/conversation-persistence.js +42 -40
  467. package/dist/services/conversation-persistence.js.map +1 -1
  468. package/dist/services/conversation-persistence.test.js +356 -107
  469. package/dist/services/conversation-persistence.test.js.map +1 -1
  470. package/dist/services/conversation-replay.d.ts.map +1 -1
  471. package/dist/services/conversation-replay.js +219 -11
  472. package/dist/services/conversation-replay.js.map +1 -1
  473. package/dist/services/conversation-replay.test.js +370 -31
  474. package/dist/services/conversation-replay.test.js.map +1 -1
  475. package/dist/services/conversation-result-builder.d.ts +2 -0
  476. package/dist/services/conversation-result-builder.d.ts.map +1 -1
  477. package/dist/services/conversation-result-builder.js +4 -0
  478. package/dist/services/conversation-result-builder.js.map +1 -1
  479. package/dist/services/conversation-result-builder.test.js +126 -0
  480. package/dist/services/conversation-result-builder.test.js.map +1 -1
  481. package/dist/services/conversation-retry-policy.d.ts.map +1 -1
  482. package/dist/services/conversation-retry-policy.js +3 -0
  483. package/dist/services/conversation-retry-policy.js.map +1 -1
  484. package/dist/services/conversation-retry-policy.test.js +4 -0
  485. package/dist/services/conversation-retry-policy.test.js.map +1 -1
  486. package/dist/services/conversation-service.d.ts +3 -3
  487. package/dist/services/conversation-service.d.ts.map +1 -1
  488. package/dist/services/conversation-service.js +0 -3
  489. package/dist/services/conversation-service.js.map +1 -1
  490. package/dist/services/conversation-service.test.d.ts +2 -0
  491. package/dist/services/conversation-service.test.d.ts.map +1 -0
  492. package/dist/services/conversation-service.test.js +156 -0
  493. package/dist/services/conversation-service.test.js.map +1 -0
  494. package/dist/services/conversation-session.d.ts +9 -7
  495. package/dist/services/conversation-session.d.ts.map +1 -1
  496. package/dist/services/conversation-session.js +264 -86
  497. package/dist/services/conversation-session.js.map +1 -1
  498. package/dist/services/conversation-store.d.ts +16 -13
  499. package/dist/services/conversation-store.d.ts.map +1 -1
  500. package/dist/services/conversation-store.js +62 -191
  501. package/dist/services/conversation-store.js.map +1 -1
  502. package/dist/services/conversation-store.merge-modes.removed.d.ts +2 -0
  503. package/dist/services/conversation-store.merge-modes.removed.d.ts.map +1 -0
  504. package/dist/services/conversation-store.merge-modes.removed.js +2 -0
  505. package/dist/services/conversation-store.merge-modes.removed.js.map +1 -0
  506. package/dist/services/conversation-store.merge-modes.test.d.ts +2 -0
  507. package/dist/services/conversation-store.merge-modes.test.d.ts.map +1 -0
  508. package/dist/services/conversation-store.merge-modes.test.js +2 -0
  509. package/dist/services/conversation-store.merge-modes.test.js.map +1 -0
  510. package/dist/services/conversation-store.test.js +157 -294
  511. package/dist/services/conversation-store.test.js.map +1 -1
  512. package/dist/services/conversation-turn-items.d.ts +5 -0
  513. package/dist/services/conversation-turn-items.d.ts.map +1 -0
  514. package/dist/services/conversation-turn-items.js +351 -0
  515. package/dist/services/conversation-turn-items.js.map +1 -0
  516. package/dist/services/conversation-turn-items.test.d.ts +2 -0
  517. package/dist/services/conversation-turn-items.test.d.ts.map +1 -0
  518. package/dist/services/conversation-turn-items.test.js +68 -0
  519. package/dist/services/conversation-turn-items.test.js.map +1 -0
  520. package/dist/services/repro-error.test.d.ts +2 -0
  521. package/dist/services/repro-error.test.d.ts.map +1 -0
  522. package/dist/services/repro-error.test.js +38 -0
  523. package/dist/services/repro-error.test.js.map +1 -0
  524. package/dist/services/subagents/reasoning-inheritance.test.d.ts +2 -0
  525. package/dist/services/subagents/reasoning-inheritance.test.d.ts.map +1 -0
  526. package/dist/services/subagents/reasoning-inheritance.test.js +73 -0
  527. package/dist/services/subagents/reasoning-inheritance.test.js.map +1 -0
  528. package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
  529. package/dist/services/subagents/subagent-manager.js +32 -30
  530. package/dist/services/subagents/subagent-manager.js.map +1 -1
  531. package/dist/services/subagents/subagent-manager.test.js +8 -12
  532. package/dist/services/subagents/subagent-manager.test.js.map +1 -1
  533. package/dist/services/subagents/subagent-session.d.ts +1 -1
  534. package/dist/services/subagents/subagent-session.d.ts.map +1 -1
  535. package/dist/services/subagents/subagent-session.js +2 -2
  536. package/dist/services/subagents/subagent-session.js.map +1 -1
  537. package/dist/services/subagents/subagent-session.test.js +3 -3
  538. package/dist/services/subagents/subagent-session.test.js.map +1 -1
  539. package/dist/services/subagents/types.d.ts +2 -1
  540. package/dist/services/subagents/types.d.ts.map +1 -1
  541. package/dist/services/terminal-result-collector.d.ts.map +1 -1
  542. package/dist/services/terminal-result-collector.js +43 -0
  543. package/dist/services/terminal-result-collector.js.map +1 -1
  544. package/dist/services/terminal-result-collector.test.js +44 -0
  545. package/dist/services/terminal-result-collector.test.js.map +1 -1
  546. package/dist/services/tool-execution-ledger.d.ts +6 -0
  547. package/dist/services/tool-execution-ledger.d.ts.map +1 -1
  548. package/dist/services/tool-execution-ledger.js +90 -25
  549. package/dist/services/tool-execution-ledger.js.map +1 -1
  550. package/dist/services/tool-execution-ledger.test.js +177 -2
  551. package/dist/services/tool-execution-ledger.test.js.map +1 -1
  552. package/dist/tools/apply-patch.d.ts.map +1 -1
  553. package/dist/tools/apply-patch.js +41 -23
  554. package/dist/tools/apply-patch.js.map +1 -1
  555. package/dist/tools/apply-patch.test.js +6 -6
  556. package/dist/tools/apply-patch.test.js.map +1 -1
  557. package/dist/tools/bash.d.ts +10 -0
  558. package/dist/tools/bash.d.ts.map +1 -0
  559. package/dist/tools/bash.js +55 -0
  560. package/dist/tools/bash.js.map +1 -0
  561. package/dist/tools/edit-healing.d.ts.map +1 -1
  562. package/dist/tools/edit-healing.js +9 -3
  563. package/dist/tools/edit-healing.js.map +1 -1
  564. package/dist/tools/run-subagent.d.ts +0 -1
  565. package/dist/tools/run-subagent.d.ts.map +1 -1
  566. package/dist/tools/run-subagent.js +1 -8
  567. package/dist/tools/run-subagent.js.map +1 -1
  568. package/dist/tools/run-subagent.test.js +0 -18
  569. package/dist/tools/run-subagent.test.js.map +1 -1
  570. package/dist/utils/clipboard.d.ts +7 -0
  571. package/dist/utils/clipboard.d.ts.map +1 -1
  572. package/dist/utils/clipboard.js +83 -4
  573. package/dist/utils/clipboard.js.map +1 -1
  574. package/dist/utils/clipboard.test.js +152 -2
  575. package/dist/utils/clipboard.test.js.map +1 -1
  576. package/dist/utils/command-safety.d.ts +21 -0
  577. package/dist/utils/command-safety.d.ts.map +1 -0
  578. package/dist/utils/command-safety.devnull.test.d.ts +2 -0
  579. package/dist/utils/command-safety.devnull.test.d.ts.map +1 -0
  580. package/dist/utils/command-safety.devnull.test.js +13 -0
  581. package/dist/utils/command-safety.devnull.test.js.map +1 -0
  582. package/dist/utils/command-safety.js +348 -0
  583. package/dist/utils/command-safety.js.map +1 -0
  584. package/dist/utils/conversation-event-handler.d.ts.map +1 -1
  585. package/dist/utils/conversation-event-handler.js +3 -0
  586. package/dist/utils/conversation-event-handler.js.map +1 -1
  587. package/dist/utils/conversation-event-handler.test.js +13 -0
  588. package/dist/utils/conversation-event-handler.test.js.map +1 -1
  589. package/dist/utils/extract-command-messages.d.ts.map +1 -1
  590. package/dist/utils/extract-command-messages.js +8 -4
  591. package/dist/utils/extract-command-messages.js.map +1 -1
  592. package/dist/utils/extract-command-messages.test.d.ts +2 -0
  593. package/dist/utils/extract-command-messages.test.d.ts.map +1 -0
  594. package/dist/utils/message-utils.d.ts +7 -0
  595. package/dist/utils/message-utils.d.ts.map +1 -0
  596. package/dist/utils/message-utils.js +31 -0
  597. package/dist/utils/message-utils.js.map +1 -0
  598. package/dist/utils/provider-traffic-extractor.repro.test.d.ts +2 -0
  599. package/dist/utils/provider-traffic-extractor.repro.test.d.ts.map +1 -0
  600. package/dist/utils/provider-traffic-extractor.repro.test.js.map +1 -0
  601. package/dist/utils/resume-list.d.ts +15 -0
  602. package/dist/utils/resume-list.d.ts.map +1 -0
  603. package/dist/utils/resume-list.js +68 -0
  604. package/dist/utils/resume-list.js.map +1 -0
  605. package/dist/utils/resume-list.test.d.ts +2 -0
  606. package/dist/utils/resume-list.test.d.ts.map +1 -0
  607. package/dist/utils/resume-list.test.js +89 -0
  608. package/dist/utils/resume-list.test.js.map +1 -0
  609. package/package.json +2 -2
  610. package/readme.md +22 -7
  611. package/dist/components/ModelSelectionMenu.debug.test.d.ts +0 -2
  612. package/dist/components/ModelSelectionMenu.debug.test.d.ts.map +0 -1
  613. package/dist/components/ModelSelectionMenu.debug.test.js.map +0 -1
  614. package/dist/hooks/use-path-completion.test.d.ts +0 -2
  615. package/dist/hooks/use-path-completion.test.d.ts.map +0 -1
  616. package/dist/hooks/use-path-completion.test.js +0 -54
  617. package/dist/hooks/use-path-completion.test.js.map +0 -1
  618. package/dist/inspect_zod.d.ts +0 -2
  619. package/dist/inspect_zod.d.ts.map +0 -1
  620. package/dist/inspect_zod.js +0 -16
  621. package/dist/inspect_zod.js.map +0 -1
  622. package/dist/providers/openai.provider.test.d.ts +0 -2
  623. package/dist/providers/openai.provider.test.d.ts.map +0 -1
  624. package/dist/providers/openai.provider.test.js +0 -22
  625. package/dist/providers/openai.provider.test.js.map +0 -1
  626. package/dist/utils/project-tree.d.ts +0 -14
  627. package/dist/utils/project-tree.d.ts.map +0 -1
  628. package/dist/utils/project-tree.js +0 -111
  629. package/dist/utils/project-tree.js.map +0 -1
  630. package/dist/utils/project-tree.test.d.ts +0 -2
  631. package/dist/utils/project-tree.test.d.ts.map +0 -1
  632. package/dist/utils/project-tree.test.js +0 -149
  633. package/dist/utils/project-tree.test.js.map +0 -1
  634. package/dist/utils/terminal-clear.d.ts +0 -7
  635. package/dist/utils/terminal-clear.d.ts.map +0 -1
  636. package/dist/utils/terminal-clear.js +0 -5
  637. package/dist/utils/terminal-clear.js.map +0 -1
  638. package/dist/utils/terminal-clear.test.d.ts +0 -2
  639. package/dist/utils/terminal-clear.test.d.ts.map +0 -1
  640. package/dist/utils/terminal-clear.test.js +0 -13
  641. package/dist/utils/terminal-clear.test.js.map +0 -1
@@ -1,55 +1,33 @@
1
1
  You are an interactive CLI coding assistant. Help users make correct, maintainable software changes while keeping them in control.
2
2
 
3
- # Operating Principles
4
-
5
- - Treat the codebase as the source of truth. Read relevant files before editing.
6
- - Make the smallest change that solves the user's request. Avoid unrelated cleanup, speculative features, and broad refactors.
7
- - Follow existing patterns, naming, style, architecture, and test conventions.
8
- - Work in small increments. For nontrivial work, define the next concrete change before implementing it.
9
- - Keep human judgment in the loop. For important design choices, compare approaches and tradeoffs before writing code.
10
- - Be defensive with generated code: review it, test it, and revise when evidence shows it is wrong.
11
- - Finish what you start. Do not leave half-applied edits, broken builds, or unresolved tool failures without explaining the blocker.
12
-
13
- # Workflow
14
-
15
- 1. Gather only the context needed for the task.
16
- 2. Identify the next concrete change.
17
- 3. For complex or ambiguous changes, discuss viable approaches before coding.
18
- 4. Edit only files you have inspected.
19
- 5. Run the narrowest useful tests or checks.
20
- 6. Summarize what changed, what was verified, and any remaining risk.
21
-
22
- # Tool Use
23
-
24
- - Prefer `read_file` for reading file contents.
25
- - Use `search_replace` for precise edits to existing files.
26
- - Use `create_file` only when a new file is clearly required.
27
- - Use `Shell` for tests, builds, git, package commands, and user-requested terminal operations.
28
- - Run independent tool calls in parallel when they do not depend on each other.
29
- - Do not use shell commands to print user-facing answers. Respond directly.
30
-
31
- # Planning
32
-
33
- Use a short plan when the task has multiple steps, ambiguity, or meaningful sequencing. Keep each step concise and keep statuses current: pending, in progress, or completed. Avoid plans for simple questions or single obvious edits.
34
-
35
- # Quality Bar
36
-
37
- - Write tests first for behavior changes when practical.
38
- - Test behavior rather than implementation details.
39
- - Prefer public interfaces and deterministic tests.
40
- - Do not add comments, types, abstractions, or error handling unless they serve the requested change.
41
- - Remove obsolete code instead of hiding it with unused variables or placeholder comments.
42
- - Preserve user changes and unrelated work.
43
-
44
- # Error Handling
45
-
46
- - If a tool or approach fails, adjust the approach instead of repeating the same failure.
47
- - After 2-3 failed attempts on the same problem, explain the blocker and what you tried.
48
- - Use `ask_mentor` when you are stuck, need architectural advice, or need a second opinion on a tradeoff.
49
-
50
- # Communication
51
-
52
- - Be concise and direct. This is a terminal UI.
53
- - State intent before substantial exploration or edits.
54
- - Ask the user when requirements are unclear and a wrong assumption would be costly.
55
- - Report test results explicitly after changes.
3
+ ## Core Behavior
4
+
5
+ - Treat the codebase as the source of truth.
6
+ - Make the smallest relevant change that solves the user's request.
7
+ - Be pragmatic: prioritize actions that are likely to work and move the task forward.
8
+ - Follow existing patterns, naming, style, and architecture where they are clear.
9
+ - Preserve unrelated user work and avoid unnecessary changes.
10
+ - Ask the user only when missing information would materially change the solution.
11
+ - If there is an obvious next step, take it.
12
+
13
+ ## Working Style
14
+
15
+ - Read only the files needed for the current task.
16
+ - Edit only files you have inspected.
17
+ - Prefer efficient, direct tools and workflows.
18
+ - Avoid destructive actions and do not revert unrelated changes.
19
+ - If you notice unexpected modifications you did not make, pause and ask how to proceed.
20
+ - For nontrivial changes, briefly state the next step before making edits.
21
+ - Run the narrowest useful checks when they add confidence.
22
+ - If an approach fails, adjust it instead of repeating the same failure.
23
+ - If blocked, explain the blocker briefly and propose the next best option.
24
+ - Persist until the task is handled end-to-end, unless the user asks only for discussion or planning.
25
+
26
+ ## Communication
27
+
28
+ - Be concise, direct, and respectful.
29
+ - Focus on actionable guidance, concrete reasoning, and clear next steps.
30
+ - State assumptions when they matter.
31
+ - Do not present tradeoffs unless the choice is important or the user asks.
32
+ - Avoid filler, cheerleading, and unnecessary verbosity.
33
+ - After changes, briefly summarize what changed, what you verified, and any remaining risk.
@@ -13,7 +13,7 @@ You have a \`run_subagent\` tool. A subagent runs in its own context and returns
13
13
  - Spans more than ~2 files, or "where is / how does X work" → \`explorer\`.
14
14
  - Needs out-of-repo info (library docs, current best practices, version-specific behavior) → \`researcher\`.
15
15
  - About to commit to a non-trivial plan or tricky debugging direction and want it pressure-tested → \`mentor\`.
16
- - Scoped, verifiable unit of work (bug fix, refactor, feature behind a clear interface, migration, tests) with a checkable done condition → \`worker\` with a \`writeBoundary\`. If you don't yet know *where* the change goes, send an \`explorer\` first.${orchestratorMode
16
+ - Scoped, verifiable unit of work (bug fix, refactor, feature behind a clear interface, migration, tests) with a checkable done condition → \`worker\`. If you don't yet know *where* the change goes, send an \`explorer\` first.${orchestratorMode
17
17
  ? `
18
18
 
19
19
  In Orchestrator mode, answer directly only when no tool-backed work is needed. You must delegate workspace inspection, web research, file edits, shell work, and verification. For interactive back-and-forth with the user, respond directly. Only delegate once the next concrete unit of work is clear.`
@@ -23,7 +23,7 @@ Otherwise, just do it yourself — especially when the task needs mid-flight cou
23
23
  const planningStep = `**Before any \`run_subagent\` call, plan silently:**
24
24
  1. Restate the user's objective in one sentence.
25
25
  2. Decompose into sub-objectives (one item, or zero, are both valid).
26
- 3. For each delegated sub-objective specify: **role**, **scoped task** (written for the subagent, not the user), **context to embed** (paths, symbols, prior findings, constraints, things ruled out), **done condition**, and **writeBoundary** for workers.
26
+ 3. For each delegated sub-objective specify: **role**, **scoped task** (written for the subagent, not the user), **context to embed** (paths, symbols, prior findings, constraints, things ruled out), and **done condition**.
27
27
 
28
28
  "No delegation needed" is a legitimate conclusion. Don't delegate to justify having planned.
29
29
 
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-delegation.js","sourceRoot":"","sources":["../../source/prompts/subagent-delegation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAC5C,gBAAgB,GAAG,KAAK,MACU,EAAE;IACpC,MAAM,MAAM,GAAG;;mKAEkJ,CAAC;IAElK,MAAM,QAAQ,GAAG;;;;6PAKf,gBAAgB;QACd,CAAC,CAAC;;2SAEmS;QACrS,CAAC,CAAC;;6LAGN,EAAE,CAAC;IAEH,MAAM,YAAY,GAAG;;;;;;;0QAOmP,CAAC;IAEzQ,OAAO,GAAG,MAAM,OAAO,QAAQ,OAAO,YAAY,OAAO,wBAAwB,EAAE,EAAE,CAAC;AACxF,CAAC"}
1
+ {"version":3,"file":"subagent-delegation.js","sourceRoot":"","sources":["../../source/prompts/subagent-delegation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAC5C,gBAAgB,GAAG,KAAK,MACU,EAAE;IACpC,MAAM,MAAM,GAAG;;mKAEkJ,CAAC;IAElK,MAAM,QAAQ,GAAG;;;;oOAKf,gBAAgB;QACd,CAAC,CAAC;;2SAEmS;QACrS,CAAC,CAAC;;6LAGN,EAAE,CAAC;IAEH,MAAM,YAAY,GAAG;;;;;;;0QAOmP,CAAC;IAEzQ,OAAO,GAAG,MAAM,OAAO,QAAQ,OAAO,YAAY,OAAO,wBAAwB,EAAE,EAAE,CAAC;AACxF,CAAC"}
@@ -17,7 +17,7 @@ You have a \`run_subagent\` tool. A subagent runs in its own context and returns
17
17
  - Spans more than ~2 files, or "where is / how does X work" → \`explorer\`.
18
18
  - Needs out-of-repo info (library docs, current best practices, version-specific behavior) → \`researcher\`.
19
19
  - About to commit to a non-trivial plan or tricky debugging direction and want it pressure-tested → \`mentor\`.
20
- - Scoped, verifiable unit of work (bug fix, refactor, feature behind a clear interface, migration, tests) with a checkable done condition → \`worker\` with a \`writeBoundary\`. If you don't yet know *where* the change goes, send an \`explorer\` first.${
20
+ - Scoped, verifiable unit of work (bug fix, refactor, feature behind a clear interface, migration, tests) with a checkable done condition → \`worker\`. If you don't yet know *where* the change goes, send an \`explorer\` first.${
21
21
  orchestratorMode
22
22
  ? `
23
23
 
@@ -30,7 +30,7 @@ Otherwise, just do it yourself — especially when the task needs mid-flight cou
30
30
  const planningStep = `**Before any \`run_subagent\` call, plan silently:**
31
31
  1. Restate the user's objective in one sentence.
32
32
  2. Decompose into sub-objectives (one item, or zero, are both valid).
33
- 3. For each delegated sub-objective specify: **role**, **scoped task** (written for the subagent, not the user), **context to embed** (paths, symbols, prior findings, constraints, things ruled out), **done condition**, and **writeBoundary** for workers.
33
+ 3. For each delegated sub-objective specify: **role**, **scoped task** (written for the subagent, not the user), **context to embed** (paths, symbols, prior findings, constraints, things ruled out), and **done condition**.
34
34
 
35
35
  "No delegation needed" is a legitimate conclusion. Don't delegate to justify having planned.
36
36
 
@@ -1,5 +1,6 @@
1
1
  import { type ModelProvider, type Model } from '@openai/agents-core';
2
2
  export type AiSdkOpenAICompatibleConfig = {
3
+ providerType?: string;
3
4
  baseURL: string;
4
5
  apiKey?: string;
5
6
  headers?: Record<string, string>;
@@ -17,6 +18,7 @@ export declare class AiSdkOpenAICompatibleProvider implements ModelProvider {
17
18
  #private;
18
19
  constructor(deps: {
19
20
  label: string;
21
+ providerType?: string;
20
22
  defaultModel: string;
21
23
  resolveConfig: () => AiSdkOpenAICompatibleConfig;
22
24
  createProvider?: AiSdkOpenAICompatibleProviderFactory;
@@ -1 +1 @@
1
- {"version":3,"file":"ai-sdk-openai-compatible.provider.d.ts","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai-compatible.provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAGrE,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG,CAAC,OAAO,EAAE;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,KAAK,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,CAAC;AAE/B,qBAAa,6BAA8B,YAAW,aAAa;;gBAMrD,IAAI,EAAE;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,2BAA2B,CAAC;QACjD,cAAc,CAAC,EAAE,oCAAoC,CAAC;KACvD;IAOD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK;CAarD"}
1
+ {"version":3,"file":"ai-sdk-openai-compatible.provider.d.ts","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai-compatible.provider.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAGrE,MAAM,MAAM,2BAA2B,GAAG;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG,CAAC,OAAO,EAAE;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,KAAK,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,CAAC;AAM/B,qBAAa,6BAA8B,YAAW,aAAa;;gBAMrD,IAAI,EAAE;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,2BAA2B,CAAC;QACjD,cAAc,CAAC,EAAE,oCAAoC,CAAC;KACvD;IAOD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK;CAkBrD"}
@@ -1,27 +1,31 @@
1
1
  import { createOpenAICompatible } from '@ai-sdk/openai-compatible';
2
2
  import { adaptAiSdkModelForAgents } from './ai-sdk-agents-adapter.js';
3
+ function getProviderOptionsKey(providerType) {
4
+ return providerType.split('.')[0] || providerType;
5
+ }
3
6
  export class AiSdkOpenAICompatibleProvider {
4
- #label;
7
+ #providerType;
5
8
  #defaultModel;
6
9
  #resolveConfig;
7
10
  #createProvider;
8
11
  constructor(deps) {
9
- this.#label = deps.label;
12
+ this.#providerType = deps.providerType || 'openai-compatible';
10
13
  this.#defaultModel = deps.defaultModel;
11
14
  this.#resolveConfig = deps.resolveConfig;
12
15
  this.#createProvider = deps.createProvider ?? createOpenAICompatible;
13
16
  }
14
17
  getModel(modelName) {
15
18
  const config = this.#resolveConfig();
19
+ const providerType = config.providerType || this.#providerType;
16
20
  const provider = this.#createProvider({
17
- name: this.#label,
21
+ name: providerType,
18
22
  baseURL: config.baseURL,
19
23
  apiKey: config.apiKey,
20
24
  headers: config.headers,
21
25
  includeUsage: true,
22
26
  fetch: config.fetch,
23
27
  });
24
- return adaptAiSdkModelForAgents(provider(modelName || this.#defaultModel));
28
+ return adaptAiSdkModelForAgents(provider(modelName || this.#defaultModel), undefined, getProviderOptionsKey(providerType));
25
29
  }
26
30
  }
27
31
  //# sourceMappingURL=ai-sdk-openai-compatible.provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-sdk-openai-compatible.provider.js","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai-compatible.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAkBtE,MAAM,OAAO,6BAA6B;IACxC,MAAM,CAAS;IACf,aAAa,CAAS;IACtB,cAAc,CAAoC;IAClD,eAAe,CAAuC;IAEtD,YAAY,IAKX;QACC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,IAAK,sBAA+D,CAAC;IACjH,CAAC;IAED,QAAQ,CAAC,SAAkB;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC;YACpC,IAAI,EAAE,IAAI,CAAC,MAAM;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;QAEH,OAAO,wBAAwB,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IAC7E,CAAC;CACF"}
1
+ {"version":3,"file":"ai-sdk-openai-compatible.provider.js","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai-compatible.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAmBtE,SAAS,qBAAqB,CAAC,YAAoB;IACjD,OAAO,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC;AACpD,CAAC;AAED,MAAM,OAAO,6BAA6B;IACxC,aAAa,CAAS;IACtB,aAAa,CAAS;IACtB,cAAc,CAAoC;IAClD,eAAe,CAAuC;IAEtD,YAAY,IAMX;QACC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,IAAI,mBAAmB,CAAC;QAC9D,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,IAAK,sBAA+D,CAAC;IACjH,CAAC;IAED,QAAQ,CAAC,SAAkB;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,IAAI,CAAC,aAAa,CAAC;QAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC;YACpC,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,YAAY,EAAE,IAAI;YAClB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;QAEH,OAAO,wBAAwB,CAC7B,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,EACzC,SAAS,EACT,qBAAqB,CAAC,YAAY,CAAC,CACpC,CAAC;IACJ,CAAC;CACF"}
@@ -5,6 +5,7 @@ test('AiSdkOpenAICompatibleProvider creates an AI SDK model with resolved settin
5
5
  let requestedModel;
6
6
  const provider = new AiSdkOpenAICompatibleProvider({
7
7
  label: 'Example',
8
+ providerType: 'example',
8
9
  defaultModel: 'fallback-model',
9
10
  resolveConfig: () => ({
10
11
  baseURL: 'https://example.test/v1',
@@ -31,7 +32,7 @@ test('AiSdkOpenAICompatibleProvider creates an AI SDK model with resolved settin
31
32
  const model = provider.getModel('selected-model');
32
33
  t.is(calls.length, 1);
33
34
  t.like(calls[0], {
34
- name: 'Example',
35
+ name: 'example',
35
36
  baseURL: 'https://example.test/v1',
36
37
  apiKey: 'test-key',
37
38
  headers: {
@@ -42,6 +43,123 @@ test('AiSdkOpenAICompatibleProvider creates an AI SDK model with resolved settin
42
43
  t.is(typeof model.getResponse, 'function');
43
44
  t.is(typeof model.getStreamedResponse, 'function');
44
45
  });
46
+ test('AiSdkOpenAICompatibleProvider uses provider type for AI SDK provider name', (t) => {
47
+ const calls = [];
48
+ const provider = new AiSdkOpenAICompatibleProvider({
49
+ label: 'Local Display Name',
50
+ providerType: 'lmstudio',
51
+ defaultModel: 'fallback-model',
52
+ resolveConfig: () => ({
53
+ baseURL: 'https://example.test/v1',
54
+ }),
55
+ createProvider: (options) => {
56
+ calls.push(options);
57
+ return (modelId) => ({
58
+ specificationVersion: 'v3',
59
+ provider: `${options.name}.chat`,
60
+ modelId,
61
+ supportedUrls: {},
62
+ doGenerate: async () => ({}),
63
+ doStream: async () => ({ stream: [] }),
64
+ });
65
+ },
66
+ });
67
+ provider.getModel('selected-model');
68
+ t.is(calls[0].name, 'lmstudio');
69
+ });
70
+ test('AiSdkOpenAICompatibleProvider defaults provider type for old configs', (t) => {
71
+ const calls = [];
72
+ const provider = new AiSdkOpenAICompatibleProvider({
73
+ label: 'Local Display Name',
74
+ defaultModel: 'fallback-model',
75
+ resolveConfig: () => ({
76
+ baseURL: 'https://example.test/v1',
77
+ }),
78
+ createProvider: (options) => {
79
+ calls.push(options);
80
+ return (modelId) => ({
81
+ specificationVersion: 'v3',
82
+ provider: `${options.name}.chat`,
83
+ modelId,
84
+ supportedUrls: {},
85
+ doGenerate: async () => ({}),
86
+ doStream: async () => ({ stream: [] }),
87
+ });
88
+ },
89
+ });
90
+ provider.getModel('selected-model');
91
+ t.is(calls[0].name, 'openai-compatible');
92
+ });
93
+ test('AiSdkOpenAICompatibleProvider forwards provider type to adapter for providerOptions keys', async (t) => {
94
+ let seenOptions;
95
+ const provider = new AiSdkOpenAICompatibleProvider({
96
+ label: 'Local Display Name',
97
+ providerType: 'lmstudio',
98
+ defaultModel: 'fallback-model',
99
+ resolveConfig: () => ({
100
+ baseURL: 'https://example.test/v1',
101
+ }),
102
+ createProvider: (options) => () => ({
103
+ specificationVersion: 'v3',
104
+ provider: `${options.name}.chat`,
105
+ modelId: 'selected-model',
106
+ supportedUrls: {},
107
+ doGenerate: async () => ({ content: [], usage: {} }),
108
+ doStream: async (options) => {
109
+ seenOptions = options;
110
+ return { stream: (async function* () { })() };
111
+ },
112
+ }),
113
+ });
114
+ const model = provider.getModel('selected-model');
115
+ for await (const _event of model.getStreamedResponse({
116
+ input: 'hi',
117
+ tools: [],
118
+ handoffs: [],
119
+ outputType: 'text',
120
+ modelSettings: {
121
+ providerData: { service_tier: 'flex' },
122
+ },
123
+ })) {
124
+ // Consume the stream.
125
+ }
126
+ t.is(seenOptions.providerOptions.lmstudio.service_tier, 'flex');
127
+ });
128
+ test('AiSdkOpenAICompatibleProvider matches AI SDK providerOptions key for dotted provider types', async (t) => {
129
+ let seenOptions;
130
+ const provider = new AiSdkOpenAICompatibleProvider({
131
+ label: 'Local Display Name',
132
+ providerType: 'llama.cpp',
133
+ defaultModel: 'fallback-model',
134
+ resolveConfig: () => ({
135
+ baseURL: 'https://example.test/v1',
136
+ }),
137
+ createProvider: (options) => () => ({
138
+ specificationVersion: 'v3',
139
+ provider: `${options.name}.chat`,
140
+ modelId: 'selected-model',
141
+ supportedUrls: {},
142
+ doGenerate: async () => ({ content: [], usage: {} }),
143
+ doStream: async (options) => {
144
+ seenOptions = options;
145
+ return { stream: (async function* () { })() };
146
+ },
147
+ }),
148
+ });
149
+ const model = provider.getModel('selected-model');
150
+ for await (const _event of model.getStreamedResponse({
151
+ input: 'hi',
152
+ tools: [],
153
+ handoffs: [],
154
+ outputType: 'text',
155
+ modelSettings: {
156
+ providerData: { service_tier: 'flex' },
157
+ },
158
+ })) {
159
+ // Consume the stream.
160
+ }
161
+ t.is(seenOptions.providerOptions.llama.service_tier, 'flex');
162
+ });
45
163
  test('AiSdkOpenAICompatibleProvider uses the default model when none is requested', (t) => {
46
164
  let requestedModel;
47
165
  const provider = new AiSdkOpenAICompatibleProvider({
@@ -1 +1 @@
1
- {"version":3,"file":"ai-sdk-openai-compatible.provider.test.js","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai-compatible.provider.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAEvF,IAAI,CAAC,8EAA8E,EAAE,CAAC,CAAC,EAAE,EAAE;IACzF,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,IAAI,cAAkC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;YAClC,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE;gBACP,QAAQ,EAAE,KAAK;aAChB;SACF,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE;YAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,CAAC,OAAe,EAAE,EAAE;gBACzB,cAAc,GAAG,OAAO,CAAC;gBACzB,OAAO;oBACL,oBAAoB,EAAE,IAAI;oBAC1B,QAAQ,EAAE,cAAc;oBACxB,OAAO;oBACP,aAAa,EAAE,EAAE;oBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;oBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;iBAChC,CAAC;YACX,CAAC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAElD,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACtB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACf,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,yBAAyB;QAClC,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,QAAQ,EAAE,KAAK;SAChB;KACF,CAAC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IACvC,CAAC,CAAC,EAAE,CAAC,OAAQ,KAAa,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC,CAAC,EAAE,CAAC,OAAQ,KAAa,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AAC9D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6EAA6E,EAAE,CAAC,CAAC,EAAE,EAAE;IACxF,IAAI,cAAkC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;SACnC,CAAC;QACF,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,OAAe,EAAE,EAAE;YACxC,cAAc,GAAG,OAAO,CAAC;YACzB,OAAO;gBACL,oBAAoB,EAAE,IAAI;gBAC1B,QAAQ,EAAE,cAAc;gBACxB,OAAO;gBACP,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aAChC,CAAC;QACX,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAEpB,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qFAAqF,EAAE,CAAC,CAAC,EAAE,EAAE;IAChG,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;YAClC,KAAK,EAAE,SAAS;SACjB,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE;YAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,CAAC,OAAe,EAAE,EAAE,CACzB,CAAC;gBACC,oBAAoB,EAAE,IAAI;gBAC1B,QAAQ,EAAE,cAAc;gBACxB,OAAO;gBACP,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aAC/B,CAAA,CAAC;QACd,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAEpC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"ai-sdk-openai-compatible.provider.test.js","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai-compatible.provider.test.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,KAAK,CAAC;AACvB,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAEvF,IAAI,CAAC,8EAA8E,EAAE,CAAC,CAAC,EAAE,EAAE;IACzF,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,IAAI,cAAkC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,SAAS;QACvB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;YAClC,MAAM,EAAE,UAAU;YAClB,OAAO,EAAE;gBACP,QAAQ,EAAE,KAAK;aAChB;SACF,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE;YAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,CAAC,OAAe,EAAE,EAAE;gBACzB,cAAc,GAAG,OAAO,CAAC;gBACzB,OAAO;oBACL,oBAAoB,EAAE,IAAI;oBAC1B,QAAQ,EAAE,cAAc;oBACxB,OAAO;oBACP,aAAa,EAAE,EAAE;oBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;oBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;iBAChC,CAAC;YACX,CAAC,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAElD,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACtB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACf,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,yBAAyB;QAClC,MAAM,EAAE,UAAU;QAClB,OAAO,EAAE;YACP,QAAQ,EAAE,KAAK;SAChB;KACF,CAAC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;IACvC,CAAC,CAAC,EAAE,CAAC,OAAQ,KAAa,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC,CAAC,EAAE,CAAC,OAAQ,KAAa,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;AAC9D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2EAA2E,EAAE,CAAC,CAAC,EAAE,EAAE;IACtF,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE,UAAU;QACxB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;SACnC,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE;YAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,CAAC,OAAe,EAAE,EAAE,CACzB,CAAC;gBACC,oBAAoB,EAAE,IAAI;gBAC1B,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,OAAO;gBAChC,OAAO;gBACP,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aAC/B,CAAA,CAAC;QACd,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAEpC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sEAAsE,EAAE,CAAC,CAAC,EAAE,EAAE;IACjF,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;SACnC,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE;YAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,CAAC,OAAe,EAAE,EAAE,CACzB,CAAC;gBACC,oBAAoB,EAAE,IAAI;gBAC1B,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,OAAO;gBAChC,OAAO;gBACP,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aAC/B,CAAA,CAAC;QACd,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAEpC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;AAC3C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0FAA0F,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC3G,IAAI,WAAgB,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE,UAAU;QACxB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;SACnC,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE,CAAC,GAAG,EAAE,CACrC,CAAC;YACC,oBAAoB,EAAE,IAAI;YAC1B,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,OAAO;YAChC,OAAO,EAAE,gBAAgB;YACzB,aAAa,EAAE,EAAE;YACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YACpD,QAAQ,EAAE,KAAK,EAAE,OAAY,EAAE,EAAE;gBAC/B,WAAW,GAAG,OAAO,CAAC;gBACtB,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC,MAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAC/C,CAAC;SACM,CAAA;KACZ,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAQ,CAAC;IAEzD,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC;QACnD,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;QAClB,aAAa,EAAE;YACb,YAAY,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE;SACvC;KACK,CAAC,EAAE,CAAC;QACV,sBAAsB;IACxB,CAAC;IAED,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,eAAe,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4FAA4F,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC7G,IAAI,WAAgB,CAAC;IACrB,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,oBAAoB;QAC3B,YAAY,EAAE,WAAW;QACzB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;SACnC,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE,CAAC,GAAG,EAAE,CACrC,CAAC;YACC,oBAAoB,EAAE,IAAI;YAC1B,QAAQ,EAAE,GAAG,OAAO,CAAC,IAAI,OAAO;YAChC,OAAO,EAAE,gBAAgB;YACzB,aAAa,EAAE,EAAE;YACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YACpD,QAAQ,EAAE,KAAK,EAAE,OAAY,EAAE,EAAE;gBAC/B,WAAW,GAAG,OAAO,CAAC;gBACtB,OAAO,EAAE,MAAM,EAAE,CAAC,KAAK,SAAS,CAAC,MAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAC/C,CAAC;SACM,CAAA;KACZ,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAQ,CAAC;IAEzD,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC;QACnD,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,MAAM;QAClB,aAAa,EAAE;YACb,YAAY,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE;SACvC;KACK,CAAC,EAAE,CAAC;QACV,sBAAsB;IACxB,CAAC;IAED,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;AAC/D,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6EAA6E,EAAE,CAAC,CAAC,EAAE,EAAE;IACxF,IAAI,cAAkC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;SACnC,CAAC;QACF,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC,OAAe,EAAE,EAAE;YACxC,cAAc,GAAG,OAAO,CAAC;YACzB,OAAO;gBACL,oBAAoB,EAAE,IAAI;gBAC1B,QAAQ,EAAE,cAAc;gBACxB,OAAO;gBACP,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aAChC,CAAC;QACX,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAEpB,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qFAAqF,EAAE,CAAC,CAAC,EAAE,EAAE;IAChG,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,KAAK,GAAU,EAAE,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,6BAA6B,CAAC;QACjD,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,gBAAgB;QAC9B,aAAa,EAAE,GAAG,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,yBAAyB;YAClC,KAAK,EAAE,SAAS;SACjB,CAAC;QACF,cAAc,EAAE,CAAC,OAAY,EAAE,EAAE;YAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpB,OAAO,CAAC,OAAe,EAAE,EAAE,CACzB,CAAC;gBACC,oBAAoB,EAAE,IAAI;gBAC1B,QAAQ,EAAE,cAAc;gBACxB,OAAO;gBACP,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBAC5B,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;aAC/B,CAAA,CAAC;QACd,CAAC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAEpC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { type OpenAIProviderSettings } from '@ai-sdk/openai';
2
+ import { type ModelProvider, type Model } from '@openai/agents-core';
3
+ export type AiSdkOpenAIConfig = Pick<OpenAIProviderSettings, 'baseURL' | 'apiKey' | 'headers' | 'fetch' | 'name'>;
4
+ export type AiSdkOpenAIProviderFactory = (options: AiSdkOpenAIConfig) => (modelId: string) => any;
5
+ export declare class AiSdkOpenAIProvider implements ModelProvider {
6
+ #private;
7
+ constructor(deps: {
8
+ defaultModel: string;
9
+ resolveConfig: () => AiSdkOpenAIConfig;
10
+ createProvider?: AiSdkOpenAIProviderFactory;
11
+ });
12
+ getModel(modelName?: string): Promise<Model> | Model;
13
+ }
14
+ //# sourceMappingURL=ai-sdk-openai.provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-openai.provider.d.ts","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAC3E,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAGrE,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC,CAAC;AAElH,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,EAAE,iBAAiB,KAAK,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,CAAC;AAElG,qBAAa,mBAAoB,YAAW,aAAa;;gBAK3C,IAAI,EAAE;QAChB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,iBAAiB,CAAC;QACvC,cAAc,CAAC,EAAE,0BAA0B,CAAC;KAC7C;IAMD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK;CAMrD"}
@@ -0,0 +1,18 @@
1
+ import { createOpenAI } from '@ai-sdk/openai';
2
+ import { adaptAiSdkModelForAgents } from './ai-sdk-agents-adapter.js';
3
+ export class AiSdkOpenAIProvider {
4
+ #defaultModel;
5
+ #resolveConfig;
6
+ #createProvider;
7
+ constructor(deps) {
8
+ this.#defaultModel = deps.defaultModel;
9
+ this.#resolveConfig = deps.resolveConfig;
10
+ this.#createProvider = deps.createProvider ?? createOpenAI;
11
+ }
12
+ getModel(modelName) {
13
+ const config = this.#resolveConfig();
14
+ const provider = this.#createProvider(config);
15
+ return adaptAiSdkModelForAgents(provider(modelName || this.#defaultModel), undefined, 'openai');
16
+ }
17
+ }
18
+ //# sourceMappingURL=ai-sdk-openai.provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ai-sdk-openai.provider.js","sourceRoot":"","sources":["../../source/providers/ai-sdk-openai.provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAA+B,MAAM,gBAAgB,CAAC;AAE3E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAMtE,MAAM,OAAO,mBAAmB;IAC9B,aAAa,CAAS;IACtB,cAAc,CAA0B;IACxC,eAAe,CAA6B;IAE5C,YAAY,IAIX;QACC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,IAAK,YAA2C,CAAC;IAC7F,CAAC;IAED,QAAQ,CAAC,SAAkB;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAE9C,OAAO,wBAAwB,CAAC,QAAQ,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAClG,CAAC;CACF"}
@@ -1,13 +1,14 @@
1
- import { OpenAIResponsesModel, OpenAIResponsesWSModel } from '@openai/agents-openai';
1
+ import { OpenAIResponsesModel } from '@openai/agents-openai';
2
+ import { TimedResponsesWSModel } from './timed-responses-ws-model.js';
2
3
  type DiagnosticLogger = {
3
4
  warn?: (message: string, meta?: Record<string, unknown>) => void;
4
5
  };
5
- export declare class CodexResponsesWSModel extends OpenAIResponsesWSModel {
6
+ export declare class CodexResponsesWSModel extends TimedResponsesWSModel {
6
7
  private readonly tokenManager;
7
8
  private readonly diagnosticLogger?;
8
9
  constructor(client: any, model: string, tokenManager: any, diagnosticLogger?: DiagnosticLogger | undefined, options?: any);
9
10
  _buildResponsesCreateRequest(request: any, stream: boolean): any;
10
- _fetchResponse(request: any, stream: boolean): Promise<any>;
11
+ protected _fetchResponse(request: any, stream: boolean): Promise<any>;
11
12
  }
12
13
  export declare class CodexResponsesModel extends OpenAIResponsesModel {
13
14
  private readonly diagnosticLogger?;
@@ -1 +1 @@
1
- {"version":3,"file":"codex-responses-model.d.ts","sourceRoot":"","sources":["../../source/providers/codex-responses-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAErF,KAAK,gBAAgB,GAAG;IACtB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CAClE,CAAC;AAkDF,qBAAa,qBAAsB,SAAQ,sBAAsB;IAI7D,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAHlC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,MAAM,EACI,YAAY,EAAE,GAAG,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,YAAA,EACpD,OAAO,CAAC,EAAE,GAAG;IAKf,4BAA4B,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,GAAG;IA4B1D,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;CA6BlE;AAED,qBAAa,mBAAoB,SAAQ,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAA9D,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAmB,gBAAgB,CAAC,EAAE,gBAAgB,YAAA;IAI5F,4BAA4B,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,GAAG;IA4B1D,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;CAKlE;AAED,wBAAuB,eAAe,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,CAgChH"}
1
+ {"version":3,"file":"codex-responses-model.d.ts","sourceRoot":"","sources":["../../source/providers/codex-responses-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAGtE,KAAK,gBAAgB,GAAG;IACtB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;CAClE,CAAC;AAyDF,qBAAa,qBAAsB,SAAQ,qBAAqB;IAI5D,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAHlC,MAAM,EAAE,GAAG,EACX,KAAK,EAAE,MAAM,EACI,YAAY,EAAE,GAAG,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,YAAA,EACpD,OAAO,GAAE,GAA+B;IAKjC,4BAA4B,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,GAAG;cA4BhD,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;CA6BrF;AAED,qBAAa,mBAAoB,SAAQ,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;gBAA9D,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAmB,gBAAgB,CAAC,EAAE,gBAAgB,YAAA;IAI5F,4BAA4B,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,GAAG;IA4B1D,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;CAKlE;AAED,wBAAuB,eAAe,CAAC,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC,GAAG,CAAC,CAiChH"}
@@ -1,5 +1,13 @@
1
- import { OpenAIResponsesModel, OpenAIResponsesWSModel } from '@openai/agents-openai';
1
+ import { OpenAIResponsesModel } from '@openai/agents-openai';
2
+ import { TimedResponsesWSModel } from './timed-responses-ws-model.js';
3
+ import { DEFAULT_TIMED_WS_TIMEOUTS } from './timed-ws-timeouts.js';
2
4
  const SUSPICIOUS_RECONSTRUCTED_OUTPUT_ITEM_COUNT = 20;
5
+ const TERMINAL_RESPONSE_EVENT_TYPES = new Set([
6
+ 'response.completed',
7
+ 'response.failed',
8
+ 'response.incomplete',
9
+ 'response.error',
10
+ ]);
3
11
  const asRecord = (value) => value && typeof value === 'object' && !Array.isArray(value) ? value : null;
4
12
  const stringValue = (value) => (typeof value === 'string' && value ? value : undefined);
5
13
  const summarizeReconstructedItems = (items) => {
@@ -27,29 +35,30 @@ const summarizeReconstructedItems = (items) => {
27
35
  lastItemCallId: stringValue(last?.call_id) ?? stringValue(last?.callId),
28
36
  };
29
37
  };
30
- // Codex's `/backend-api/codex/responses` endpoint ships `response.completed`
31
- // with an empty `output` array even when the assistant message was already
32
- // delivered via `response.output_item.done`. The agents-SDK runner trusts
33
- // `response.completed.response.output` as the final output; with an empty
34
- // array it sees no items, decides the turn produced nothing, and re-runs the
35
- // same request until maxTurns an infinite-retry loop.
38
+ // Codex's `/backend-api/codex/responses` endpoint can ship terminal response
39
+ // frames with either an empty `output` array or no `output` field at all, even
40
+ // when the assistant message was already delivered via
41
+ // `response.output_item.done`. The agents-SDK runner trusts terminal
42
+ // `response.output` as the final output; when it is empty or missing it either
43
+ // sees no items and re-runs the same request until maxTurns or crashes while
44
+ // converting the terminal payload.
36
45
  //
37
46
  // This wrapper subclasses `OpenAIResponsesModel`, overrides the streaming
38
47
  // fetch path, and patches the terminal frame in flight: it accumulates raw
39
- // items from `response.output_item.done` and, only when the terminal
40
- // `response.output` is empty, swaps in the accumulated items so the parent's
41
- // existing conversion logic (`convertToOutputItem`) produces a normal
48
+ // items from `response.output_item.done` and, only when terminal
49
+ // `response.output` is empty or missing, swaps in the accumulated items so the
50
+ // parent's existing conversion logic (`convertToOutputItem`) produces a normal
42
51
  // `response_done` event.
43
- export class CodexResponsesWSModel extends OpenAIResponsesWSModel {
52
+ export class CodexResponsesWSModel extends TimedResponsesWSModel {
44
53
  tokenManager;
45
54
  diagnosticLogger;
46
- constructor(client, model, tokenManager, diagnosticLogger, options) {
55
+ constructor(client, model, tokenManager, diagnosticLogger, options = DEFAULT_TIMED_WS_TIMEOUTS) {
47
56
  super(client, model, options);
48
57
  this.tokenManager = tokenManager;
49
58
  this.diagnosticLogger = diagnosticLogger;
50
59
  }
51
60
  _buildResponsesCreateRequest(request, stream) {
52
- const built = OpenAIResponsesWSModel.prototype._buildResponsesCreateRequest.call(this, request, stream);
61
+ const built = super._buildResponsesCreateRequest(request, stream);
53
62
  const requestData = { ...built.requestData };
54
63
  // Codex responses endpoint rejects temperature; always omit it.
55
64
  if ('temperature' in requestData) {
@@ -91,7 +100,7 @@ export class CodexResponsesWSModel extends OpenAIResponsesWSModel {
91
100
  },
92
101
  },
93
102
  };
94
- const response = await OpenAIResponsesWSModel.prototype._fetchResponse.call(this, updatedRequest, stream);
103
+ const response = await super._fetchResponse(updatedRequest, stream);
95
104
  if (!stream)
96
105
  return response;
97
106
  return wrapCodexStream(response, this.diagnosticLogger);
@@ -138,9 +147,10 @@ export async function* wrapCodexStream(source, logger) {
138
147
  if (type === 'response.output_item.done' && event.item) {
139
148
  accumulatedItems.push(event.item);
140
149
  }
141
- else if (type === 'response.completed' && event.response) {
150
+ else if (TERMINAL_RESPONSE_EVENT_TYPES.has(type) && event.response) {
142
151
  const output = event.response.output;
143
- if (Array.isArray(output) && output.length === 0 && accumulatedItems.length > 0) {
152
+ const isMissingOrEmptyOutput = output === undefined || (Array.isArray(output) && output.length === 0);
153
+ if (isMissingOrEmptyOutput && accumulatedItems.length > 0) {
144
154
  const reconstructedOutput = accumulatedItems;
145
155
  accumulatedItems = [];
146
156
  if (reconstructedOutput.length >= SUSPICIOUS_RECONSTRUCTED_OUTPUT_ITEM_COUNT) {
@@ -1 +1 @@
1
- {"version":3,"file":"codex-responses-model.js","sourceRoot":"","sources":["../../source/providers/codex-responses-model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAMrF,MAAM,0CAA0C,GAAG,EAAE,CAAC;AAEtD,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAkC,EAAE,CAClE,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAE,KAAiC,CAAC,CAAC,CAAC,IAAI,CAAC;AAE1G,MAAM,WAAW,GAAG,CAAC,KAAc,EAAsB,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAErH,MAAM,2BAA2B,GAAG,CAAC,KAAgB,EAA2B,EAAE;IAChF,MAAM,UAAU,GAA2B,EAAE,CAAC;IAC9C,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAE1B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,SAAS,CAAC;QACpD,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,IAAI,KAAK,eAAe,EAAE,CAAC;YAC7B,iBAAiB,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,MAAM;QACvB,UAAU;QACV,iBAAiB;QACjB,aAAa,EAAE,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC;QACvC,WAAW,EAAE,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;QACnC,eAAe,EAAE,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;QAC1E,YAAY,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC;QACrC,UAAU,EAAE,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;QACjC,cAAc,EAAE,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC;KACxE,CAAC;AACJ,CAAC,CAAC;AAEF,6EAA6E;AAC7E,2EAA2E;AAC3E,0EAA0E;AAC1E,0EAA0E;AAC1E,6EAA6E;AAC7E,wDAAwD;AACxD,EAAE;AACF,0EAA0E;AAC1E,2EAA2E;AAC3E,qEAAqE;AACrE,6EAA6E;AAC7E,sEAAsE;AACtE,yBAAyB;AACzB,MAAM,OAAO,qBAAsB,SAAQ,sBAAsB;IAI5C;IACA;IAJnB,YACE,MAAW,EACX,KAAa,EACI,YAAiB,EACjB,gBAAmC,EACpD,OAAa;QAEb,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAJb,iBAAY,GAAZ,YAAY,CAAK;QACjB,qBAAgB,GAAhB,gBAAgB,CAAmB;IAItD,CAAC;IAED,4BAA4B,CAAC,OAAY,EAAE,MAAe;QACxD,MAAM,KAAK,GAAI,sBAAsB,CAAC,SAAiB,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACjH,MAAM,WAAW,GAAG,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAE7C,gEAAgE;QAChE,IAAI,aAAa,IAAI,WAAW,EAAE,CAAC;YACjC,OAAO,WAAW,CAAC,WAAW,CAAC;QACjC,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3D,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAC9B,IAAI,GAAG,CAAC,CAAC,GAAG,eAAe,EAAE,GAAG,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAChH,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,EAAE,aAAa,EAAE,gBAAgB,CAAC;QAChE,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,WAAW,CAAC,gBAAgB,GAAG,cAAc,CAAC;QAChD,CAAC;QAED,OAAO;YACL,GAAG,KAAK;YACR,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAY,EAAE,MAAe;QAChD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,uBAAuB,EAAE,CAAC;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,CAAC;QAEnD,MAAM,YAAY,GAA2B;YAC3C,aAAa,EAAE,UAAU,WAAW,EAAE;SACvC,CAAC;QACF,IAAI,SAAS,EAAE,CAAC;YACd,YAAY,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;QACjD,CAAC;QAED,MAAM,cAAc,GAAG;YACrB,GAAG,OAAO;YACV,aAAa,EAAE;gBACb,GAAG,OAAO,CAAC,aAAa;gBACxB,YAAY,EAAE;oBACZ,GAAG,OAAO,CAAC,aAAa,EAAE,YAAY;oBACtC,YAAY,EAAE;wBACZ,GAAG,OAAO,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY;wBACpD,GAAG,YAAY;qBAChB;iBACF;aACF;SACF,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAO,sBAAsB,CAAC,SAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QACnH,IAAI,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC;QAC7B,OAAO,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,oBAAoB;IACF;IAAzD,YAAY,MAAW,EAAE,KAAa,EAAmB,gBAAmC;QAC1F,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QADkC,qBAAgB,GAAhB,gBAAgB,CAAmB;IAE5F,CAAC;IAED,4BAA4B,CAAC,OAAY,EAAE,MAAe;QACxD,MAAM,KAAK,GAAI,oBAAoB,CAAC,SAAiB,CAAC,4BAA4B,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC/G,MAAM,WAAW,GAAG,EAAE,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAE7C,gEAAgE;QAChE,IAAI,aAAa,IAAI,WAAW,EAAE,CAAC;YACjC,OAAO,WAAW,CAAC,WAAW,CAAC;QACjC,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC;QACrD,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3D,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,WAAW,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAC9B,IAAI,GAAG,CAAC,CAAC,GAAG,eAAe,EAAE,GAAG,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAChH,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,OAAO,EAAE,aAAa,EAAE,gBAAgB,CAAC;QAChE,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpE,WAAW,CAAC,gBAAgB,GAAG,cAAc,CAAC;QAChD,CAAC;QAED,OAAO;YACL,GAAG,KAAK;YACR,WAAW;SACZ,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAY,EAAE,MAAe;QAChD,MAAM,QAAQ,GAAG,MAAO,oBAAoB,CAAC,SAAiB,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1G,IAAI,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC;QAC7B,OAAO,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,eAAe,CAAC,MAA0B,EAAE,MAAyB;IAC1F,IAAI,gBAAgB,GAAU,EAAE,CAAC;IACjC,IAAI,KAAK,EAAE,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,CAAC;QACzB,IAAI,IAAI,KAAK,2BAA2B,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACvD,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,IAAI,KAAK,oBAAoB,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC3D,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChF,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;gBAC7C,gBAAgB,GAAG,EAAE,CAAC;gBACtB,IAAI,mBAAmB,CAAC,MAAM,IAAI,0CAA0C,EAAE,CAAC;oBAC7E,MAAM,EAAE,IAAI,EAAE,CAAC,2EAA2E,EAAE;wBAC1F,SAAS,EAAE,uCAAuC;wBAClD,QAAQ,EAAE,UAAU;wBACpB,KAAK,EAAE,mBAAmB;wBAC1B,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC1C,GAAG,2BAA2B,CAAC,mBAAmB,CAAC;qBACpD,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,CAAC;oBACH,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,mBAAmB,CAAC;gBAC9C,CAAC;gBAAC,MAAM,CAAC;oBACP,sEAAsE;oBACtE,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,mBAAmB,EAAE,EAAE,CAAC;gBACrF,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,gBAAgB,GAAG,EAAE,CAAC;YACxB,CAAC;QACH,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"codex-responses-model.js","sourceRoot":"","sources":["../../source/providers/codex-responses-model.ts"],"names":[],"mappings":"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"}