deepseek-coder-agent-cli 1.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 (501) hide show
  1. package/README.md +58 -0
  2. package/dist/bin/cliMode.d.ts +8 -0
  3. package/dist/bin/cliMode.d.ts.map +1 -0
  4. package/dist/bin/cliMode.js +20 -0
  5. package/dist/bin/cliMode.js.map +1 -0
  6. package/dist/bin/deepseek.d.ts +6 -0
  7. package/dist/bin/deepseek.d.ts.map +1 -0
  8. package/dist/bin/deepseek.js +136 -0
  9. package/dist/bin/deepseek.js.map +1 -0
  10. package/dist/config.d.ts +25 -0
  11. package/dist/config.d.ts.map +1 -0
  12. package/dist/config.js +155 -0
  13. package/dist/config.js.map +1 -0
  14. package/dist/contracts/agent-profiles.schema.json +43 -0
  15. package/dist/contracts/agent-schemas.json +460 -0
  16. package/dist/contracts/models.schema.json +9 -0
  17. package/dist/contracts/module-schema.json +419 -0
  18. package/dist/contracts/schemas/agent-profile.schema.json +157 -0
  19. package/dist/contracts/schemas/agent-rules.schema.json +238 -0
  20. package/dist/contracts/schemas/agent-schemas.schema.json +528 -0
  21. package/dist/contracts/schemas/agent.schema.json +90 -0
  22. package/dist/contracts/schemas/tool-selection.schema.json +174 -0
  23. package/dist/contracts/tools.schema.json +82 -0
  24. package/dist/contracts/unified-schema.json +750 -0
  25. package/dist/contracts/v1/agent.d.ts +179 -0
  26. package/dist/contracts/v1/agent.d.ts.map +1 -0
  27. package/dist/contracts/v1/agent.js +8 -0
  28. package/dist/contracts/v1/agent.js.map +1 -0
  29. package/dist/contracts/v1/agentProfileManifest.d.ts +60 -0
  30. package/dist/contracts/v1/agentProfileManifest.d.ts.map +1 -0
  31. package/dist/contracts/v1/agentProfileManifest.js +9 -0
  32. package/dist/contracts/v1/agentProfileManifest.js.map +1 -0
  33. package/dist/contracts/v1/agentRules.d.ts +60 -0
  34. package/dist/contracts/v1/agentRules.d.ts.map +1 -0
  35. package/dist/contracts/v1/agentRules.js +10 -0
  36. package/dist/contracts/v1/agentRules.js.map +1 -0
  37. package/dist/contracts/v1/provider.d.ts +149 -0
  38. package/dist/contracts/v1/provider.d.ts.map +1 -0
  39. package/dist/contracts/v1/provider.js +7 -0
  40. package/dist/contracts/v1/provider.js.map +1 -0
  41. package/dist/contracts/v1/tool.d.ts +136 -0
  42. package/dist/contracts/v1/tool.d.ts.map +1 -0
  43. package/dist/contracts/v1/tool.js +7 -0
  44. package/dist/contracts/v1/tool.js.map +1 -0
  45. package/dist/contracts/v1/toolAccess.d.ts +43 -0
  46. package/dist/contracts/v1/toolAccess.d.ts.map +1 -0
  47. package/dist/contracts/v1/toolAccess.js +9 -0
  48. package/dist/contracts/v1/toolAccess.js.map +1 -0
  49. package/dist/core/agent.d.ts +287 -0
  50. package/dist/core/agent.d.ts.map +1 -0
  51. package/dist/core/agent.js +1563 -0
  52. package/dist/core/agent.js.map +1 -0
  53. package/dist/core/agentProfileManifest.d.ts +3 -0
  54. package/dist/core/agentProfileManifest.d.ts.map +1 -0
  55. package/dist/core/agentProfileManifest.js +188 -0
  56. package/dist/core/agentProfileManifest.js.map +1 -0
  57. package/dist/core/agentProfiles.d.ts +22 -0
  58. package/dist/core/agentProfiles.d.ts.map +1 -0
  59. package/dist/core/agentProfiles.js +35 -0
  60. package/dist/core/agentProfiles.js.map +1 -0
  61. package/dist/core/agentRulebook.d.ts +11 -0
  62. package/dist/core/agentRulebook.d.ts.map +1 -0
  63. package/dist/core/agentRulebook.js +136 -0
  64. package/dist/core/agentRulebook.js.map +1 -0
  65. package/dist/core/agentSchemaLoader.d.ts +131 -0
  66. package/dist/core/agentSchemaLoader.d.ts.map +1 -0
  67. package/dist/core/agentSchemaLoader.js +235 -0
  68. package/dist/core/agentSchemaLoader.js.map +1 -0
  69. package/dist/core/agiCore.d.ts +290 -0
  70. package/dist/core/agiCore.d.ts.map +1 -0
  71. package/dist/core/agiCore.js +1348 -0
  72. package/dist/core/agiCore.js.map +1 -0
  73. package/dist/core/aiErrorFixer.d.ts +57 -0
  74. package/dist/core/aiErrorFixer.d.ts.map +1 -0
  75. package/dist/core/aiErrorFixer.js +214 -0
  76. package/dist/core/aiErrorFixer.js.map +1 -0
  77. package/dist/core/antiTermination.d.ts +226 -0
  78. package/dist/core/antiTermination.d.ts.map +1 -0
  79. package/dist/core/antiTermination.js +713 -0
  80. package/dist/core/antiTermination.js.map +1 -0
  81. package/dist/core/bashCommandGuidance.d.ts +16 -0
  82. package/dist/core/bashCommandGuidance.d.ts.map +1 -0
  83. package/dist/core/bashCommandGuidance.js +40 -0
  84. package/dist/core/bashCommandGuidance.js.map +1 -0
  85. package/dist/core/constants.d.ts +31 -0
  86. package/dist/core/constants.d.ts.map +1 -0
  87. package/dist/core/constants.js +62 -0
  88. package/dist/core/constants.js.map +1 -0
  89. package/dist/core/contextManager.d.ts +271 -0
  90. package/dist/core/contextManager.d.ts.map +1 -0
  91. package/dist/core/contextManager.js +1073 -0
  92. package/dist/core/contextManager.js.map +1 -0
  93. package/dist/core/contextWindow.d.ts +42 -0
  94. package/dist/core/contextWindow.d.ts.map +1 -0
  95. package/dist/core/contextWindow.js +123 -0
  96. package/dist/core/contextWindow.js.map +1 -0
  97. package/dist/core/customCommands.d.ts +19 -0
  98. package/dist/core/customCommands.d.ts.map +1 -0
  99. package/dist/core/customCommands.js +85 -0
  100. package/dist/core/customCommands.js.map +1 -0
  101. package/dist/core/deepBugAnalyzer.d.ts +25 -0
  102. package/dist/core/deepBugAnalyzer.d.ts.map +1 -0
  103. package/dist/core/deepBugAnalyzer.js +44 -0
  104. package/dist/core/deepBugAnalyzer.js.map +1 -0
  105. package/dist/core/dualTournament.d.ts +110 -0
  106. package/dist/core/dualTournament.d.ts.map +1 -0
  107. package/dist/core/dualTournament.js +270 -0
  108. package/dist/core/dualTournament.js.map +1 -0
  109. package/dist/core/dynamicGuardrails.d.ts +207 -0
  110. package/dist/core/dynamicGuardrails.d.ts.map +1 -0
  111. package/dist/core/dynamicGuardrails.js +516 -0
  112. package/dist/core/dynamicGuardrails.js.map +1 -0
  113. package/dist/core/embeddingProviders.d.ts +80 -0
  114. package/dist/core/embeddingProviders.d.ts.map +1 -0
  115. package/dist/core/embeddingProviders.js +241 -0
  116. package/dist/core/embeddingProviders.js.map +1 -0
  117. package/dist/core/episodicMemory.d.ts +259 -0
  118. package/dist/core/episodicMemory.d.ts.map +1 -0
  119. package/dist/core/episodicMemory.js +833 -0
  120. package/dist/core/episodicMemory.js.map +1 -0
  121. package/dist/core/errors/apiKeyErrors.d.ts +11 -0
  122. package/dist/core/errors/apiKeyErrors.d.ts.map +1 -0
  123. package/dist/core/errors/apiKeyErrors.js +159 -0
  124. package/dist/core/errors/apiKeyErrors.js.map +1 -0
  125. package/dist/core/errors/errorTypes.d.ts +111 -0
  126. package/dist/core/errors/errorTypes.d.ts.map +1 -0
  127. package/dist/core/errors/errorTypes.js +345 -0
  128. package/dist/core/errors/errorTypes.js.map +1 -0
  129. package/dist/core/errors/index.d.ts +50 -0
  130. package/dist/core/errors/index.d.ts.map +1 -0
  131. package/dist/core/errors/index.js +156 -0
  132. package/dist/core/errors/index.js.map +1 -0
  133. package/dist/core/errors/networkErrors.d.ts +14 -0
  134. package/dist/core/errors/networkErrors.d.ts.map +1 -0
  135. package/dist/core/errors/networkErrors.js +53 -0
  136. package/dist/core/errors/networkErrors.js.map +1 -0
  137. package/dist/core/errors/safetyValidator.d.ts +115 -0
  138. package/dist/core/errors/safetyValidator.d.ts.map +1 -0
  139. package/dist/core/errors/safetyValidator.js +302 -0
  140. package/dist/core/errors/safetyValidator.js.map +1 -0
  141. package/dist/core/errors.d.ts +4 -0
  142. package/dist/core/errors.d.ts.map +1 -0
  143. package/dist/core/errors.js +33 -0
  144. package/dist/core/errors.js.map +1 -0
  145. package/dist/core/finalResponseFormatter.d.ts +10 -0
  146. package/dist/core/finalResponseFormatter.d.ts.map +1 -0
  147. package/dist/core/finalResponseFormatter.js +14 -0
  148. package/dist/core/finalResponseFormatter.js.map +1 -0
  149. package/dist/core/flowProtection.d.ts +154 -0
  150. package/dist/core/flowProtection.d.ts.map +1 -0
  151. package/dist/core/flowProtection.js +436 -0
  152. package/dist/core/flowProtection.js.map +1 -0
  153. package/dist/core/gitWorktreeManager.d.ts +126 -0
  154. package/dist/core/gitWorktreeManager.d.ts.map +1 -0
  155. package/dist/core/gitWorktreeManager.js +403 -0
  156. package/dist/core/gitWorktreeManager.js.map +1 -0
  157. package/dist/core/guardrails.d.ts +150 -0
  158. package/dist/core/guardrails.d.ts.map +1 -0
  159. package/dist/core/guardrails.js +360 -0
  160. package/dist/core/guardrails.js.map +1 -0
  161. package/dist/core/hallucinationGuard.d.ts +57 -0
  162. package/dist/core/hallucinationGuard.d.ts.map +1 -0
  163. package/dist/core/hallucinationGuard.js +237 -0
  164. package/dist/core/hallucinationGuard.js.map +1 -0
  165. package/dist/core/hitlEnforcement.d.ts +143 -0
  166. package/dist/core/hitlEnforcement.d.ts.map +1 -0
  167. package/dist/core/hitlEnforcement.js +583 -0
  168. package/dist/core/hitlEnforcement.js.map +1 -0
  169. package/dist/core/hooks.d.ts +113 -0
  170. package/dist/core/hooks.d.ts.map +1 -0
  171. package/dist/core/hooks.js +364 -0
  172. package/dist/core/hooks.js.map +1 -0
  173. package/dist/core/hotReload.d.ts +154 -0
  174. package/dist/core/hotReload.d.ts.map +1 -0
  175. package/dist/core/hotReload.js +451 -0
  176. package/dist/core/hotReload.js.map +1 -0
  177. package/dist/core/hypothesisEngine.d.ts +27 -0
  178. package/dist/core/hypothesisEngine.d.ts.map +1 -0
  179. package/dist/core/hypothesisEngine.js +58 -0
  180. package/dist/core/hypothesisEngine.js.map +1 -0
  181. package/dist/core/index.d.ts +26 -0
  182. package/dist/core/index.d.ts.map +1 -0
  183. package/dist/core/index.js +54 -0
  184. package/dist/core/index.js.map +1 -0
  185. package/dist/core/inputProtection.d.ts +122 -0
  186. package/dist/core/inputProtection.d.ts.map +1 -0
  187. package/dist/core/inputProtection.js +421 -0
  188. package/dist/core/inputProtection.js.map +1 -0
  189. package/dist/core/liveGCPVerification.d.ts +41 -0
  190. package/dist/core/liveGCPVerification.d.ts.map +1 -0
  191. package/dist/core/liveGCPVerification.js +745 -0
  192. package/dist/core/liveGCPVerification.js.map +1 -0
  193. package/dist/core/modelDiscovery.d.ts +105 -0
  194. package/dist/core/modelDiscovery.d.ts.map +1 -0
  195. package/dist/core/modelDiscovery.js +740 -0
  196. package/dist/core/modelDiscovery.js.map +1 -0
  197. package/dist/core/multilinePasteHandler.d.ts +35 -0
  198. package/dist/core/multilinePasteHandler.d.ts.map +1 -0
  199. package/dist/core/multilinePasteHandler.js +80 -0
  200. package/dist/core/multilinePasteHandler.js.map +1 -0
  201. package/dist/core/parallel.d.ts +85 -0
  202. package/dist/core/parallel.d.ts.map +1 -0
  203. package/dist/core/parallel.js +150 -0
  204. package/dist/core/parallel.js.map +1 -0
  205. package/dist/core/parallelCoordinator.d.ts +21 -0
  206. package/dist/core/parallelCoordinator.d.ts.map +1 -0
  207. package/dist/core/parallelCoordinator.js +42 -0
  208. package/dist/core/parallelCoordinator.js.map +1 -0
  209. package/dist/core/parallelExecutor.d.ts +215 -0
  210. package/dist/core/parallelExecutor.d.ts.map +1 -0
  211. package/dist/core/parallelExecutor.js +584 -0
  212. package/dist/core/parallelExecutor.js.map +1 -0
  213. package/dist/core/platformSecurityIntegration.d.ts +133 -0
  214. package/dist/core/platformSecurityIntegration.d.ts.map +1 -0
  215. package/dist/core/platformSecurityIntegration.js +419 -0
  216. package/dist/core/platformSecurityIntegration.js.map +1 -0
  217. package/dist/core/preferences.d.ts +71 -0
  218. package/dist/core/preferences.d.ts.map +1 -0
  219. package/dist/core/preferences.js +341 -0
  220. package/dist/core/preferences.js.map +1 -0
  221. package/dist/core/productTestHarness.d.ts +46 -0
  222. package/dist/core/productTestHarness.d.ts.map +1 -0
  223. package/dist/core/productTestHarness.js +128 -0
  224. package/dist/core/productTestHarness.js.map +1 -0
  225. package/dist/core/providerKeys.d.ts +20 -0
  226. package/dist/core/providerKeys.d.ts.map +1 -0
  227. package/dist/core/providerKeys.js +40 -0
  228. package/dist/core/providerKeys.js.map +1 -0
  229. package/dist/core/realityScore.d.ts +159 -0
  230. package/dist/core/realityScore.d.ts.map +1 -0
  231. package/dist/core/realityScore.js +734 -0
  232. package/dist/core/realityScore.js.map +1 -0
  233. package/dist/core/repoUpgradeOrchestrator.d.ts +223 -0
  234. package/dist/core/repoUpgradeOrchestrator.d.ts.map +1 -0
  235. package/dist/core/repoUpgradeOrchestrator.js +1003 -0
  236. package/dist/core/repoUpgradeOrchestrator.js.map +1 -0
  237. package/dist/core/resultVerification.d.ts +47 -0
  238. package/dist/core/resultVerification.d.ts.map +1 -0
  239. package/dist/core/resultVerification.js +126 -0
  240. package/dist/core/resultVerification.js.map +1 -0
  241. package/dist/core/revenueEnvValidator.d.ts +30 -0
  242. package/dist/core/revenueEnvValidator.d.ts.map +1 -0
  243. package/dist/core/revenueEnvValidator.js +241 -0
  244. package/dist/core/revenueEnvValidator.js.map +1 -0
  245. package/dist/core/schemaValidator.d.ts +49 -0
  246. package/dist/core/schemaValidator.d.ts.map +1 -0
  247. package/dist/core/schemaValidator.js +234 -0
  248. package/dist/core/schemaValidator.js.map +1 -0
  249. package/dist/core/secretStore.d.ts +48 -0
  250. package/dist/core/secretStore.d.ts.map +1 -0
  251. package/dist/core/secretStore.js +295 -0
  252. package/dist/core/secretStore.js.map +1 -0
  253. package/dist/core/securityTournament.d.ts +83 -0
  254. package/dist/core/securityTournament.d.ts.map +1 -0
  255. package/dist/core/securityTournament.js +357 -0
  256. package/dist/core/securityTournament.js.map +1 -0
  257. package/dist/core/selfUpgrade.d.ts +253 -0
  258. package/dist/core/selfUpgrade.d.ts.map +1 -0
  259. package/dist/core/selfUpgrade.js +669 -0
  260. package/dist/core/selfUpgrade.js.map +1 -0
  261. package/dist/core/sessionStorage.d.ts +10 -0
  262. package/dist/core/sessionStorage.d.ts.map +1 -0
  263. package/dist/core/sessionStorage.js +46 -0
  264. package/dist/core/sessionStorage.js.map +1 -0
  265. package/dist/core/sessionStore.d.ts +35 -0
  266. package/dist/core/sessionStore.d.ts.map +1 -0
  267. package/dist/core/sessionStore.js +191 -0
  268. package/dist/core/sessionStore.js.map +1 -0
  269. package/dist/core/taskCompletionDetector.d.ts +112 -0
  270. package/dist/core/taskCompletionDetector.d.ts.map +1 -0
  271. package/dist/core/taskCompletionDetector.js +469 -0
  272. package/dist/core/taskCompletionDetector.js.map +1 -0
  273. package/dist/core/toolPreconditions.d.ts +34 -0
  274. package/dist/core/toolPreconditions.d.ts.map +1 -0
  275. package/dist/core/toolPreconditions.js +242 -0
  276. package/dist/core/toolPreconditions.js.map +1 -0
  277. package/dist/core/toolRuntime.d.ts +185 -0
  278. package/dist/core/toolRuntime.d.ts.map +1 -0
  279. package/dist/core/toolRuntime.js +412 -0
  280. package/dist/core/toolRuntime.js.map +1 -0
  281. package/dist/core/tournamentStrategy.d.ts +12 -0
  282. package/dist/core/tournamentStrategy.d.ts.map +1 -0
  283. package/dist/core/tournamentStrategy.js +41 -0
  284. package/dist/core/tournamentStrategy.js.map +1 -0
  285. package/dist/core/types/utilityTypes.d.ts +192 -0
  286. package/dist/core/types/utilityTypes.d.ts.map +1 -0
  287. package/dist/core/types/utilityTypes.js +272 -0
  288. package/dist/core/types/utilityTypes.js.map +1 -0
  289. package/dist/core/types.d.ts +334 -0
  290. package/dist/core/types.d.ts.map +1 -0
  291. package/dist/core/types.js +76 -0
  292. package/dist/core/types.js.map +1 -0
  293. package/dist/core/unifiedOrchestrator.d.ts +47 -0
  294. package/dist/core/unifiedOrchestrator.d.ts.map +1 -0
  295. package/dist/core/unifiedOrchestrator.js +103 -0
  296. package/dist/core/unifiedOrchestrator.js.map +1 -0
  297. package/dist/core/universalSecurityAudit.d.ts +104 -0
  298. package/dist/core/universalSecurityAudit.d.ts.map +1 -0
  299. package/dist/core/universalSecurityAudit.js +2190 -0
  300. package/dist/core/universalSecurityAudit.js.map +1 -0
  301. package/dist/core/updateChecker.d.ts +148 -0
  302. package/dist/core/updateChecker.d.ts.map +1 -0
  303. package/dist/core/updateChecker.js +593 -0
  304. package/dist/core/updateChecker.js.map +1 -0
  305. package/dist/core/variantExecution.d.ts +23 -0
  306. package/dist/core/variantExecution.d.ts.map +1 -0
  307. package/dist/core/variantExecution.js +58 -0
  308. package/dist/core/variantExecution.js.map +1 -0
  309. package/dist/core/verificationFirst.d.ts +110 -0
  310. package/dist/core/verificationFirst.d.ts.map +1 -0
  311. package/dist/core/verificationFirst.js +312 -0
  312. package/dist/core/verificationFirst.js.map +1 -0
  313. package/dist/core/winnerStrategy.d.ts +15 -0
  314. package/dist/core/winnerStrategy.d.ts.map +1 -0
  315. package/dist/core/winnerStrategy.js +18 -0
  316. package/dist/core/winnerStrategy.js.map +1 -0
  317. package/dist/core/zeroDayDiscovery.d.ts +96 -0
  318. package/dist/core/zeroDayDiscovery.d.ts.map +1 -0
  319. package/dist/core/zeroDayDiscovery.js +358 -0
  320. package/dist/core/zeroDayDiscovery.js.map +1 -0
  321. package/dist/headless/interactiveShell.d.ts +22 -0
  322. package/dist/headless/interactiveShell.d.ts.map +1 -0
  323. package/dist/headless/interactiveShell.js +3832 -0
  324. package/dist/headless/interactiveShell.js.map +1 -0
  325. package/dist/headless/quickMode.d.ts +26 -0
  326. package/dist/headless/quickMode.d.ts.map +1 -0
  327. package/dist/headless/quickMode.js +226 -0
  328. package/dist/headless/quickMode.js.map +1 -0
  329. package/dist/providers/baseProvider.d.ts +148 -0
  330. package/dist/providers/baseProvider.d.ts.map +1 -0
  331. package/dist/providers/baseProvider.js +284 -0
  332. package/dist/providers/baseProvider.js.map +1 -0
  333. package/dist/providers/deepseekReasonerProvider.d.ts +57 -0
  334. package/dist/providers/deepseekReasonerProvider.d.ts.map +1 -0
  335. package/dist/providers/deepseekReasonerProvider.js +87 -0
  336. package/dist/providers/deepseekReasonerProvider.js.map +1 -0
  337. package/dist/providers/openaiChatCompletionsProvider.d.ts +64 -0
  338. package/dist/providers/openaiChatCompletionsProvider.d.ts.map +1 -0
  339. package/dist/providers/openaiChatCompletionsProvider.js +1000 -0
  340. package/dist/providers/openaiChatCompletionsProvider.js.map +1 -0
  341. package/dist/providers/providerFactory.d.ts +24 -0
  342. package/dist/providers/providerFactory.d.ts.map +1 -0
  343. package/dist/providers/providerFactory.js +27 -0
  344. package/dist/providers/providerFactory.js.map +1 -0
  345. package/dist/providers/resilientProvider.d.ts +103 -0
  346. package/dist/providers/resilientProvider.d.ts.map +1 -0
  347. package/dist/providers/resilientProvider.js +462 -0
  348. package/dist/providers/resilientProvider.js.map +1 -0
  349. package/dist/runtime/agentController.d.ts +114 -0
  350. package/dist/runtime/agentController.d.ts.map +1 -0
  351. package/dist/runtime/agentController.js +693 -0
  352. package/dist/runtime/agentController.js.map +1 -0
  353. package/dist/runtime/agentHost.d.ts +61 -0
  354. package/dist/runtime/agentHost.d.ts.map +1 -0
  355. package/dist/runtime/agentHost.js +157 -0
  356. package/dist/runtime/agentHost.js.map +1 -0
  357. package/dist/runtime/agentSession.d.ts +45 -0
  358. package/dist/runtime/agentSession.d.ts.map +1 -0
  359. package/dist/runtime/agentSession.js +214 -0
  360. package/dist/runtime/agentSession.js.map +1 -0
  361. package/dist/runtime/agentWorkerPool.d.ts +167 -0
  362. package/dist/runtime/agentWorkerPool.d.ts.map +1 -0
  363. package/dist/runtime/agentWorkerPool.js +435 -0
  364. package/dist/runtime/agentWorkerPool.js.map +1 -0
  365. package/dist/runtime/node.d.ts +7 -0
  366. package/dist/runtime/node.d.ts.map +1 -0
  367. package/dist/runtime/node.js +18 -0
  368. package/dist/runtime/node.js.map +1 -0
  369. package/dist/runtime/universal.d.ts +18 -0
  370. package/dist/runtime/universal.d.ts.map +1 -0
  371. package/dist/runtime/universal.js +21 -0
  372. package/dist/runtime/universal.js.map +1 -0
  373. package/dist/ui/PromptController.d.ts +174 -0
  374. package/dist/ui/PromptController.d.ts.map +1 -0
  375. package/dist/ui/PromptController.js +351 -0
  376. package/dist/ui/PromptController.js.map +1 -0
  377. package/dist/ui/UnifiedUIRenderer.d.ts +779 -0
  378. package/dist/ui/UnifiedUIRenderer.d.ts.map +1 -0
  379. package/dist/ui/UnifiedUIRenderer.js +5458 -0
  380. package/dist/ui/UnifiedUIRenderer.js.map +1 -0
  381. package/dist/ui/animatedStatus.d.ts +140 -0
  382. package/dist/ui/animatedStatus.d.ts.map +1 -0
  383. package/dist/ui/animatedStatus.js +480 -0
  384. package/dist/ui/animatedStatus.js.map +1 -0
  385. package/dist/ui/animation/AnimationScheduler.d.ts +197 -0
  386. package/dist/ui/animation/AnimationScheduler.d.ts.map +1 -0
  387. package/dist/ui/animation/AnimationScheduler.js +440 -0
  388. package/dist/ui/animation/AnimationScheduler.js.map +1 -0
  389. package/dist/ui/codeHighlighter.d.ts +6 -0
  390. package/dist/ui/codeHighlighter.d.ts.map +1 -0
  391. package/dist/ui/codeHighlighter.js +855 -0
  392. package/dist/ui/codeHighlighter.js.map +1 -0
  393. package/dist/ui/designSystem.d.ts +26 -0
  394. package/dist/ui/designSystem.d.ts.map +1 -0
  395. package/dist/ui/designSystem.js +114 -0
  396. package/dist/ui/designSystem.js.map +1 -0
  397. package/dist/ui/errorFormatter.d.ts +64 -0
  398. package/dist/ui/errorFormatter.d.ts.map +1 -0
  399. package/dist/ui/errorFormatter.js +316 -0
  400. package/dist/ui/errorFormatter.js.map +1 -0
  401. package/dist/ui/globalWriteLock.d.ts +63 -0
  402. package/dist/ui/globalWriteLock.d.ts.map +1 -0
  403. package/dist/ui/globalWriteLock.js +173 -0
  404. package/dist/ui/globalWriteLock.js.map +1 -0
  405. package/dist/ui/index.d.ts +32 -0
  406. package/dist/ui/index.d.ts.map +1 -0
  407. package/dist/ui/index.js +54 -0
  408. package/dist/ui/index.js.map +1 -0
  409. package/dist/ui/interrupts/InterruptManager.d.ts +157 -0
  410. package/dist/ui/interrupts/InterruptManager.d.ts.map +1 -0
  411. package/dist/ui/interrupts/InterruptManager.js +501 -0
  412. package/dist/ui/interrupts/InterruptManager.js.map +1 -0
  413. package/dist/ui/layout.d.ts +27 -0
  414. package/dist/ui/layout.d.ts.map +1 -0
  415. package/dist/ui/layout.js +184 -0
  416. package/dist/ui/layout.js.map +1 -0
  417. package/dist/ui/maxOffensiveUkraineUI.d.ts +94 -0
  418. package/dist/ui/maxOffensiveUkraineUI.d.ts.map +1 -0
  419. package/dist/ui/maxOffensiveUkraineUI.js +316 -0
  420. package/dist/ui/maxOffensiveUkraineUI.js.map +1 -0
  421. package/dist/ui/outputMode.d.ts +44 -0
  422. package/dist/ui/outputMode.d.ts.map +1 -0
  423. package/dist/ui/outputMode.js +123 -0
  424. package/dist/ui/outputMode.js.map +1 -0
  425. package/dist/ui/overlay/OverlayManager.d.ts +105 -0
  426. package/dist/ui/overlay/OverlayManager.d.ts.map +1 -0
  427. package/dist/ui/overlay/OverlayManager.js +291 -0
  428. package/dist/ui/overlay/OverlayManager.js.map +1 -0
  429. package/dist/ui/premiumComponents.d.ts +54 -0
  430. package/dist/ui/premiumComponents.d.ts.map +1 -0
  431. package/dist/ui/premiumComponents.js +241 -0
  432. package/dist/ui/premiumComponents.js.map +1 -0
  433. package/dist/ui/richText.d.ts +13 -0
  434. package/dist/ui/richText.d.ts.map +1 -0
  435. package/dist/ui/richText.js +444 -0
  436. package/dist/ui/richText.js.map +1 -0
  437. package/dist/ui/telemetry/ResponseTracker.d.ts +22 -0
  438. package/dist/ui/telemetry/ResponseTracker.d.ts.map +1 -0
  439. package/dist/ui/telemetry/ResponseTracker.js +60 -0
  440. package/dist/ui/telemetry/ResponseTracker.js.map +1 -0
  441. package/dist/ui/telemetry/UITelemetry.d.ts +181 -0
  442. package/dist/ui/telemetry/UITelemetry.d.ts.map +1 -0
  443. package/dist/ui/telemetry/UITelemetry.js +446 -0
  444. package/dist/ui/telemetry/UITelemetry.js.map +1 -0
  445. package/dist/ui/textHighlighter.d.ts +83 -0
  446. package/dist/ui/textHighlighter.d.ts.map +1 -0
  447. package/dist/ui/textHighlighter.js +267 -0
  448. package/dist/ui/textHighlighter.js.map +1 -0
  449. package/dist/ui/theme.d.ts +364 -0
  450. package/dist/ui/theme.d.ts.map +1 -0
  451. package/dist/ui/theme.js +471 -0
  452. package/dist/ui/theme.js.map +1 -0
  453. package/dist/ui/toolDisplay.d.ts +221 -0
  454. package/dist/ui/toolDisplay.d.ts.map +1 -0
  455. package/dist/ui/toolDisplay.js +1654 -0
  456. package/dist/ui/toolDisplay.js.map +1 -0
  457. package/dist/ui/uiConstants.d.ts +288 -0
  458. package/dist/ui/uiConstants.d.ts.map +1 -0
  459. package/dist/ui/uiConstants.js +472 -0
  460. package/dist/ui/uiConstants.js.map +1 -0
  461. package/dist/utils/askUserPrompt.d.ts +21 -0
  462. package/dist/utils/askUserPrompt.d.ts.map +1 -0
  463. package/dist/utils/askUserPrompt.js +87 -0
  464. package/dist/utils/askUserPrompt.js.map +1 -0
  465. package/dist/utils/asyncUtils.d.ts +95 -0
  466. package/dist/utils/asyncUtils.d.ts.map +1 -0
  467. package/dist/utils/asyncUtils.js +286 -0
  468. package/dist/utils/asyncUtils.js.map +1 -0
  469. package/dist/utils/debugLogger.d.ts +6 -0
  470. package/dist/utils/debugLogger.d.ts.map +1 -0
  471. package/dist/utils/debugLogger.js +39 -0
  472. package/dist/utils/debugLogger.js.map +1 -0
  473. package/dist/utils/errorUtils.d.ts +12 -0
  474. package/dist/utils/errorUtils.d.ts.map +1 -0
  475. package/dist/utils/errorUtils.js +83 -0
  476. package/dist/utils/errorUtils.js.map +1 -0
  477. package/dist/utils/frontmatter.d.ts +10 -0
  478. package/dist/utils/frontmatter.d.ts.map +1 -0
  479. package/dist/utils/frontmatter.js +78 -0
  480. package/dist/utils/frontmatter.js.map +1 -0
  481. package/dist/utils/packageInfo.d.ts +14 -0
  482. package/dist/utils/packageInfo.d.ts.map +1 -0
  483. package/dist/utils/packageInfo.js +45 -0
  484. package/dist/utils/packageInfo.js.map +1 -0
  485. package/dist/utils/planFormatter.d.ts +34 -0
  486. package/dist/utils/planFormatter.d.ts.map +1 -0
  487. package/dist/utils/planFormatter.js +141 -0
  488. package/dist/utils/planFormatter.js.map +1 -0
  489. package/dist/utils/securityUtils.d.ts +132 -0
  490. package/dist/utils/securityUtils.d.ts.map +1 -0
  491. package/dist/utils/securityUtils.js +324 -0
  492. package/dist/utils/securityUtils.js.map +1 -0
  493. package/dist/workspace.d.ts +8 -0
  494. package/dist/workspace.d.ts.map +1 -0
  495. package/dist/workspace.js +134 -0
  496. package/dist/workspace.js.map +1 -0
  497. package/dist/workspace.validator.d.ts +49 -0
  498. package/dist/workspace.validator.d.ts.map +1 -0
  499. package/dist/workspace.validator.js +215 -0
  500. package/dist/workspace.validator.js.map +1 -0
  501. package/package.json +60 -0
@@ -0,0 +1,462 @@
1
+ /**
2
+ * Resilient Provider Wrapper
3
+ *
4
+ * Adds rate limiting, exponential backoff retry, and circuit breaker
5
+ * patterns to any LLM provider for maximum reliability and performance.
6
+ *
7
+ * PERF: Provider-agnostic wrapper that prevents rate limit errors and
8
+ * automatically recovers from transient failures.
9
+ */
10
+ import { RateLimiter, retry, sleep } from '../utils/asyncUtils.js';
11
+ const RATE_LIMIT_PATTERNS = [
12
+ 'rate limit',
13
+ 'rate_limit',
14
+ 'ratelimit',
15
+ 'too many requests',
16
+ '429',
17
+ 'quota exceeded',
18
+ 'request limit',
19
+ 'throttled',
20
+ 'overloaded',
21
+ 'capacity',
22
+ ];
23
+ const TRANSIENT_ERROR_PATTERNS = [
24
+ 'timeout',
25
+ 'timed out',
26
+ 'network',
27
+ 'connection',
28
+ 'econnrefused',
29
+ 'econnreset',
30
+ 'enotfound',
31
+ 'epipe',
32
+ 'econnaborted',
33
+ 'ehostunreach',
34
+ 'enetunreach',
35
+ 'socket',
36
+ 'temporarily unavailable',
37
+ '502',
38
+ '503',
39
+ '504',
40
+ 'bad gateway',
41
+ 'service unavailable',
42
+ 'gateway timeout',
43
+ 'internal server error',
44
+ '500',
45
+ // Stream and fetch errors
46
+ 'premature close',
47
+ 'premature end',
48
+ 'unexpected end',
49
+ 'stream',
50
+ 'aborted',
51
+ 'fetcherror',
52
+ 'fetch error',
53
+ 'invalid response body',
54
+ 'response body',
55
+ 'gunzip',
56
+ 'decompress',
57
+ 'zlib',
58
+ 'content-encoding',
59
+ 'chunked encoding',
60
+ 'transfer-encoding',
61
+ // SSL/TLS errors
62
+ 'ssl',
63
+ 'tls',
64
+ 'certificate',
65
+ 'cert',
66
+ 'handshake',
67
+ ];
68
+ const FALLBACK_ELIGIBLE_PATTERNS = [
69
+ // Quota/billing errors
70
+ 'insufficient_quota',
71
+ 'quota exceeded',
72
+ 'exceeded your current quota',
73
+ 'billing',
74
+ 'payment required',
75
+ 'account suspended',
76
+ 'account disabled',
77
+ // API key errors
78
+ 'api key expired',
79
+ 'api_key_invalid',
80
+ 'invalid api key',
81
+ 'invalid_api_key',
82
+ 'api key not valid',
83
+ // Model availability errors
84
+ 'model not found',
85
+ 'model_not_found',
86
+ 'does not exist',
87
+ 'not available',
88
+ 'deprecated',
89
+ 'access denied',
90
+ 'permission denied',
91
+ 'unauthorized',
92
+ '401',
93
+ '403',
94
+ '400',
95
+ 'invalid_argument',
96
+ // Regional/access restrictions
97
+ 'region',
98
+ 'not supported in your',
99
+ 'country',
100
+ 'restricted',
101
+ ];
102
+ /**
103
+ * Check if an error warrants trying a different provider (fallback).
104
+ * These are non-transient errors that won't be fixed by retrying the same provider.
105
+ */
106
+ export function isFallbackEligibleError(error) {
107
+ if (!(error instanceof Error))
108
+ return false;
109
+ const message = error.message.toLowerCase();
110
+ // Check message for fallback patterns
111
+ if (FALLBACK_ELIGIBLE_PATTERNS.some(pattern => message.includes(pattern))) {
112
+ return true;
113
+ }
114
+ // Check error code/type/reason if present (OpenAI and Google style errors)
115
+ const errorWithCode = error;
116
+ const code = String(errorWithCode.code ?? '').toLowerCase();
117
+ const type = (errorWithCode.type ?? '').toLowerCase();
118
+ const reason = (errorWithCode.reason ?? '').toLowerCase();
119
+ const status = (errorWithCode.status ?? '').toLowerCase();
120
+ // OpenAI style errors
121
+ if (code === 'insufficient_quota' || type === 'insufficient_quota') {
122
+ return true;
123
+ }
124
+ if (code === 'model_not_found' || type === 'model_not_found') {
125
+ return true;
126
+ }
127
+ if (code === 'invalid_api_key' || type === 'invalid_api_key') {
128
+ return true;
129
+ }
130
+ // Google style errors
131
+ if (reason === 'api_key_invalid' || status === 'invalid_argument') {
132
+ return true;
133
+ }
134
+ if (code === '400' || code === '401' || code === '403') {
135
+ return true;
136
+ }
137
+ return false;
138
+ }
139
+ /**
140
+ * Get a user-friendly description of why fallback is needed
141
+ */
142
+ export function getFallbackReason(error) {
143
+ if (!(error instanceof Error))
144
+ return 'Unknown error';
145
+ const message = error.message.toLowerCase();
146
+ if (message.includes('quota') || message.includes('billing')) {
147
+ return 'API quota exceeded or billing issue';
148
+ }
149
+ if (message.includes('expired') || message.includes('api_key_invalid') || message.includes('api key')) {
150
+ return 'API key expired or invalid';
151
+ }
152
+ if (message.includes('model') && (message.includes('not found') || message.includes('not exist'))) {
153
+ return 'Model not available';
154
+ }
155
+ if (message.includes('unauthorized') || message.includes('401') || message.includes('invalid_api_key')) {
156
+ return 'Invalid API key';
157
+ }
158
+ if (message.includes('403') || message.includes('permission') || message.includes('access denied')) {
159
+ return 'Access denied';
160
+ }
161
+ if (message.includes('400') || message.includes('invalid_argument')) {
162
+ return 'Invalid request or API key';
163
+ }
164
+ if (message.includes('region') || message.includes('country') || message.includes('restricted')) {
165
+ return 'Regional restriction';
166
+ }
167
+ return 'Provider error';
168
+ }
169
+ function isRateLimitError(error) {
170
+ if (!(error instanceof Error))
171
+ return false;
172
+ const message = error.message.toLowerCase();
173
+ return RATE_LIMIT_PATTERNS.some(pattern => message.includes(pattern));
174
+ }
175
+ function isTransientError(error) {
176
+ if (!(error instanceof Error))
177
+ return false;
178
+ // Check message
179
+ const message = error.message.toLowerCase();
180
+ if (TRANSIENT_ERROR_PATTERNS.some(pattern => message.includes(pattern))) {
181
+ return true;
182
+ }
183
+ // Check error name/type (FetchError, AbortError, etc.)
184
+ const errorName = error.name?.toLowerCase() ?? '';
185
+ if (errorName.includes('fetch') || errorName.includes('abort') || errorName.includes('network')) {
186
+ return true;
187
+ }
188
+ // Check error code if present (Node.js style)
189
+ const errorCode = error.code?.toLowerCase() ?? '';
190
+ if (errorCode && TRANSIENT_ERROR_PATTERNS.some(pattern => errorCode.includes(pattern))) {
191
+ return true;
192
+ }
193
+ // Check cause chain for nested errors
194
+ const cause = error.cause;
195
+ if (cause instanceof Error) {
196
+ return isTransientError(cause);
197
+ }
198
+ return false;
199
+ }
200
+ function shouldRetry(error) {
201
+ return isRateLimitError(error) || isTransientError(error);
202
+ }
203
+ /**
204
+ * Wraps any LLM provider with rate limiting and retry logic
205
+ */
206
+ export class ResilientProvider {
207
+ id;
208
+ model;
209
+ provider;
210
+ rateLimiter;
211
+ config;
212
+ circuitBreaker;
213
+ stats = {
214
+ totalRequests: 0,
215
+ rateLimitHits: 0,
216
+ retries: 0,
217
+ circuitBreakerTrips: 0,
218
+ };
219
+ constructor(provider, config = {}) {
220
+ this.provider = provider;
221
+ this.id = provider.id;
222
+ this.model = provider.model;
223
+ this.config = {
224
+ maxRequestsPerMinute: config.maxRequestsPerMinute ?? 50,
225
+ maxRetries: config.maxRetries ?? 4,
226
+ baseDelayMs: config.baseDelayMs ?? 1000,
227
+ maxDelayMs: config.maxDelayMs ?? 32000,
228
+ enableCircuitBreaker: config.enableCircuitBreaker ?? true,
229
+ circuitBreakerThreshold: config.circuitBreakerThreshold ?? 5,
230
+ circuitBreakerResetMs: config.circuitBreakerResetMs ?? 60000,
231
+ };
232
+ this.rateLimiter = new RateLimiter({
233
+ maxRequests: this.config.maxRequestsPerMinute,
234
+ windowMs: 60000,
235
+ });
236
+ this.circuitBreaker = {
237
+ failures: 0,
238
+ lastFailure: 0,
239
+ isOpen: false,
240
+ };
241
+ }
242
+ /**
243
+ * Check and potentially reset circuit breaker
244
+ */
245
+ checkCircuitBreaker() {
246
+ if (!this.config.enableCircuitBreaker)
247
+ return;
248
+ if (this.circuitBreaker.isOpen) {
249
+ const elapsed = Date.now() - this.circuitBreaker.lastFailure;
250
+ if (elapsed >= this.config.circuitBreakerResetMs) {
251
+ // Half-open: allow one request through
252
+ this.circuitBreaker.isOpen = false;
253
+ this.circuitBreaker.failures = Math.floor(this.circuitBreaker.failures / 2);
254
+ }
255
+ else {
256
+ throw new Error(`Circuit breaker is open. Too many failures (${this.circuitBreaker.failures}). ` +
257
+ `Retry in ${Math.ceil((this.config.circuitBreakerResetMs - elapsed) / 1000)}s.`);
258
+ }
259
+ }
260
+ }
261
+ /**
262
+ * Record a failure for circuit breaker
263
+ */
264
+ recordFailure(_error) {
265
+ if (!this.config.enableCircuitBreaker)
266
+ return;
267
+ this.circuitBreaker.failures++;
268
+ this.circuitBreaker.lastFailure = Date.now();
269
+ if (this.circuitBreaker.failures >= this.config.circuitBreakerThreshold) {
270
+ this.circuitBreaker.isOpen = true;
271
+ this.stats.circuitBreakerTrips++;
272
+ }
273
+ }
274
+ /**
275
+ * Record a success to reset circuit breaker
276
+ */
277
+ recordSuccess() {
278
+ if (this.config.enableCircuitBreaker && this.circuitBreaker.failures > 0) {
279
+ this.circuitBreaker.failures = Math.max(0, this.circuitBreaker.failures - 1);
280
+ }
281
+ }
282
+ /**
283
+ * Execute a request with rate limiting and retry
284
+ */
285
+ async executeWithResilience(operation, _operationName) {
286
+ this.stats.totalRequests++;
287
+ // Check circuit breaker
288
+ this.checkCircuitBreaker();
289
+ // Acquire rate limit token
290
+ await this.rateLimiter.acquire();
291
+ try {
292
+ const result = await retry(operation, {
293
+ maxRetries: this.config.maxRetries,
294
+ baseDelayMs: this.config.baseDelayMs,
295
+ maxDelayMs: this.config.maxDelayMs,
296
+ backoffMultiplier: 2,
297
+ shouldRetry: (error) => {
298
+ if (shouldRetry(error)) {
299
+ this.stats.retries++;
300
+ if (isRateLimitError(error)) {
301
+ this.stats.rateLimitHits++;
302
+ }
303
+ return true;
304
+ }
305
+ return false;
306
+ },
307
+ });
308
+ this.recordSuccess();
309
+ return result;
310
+ }
311
+ catch (error) {
312
+ this.recordFailure(error);
313
+ throw error;
314
+ }
315
+ }
316
+ /**
317
+ * Generate a response with resilience
318
+ */
319
+ async generate(messages, tools) {
320
+ return this.executeWithResilience(() => this.provider.generate(messages, tools), 'generate');
321
+ }
322
+ /**
323
+ * Generate a streaming response with resilience
324
+ *
325
+ * Note: Retry logic is limited for streaming - we can only retry
326
+ * before the stream starts, not mid-stream.
327
+ */
328
+ async *generateStream(messages, tools) {
329
+ if (!this.provider.generateStream) {
330
+ // Fall back to non-streaming
331
+ const response = await this.generate(messages, tools);
332
+ if (response.type === 'message') {
333
+ yield { type: 'content', content: response.content };
334
+ }
335
+ else if (response.type === 'tool_calls') {
336
+ if (response.content) {
337
+ yield { type: 'content', content: response.content };
338
+ }
339
+ if (response.toolCalls) {
340
+ for (const call of response.toolCalls) {
341
+ yield { type: 'tool_call', toolCall: call };
342
+ }
343
+ }
344
+ }
345
+ if (response.usage) {
346
+ yield { type: 'usage', usage: response.usage };
347
+ }
348
+ return;
349
+ }
350
+ this.stats.totalRequests++;
351
+ // Check circuit breaker
352
+ this.checkCircuitBreaker();
353
+ // Acquire rate limit token
354
+ await this.rateLimiter.acquire();
355
+ let attempts = 0;
356
+ let lastError;
357
+ while (attempts <= this.config.maxRetries) {
358
+ try {
359
+ const stream = this.provider.generateStream(messages, tools);
360
+ for await (const chunk of stream) {
361
+ yield chunk;
362
+ }
363
+ this.recordSuccess();
364
+ return;
365
+ }
366
+ catch (err) {
367
+ lastError = err;
368
+ attempts++;
369
+ if (attempts <= this.config.maxRetries && shouldRetry(err)) {
370
+ this.stats.retries++;
371
+ if (isRateLimitError(err)) {
372
+ this.stats.rateLimitHits++;
373
+ }
374
+ const delay = Math.min(this.config.baseDelayMs * Math.pow(2, attempts - 1), this.config.maxDelayMs);
375
+ await sleep(delay);
376
+ continue;
377
+ }
378
+ this.recordFailure(err);
379
+ throw err;
380
+ }
381
+ }
382
+ this.recordFailure(lastError);
383
+ throw lastError;
384
+ }
385
+ /**
386
+ * Get resilience statistics
387
+ */
388
+ getStats() {
389
+ return {
390
+ ...this.stats,
391
+ circuitBreakerOpen: this.circuitBreaker.isOpen,
392
+ availableTokens: this.rateLimiter.availableTokens,
393
+ };
394
+ }
395
+ /**
396
+ * Reset statistics
397
+ */
398
+ resetStats() {
399
+ this.stats = {
400
+ totalRequests: 0,
401
+ rateLimitHits: 0,
402
+ retries: 0,
403
+ circuitBreakerTrips: 0,
404
+ };
405
+ }
406
+ }
407
+ /**
408
+ * Wrap any provider with resilience features
409
+ */
410
+ export function withResilience(provider, config) {
411
+ return new ResilientProvider(provider, config);
412
+ }
413
+ /**
414
+ * Provider-specific recommended configurations
415
+ */
416
+ export const PROVIDER_RESILIENCE_CONFIGS = {
417
+ anthropic: {
418
+ maxRequestsPerMinute: 50,
419
+ maxRetries: 4,
420
+ baseDelayMs: 1500,
421
+ maxDelayMs: 40000,
422
+ },
423
+ openai: {
424
+ maxRequestsPerMinute: 60,
425
+ maxRetries: 3,
426
+ baseDelayMs: 1000,
427
+ maxDelayMs: 30000,
428
+ },
429
+ google: {
430
+ maxRequestsPerMinute: 60,
431
+ maxRetries: 3,
432
+ baseDelayMs: 1000,
433
+ maxDelayMs: 30000,
434
+ },
435
+ deepseek: {
436
+ maxRequestsPerMinute: 30,
437
+ maxRetries: 4,
438
+ baseDelayMs: 2000,
439
+ maxDelayMs: 45000,
440
+ },
441
+ xai: {
442
+ maxRequestsPerMinute: 40,
443
+ maxRetries: 3,
444
+ baseDelayMs: 1500,
445
+ maxDelayMs: 35000,
446
+ },
447
+ ollama: {
448
+ maxRequestsPerMinute: 100,
449
+ maxRetries: 2,
450
+ baseDelayMs: 500,
451
+ maxDelayMs: 10000,
452
+ enableCircuitBreaker: false, // Local, less likely to need circuit breaker
453
+ },
454
+ };
455
+ /**
456
+ * Wrap a provider with resilience using provider-specific defaults
457
+ */
458
+ export function withProviderResilience(provider, providerId, overrides) {
459
+ const defaults = PROVIDER_RESILIENCE_CONFIGS[providerId] ?? {};
460
+ return new ResilientProvider(provider, { ...defaults, ...overrides });
461
+ }
462
+ //# sourceMappingURL=resilientProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resilientProvider.js","sourceRoot":"","sources":["../../src/providers/resilientProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ import type { ProfileName } from '../config.js';
2
+ import type { UniversalRuntime } from './universal.js';
3
+ import { type NodeRuntimeOptions } from './node.js';
4
+ import type { CapabilityModule } from './agentHost.js';
5
+ import type { AgentCallbacks } from '../core/agent.js';
6
+ import type { ToolRuntimeObserver, ToolSuite } from '../core/toolRuntime.js';
7
+ import type { ConversationMessage } from '../core/types.js';
8
+ import type { AgentEventUnion, CapabilityManifest, IAgentController, ModelConfig } from '../contracts/v1/agent.js';
9
+ interface EventSinkRef {
10
+ current: EventStream<AgentEventUnion> | null;
11
+ }
12
+ declare class EventStream<T> implements AsyncIterableIterator<T> {
13
+ private readonly queue;
14
+ private pending;
15
+ private closed;
16
+ private failure;
17
+ push(value: T): void;
18
+ close(): void;
19
+ fail(error: Error): void;
20
+ next(): Promise<IteratorResult<T>>;
21
+ return(): Promise<IteratorResult<T>>;
22
+ throw(error: unknown): Promise<IteratorResult<T>>;
23
+ [Symbol.asyncIterator](): AsyncIterableIterator<T>;
24
+ }
25
+ interface AgentControllerDependencies {
26
+ runtime: UniversalRuntime;
27
+ sinkRef: EventSinkRef;
28
+ externalCallbacks?: AgentCallbacks;
29
+ }
30
+ export interface AgentControllerCreateOptions extends Omit<NodeRuntimeOptions, 'toolObserver'> {
31
+ profile: ProfileName;
32
+ workspaceContext: string | null;
33
+ workingDir: string;
34
+ modules?: CapabilityModule[];
35
+ callbacks?: AgentCallbacks;
36
+ /** Skip provider discovery for faster startup (used in quick mode) */
37
+ skipProviderDiscovery?: boolean;
38
+ }
39
+ export declare function createAgentController(options: AgentControllerCreateOptions, additionalObserver?: ToolRuntimeObserver): Promise<AgentController>;
40
+ export declare class AgentController implements IAgentController {
41
+ private readonly session;
42
+ private readonly sinkRef;
43
+ private readonly externalCallbacks;
44
+ private activeSink;
45
+ private agent;
46
+ private cachedHistory;
47
+ private selection;
48
+ /** Set of providers that have failed with non-retryable errors in this session */
49
+ private failedProviders;
50
+ /** Maximum fallback attempts per send() call */
51
+ private static readonly MAX_FALLBACK_ATTEMPTS;
52
+ private activeTimeout;
53
+ private inflightReject;
54
+ constructor(dependencies: AgentControllerDependencies);
55
+ private buildInitialSelection;
56
+ private ensureAgent;
57
+ private createAgentCallbacks;
58
+ /**
59
+ * Check if content looks like garbage/leaked reasoning fragments.
60
+ * Returns true if the content should be filtered out.
61
+ * NOTE: Keep this minimal to avoid suppressing legitimate short responses.
62
+ */
63
+ private isGarbageContent;
64
+ private emitDelta;
65
+ private emitError;
66
+ private emitReasoning;
67
+ private emitUsage;
68
+ private handleEditExplanation;
69
+ private handleAssistantMessage;
70
+ private updateCachedHistory;
71
+ cancel(reason?: string): void;
72
+ private clearActiveTimeout;
73
+ private rejectInflight;
74
+ send(message: string): AsyncIterableIterator<AgentEventUnion>;
75
+ switchModel(config: ModelConfig): Promise<void>;
76
+ getCapabilities(): CapabilityManifest;
77
+ registerToolSuite(suiteId: string, suite: ToolSuite): void;
78
+ unregisterToolSuite(suiteId: string): void;
79
+ getHistory(): ConversationMessage[];
80
+ clearHistory(): void;
81
+ /**
82
+ * Check if the controller is currently processing a message.
83
+ */
84
+ isProcessing(): boolean;
85
+ /**
86
+ * Force-clear any lingering active state. Use this before starting a new
87
+ * operation (like attack tournament) to ensure clean state.
88
+ * This will close any active sink without waiting for completion.
89
+ */
90
+ forceReset(): void;
91
+ /**
92
+ * Sanitize history by fixing orphaned tool calls (tool_calls without corresponding tool results).
93
+ * This can happen when a run is interrupted mid-tool-execution.
94
+ * We add placeholder error results for any orphaned tool calls to keep history valid.
95
+ */
96
+ sanitizeHistory(): void;
97
+ private toModelConfig;
98
+ /**
99
+ * Find the next available provider for fallback.
100
+ * Excludes providers that have already failed in this session.
101
+ */
102
+ private findFallbackProvider;
103
+ /**
104
+ * Emit a provider fallback event
105
+ */
106
+ private emitFallbackEvent;
107
+ /**
108
+ * Attempt to switch to a fallback provider
109
+ */
110
+ private attemptFallback;
111
+ getToolSuites(): ToolSuite[];
112
+ }
113
+ export {};
114
+ //# sourceMappingURL=agentController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agentController.d.ts","sourceRoot":"","sources":["../../src/runtime/agentController.ts"],"names":[],"mappings":"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"}