@falai/agent 2.7.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (559) hide show
  1. package/README.md +1 -1
  2. package/dist/adapters/MemoryAdapter.d.ts +1 -1
  3. package/dist/adapters/MemoryAdapter.d.ts.map +1 -1
  4. package/dist/adapters/MemoryAdapter.js +3 -3
  5. package/dist/adapters/MemoryAdapter.js.map +1 -1
  6. package/dist/adapters/MongoAdapter.d.ts +1 -1
  7. package/dist/adapters/MongoAdapter.d.ts.map +1 -1
  8. package/dist/adapters/MongoAdapter.js +2 -2
  9. package/dist/adapters/MongoAdapter.js.map +1 -1
  10. package/dist/adapters/OpenSearchAdapter.d.ts +1 -1
  11. package/dist/adapters/OpenSearchAdapter.d.ts.map +1 -1
  12. package/dist/adapters/OpenSearchAdapter.js +3 -3
  13. package/dist/adapters/OpenSearchAdapter.js.map +1 -1
  14. package/dist/adapters/PostgreSQLAdapter.d.ts +1 -1
  15. package/dist/adapters/PostgreSQLAdapter.d.ts.map +1 -1
  16. package/dist/adapters/PostgreSQLAdapter.js +3 -3
  17. package/dist/adapters/PostgreSQLAdapter.js.map +1 -1
  18. package/dist/adapters/PrismaAdapter.d.ts +1 -1
  19. package/dist/adapters/PrismaAdapter.d.ts.map +1 -1
  20. package/dist/adapters/PrismaAdapter.js +3 -3
  21. package/dist/adapters/PrismaAdapter.js.map +1 -1
  22. package/dist/adapters/RedisAdapter.d.ts +1 -1
  23. package/dist/adapters/RedisAdapter.d.ts.map +1 -1
  24. package/dist/adapters/RedisAdapter.js +3 -3
  25. package/dist/adapters/RedisAdapter.js.map +1 -1
  26. package/dist/adapters/SQLiteAdapter.d.ts +1 -1
  27. package/dist/adapters/SQLiteAdapter.d.ts.map +1 -1
  28. package/dist/adapters/SQLiteAdapter.js +3 -3
  29. package/dist/adapters/SQLiteAdapter.js.map +1 -1
  30. package/dist/adapters/index.d.ts +13 -13
  31. package/dist/adapters/index.d.ts.map +1 -1
  32. package/dist/adapters/index.js +7 -7
  33. package/dist/adapters/index.js.map +1 -1
  34. package/dist/adapters/sessionRow.d.ts +1 -1
  35. package/dist/adapters/sessionRow.d.ts.map +1 -1
  36. package/dist/cjs/adapters/MemoryAdapter.d.ts +1 -1
  37. package/dist/cjs/adapters/MemoryAdapter.d.ts.map +1 -1
  38. package/dist/cjs/adapters/MemoryAdapter.js +14 -14
  39. package/dist/cjs/adapters/MemoryAdapter.js.map +1 -1
  40. package/dist/cjs/adapters/MongoAdapter.d.ts +1 -1
  41. package/dist/cjs/adapters/MongoAdapter.d.ts.map +1 -1
  42. package/dist/cjs/adapters/MongoAdapter.js +4 -4
  43. package/dist/cjs/adapters/MongoAdapter.js.map +1 -1
  44. package/dist/cjs/adapters/OpenSearchAdapter.d.ts +1 -1
  45. package/dist/cjs/adapters/OpenSearchAdapter.d.ts.map +1 -1
  46. package/dist/cjs/adapters/OpenSearchAdapter.js +6 -6
  47. package/dist/cjs/adapters/OpenSearchAdapter.js.map +1 -1
  48. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts +1 -1
  49. package/dist/cjs/adapters/PostgreSQLAdapter.d.ts.map +1 -1
  50. package/dist/cjs/adapters/PostgreSQLAdapter.js +12 -12
  51. package/dist/cjs/adapters/PostgreSQLAdapter.js.map +1 -1
  52. package/dist/cjs/adapters/PrismaAdapter.d.ts +1 -1
  53. package/dist/cjs/adapters/PrismaAdapter.d.ts.map +1 -1
  54. package/dist/cjs/adapters/PrismaAdapter.js +7 -7
  55. package/dist/cjs/adapters/PrismaAdapter.js.map +1 -1
  56. package/dist/cjs/adapters/RedisAdapter.d.ts +1 -1
  57. package/dist/cjs/adapters/RedisAdapter.d.ts.map +1 -1
  58. package/dist/cjs/adapters/RedisAdapter.js +13 -13
  59. package/dist/cjs/adapters/RedisAdapter.js.map +1 -1
  60. package/dist/cjs/adapters/SQLiteAdapter.d.ts +1 -1
  61. package/dist/cjs/adapters/SQLiteAdapter.d.ts.map +1 -1
  62. package/dist/cjs/adapters/SQLiteAdapter.js +8 -8
  63. package/dist/cjs/adapters/SQLiteAdapter.js.map +1 -1
  64. package/dist/cjs/adapters/index.d.ts +13 -13
  65. package/dist/cjs/adapters/index.d.ts.map +1 -1
  66. package/dist/cjs/adapters/index.js +14 -14
  67. package/dist/cjs/adapters/index.js.map +1 -1
  68. package/dist/cjs/adapters/sessionRow.d.ts +1 -1
  69. package/dist/cjs/adapters/sessionRow.d.ts.map +1 -1
  70. package/dist/cjs/core/Agent.d.ts +11 -11
  71. package/dist/cjs/core/Agent.d.ts.map +1 -1
  72. package/dist/cjs/core/Agent.js +65 -65
  73. package/dist/cjs/core/Agent.js.map +1 -1
  74. package/dist/cjs/core/AutoChainExecutor.d.ts +5 -5
  75. package/dist/cjs/core/AutoChainExecutor.d.ts.map +1 -1
  76. package/dist/cjs/core/AutoChainExecutor.js +26 -26
  77. package/dist/cjs/core/AutoChainExecutor.js.map +1 -1
  78. package/dist/cjs/core/BranchEvaluator.d.ts +4 -4
  79. package/dist/cjs/core/BranchEvaluator.d.ts.map +1 -1
  80. package/dist/cjs/core/BranchEvaluator.js +6 -6
  81. package/dist/cjs/core/BranchEvaluator.js.map +1 -1
  82. package/dist/cjs/core/CompactionEngine.d.ts +2 -2
  83. package/dist/cjs/core/CompactionEngine.d.ts.map +1 -1
  84. package/dist/cjs/core/DirectiveChainTracker.d.ts +1 -1
  85. package/dist/cjs/core/DirectiveChainTracker.d.ts.map +1 -1
  86. package/dist/cjs/core/DirectiveChainTracker.js +5 -5
  87. package/dist/cjs/core/DirectiveChainTracker.js.map +1 -1
  88. package/dist/cjs/core/Events.d.ts +1 -1
  89. package/dist/cjs/core/Events.d.ts.map +1 -1
  90. package/dist/cjs/core/Events.js +15 -15
  91. package/dist/cjs/core/Events.js.map +1 -1
  92. package/dist/cjs/core/Flow.d.ts +4 -4
  93. package/dist/cjs/core/Flow.d.ts.map +1 -1
  94. package/dist/cjs/core/Flow.js +15 -15
  95. package/dist/cjs/core/Flow.js.map +1 -1
  96. package/dist/cjs/core/FlowRouter.d.ts +4 -4
  97. package/dist/cjs/core/FlowRouter.d.ts.map +1 -1
  98. package/dist/cjs/core/FlowRouter.js +64 -64
  99. package/dist/cjs/core/FlowRouter.js.map +1 -1
  100. package/dist/cjs/core/PersistenceManager.d.ts +1 -1
  101. package/dist/cjs/core/PersistenceManager.d.ts.map +1 -1
  102. package/dist/cjs/core/PersistenceManager.js +10 -10
  103. package/dist/cjs/core/PersistenceManager.js.map +1 -1
  104. package/dist/cjs/core/PromptComposer.d.ts +4 -4
  105. package/dist/cjs/core/PromptComposer.d.ts.map +1 -1
  106. package/dist/cjs/core/PromptComposer.js +13 -13
  107. package/dist/cjs/core/PromptComposer.js.map +1 -1
  108. package/dist/cjs/core/PromptSectionCache.d.ts +2 -2
  109. package/dist/cjs/core/PromptSectionCache.d.ts.map +1 -1
  110. package/dist/cjs/core/ResponseEngine.d.ts +4 -4
  111. package/dist/cjs/core/ResponseEngine.d.ts.map +1 -1
  112. package/dist/cjs/core/ResponseEngine.js +7 -7
  113. package/dist/cjs/core/ResponseEngine.js.map +1 -1
  114. package/dist/cjs/core/ResponseModal.d.ts +10 -10
  115. package/dist/cjs/core/ResponseModal.d.ts.map +1 -1
  116. package/dist/cjs/core/ResponseModal.js +69 -69
  117. package/dist/cjs/core/ResponseModal.js.map +1 -1
  118. package/dist/cjs/core/ResponsePipeline.d.ts +15 -7
  119. package/dist/cjs/core/ResponsePipeline.d.ts.map +1 -1
  120. package/dist/cjs/core/ResponsePipeline.js +99 -91
  121. package/dist/cjs/core/ResponsePipeline.js.map +1 -1
  122. package/dist/cjs/core/SessionFinalizer.d.ts +4 -4
  123. package/dist/cjs/core/SessionFinalizer.d.ts.map +1 -1
  124. package/dist/cjs/core/SessionFinalizer.js +12 -12
  125. package/dist/cjs/core/SessionFinalizer.js.map +1 -1
  126. package/dist/cjs/core/SessionManager.d.ts +5 -5
  127. package/dist/cjs/core/SessionManager.d.ts.map +1 -1
  128. package/dist/cjs/core/SessionManager.js +8 -8
  129. package/dist/cjs/core/SessionManager.js.map +1 -1
  130. package/dist/cjs/core/SignalCoordinator.d.ts +5 -5
  131. package/dist/cjs/core/SignalCoordinator.d.ts.map +1 -1
  132. package/dist/cjs/core/SignalCoordinator.js +12 -12
  133. package/dist/cjs/core/SignalCoordinator.js.map +1 -1
  134. package/dist/cjs/core/SignalEvaluator.d.ts +4 -4
  135. package/dist/cjs/core/SignalEvaluator.d.ts.map +1 -1
  136. package/dist/cjs/core/SignalEvaluator.js +6 -6
  137. package/dist/cjs/core/SignalEvaluator.js.map +1 -1
  138. package/dist/cjs/core/SignalProcessor.d.ts +6 -6
  139. package/dist/cjs/core/SignalProcessor.d.ts.map +1 -1
  140. package/dist/cjs/core/SignalProcessor.js +14 -14
  141. package/dist/cjs/core/SignalProcessor.js.map +1 -1
  142. package/dist/cjs/core/Step.d.ts +5 -5
  143. package/dist/cjs/core/Step.d.ts.map +1 -1
  144. package/dist/cjs/core/Step.js +17 -17
  145. package/dist/cjs/core/Step.js.map +1 -1
  146. package/dist/cjs/core/StepLifecycle.d.ts +3 -3
  147. package/dist/cjs/core/StepLifecycle.d.ts.map +1 -1
  148. package/dist/cjs/core/StepLifecycle.js +10 -10
  149. package/dist/cjs/core/StepLifecycle.js.map +1 -1
  150. package/dist/cjs/core/StreamingToolExecutor.d.ts +1 -1
  151. package/dist/cjs/core/StreamingToolExecutor.d.ts.map +1 -1
  152. package/dist/cjs/core/StreamingToolExecutor.js +5 -5
  153. package/dist/cjs/core/StreamingToolExecutor.js.map +1 -1
  154. package/dist/cjs/core/ToolLoopExecutor.d.ts +4 -4
  155. package/dist/cjs/core/ToolLoopExecutor.d.ts.map +1 -1
  156. package/dist/cjs/core/ToolLoopExecutor.js +51 -51
  157. package/dist/cjs/core/ToolLoopExecutor.js.map +1 -1
  158. package/dist/cjs/core/ToolManager.d.ts +5 -5
  159. package/dist/cjs/core/ToolManager.d.ts.map +1 -1
  160. package/dist/cjs/core/ToolManager.js +66 -66
  161. package/dist/cjs/core/ToolManager.js.map +1 -1
  162. package/dist/cjs/core/createAgent.d.ts +2 -2
  163. package/dist/cjs/core/createAgent.d.ts.map +1 -1
  164. package/dist/cjs/core/createAgent.js +2 -2
  165. package/dist/cjs/core/createAgent.js.map +1 -1
  166. package/dist/cjs/core/flow-namespace.d.ts +2 -2
  167. package/dist/cjs/core/flow-namespace.d.ts.map +1 -1
  168. package/dist/cjs/core/flow-namespace.js +4 -4
  169. package/dist/cjs/core/flow-namespace.js.map +1 -1
  170. package/dist/cjs/core/toolGates.d.ts +1 -1
  171. package/dist/cjs/core/toolGates.d.ts.map +1 -1
  172. package/dist/cjs/core/toolGates.js +3 -3
  173. package/dist/cjs/core/toolGates.js.map +1 -1
  174. package/dist/cjs/index.d.ts +50 -48
  175. package/dist/cjs/index.d.ts.map +1 -1
  176. package/dist/cjs/index.js +96 -91
  177. package/dist/cjs/index.js.map +1 -1
  178. package/dist/cjs/providers/AnthropicProvider.d.ts +25 -42
  179. package/dist/cjs/providers/AnthropicProvider.d.ts.map +1 -1
  180. package/dist/cjs/providers/AnthropicProvider.js +31 -408
  181. package/dist/cjs/providers/AnthropicProvider.js.map +1 -1
  182. package/dist/cjs/providers/DeepSeekProvider.d.ts +13 -34
  183. package/dist/cjs/providers/DeepSeekProvider.d.ts.map +1 -1
  184. package/dist/cjs/providers/DeepSeekProvider.js +17 -51
  185. package/dist/cjs/providers/DeepSeekProvider.js.map +1 -1
  186. package/dist/cjs/providers/GeminiProvider.d.ts +24 -83
  187. package/dist/cjs/providers/GeminiProvider.d.ts.map +1 -1
  188. package/dist/cjs/providers/GeminiProvider.js +32 -514
  189. package/dist/cjs/providers/GeminiProvider.js.map +1 -1
  190. package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts +9 -10
  191. package/dist/cjs/providers/GenericOpenAICompatibleProvider.d.ts.map +1 -1
  192. package/dist/cjs/providers/GenericOpenAICompatibleProvider.js +14 -20
  193. package/dist/cjs/providers/GenericOpenAICompatibleProvider.js.map +1 -1
  194. package/dist/cjs/providers/OpenAICompatibleProvider.d.ts +26 -144
  195. package/dist/cjs/providers/OpenAICompatibleProvider.d.ts.map +1 -1
  196. package/dist/cjs/providers/OpenAICompatibleProvider.js +40 -523
  197. package/dist/cjs/providers/OpenAICompatibleProvider.js.map +1 -1
  198. package/dist/cjs/providers/OpenAIProvider.d.ts +14 -20
  199. package/dist/cjs/providers/OpenAIProvider.d.ts.map +1 -1
  200. package/dist/cjs/providers/OpenAIProvider.js +20 -27
  201. package/dist/cjs/providers/OpenAIProvider.js.map +1 -1
  202. package/dist/cjs/providers/OpenRouterProvider.d.ts +20 -24
  203. package/dist/cjs/providers/OpenRouterProvider.d.ts.map +1 -1
  204. package/dist/cjs/providers/OpenRouterProvider.js +22 -38
  205. package/dist/cjs/providers/OpenRouterProvider.js.map +1 -1
  206. package/dist/cjs/providers/ProviderAdapter.d.ts +94 -0
  207. package/dist/cjs/providers/ProviderAdapter.d.ts.map +1 -0
  208. package/dist/cjs/providers/ProviderAdapter.js +257 -0
  209. package/dist/cjs/providers/ProviderAdapter.js.map +1 -0
  210. package/dist/cjs/providers/index.d.ts +21 -18
  211. package/dist/cjs/providers/index.d.ts.map +1 -1
  212. package/dist/cjs/providers/index.js +23 -21
  213. package/dist/cjs/providers/index.js.map +1 -1
  214. package/dist/cjs/types/agent.d.ts +11 -11
  215. package/dist/cjs/types/agent.d.ts.map +1 -1
  216. package/dist/cjs/types/ai.d.ts +11 -21
  217. package/dist/cjs/types/ai.d.ts.map +1 -1
  218. package/dist/cjs/types/compaction.d.ts +2 -2
  219. package/dist/cjs/types/compaction.d.ts.map +1 -1
  220. package/dist/cjs/types/errors.d.ts +16 -20
  221. package/dist/cjs/types/errors.d.ts.map +1 -1
  222. package/dist/cjs/types/errors.js +17 -18
  223. package/dist/cjs/types/errors.js.map +1 -1
  224. package/dist/cjs/types/flow.d.ts +7 -7
  225. package/dist/cjs/types/flow.d.ts.map +1 -1
  226. package/dist/cjs/types/history.d.ts +1 -1
  227. package/dist/cjs/types/history.d.ts.map +1 -1
  228. package/dist/cjs/types/index.d.ts +17 -17
  229. package/dist/cjs/types/index.d.ts.map +1 -1
  230. package/dist/cjs/types/index.js +14 -14
  231. package/dist/cjs/types/index.js.map +1 -1
  232. package/dist/cjs/types/persistence.d.ts +2 -2
  233. package/dist/cjs/types/persistence.d.ts.map +1 -1
  234. package/dist/cjs/types/session.d.ts +4 -4
  235. package/dist/cjs/types/session.d.ts.map +1 -1
  236. package/dist/cjs/types/signals.d.ts +3 -3
  237. package/dist/cjs/types/signals.d.ts.map +1 -1
  238. package/dist/cjs/types/template.d.ts +2 -2
  239. package/dist/cjs/types/template.d.ts.map +1 -1
  240. package/dist/cjs/types/tool.d.ts +2 -2
  241. package/dist/cjs/types/tool.d.ts.map +1 -1
  242. package/dist/cjs/utils/condition.d.ts +1 -1
  243. package/dist/cjs/utils/condition.d.ts.map +1 -1
  244. package/dist/cjs/utils/condition.js +6 -6
  245. package/dist/cjs/utils/condition.js.map +1 -1
  246. package/dist/cjs/utils/event.d.ts +1 -1
  247. package/dist/cjs/utils/event.d.ts.map +1 -1
  248. package/dist/cjs/utils/event.js +2 -2
  249. package/dist/cjs/utils/event.js.map +1 -1
  250. package/dist/cjs/utils/history.d.ts +2 -2
  251. package/dist/cjs/utils/history.d.ts.map +1 -1
  252. package/dist/cjs/utils/history.js +15 -15
  253. package/dist/cjs/utils/history.js.map +1 -1
  254. package/dist/cjs/utils/index.d.ts +11 -13
  255. package/dist/cjs/utils/index.d.ts.map +1 -1
  256. package/dist/cjs/utils/index.js +57 -67
  257. package/dist/cjs/utils/index.js.map +1 -1
  258. package/dist/cjs/utils/serialize.d.ts +2 -2
  259. package/dist/cjs/utils/serialize.d.ts.map +1 -1
  260. package/dist/cjs/utils/session.d.ts +3 -3
  261. package/dist/cjs/utils/session.d.ts.map +1 -1
  262. package/dist/cjs/utils/session.js +4 -4
  263. package/dist/cjs/utils/session.js.map +1 -1
  264. package/dist/cjs/utils/template.d.ts +3 -3
  265. package/dist/cjs/utils/template.d.ts.map +1 -1
  266. package/dist/cjs/utils/template.js +5 -5
  267. package/dist/cjs/utils/template.js.map +1 -1
  268. package/dist/constants/index.d.ts +1 -0
  269. package/dist/constants/index.js +1 -1
  270. package/dist/core/Agent.d.ts +11 -11
  271. package/dist/core/Agent.d.ts.map +1 -1
  272. package/dist/core/Agent.js +13 -13
  273. package/dist/core/Agent.js.map +1 -1
  274. package/dist/core/AutoChainExecutor.d.ts +5 -5
  275. package/dist/core/AutoChainExecutor.d.ts.map +1 -1
  276. package/dist/core/AutoChainExecutor.js +5 -5
  277. package/dist/core/AutoChainExecutor.js.map +1 -1
  278. package/dist/core/BranchEvaluator.d.ts +4 -4
  279. package/dist/core/BranchEvaluator.d.ts.map +1 -1
  280. package/dist/core/BranchEvaluator.js +2 -2
  281. package/dist/core/BranchEvaluator.js.map +1 -1
  282. package/dist/core/CompactionEngine.d.ts +2 -2
  283. package/dist/core/CompactionEngine.d.ts.map +1 -1
  284. package/dist/core/DirectiveChainTracker.d.ts +1 -1
  285. package/dist/core/DirectiveChainTracker.d.ts.map +1 -1
  286. package/dist/core/DirectiveChainTracker.js +2 -2
  287. package/dist/core/DirectiveChainTracker.js.map +1 -1
  288. package/dist/core/Events.d.ts +1 -1
  289. package/dist/core/Events.d.ts.map +1 -1
  290. package/dist/core/Events.js +1 -1
  291. package/dist/core/Events.js.map +1 -1
  292. package/dist/core/Flow.d.ts +4 -4
  293. package/dist/core/Flow.d.ts.map +1 -1
  294. package/dist/core/Flow.js +3 -3
  295. package/dist/core/Flow.js.map +1 -1
  296. package/dist/core/FlowRouter.d.ts +4 -4
  297. package/dist/core/FlowRouter.d.ts.map +1 -1
  298. package/dist/core/FlowRouter.js +4 -4
  299. package/dist/core/FlowRouter.js.map +1 -1
  300. package/dist/core/PersistenceManager.d.ts +1 -1
  301. package/dist/core/PersistenceManager.d.ts.map +1 -1
  302. package/dist/core/PersistenceManager.js +3 -3
  303. package/dist/core/PersistenceManager.js.map +1 -1
  304. package/dist/core/PromptComposer.d.ts +4 -4
  305. package/dist/core/PromptComposer.d.ts.map +1 -1
  306. package/dist/core/PromptComposer.js +3 -3
  307. package/dist/core/PromptComposer.js.map +1 -1
  308. package/dist/core/PromptSectionCache.d.ts +2 -2
  309. package/dist/core/PromptSectionCache.d.ts.map +1 -1
  310. package/dist/core/ResponseEngine.d.ts +4 -4
  311. package/dist/core/ResponseEngine.d.ts.map +1 -1
  312. package/dist/core/ResponseEngine.js +2 -2
  313. package/dist/core/ResponseEngine.js.map +1 -1
  314. package/dist/core/ResponseModal.d.ts +10 -10
  315. package/dist/core/ResponseModal.d.ts.map +1 -1
  316. package/dist/core/ResponseModal.js +14 -14
  317. package/dist/core/ResponseModal.js.map +1 -1
  318. package/dist/core/ResponsePipeline.d.ts +15 -7
  319. package/dist/core/ResponsePipeline.d.ts.map +1 -1
  320. package/dist/core/ResponsePipeline.js +25 -17
  321. package/dist/core/ResponsePipeline.js.map +1 -1
  322. package/dist/core/SessionFinalizer.d.ts +4 -4
  323. package/dist/core/SessionFinalizer.d.ts.map +1 -1
  324. package/dist/core/SessionFinalizer.js +3 -3
  325. package/dist/core/SessionFinalizer.js.map +1 -1
  326. package/dist/core/SessionManager.d.ts +5 -5
  327. package/dist/core/SessionManager.d.ts.map +1 -1
  328. package/dist/core/SessionManager.js +3 -3
  329. package/dist/core/SessionManager.js.map +1 -1
  330. package/dist/core/SignalCoordinator.d.ts +5 -5
  331. package/dist/core/SignalCoordinator.d.ts.map +1 -1
  332. package/dist/core/SignalCoordinator.js +2 -2
  333. package/dist/core/SignalCoordinator.js.map +1 -1
  334. package/dist/core/SignalEvaluator.d.ts +4 -4
  335. package/dist/core/SignalEvaluator.d.ts.map +1 -1
  336. package/dist/core/SignalEvaluator.js +2 -2
  337. package/dist/core/SignalEvaluator.js.map +1 -1
  338. package/dist/core/SignalProcessor.d.ts +6 -6
  339. package/dist/core/SignalProcessor.d.ts.map +1 -1
  340. package/dist/core/SignalProcessor.js +3 -3
  341. package/dist/core/SignalProcessor.js.map +1 -1
  342. package/dist/core/Step.d.ts +5 -5
  343. package/dist/core/Step.d.ts.map +1 -1
  344. package/dist/core/Step.js +4 -4
  345. package/dist/core/Step.js.map +1 -1
  346. package/dist/core/StepLifecycle.d.ts +3 -3
  347. package/dist/core/StepLifecycle.d.ts.map +1 -1
  348. package/dist/core/StepLifecycle.js +2 -2
  349. package/dist/core/StepLifecycle.js.map +1 -1
  350. package/dist/core/StreamingToolExecutor.d.ts +1 -1
  351. package/dist/core/StreamingToolExecutor.d.ts.map +1 -1
  352. package/dist/core/StreamingToolExecutor.js +2 -2
  353. package/dist/core/StreamingToolExecutor.js.map +1 -1
  354. package/dist/core/ToolLoopExecutor.d.ts +4 -4
  355. package/dist/core/ToolLoopExecutor.d.ts.map +1 -1
  356. package/dist/core/ToolLoopExecutor.js +3 -3
  357. package/dist/core/ToolLoopExecutor.js.map +1 -1
  358. package/dist/core/ToolManager.d.ts +5 -5
  359. package/dist/core/ToolManager.d.ts.map +1 -1
  360. package/dist/core/ToolManager.js +4 -4
  361. package/dist/core/ToolManager.js.map +1 -1
  362. package/dist/core/createAgent.d.ts +2 -2
  363. package/dist/core/createAgent.d.ts.map +1 -1
  364. package/dist/core/createAgent.js +1 -1
  365. package/dist/core/createAgent.js.map +1 -1
  366. package/dist/core/flow-namespace.d.ts +2 -2
  367. package/dist/core/flow-namespace.d.ts.map +1 -1
  368. package/dist/core/flow-namespace.js +1 -1
  369. package/dist/core/flow-namespace.js.map +1 -1
  370. package/dist/core/toolGates.d.ts +1 -1
  371. package/dist/core/toolGates.d.ts.map +1 -1
  372. package/dist/core/toolGates.js +1 -1
  373. package/dist/core/toolGates.js.map +1 -1
  374. package/dist/index.d.ts +50 -48
  375. package/dist/index.d.ts.map +1 -1
  376. package/dist/index.js +34 -31
  377. package/dist/index.js.map +1 -1
  378. package/dist/providers/AnthropicProvider.d.ts +25 -42
  379. package/dist/providers/AnthropicProvider.d.ts.map +1 -1
  380. package/dist/providers/AnthropicProvider.js +31 -405
  381. package/dist/providers/AnthropicProvider.js.map +1 -1
  382. package/dist/providers/DeepSeekProvider.d.ts +13 -34
  383. package/dist/providers/DeepSeekProvider.d.ts.map +1 -1
  384. package/dist/providers/DeepSeekProvider.js +16 -47
  385. package/dist/providers/DeepSeekProvider.js.map +1 -1
  386. package/dist/providers/GeminiProvider.d.ts +24 -83
  387. package/dist/providers/GeminiProvider.d.ts.map +1 -1
  388. package/dist/providers/GeminiProvider.js +32 -514
  389. package/dist/providers/GeminiProvider.js.map +1 -1
  390. package/dist/providers/GenericOpenAICompatibleProvider.d.ts +9 -10
  391. package/dist/providers/GenericOpenAICompatibleProvider.d.ts.map +1 -1
  392. package/dist/providers/GenericOpenAICompatibleProvider.js +13 -16
  393. package/dist/providers/GenericOpenAICompatibleProvider.js.map +1 -1
  394. package/dist/providers/OpenAICompatibleProvider.d.ts +26 -144
  395. package/dist/providers/OpenAICompatibleProvider.d.ts.map +1 -1
  396. package/dist/providers/OpenAICompatibleProvider.js +39 -522
  397. package/dist/providers/OpenAICompatibleProvider.js.map +1 -1
  398. package/dist/providers/OpenAIProvider.d.ts +14 -20
  399. package/dist/providers/OpenAIProvider.d.ts.map +1 -1
  400. package/dist/providers/OpenAIProvider.js +19 -23
  401. package/dist/providers/OpenAIProvider.js.map +1 -1
  402. package/dist/providers/OpenRouterProvider.d.ts +20 -24
  403. package/dist/providers/OpenRouterProvider.d.ts.map +1 -1
  404. package/dist/providers/OpenRouterProvider.js +21 -34
  405. package/dist/providers/OpenRouterProvider.js.map +1 -1
  406. package/dist/providers/ProviderAdapter.d.ts +94 -0
  407. package/dist/providers/ProviderAdapter.d.ts.map +1 -0
  408. package/dist/providers/ProviderAdapter.js +251 -0
  409. package/dist/providers/ProviderAdapter.js.map +1 -0
  410. package/dist/providers/index.d.ts +21 -18
  411. package/dist/providers/index.d.ts.map +1 -1
  412. package/dist/providers/index.js +13 -10
  413. package/dist/providers/index.js.map +1 -1
  414. package/dist/types/agent.d.ts +11 -11
  415. package/dist/types/agent.d.ts.map +1 -1
  416. package/dist/types/ai.d.ts +11 -21
  417. package/dist/types/ai.d.ts.map +1 -1
  418. package/dist/types/compaction.d.ts +2 -2
  419. package/dist/types/compaction.d.ts.map +1 -1
  420. package/dist/types/errors.d.ts +16 -20
  421. package/dist/types/errors.d.ts.map +1 -1
  422. package/dist/types/errors.js +15 -16
  423. package/dist/types/errors.js.map +1 -1
  424. package/dist/types/flow.d.ts +7 -7
  425. package/dist/types/flow.d.ts.map +1 -1
  426. package/dist/types/history.d.ts +1 -1
  427. package/dist/types/history.d.ts.map +1 -1
  428. package/dist/types/index.d.ts +17 -17
  429. package/dist/types/index.d.ts.map +1 -1
  430. package/dist/types/index.js +4 -4
  431. package/dist/types/index.js.map +1 -1
  432. package/dist/types/persistence.d.ts +2 -2
  433. package/dist/types/persistence.d.ts.map +1 -1
  434. package/dist/types/session.d.ts +4 -4
  435. package/dist/types/session.d.ts.map +1 -1
  436. package/dist/types/signals.d.ts +3 -3
  437. package/dist/types/signals.d.ts.map +1 -1
  438. package/dist/types/template.d.ts +2 -2
  439. package/dist/types/template.d.ts.map +1 -1
  440. package/dist/types/tool.d.ts +2 -2
  441. package/dist/types/tool.d.ts.map +1 -1
  442. package/dist/utils/condition.d.ts +1 -1
  443. package/dist/utils/condition.d.ts.map +1 -1
  444. package/dist/utils/condition.js +2 -2
  445. package/dist/utils/condition.js.map +1 -1
  446. package/dist/utils/event.d.ts +1 -1
  447. package/dist/utils/event.d.ts.map +1 -1
  448. package/dist/utils/event.js +1 -1
  449. package/dist/utils/event.js.map +1 -1
  450. package/dist/utils/history.d.ts +2 -2
  451. package/dist/utils/history.d.ts.map +1 -1
  452. package/dist/utils/history.js +1 -1
  453. package/dist/utils/history.js.map +1 -1
  454. package/dist/utils/index.d.ts +11 -13
  455. package/dist/utils/index.d.ts.map +1 -1
  456. package/dist/utils/index.js +11 -12
  457. package/dist/utils/index.js.map +1 -1
  458. package/dist/utils/serialize.d.ts +2 -2
  459. package/dist/utils/serialize.d.ts.map +1 -1
  460. package/dist/utils/session.d.ts +3 -3
  461. package/dist/utils/session.d.ts.map +1 -1
  462. package/dist/utils/session.js +2 -2
  463. package/dist/utils/session.js.map +1 -1
  464. package/dist/utils/template.d.ts +3 -3
  465. package/dist/utils/template.d.ts.map +1 -1
  466. package/dist/utils/template.js +1 -1
  467. package/dist/utils/template.js.map +1 -1
  468. package/docs/reference/branches.md +2 -0
  469. package/docs/reference/errors.md +5 -5
  470. package/docs/reference/providers.md +42 -43
  471. package/examples/01-quickstart.ts +1 -1
  472. package/examples/04-instructions.ts +1 -1
  473. package/examples/05-branching.ts +2 -2
  474. package/examples/08-persistence.ts +1 -1
  475. package/examples/tsconfig.json +6 -3
  476. package/package.json +8 -6
  477. package/src/adapters/MemoryAdapter.ts +4 -4
  478. package/src/adapters/MongoAdapter.ts +3 -3
  479. package/src/adapters/OpenSearchAdapter.ts +4 -4
  480. package/src/adapters/PostgreSQLAdapter.ts +4 -4
  481. package/src/adapters/PrismaAdapter.ts +4 -4
  482. package/src/adapters/RedisAdapter.ts +4 -4
  483. package/src/adapters/SQLiteAdapter.ts +4 -4
  484. package/src/adapters/index.ts +13 -13
  485. package/src/adapters/sessionRow.ts +1 -1
  486. package/src/core/Agent.ts +18 -18
  487. package/src/core/AutoChainExecutor.ts +9 -9
  488. package/src/core/BranchEvaluator.ts +5 -5
  489. package/src/core/CompactionEngine.ts +2 -2
  490. package/src/core/DirectiveChainTracker.ts +3 -3
  491. package/src/core/Events.ts +2 -2
  492. package/src/core/Flow.ts +9 -9
  493. package/src/core/FlowRouter.ts +8 -8
  494. package/src/core/PersistenceManager.ts +4 -4
  495. package/src/core/PromptComposer.ts +8 -8
  496. package/src/core/PromptSectionCache.ts +2 -2
  497. package/src/core/ResponseEngine.ts +6 -6
  498. package/src/core/ResponseModal.ts +24 -24
  499. package/src/core/ResponsePipeline.ts +43 -23
  500. package/src/core/SessionFinalizer.ts +7 -7
  501. package/src/core/SessionManager.ts +7 -7
  502. package/src/core/SignalCoordinator.ts +7 -7
  503. package/src/core/SignalEvaluator.ts +6 -6
  504. package/src/core/SignalProcessor.ts +9 -9
  505. package/src/core/Step.ts +9 -9
  506. package/src/core/StepLifecycle.ts +6 -6
  507. package/src/core/StreamingToolExecutor.ts +4 -4
  508. package/src/core/ToolLoopExecutor.ts +7 -7
  509. package/src/core/ToolManager.ts +9 -9
  510. package/src/core/createAgent.ts +2 -2
  511. package/src/core/flow-namespace.ts +3 -3
  512. package/src/core/toolGates.ts +2 -2
  513. package/src/index.ts +59 -48
  514. package/src/providers/AnthropicProvider.ts +45 -548
  515. package/src/providers/DeepSeekProvider.ts +27 -92
  516. package/src/providers/GeminiProvider.ts +43 -680
  517. package/src/providers/GenericOpenAICompatibleProvider.ts +19 -27
  518. package/src/providers/OpenAICompatibleProvider.ts +58 -763
  519. package/src/providers/OpenAIProvider.ts +31 -55
  520. package/src/providers/OpenRouterProvider.ts +40 -70
  521. package/src/providers/ProviderAdapter.ts +368 -0
  522. package/src/providers/index.ts +21 -23
  523. package/src/types/agent.ts +11 -11
  524. package/src/types/ai.ts +11 -21
  525. package/src/types/compaction.ts +2 -2
  526. package/src/types/errors.ts +17 -35
  527. package/src/types/flow.ts +7 -7
  528. package/src/types/history.ts +1 -1
  529. package/src/types/index.ts +17 -17
  530. package/src/types/persistence.ts +2 -2
  531. package/src/types/session.ts +4 -4
  532. package/src/types/signals.ts +3 -3
  533. package/src/types/template.ts +2 -2
  534. package/src/types/tool.ts +2 -2
  535. package/src/utils/condition.ts +3 -3
  536. package/src/utils/event.ts +1 -1
  537. package/src/utils/history.ts +3 -3
  538. package/src/utils/index.ts +11 -31
  539. package/src/utils/serialize.ts +2 -2
  540. package/src/utils/session.ts +6 -6
  541. package/src/utils/template.ts +3 -3
  542. package/dist/cjs/providers/errorClassification.d.ts +0 -68
  543. package/dist/cjs/providers/errorClassification.d.ts.map +0 -1
  544. package/dist/cjs/providers/errorClassification.js +0 -150
  545. package/dist/cjs/providers/errorClassification.js.map +0 -1
  546. package/dist/cjs/utils/retry.d.ts +0 -165
  547. package/dist/cjs/utils/retry.d.ts.map +0 -1
  548. package/dist/cjs/utils/retry.js +0 -338
  549. package/dist/cjs/utils/retry.js.map +0 -1
  550. package/dist/providers/errorClassification.d.ts +0 -68
  551. package/dist/providers/errorClassification.d.ts.map +0 -1
  552. package/dist/providers/errorClassification.js +0 -142
  553. package/dist/providers/errorClassification.js.map +0 -1
  554. package/dist/utils/retry.d.ts +0 -165
  555. package/dist/utils/retry.d.ts.map +0 -1
  556. package/dist/utils/retry.js +0 -327
  557. package/dist/utils/retry.js.map +0 -1
  558. package/src/providers/errorClassification.ts +0 -206
  559. package/src/utils/retry.ts +0 -523
@@ -23,16 +23,12 @@
23
23
  * defaultHeaders: { "api-key": process.env.AZURE_OPENAI_KEY! },
24
24
  * });
25
25
  *
26
- * For OpenAI/OpenRouter (native `responses.parse`) and Anthropic/Gemini, prefer
27
- * their dedicated provider classes.
26
+ * For OpenAI, OpenRouter, Anthropic and Gemini, prefer their dedicated
27
+ * provider classes.
28
28
  */
29
- var __importDefault = (this && this.__importDefault) || function (mod) {
30
- return (mod && mod.__esModule) ? mod : { "default": mod };
31
- };
32
29
  Object.defineProperty(exports, "__esModule", { value: true });
33
30
  exports.createOpenAICompatibleProvider = createOpenAICompatibleProvider;
34
- const openai_1 = __importDefault(require("openai"));
35
- const OpenAICompatibleProvider_1 = require("./OpenAICompatibleProvider");
31
+ const OpenAICompatibleProvider_js_1 = require("./OpenAICompatibleProvider.js");
36
32
  /** Sensible defaults for a modern OpenAI-compatible endpoint. */
37
33
  const DEFAULT_CAPABILITIES = {
38
34
  supportsTools: true,
@@ -48,7 +44,7 @@ const DEFAULT_CAPABILITIES = {
48
44
  * directly if you need behavior beyond these knobs (e.g. provider-specific
49
45
  * error classification or streaming hooks).
50
46
  */
51
- class GenericOpenAICompatibleProvider extends OpenAICompatibleProvider_1.OpenAICompatibleProvider {
47
+ class GenericOpenAICompatibleProvider extends OpenAICompatibleProvider_js_1.OpenAICompatibleProvider {
52
48
  constructor(options) {
53
49
  if (!options.name) {
54
50
  throw new Error("An OpenAI-compatible provider needs a `name`.");
@@ -63,22 +59,20 @@ class GenericOpenAICompatibleProvider extends OpenAICompatibleProvider_1.OpenAIC
63
59
  throw new Error(`[${options.name}] A \`model\` is required.`);
64
60
  }
65
61
  super({
66
- client: new openai_1.default({
67
- apiKey: options.apiKey,
68
- baseURL: options.baseURL,
69
- ...(options.defaultHeaders ? { defaultHeaders: options.defaultHeaders } : {}),
70
- }),
62
+ id: options.name,
63
+ apiKey: options.apiKey,
64
+ baseUrl: options.baseURL,
71
65
  model: options.model,
72
- backupModels: options.backupModels,
73
- config: options.config,
74
- retryConfig: options.retryConfig,
75
- // Arbitrary compatible endpoints rarely have responses.parse; default to
76
- // the broadly-supported chat json_schema strategy.
66
+ // Arbitrary compatible endpoints rarely serve the Responses API; default
67
+ // to the broadly-supported chat json_schema strategy.
77
68
  structuredOutput: options.structuredOutput ?? "json_schema",
69
+ ...(options.defaultHeaders ? { headers: options.defaultHeaders } : {}),
70
+ ...(options.backupModels ? { backupModels: options.backupModels } : {}),
71
+ ...(options.config ? { config: options.config } : {}),
72
+ ...(options.retryConfig ? { retryConfig: options.retryConfig } : {}),
73
+ ...(options.fetchImpl ? { fetchImpl: options.fetchImpl } : {}),
78
74
  });
79
75
  this.name = options.name;
80
- this.displayName = options.displayName ?? options.name;
81
- this.logLabel = options.logLabel ?? options.name.toUpperCase();
82
76
  this.capabilities = { ...DEFAULT_CAPABILITIES, ...options.capabilities };
83
77
  }
84
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GenericOpenAICompatibleProvider.js","sourceRoot":"","sources":["../../../src/providers/GenericOpenAICompatibleProvider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;;;;;AA2GH,wEAIC;AA7GD,oDAA4B;AAG5B,yEAIoC;AAiCpC,iEAAiE;AACjE,MAAM,oBAAoB,GAAyB;IACjD,aAAa,EAAE,IAAI;IACnB,wBAAwB,EAAE,IAAI;IAC9B,iBAAiB,EAAE,IAAI;IACvB,0BAA0B,EAAE,IAAI;IAChC,qBAAqB,EAAE,KAAK;CAC7B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,+BAAgC,SAAQ,mDAAwB;IAMpE,YAAY,OAAgC;QAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,8BAA8B,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,IAAI,OAAO,CAAC,IAAI,oFAAoF,CACrG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,4BAA4B,CAAC,CAAC;QAChE,CAAC;QAED,KAAK,CAAC;YACJ,MAAM,EAAE,IAAI,gBAAM,CAAC;gBACjB,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9E,CAAC;YACF,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,yEAAyE;YACzE,mDAAmD;YACnD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,aAAa;SAC5D,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;QACvD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC/D,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,oBAAoB,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAC3E,CAAC;CACF;AAED;;;;GAIG;AACH,SAAgB,8BAA8B,CAC5C,OAAgC;IAEhC,OAAO,IAAI,+BAA+B,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"GenericOpenAICompatibleProvider.js","sourceRoot":"","sources":["../../../src/providers/GenericOpenAICompatibleProvider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;;AAmGH,wEAIC;AApGD,+EAGuC;AAgCvC,iEAAiE;AACjE,MAAM,oBAAoB,GAAyB;IACjD,aAAa,EAAE,IAAI;IACnB,wBAAwB,EAAE,IAAI;IAC9B,iBAAiB,EAAE,IAAI;IACvB,0BAA0B,EAAE,IAAI;IAChC,qBAAqB,EAAE,KAAK;CAC7B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,+BAAgC,SAAQ,sDAAwB;IAIpE,YAAY,OAAgC;QAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,8BAA8B,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,IAAI,OAAO,CAAC,IAAI,oFAAoF,CACrG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,4BAA4B,CAAC,CAAC;QAChE,CAAC;QAED,KAAK,CAAC;YACJ,EAAE,EAAE,OAAO,CAAC,IAAI;YAChB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,yEAAyE;YACzE,sDAAsD;YACtD,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,aAAa;YAC3D,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,EAAE,GAAG,oBAAoB,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAC3E,CAAC;CACF;AAED;;;;GAIG;AACH,SAAgB,8BAA8B,CAC5C,OAAgC;IAEhC,OAAO,IAAI,+BAA+B,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC"}
@@ -1,156 +1,38 @@
1
1
  /**
2
- * Shared base class for OpenAI-compatible chat-completions providers
3
- * (OpenAI, DeepSeek, OpenRouter).
2
+ * Shared base for OpenAI-compatible chat-completions providers (OpenAI,
3
+ * DeepSeek, OpenRouter, and anything else speaking the dialect).
4
4
  *
5
- * Handles message/history building, tool-call parsing, streaming chunk
6
- * handling, backup-model fallback, retry wiring, schema passthrough and
7
- * normalized error wrapping. Subclasses supply the configured client,
8
- * naming, capabilities and any genuinely provider-specific behavior via
9
- * the protected hooks.
5
+ * Everything that used to live here — message building, tool-call assembly,
6
+ * streaming, retry, backup models, error wrapping is now in
7
+ * `@providerkit/core` and `ProviderAdapter`. What is left is the one decision
8
+ * this layer still owns: which wire a structured request goes out on.
10
9
  */
11
- import OpenAI from "openai";
12
- import type { ChatCompletionChunk, ChatCompletionCreateParamsNonStreaming, ChatCompletionCreateParamsStreaming } from "openai/resources/chat/completions";
13
- import type { AiProvider, GenerateMessageInput, GenerateMessageOutput, GenerateMessageStreamChunk, AgentStructuredResponse, StructuredSchema } from "../types";
14
- import type { ProviderCapabilities } from "../types/ai";
15
- import type { HistoryItem } from "../types/history";
16
- import { type ErrorClassificationOptions } from "./errorClassification";
17
- /**
18
- * Default request parameters shared by OpenAI-compatible providers
19
- */
20
- export type OpenAICompatibleRequestConfig = Partial<Omit<ChatCompletionCreateParamsNonStreaming, "model" | "messages">>;
10
+ import { ProviderAdapter, type ProviderAdapterInit, type RequestConfig } from "./ProviderAdapter.js";
21
11
  /**
22
12
  * How structured (JSON-schema) output is requested from the endpoint:
23
- * - `"responses_parse"` (default) — OpenAI's native `responses.parse` API
24
- * (OpenAI, OpenRouter). Most compatible endpoints do not implement it.
25
- * - `"json_schema"` — chat completions with a `json_schema` response_format.
26
- * The broadest enforced mode (DeepSeek, Groq, Together, Fireworks, vLLM, Azure…).
27
- * - `"json_object"` — chat completions with a `json_object` response_format,
28
- * for servers that lack json_schema enforcement (parsed at the end).
13
+ * - `"responses_parse"` — OpenAI's Responses API, which enforces the schema
14
+ * natively. Most compatible endpoints do not implement it.
15
+ * - `"json_schema"` — chat completions with a `json_schema` response format.
16
+ * The broadest enforced mode (DeepSeek, Groq, Together, Fireworks, vLLM…).
17
+ * - `"json_object"` — chat completions with plain JSON mode, for servers with
18
+ * no schema enforcement at all. The caller validates.
29
19
  */
30
20
  export type StructuredOutputMode = "responses_parse" | "json_schema" | "json_object";
31
- /**
32
- * Initialization values supplied by subclasses
33
- */
34
- export interface OpenAICompatibleProviderInit {
35
- /** Configured OpenAI SDK client (subclass sets API key, base URL, headers) */
36
- client: OpenAI;
37
- /** Primary model */
38
- model: string;
39
- /** Backup models to try if primary fails (default: []) */
40
- backupModels?: string[];
41
- /** Default request parameters */
42
- config?: OpenAICompatibleRequestConfig;
43
- /** Retry configuration */
44
- retryConfig?: {
45
- timeout?: number;
46
- retries?: number;
47
- };
48
- /**
49
- * How structured output is requested (default `"responses_parse"`). Lifts the
50
- * strategy that used to be a per-subclass override into shared config.
51
- */
21
+ export interface OpenAICompatibleProviderInit extends Omit<ProviderAdapterInit, "provider"> {
22
+ apiKey: string;
23
+ baseUrl?: string;
24
+ /** Names the provider in errors, and picks core's effort dialect. */
25
+ id: string;
26
+ headers?: Record<string, string>;
27
+ config?: RequestConfig;
52
28
  structuredOutput?: StructuredOutputMode;
29
+ /** OpenRouter upstream-host pin, to keep a conversation's prompt cache warm. */
30
+ providerOrder?: string[];
31
+ /** Replacement `fetch`, for tests that script the wire. */
32
+ fetchImpl?: typeof fetch;
53
33
  }
54
- /**
55
- * Base implementation of AiProvider for OpenAI-compatible APIs with
56
- * backup models and retry logic.
57
- */
58
- export declare abstract class OpenAICompatibleProvider implements AiProvider {
59
- abstract readonly name: string;
60
- abstract readonly capabilities: ProviderCapabilities;
61
- /** Uppercase tag used in log lines, e.g. "OPENAI" */
62
- protected abstract readonly logLabel: string;
63
- /** Human-readable name used in retry/error messages, e.g. "OpenAI" */
64
- protected abstract readonly displayName: string;
65
- protected readonly client: OpenAI;
66
- protected readonly primaryModel: string;
67
- protected readonly backupModels: string[];
68
- protected readonly config?: OpenAICompatibleRequestConfig;
69
- protected readonly retryConfig: {
70
- timeout: number;
71
- retries: number;
72
- };
73
- /** Structured-output strategy; see {@link StructuredOutputMode}. */
74
- protected readonly structuredOutput: StructuredOutputMode;
75
- /**
76
- * Provider-specific error classification signals.
77
- * model_not_found/model_overloaded historically triggered backup models.
78
- */
79
- protected readonly classificationOptions: ErrorClassificationOptions;
34
+ export declare abstract class OpenAICompatibleProvider extends ProviderAdapter {
35
+ protected readonly config?: RequestConfig;
80
36
  protected constructor(init: OpenAICompatibleProviderInit);
81
- generateMessage<TContext = unknown, TStructured = AgentStructuredResponse>(input: GenerateMessageInput<TContext>): Promise<GenerateMessageOutput<TStructured>>;
82
- generateMessageStream<TContext = unknown, TStructured = AgentStructuredResponse>(input: GenerateMessageInput<TContext>): AsyncGenerator<GenerateMessageStreamChunk<TStructured>>;
83
- /**
84
- * Map interaction history onto Responses-API input items so structured
85
- * generations carry the same context as chat completions: plain messages
86
- * pass through as easy-input messages, and tool exchanges map to
87
- * function_call / function_call_output pairs keyed by the original ids.
88
- * The prompt is appended as the final user turn, mirroring how the
89
- * chat-completions path builds its messages array.
90
- */
91
- private buildResponsesInput;
92
- /**
93
- * Generate a structured (JSON schema) response. Default uses the
94
- * responses.parse API (OpenAI, OpenRouter). Subclasses whose API lacks
95
- * responses.parse (e.g. DeepSeek) override this to use chat completions
96
- * with a structured response_format instead.
97
- */
98
- protected executeStructuredGenerate(model: string, input: GenerateMessageInput<unknown>, jsonSchema: StructuredSchema): Promise<GenerateMessageOutput>;
99
- /**
100
- * response_format applied to chat-completions requests when a JSON schema is
101
- * present, selected by {@link StructuredOutputMode}: `"json_schema"` for native
102
- * enforcement, else a generic JSON object parsed at the end. (`"responses_parse"`
103
- * never reaches chat completions for non-streaming, but streaming has no parse
104
- * API, so it falls back to `json_object` here.)
105
- */
106
- protected structuredResponseFormat(jsonSchema: StructuredSchema, schemaName: string | undefined): ChatCompletionCreateParamsNonStreaming["response_format"];
107
- /**
108
- * Hook for provider-specific streaming request parameters
109
- * (e.g. DeepSeek's stream_options.include_usage).
110
- */
111
- protected configureStreamParams(_params: ChatCompletionCreateParamsStreaming): void;
112
- /**
113
- * Hook for provider-specific stream delta handling
114
- * (e.g. DeepSeek's reasoning_content).
115
- */
116
- protected onStreamDelta(_delta: ChatCompletionChunk.Choice.Delta): void;
117
- /**
118
- * Adapt common schema format to the provider's format.
119
- * OpenAI-compatible APIs use standard JSON Schema, so this is a
120
- * passthrough.
121
- */
122
- protected adaptSchema(schema: StructuredSchema): Record<string, unknown>;
123
- /**
124
- * Build OpenAI-formatted messages from HistoryItem[] array.
125
- * Maps directly to ChatCompletionMessageParam format.
126
- */
127
- protected buildChatMessages(history: HistoryItem[]): Array<unknown>;
128
- /**
129
- * Map framework tool definitions to OpenAI function tools.
130
- */
131
- private buildToolParams;
132
- /**
133
- * Parse tool calls from a (complete or delta) tool_calls array,
134
- * tolerating malformed JSON arguments.
135
- */
136
- private parseToolCallArguments;
137
- /**
138
- * Determines if an error should trigger backup model usage.
139
- * Derived from the normalized error classification.
140
- */
141
- protected shouldUseBackupModel(error: unknown): boolean;
142
- /**
143
- * Wrap a terminal failure in a normalized ProviderError.
144
- */
145
- protected wrapTerminalError(error: unknown): Error;
146
- private generateWithBackup;
147
- private generateStreamWithBackup;
148
- private generateWithModel;
149
- /**
150
- * Non-streaming chat-completions request: builds messages/tools,
151
- * extracts text and tool calls, and merges structured output.
152
- */
153
- protected executeChatCompletion(model: string, input: GenerateMessageInput<unknown>): Promise<GenerateMessageOutput>;
154
- private generateStreamWithModel;
155
37
  }
156
38
  //# sourceMappingURL=OpenAICompatibleProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAICompatibleProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/OpenAICompatibleProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAICompatibleProvider.d.ts","sourceRoot":"","sources":["../../../src/providers/OpenAICompatibleProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,eAAe,EAAE,KAAK,mBAAmB,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErG;;;;;;;;GAQG;AACH,MAAM,MAAM,oBAAoB,GAAG,iBAAiB,GAAG,aAAa,GAAG,aAAa,CAAC;AAErF,MAAM,WAAW,4BACf,SAAQ,IAAI,CAAC,mBAAmB,EAAE,UAAU,CAAC;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED,8BAAsB,wBAAyB,SAAQ,eAAe;IACpE,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC;IAE1C,SAAS,aAAa,IAAI,EAAE,4BAA4B;CAWzD"}