@framers/agentos 0.1.112 → 0.1.114

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 (552) hide show
  1. package/README.md +39 -5
  2. package/dist/api/AgentOS.d.ts +45 -12
  3. package/dist/api/AgentOS.d.ts.map +1 -1
  4. package/dist/api/AgentOS.js +225 -78
  5. package/dist/api/AgentOS.js.map +1 -1
  6. package/dist/api/AgentOSOrchestrator.d.ts +8 -0
  7. package/dist/api/AgentOSOrchestrator.d.ts.map +1 -1
  8. package/dist/api/AgentOSOrchestrator.js +350 -59
  9. package/dist/api/AgentOSOrchestrator.js.map +1 -1
  10. package/dist/api/StreamChunkEmitter.d.ts.map +1 -1
  11. package/dist/api/StreamChunkEmitter.js +2 -0
  12. package/dist/api/StreamChunkEmitter.js.map +1 -1
  13. package/dist/api/agency.d.ts.map +1 -1
  14. package/dist/api/agency.js +47 -1
  15. package/dist/api/agency.js.map +1 -1
  16. package/dist/api/agent.d.ts +18 -5
  17. package/dist/api/agent.d.ts.map +1 -1
  18. package/dist/api/agent.js +48 -9
  19. package/dist/api/agent.js.map +1 -1
  20. package/dist/api/agentExport.d.ts +202 -0
  21. package/dist/api/agentExport.d.ts.map +1 -0
  22. package/dist/api/agentExport.js +323 -0
  23. package/dist/api/agentExport.js.map +1 -0
  24. package/dist/api/editImage.d.ts +119 -0
  25. package/dist/api/editImage.d.ts.map +1 -0
  26. package/dist/api/editImage.js +150 -0
  27. package/dist/api/editImage.js.map +1 -0
  28. package/dist/api/embedText.d.ts +137 -0
  29. package/dist/api/embedText.d.ts.map +1 -0
  30. package/dist/api/embedText.js +229 -0
  31. package/dist/api/embedText.js.map +1 -0
  32. package/dist/api/externalToolRegistry.d.ts +44 -0
  33. package/dist/api/externalToolRegistry.d.ts.map +1 -0
  34. package/dist/api/externalToolRegistry.js +245 -0
  35. package/dist/api/externalToolRegistry.js.map +1 -0
  36. package/dist/api/generateImage.d.ts +1 -1
  37. package/dist/api/generateImage.d.ts.map +1 -1
  38. package/dist/api/generateImage.js +17 -13
  39. package/dist/api/generateImage.js.map +1 -1
  40. package/dist/api/generateObject.d.ts +185 -0
  41. package/dist/api/generateObject.d.ts.map +1 -0
  42. package/dist/api/generateObject.js +249 -0
  43. package/dist/api/generateObject.js.map +1 -0
  44. package/dist/api/generateText.d.ts +13 -3
  45. package/dist/api/generateText.d.ts.map +1 -1
  46. package/dist/api/generateText.js +20 -5
  47. package/dist/api/generateText.js.map +1 -1
  48. package/dist/api/interfaces/IAgentOS.d.ts +29 -1
  49. package/dist/api/interfaces/IAgentOS.d.ts.map +1 -1
  50. package/dist/api/model.d.ts +7 -7
  51. package/dist/api/model.d.ts.map +1 -1
  52. package/dist/api/model.js +22 -16
  53. package/dist/api/model.js.map +1 -1
  54. package/dist/api/processRequestWithExternalTools.d.ts +26 -0
  55. package/dist/api/processRequestWithExternalTools.d.ts.map +1 -0
  56. package/dist/api/processRequestWithExternalTools.js +52 -0
  57. package/dist/api/processRequestWithExternalTools.js.map +1 -0
  58. package/dist/api/processRequestWithRegisteredTools.d.ts +56 -0
  59. package/dist/api/processRequestWithRegisteredTools.d.ts.map +1 -0
  60. package/dist/api/processRequestWithRegisteredTools.js +125 -0
  61. package/dist/api/processRequestWithRegisteredTools.js.map +1 -0
  62. package/dist/api/provider-defaults.d.ts.map +1 -1
  63. package/dist/api/provider-defaults.js +28 -0
  64. package/dist/api/provider-defaults.js.map +1 -1
  65. package/dist/api/resumeExternalToolRequestWithRegisteredTools.d.ts +71 -0
  66. package/dist/api/resumeExternalToolRequestWithRegisteredTools.d.ts.map +1 -0
  67. package/dist/api/resumeExternalToolRequestWithRegisteredTools.js +159 -0
  68. package/dist/api/resumeExternalToolRequestWithRegisteredTools.js.map +1 -0
  69. package/dist/api/strategies/agentGraphBuilder.d.ts +170 -0
  70. package/dist/api/strategies/agentGraphBuilder.d.ts.map +1 -0
  71. package/dist/api/strategies/agentGraphBuilder.js +299 -0
  72. package/dist/api/strategies/agentGraphBuilder.js.map +1 -0
  73. package/dist/api/strategies/debate.d.ts +12 -1
  74. package/dist/api/strategies/debate.d.ts.map +1 -1
  75. package/dist/api/strategies/debate.js +41 -5
  76. package/dist/api/strategies/debate.js.map +1 -1
  77. package/dist/api/strategies/graphCompiler.d.ts +84 -0
  78. package/dist/api/strategies/graphCompiler.d.ts.map +1 -0
  79. package/dist/api/strategies/graphCompiler.js +617 -0
  80. package/dist/api/strategies/graphCompiler.js.map +1 -0
  81. package/dist/api/strategies/hierarchical.d.ts +15 -1
  82. package/dist/api/strategies/hierarchical.d.ts.map +1 -1
  83. package/dist/api/strategies/hierarchical.js +53 -8
  84. package/dist/api/strategies/hierarchical.js.map +1 -1
  85. package/dist/api/strategies/index.d.ts +29 -4
  86. package/dist/api/strategies/index.d.ts.map +1 -1
  87. package/dist/api/strategies/index.js +28 -4
  88. package/dist/api/strategies/index.js.map +1 -1
  89. package/dist/api/strategies/parallel.d.ts +15 -4
  90. package/dist/api/strategies/parallel.d.ts.map +1 -1
  91. package/dist/api/strategies/parallel.js +53 -16
  92. package/dist/api/strategies/parallel.js.map +1 -1
  93. package/dist/api/strategies/review-loop.d.ts +15 -1
  94. package/dist/api/strategies/review-loop.d.ts.map +1 -1
  95. package/dist/api/strategies/review-loop.js +36 -10
  96. package/dist/api/strategies/review-loop.js.map +1 -1
  97. package/dist/api/strategies/sequential.d.ts +11 -1
  98. package/dist/api/strategies/sequential.d.ts.map +1 -1
  99. package/dist/api/strategies/sequential.js +39 -8
  100. package/dist/api/strategies/sequential.js.map +1 -1
  101. package/dist/api/strategies/shared.d.ts +72 -8
  102. package/dist/api/strategies/shared.d.ts.map +1 -1
  103. package/dist/api/strategies/shared.js +92 -12
  104. package/dist/api/strategies/shared.js.map +1 -1
  105. package/dist/api/streamObject.d.ts +166 -0
  106. package/dist/api/streamObject.d.ts.map +1 -0
  107. package/dist/api/streamObject.js +268 -0
  108. package/dist/api/streamObject.js.map +1 -0
  109. package/dist/api/streamText.d.ts +1 -1
  110. package/dist/api/streamText.d.ts.map +1 -1
  111. package/dist/api/streamText.js +26 -8
  112. package/dist/api/streamText.js.map +1 -1
  113. package/dist/api/toolAdapter.d.ts +44 -8
  114. package/dist/api/toolAdapter.d.ts.map +1 -1
  115. package/dist/api/toolAdapter.js +224 -45
  116. package/dist/api/toolAdapter.js.map +1 -1
  117. package/dist/api/types/AgentOSExternalToolRequest.d.ts +35 -0
  118. package/dist/api/types/AgentOSExternalToolRequest.d.ts.map +1 -0
  119. package/dist/api/types/AgentOSExternalToolRequest.js +2 -0
  120. package/dist/api/types/AgentOSExternalToolRequest.js.map +1 -0
  121. package/dist/api/types/AgentOSResponse.d.ts +25 -0
  122. package/dist/api/types/AgentOSResponse.d.ts.map +1 -1
  123. package/dist/api/types/AgentOSResponse.js +20 -0
  124. package/dist/api/types/AgentOSResponse.js.map +1 -1
  125. package/dist/api/types/AgentOSToolResult.d.ts +11 -0
  126. package/dist/api/types/AgentOSToolResult.d.ts.map +1 -0
  127. package/dist/api/types/AgentOSToolResult.js +2 -0
  128. package/dist/api/types/AgentOSToolResult.js.map +1 -0
  129. package/dist/api/types.d.ts +81 -4
  130. package/dist/api/types.d.ts.map +1 -1
  131. package/dist/api/types.js.map +1 -1
  132. package/dist/api/upscaleImage.d.ts +92 -0
  133. package/dist/api/upscaleImage.d.ts.map +1 -0
  134. package/dist/api/upscaleImage.js +133 -0
  135. package/dist/api/upscaleImage.js.map +1 -0
  136. package/dist/api/variateImage.d.ts +102 -0
  137. package/dist/api/variateImage.d.ts.map +1 -0
  138. package/dist/api/variateImage.js +154 -0
  139. package/dist/api/variateImage.js.map +1 -0
  140. package/dist/cognitive_substrate/GMI.d.ts +16 -2
  141. package/dist/cognitive_substrate/GMI.d.ts.map +1 -1
  142. package/dist/cognitive_substrate/GMI.js +188 -56
  143. package/dist/cognitive_substrate/GMI.js.map +1 -1
  144. package/dist/cognitive_substrate/IGMI.d.ts +10 -0
  145. package/dist/cognitive_substrate/IGMI.d.ts.map +1 -1
  146. package/dist/cognitive_substrate/IGMI.js.map +1 -1
  147. package/dist/config/AgentOSConfig.d.ts +19 -2
  148. package/dist/config/AgentOSConfig.d.ts.map +1 -1
  149. package/dist/config/AgentOSConfig.js +46 -29
  150. package/dist/config/AgentOSConfig.js.map +1 -1
  151. package/dist/core/guardrails/IGuardrailService.d.ts +1 -1
  152. package/dist/core/images/IImageProvider.d.ts +93 -0
  153. package/dist/core/images/IImageProvider.d.ts.map +1 -1
  154. package/dist/core/images/IImageProvider.js.map +1 -1
  155. package/dist/core/images/ImageOperationError.d.ts +52 -0
  156. package/dist/core/images/ImageOperationError.d.ts.map +1 -0
  157. package/dist/core/images/ImageOperationError.js +58 -0
  158. package/dist/core/images/ImageOperationError.js.map +1 -0
  159. package/dist/core/images/imageToBuffer.d.ts +41 -0
  160. package/dist/core/images/imageToBuffer.d.ts.map +1 -0
  161. package/dist/core/images/imageToBuffer.js +95 -0
  162. package/dist/core/images/imageToBuffer.js.map +1 -0
  163. package/dist/core/images/index.d.ts +4 -0
  164. package/dist/core/images/index.d.ts.map +1 -1
  165. package/dist/core/images/index.js +8 -0
  166. package/dist/core/images/index.js.map +1 -1
  167. package/dist/core/images/providers/FalImageProvider.d.ts +208 -0
  168. package/dist/core/images/providers/FalImageProvider.d.ts.map +1 -0
  169. package/dist/core/images/providers/FalImageProvider.js +301 -0
  170. package/dist/core/images/providers/FalImageProvider.js.map +1 -0
  171. package/dist/core/images/providers/FluxImageProvider.d.ts +197 -0
  172. package/dist/core/images/providers/FluxImageProvider.d.ts.map +1 -0
  173. package/dist/core/images/providers/FluxImageProvider.js +271 -0
  174. package/dist/core/images/providers/FluxImageProvider.js.map +1 -0
  175. package/dist/core/images/providers/OpenAIImageProvider.d.ts +33 -1
  176. package/dist/core/images/providers/OpenAIImageProvider.d.ts.map +1 -1
  177. package/dist/core/images/providers/OpenAIImageProvider.js +125 -0
  178. package/dist/core/images/providers/OpenAIImageProvider.js.map +1 -1
  179. package/dist/core/images/providers/ReplicateImageProvider.d.ts +26 -1
  180. package/dist/core/images/providers/ReplicateImageProvider.d.ts.map +1 -1
  181. package/dist/core/images/providers/ReplicateImageProvider.js +118 -0
  182. package/dist/core/images/providers/ReplicateImageProvider.js.map +1 -1
  183. package/dist/core/images/providers/StabilityImageProvider.d.ts +41 -1
  184. package/dist/core/images/providers/StabilityImageProvider.d.ts.map +1 -1
  185. package/dist/core/images/providers/StabilityImageProvider.js +180 -7
  186. package/dist/core/images/providers/StabilityImageProvider.js.map +1 -1
  187. package/dist/core/images/providers/StableDiffusionLocalProvider.d.ts +29 -1
  188. package/dist/core/images/providers/StableDiffusionLocalProvider.d.ts.map +1 -1
  189. package/dist/core/images/providers/StableDiffusionLocalProvider.js +124 -0
  190. package/dist/core/images/providers/StableDiffusionLocalProvider.js.map +1 -1
  191. package/dist/core/llm/IPromptEngine.d.ts +2 -2
  192. package/dist/core/llm/IPromptEngine.d.ts.map +1 -1
  193. package/dist/core/llm/IPromptEngine.js +2 -2
  194. package/dist/core/llm/IPromptEngine.js.map +1 -1
  195. package/dist/core/llm/providers/AIModelProviderManager.d.ts +7 -1
  196. package/dist/core/llm/providers/AIModelProviderManager.d.ts.map +1 -1
  197. package/dist/core/llm/providers/AIModelProviderManager.js +24 -0
  198. package/dist/core/llm/providers/AIModelProviderManager.js.map +1 -1
  199. package/dist/core/llm/providers/errors/AnthropicProviderError.d.ts +42 -0
  200. package/dist/core/llm/providers/errors/AnthropicProviderError.d.ts.map +1 -0
  201. package/dist/core/llm/providers/errors/AnthropicProviderError.js +45 -0
  202. package/dist/core/llm/providers/errors/AnthropicProviderError.js.map +1 -0
  203. package/dist/core/llm/providers/errors/GeminiProviderError.d.ts +45 -0
  204. package/dist/core/llm/providers/errors/GeminiProviderError.d.ts.map +1 -0
  205. package/dist/core/llm/providers/errors/GeminiProviderError.js +46 -0
  206. package/dist/core/llm/providers/errors/GeminiProviderError.js.map +1 -0
  207. package/dist/core/llm/providers/errors/OllamaProviderError.d.ts +1 -1
  208. package/dist/core/llm/providers/errors/OllamaProviderError.d.ts.map +1 -1
  209. package/dist/core/llm/providers/errors/OllamaProviderError.js +1 -1
  210. package/dist/core/llm/providers/errors/OllamaProviderError.js.map +1 -1
  211. package/dist/core/llm/providers/errors/OpenAIProviderError.d.ts +1 -1
  212. package/dist/core/llm/providers/errors/OpenAIProviderError.js +1 -1
  213. package/dist/core/llm/providers/errors/OpenRouterProviderError.d.ts +1 -1
  214. package/dist/core/llm/providers/errors/OpenRouterProviderError.js +1 -1
  215. package/dist/core/llm/providers/implementations/AnthropicProvider.d.ts +340 -0
  216. package/dist/core/llm/providers/implementations/AnthropicProvider.d.ts.map +1 -0
  217. package/dist/core/llm/providers/implementations/AnthropicProvider.js +959 -0
  218. package/dist/core/llm/providers/implementations/AnthropicProvider.js.map +1 -0
  219. package/dist/core/llm/providers/implementations/GeminiProvider.d.ts +339 -0
  220. package/dist/core/llm/providers/implementations/GeminiProvider.d.ts.map +1 -0
  221. package/dist/core/llm/providers/implementations/GeminiProvider.js +1004 -0
  222. package/dist/core/llm/providers/implementations/GeminiProvider.js.map +1 -0
  223. package/dist/core/llm/providers/implementations/GroqProvider.d.ts +105 -0
  224. package/dist/core/llm/providers/implementations/GroqProvider.d.ts.map +1 -0
  225. package/dist/core/llm/providers/implementations/GroqProvider.js +134 -0
  226. package/dist/core/llm/providers/implementations/GroqProvider.js.map +1 -0
  227. package/dist/core/llm/providers/implementations/MistralProvider.d.ts +105 -0
  228. package/dist/core/llm/providers/implementations/MistralProvider.d.ts.map +1 -0
  229. package/dist/core/llm/providers/implementations/MistralProvider.js +146 -0
  230. package/dist/core/llm/providers/implementations/MistralProvider.js.map +1 -0
  231. package/dist/core/llm/providers/implementations/TogetherProvider.d.ts +107 -0
  232. package/dist/core/llm/providers/implementations/TogetherProvider.d.ts.map +1 -0
  233. package/dist/core/llm/providers/implementations/TogetherProvider.js +138 -0
  234. package/dist/core/llm/providers/implementations/TogetherProvider.js.map +1 -0
  235. package/dist/core/llm/providers/implementations/XAIProvider.d.ts +102 -0
  236. package/dist/core/llm/providers/implementations/XAIProvider.d.ts.map +1 -0
  237. package/dist/core/llm/providers/implementations/XAIProvider.js +123 -0
  238. package/dist/core/llm/providers/implementations/XAIProvider.js.map +1 -0
  239. package/dist/core/orchestration/AgentOrchestrator.d.ts.map +1 -1
  240. package/dist/core/orchestration/AgentOrchestrator.js +26 -5
  241. package/dist/core/orchestration/AgentOrchestrator.js.map +1 -1
  242. package/dist/core/tools/IToolOrchestrator.d.ts +2 -2
  243. package/dist/core/tools/IToolOrchestrator.d.ts.map +1 -1
  244. package/dist/core/tools/ToolExecutor.d.ts +3 -0
  245. package/dist/core/tools/ToolExecutor.d.ts.map +1 -1
  246. package/dist/core/tools/ToolExecutor.js +2 -1
  247. package/dist/core/tools/ToolExecutor.js.map +1 -1
  248. package/dist/core/tools/ToolOrchestrator.d.ts +7 -7
  249. package/dist/core/tools/ToolOrchestrator.d.ts.map +1 -1
  250. package/dist/core/tools/ToolOrchestrator.js +135 -36
  251. package/dist/core/tools/ToolOrchestrator.js.map +1 -1
  252. package/dist/core/tools/permissions/ToolPermissionManager.d.ts +6 -5
  253. package/dist/core/tools/permissions/ToolPermissionManager.d.ts.map +1 -1
  254. package/dist/core/tools/permissions/ToolPermissionManager.js +47 -21
  255. package/dist/core/tools/permissions/ToolPermissionManager.js.map +1 -1
  256. package/dist/core/vision/VisionPipeline.d.ts +437 -0
  257. package/dist/core/vision/VisionPipeline.d.ts.map +1 -0
  258. package/dist/core/vision/VisionPipeline.js +1113 -0
  259. package/dist/core/vision/VisionPipeline.js.map +1 -0
  260. package/dist/core/vision/index.d.ts +97 -0
  261. package/dist/core/vision/index.d.ts.map +1 -0
  262. package/dist/core/vision/index.js +182 -0
  263. package/dist/core/vision/index.js.map +1 -0
  264. package/dist/core/vision/providers/LLMVisionProvider.d.ts +135 -0
  265. package/dist/core/vision/providers/LLMVisionProvider.d.ts.map +1 -0
  266. package/dist/core/vision/providers/LLMVisionProvider.js +136 -0
  267. package/dist/core/vision/providers/LLMVisionProvider.js.map +1 -0
  268. package/dist/core/vision/providers/PipelineVisionProvider.d.ts +154 -0
  269. package/dist/core/vision/providers/PipelineVisionProvider.d.ts.map +1 -0
  270. package/dist/core/vision/providers/PipelineVisionProvider.js +160 -0
  271. package/dist/core/vision/providers/PipelineVisionProvider.js.map +1 -0
  272. package/dist/core/vision/types.d.ts +286 -0
  273. package/dist/core/vision/types.d.ts.map +1 -0
  274. package/dist/core/vision/types.js +24 -0
  275. package/dist/core/vision/types.js.map +1 -0
  276. package/dist/discovery/CapabilityDiscoveryEngine.d.ts +1 -1
  277. package/dist/discovery/CapabilityDiscoveryEngine.d.ts.map +1 -1
  278. package/dist/discovery/CapabilityDiscoveryEngine.js +1 -1
  279. package/dist/discovery/CapabilityDiscoveryEngine.js.map +1 -1
  280. package/dist/emergent/ComposableToolBuilder.d.ts +15 -4
  281. package/dist/emergent/ComposableToolBuilder.d.ts.map +1 -1
  282. package/dist/emergent/ComposableToolBuilder.js +29 -14
  283. package/dist/emergent/ComposableToolBuilder.js.map +1 -1
  284. package/dist/emergent/EmergentCapabilityEngine.d.ts +3 -3
  285. package/dist/emergent/EmergentCapabilityEngine.d.ts.map +1 -1
  286. package/dist/emergent/EmergentCapabilityEngine.js +15 -12
  287. package/dist/emergent/EmergentCapabilityEngine.js.map +1 -1
  288. package/dist/emergent/EmergentJudge.d.ts +20 -0
  289. package/dist/emergent/EmergentJudge.d.ts.map +1 -1
  290. package/dist/emergent/EmergentJudge.js +121 -26
  291. package/dist/emergent/EmergentJudge.js.map +1 -1
  292. package/dist/emergent/EmergentToolRegistry.d.ts +17 -0
  293. package/dist/emergent/EmergentToolRegistry.d.ts.map +1 -1
  294. package/dist/emergent/EmergentToolRegistry.js +26 -0
  295. package/dist/emergent/EmergentToolRegistry.js.map +1 -1
  296. package/dist/emergent/ForgeToolMetaTool.d.ts +1 -1
  297. package/dist/emergent/ForgeToolMetaTool.d.ts.map +1 -1
  298. package/dist/emergent/ForgeToolMetaTool.js +15 -2
  299. package/dist/emergent/ForgeToolMetaTool.js.map +1 -1
  300. package/dist/emergent/SandboxedToolForge.d.ts +2 -2
  301. package/dist/emergent/SandboxedToolForge.d.ts.map +1 -1
  302. package/dist/emergent/SandboxedToolForge.js +13 -23
  303. package/dist/emergent/SandboxedToolForge.js.map +1 -1
  304. package/dist/emergent/SkillExporter.d.ts +119 -0
  305. package/dist/emergent/SkillExporter.d.ts.map +1 -0
  306. package/dist/emergent/SkillExporter.js +344 -0
  307. package/dist/emergent/SkillExporter.js.map +1 -0
  308. package/dist/emergent/index.d.ts +1 -0
  309. package/dist/emergent/index.d.ts.map +1 -1
  310. package/dist/emergent/index.js +1 -0
  311. package/dist/emergent/index.js.map +1 -1
  312. package/dist/emergent/types.d.ts +4 -4
  313. package/dist/index.d.ts +30 -5
  314. package/dist/index.d.ts.map +1 -1
  315. package/dist/index.js +19 -2
  316. package/dist/index.js.map +1 -1
  317. package/dist/memory/facade/Memory.d.ts.map +1 -1
  318. package/dist/memory/facade/Memory.js +8 -0
  319. package/dist/memory/facade/Memory.js.map +1 -1
  320. package/dist/memory/facade/types.d.ts +10 -0
  321. package/dist/memory/facade/types.d.ts.map +1 -1
  322. package/dist/memory/index.d.ts +15 -7
  323. package/dist/memory/index.d.ts.map +1 -1
  324. package/dist/memory/index.js +7 -0
  325. package/dist/memory/index.js.map +1 -1
  326. package/dist/memory/ingestion/DoclingLoader.d.ts +3 -3
  327. package/dist/memory/ingestion/DoclingLoader.d.ts.map +1 -1
  328. package/dist/memory/ingestion/DoclingLoader.js +12 -8
  329. package/dist/memory/ingestion/DoclingLoader.js.map +1 -1
  330. package/dist/memory/ingestion/FolderScanner.d.ts +7 -7
  331. package/dist/memory/ingestion/FolderScanner.d.ts.map +1 -1
  332. package/dist/memory/ingestion/FolderScanner.js +6 -6
  333. package/dist/memory/ingestion/FolderScanner.js.map +1 -1
  334. package/dist/memory/ingestion/LoaderRegistry.d.ts +8 -8
  335. package/dist/memory/ingestion/LoaderRegistry.d.ts.map +1 -1
  336. package/dist/memory/ingestion/LoaderRegistry.js +9 -11
  337. package/dist/memory/ingestion/LoaderRegistry.js.map +1 -1
  338. package/dist/memory/ingestion/MultimodalAggregator.d.ts +1 -1
  339. package/dist/memory/ingestion/MultimodalAggregator.js +1 -1
  340. package/dist/memory/ingestion/OcrPdfLoader.d.ts +2 -2
  341. package/dist/memory/ingestion/OcrPdfLoader.d.ts.map +1 -1
  342. package/dist/memory/ingestion/OcrPdfLoader.js +12 -8
  343. package/dist/memory/ingestion/OcrPdfLoader.js.map +1 -1
  344. package/dist/memory/ingestion/PdfLoader.d.ts +8 -8
  345. package/dist/memory/ingestion/PdfLoader.d.ts.map +1 -1
  346. package/dist/memory/ingestion/PdfLoader.js +13 -10
  347. package/dist/memory/ingestion/PdfLoader.js.map +1 -1
  348. package/dist/memory/io/MarkdownExporter.d.ts +1 -1
  349. package/dist/memory/io/MarkdownExporter.d.ts.map +1 -1
  350. package/dist/memory/io/MarkdownExporter.js +1 -1
  351. package/dist/memory/io/MarkdownExporter.js.map +1 -1
  352. package/dist/memory/observation/MemoryObserver.d.ts +63 -1
  353. package/dist/memory/observation/MemoryObserver.d.ts.map +1 -1
  354. package/dist/memory/observation/MemoryObserver.js +115 -4
  355. package/dist/memory/observation/MemoryObserver.js.map +1 -1
  356. package/dist/memory/observation/ObservationCompressor.d.ts +88 -0
  357. package/dist/memory/observation/ObservationCompressor.d.ts.map +1 -0
  358. package/dist/memory/observation/ObservationCompressor.js +207 -0
  359. package/dist/memory/observation/ObservationCompressor.js.map +1 -0
  360. package/dist/memory/observation/ObservationReflector.d.ts +82 -0
  361. package/dist/memory/observation/ObservationReflector.d.ts.map +1 -0
  362. package/dist/memory/observation/ObservationReflector.js +212 -0
  363. package/dist/memory/observation/ObservationReflector.js.map +1 -0
  364. package/dist/memory/observation/temporal.d.ts +54 -0
  365. package/dist/memory/observation/temporal.d.ts.map +1 -0
  366. package/dist/memory/observation/temporal.js +115 -0
  367. package/dist/memory/observation/temporal.js.map +1 -0
  368. package/dist/memory/tools/MemoryAddTool.d.ts +2 -2
  369. package/dist/memory/tools/MemoryAddTool.d.ts.map +1 -1
  370. package/dist/memory/tools/MemoryAddTool.js +8 -3
  371. package/dist/memory/tools/MemoryAddTool.js.map +1 -1
  372. package/dist/memory/tools/MemorySearchTool.d.ts +3 -3
  373. package/dist/memory/tools/MemorySearchTool.d.ts.map +1 -1
  374. package/dist/memory/tools/MemorySearchTool.js +11 -9
  375. package/dist/memory/tools/MemorySearchTool.js.map +1 -1
  376. package/dist/memory/tools/scopeContext.d.ts +11 -0
  377. package/dist/memory/tools/scopeContext.d.ts.map +1 -0
  378. package/dist/memory/tools/scopeContext.js +46 -0
  379. package/dist/memory/tools/scopeContext.js.map +1 -0
  380. package/dist/orchestration/builders/AgentGraph.d.ts +12 -11
  381. package/dist/orchestration/builders/AgentGraph.d.ts.map +1 -1
  382. package/dist/orchestration/builders/AgentGraph.js +12 -11
  383. package/dist/orchestration/builders/AgentGraph.js.map +1 -1
  384. package/dist/orchestration/builders/VoiceNodeBuilder.d.ts +82 -25
  385. package/dist/orchestration/builders/VoiceNodeBuilder.d.ts.map +1 -1
  386. package/dist/orchestration/builders/VoiceNodeBuilder.js +86 -26
  387. package/dist/orchestration/builders/VoiceNodeBuilder.js.map +1 -1
  388. package/dist/orchestration/builders/WorkflowBuilder.d.ts +1 -1
  389. package/dist/orchestration/builders/WorkflowBuilder.d.ts.map +1 -1
  390. package/dist/orchestration/builders/WorkflowBuilder.js +1 -1
  391. package/dist/orchestration/builders/WorkflowBuilder.js.map +1 -1
  392. package/dist/orchestration/checkpoint/InMemoryCheckpointStore.d.ts +7 -54
  393. package/dist/orchestration/checkpoint/InMemoryCheckpointStore.d.ts.map +1 -1
  394. package/dist/orchestration/checkpoint/InMemoryCheckpointStore.js +8 -56
  395. package/dist/orchestration/checkpoint/InMemoryCheckpointStore.js.map +1 -1
  396. package/dist/orchestration/events/GraphEvent.d.ts +67 -5
  397. package/dist/orchestration/events/GraphEvent.d.ts.map +1 -1
  398. package/dist/orchestration/events/GraphEvent.js.map +1 -1
  399. package/dist/orchestration/runtime/GraphRuntime.d.ts.map +1 -1
  400. package/dist/orchestration/runtime/GraphRuntime.js +151 -1
  401. package/dist/orchestration/runtime/GraphRuntime.js.map +1 -1
  402. package/dist/orchestration/runtime/LoopController.d.ts +3 -3
  403. package/dist/orchestration/runtime/LoopController.d.ts.map +1 -1
  404. package/dist/orchestration/runtime/LoopController.js.map +1 -1
  405. package/dist/orchestration/runtime/StateManager.d.ts +3 -3
  406. package/dist/orchestration/runtime/StateManager.js +3 -3
  407. package/dist/orchestration/runtime/VoiceNodeExecutor.d.ts +103 -26
  408. package/dist/orchestration/runtime/VoiceNodeExecutor.d.ts.map +1 -1
  409. package/dist/orchestration/runtime/VoiceNodeExecutor.js +155 -43
  410. package/dist/orchestration/runtime/VoiceNodeExecutor.js.map +1 -1
  411. package/dist/orchestration/runtime/VoiceTransportAdapter.d.ts +95 -33
  412. package/dist/orchestration/runtime/VoiceTransportAdapter.d.ts.map +1 -1
  413. package/dist/orchestration/runtime/VoiceTransportAdapter.js +83 -29
  414. package/dist/orchestration/runtime/VoiceTransportAdapter.js.map +1 -1
  415. package/dist/orchestration/runtime/VoiceTurnCollector.d.ts +73 -20
  416. package/dist/orchestration/runtime/VoiceTurnCollector.d.ts.map +1 -1
  417. package/dist/orchestration/runtime/VoiceTurnCollector.js +84 -23
  418. package/dist/orchestration/runtime/VoiceTurnCollector.js.map +1 -1
  419. package/dist/query-router/KeywordFallback.d.ts +70 -0
  420. package/dist/query-router/KeywordFallback.d.ts.map +1 -0
  421. package/dist/query-router/KeywordFallback.js +132 -0
  422. package/dist/query-router/KeywordFallback.js.map +1 -0
  423. package/dist/query-router/QueryClassifier.d.ts +140 -0
  424. package/dist/query-router/QueryClassifier.d.ts.map +1 -0
  425. package/dist/query-router/QueryClassifier.js +223 -0
  426. package/dist/query-router/QueryClassifier.js.map +1 -0
  427. package/dist/query-router/QueryDispatcher.d.ts +139 -0
  428. package/dist/query-router/QueryDispatcher.d.ts.map +1 -0
  429. package/dist/query-router/QueryDispatcher.js +297 -0
  430. package/dist/query-router/QueryDispatcher.js.map +1 -0
  431. package/dist/query-router/QueryGenerator.d.ts +184 -0
  432. package/dist/query-router/QueryGenerator.d.ts.map +1 -0
  433. package/dist/query-router/QueryGenerator.js +241 -0
  434. package/dist/query-router/QueryGenerator.js.map +1 -0
  435. package/dist/query-router/QueryRouter.d.ts +292 -0
  436. package/dist/query-router/QueryRouter.d.ts.map +1 -0
  437. package/dist/query-router/QueryRouter.js +803 -0
  438. package/dist/query-router/QueryRouter.js.map +1 -0
  439. package/dist/query-router/TopicExtractor.d.ts +73 -0
  440. package/dist/query-router/TopicExtractor.d.ts.map +1 -0
  441. package/dist/query-router/TopicExtractor.js +95 -0
  442. package/dist/query-router/TopicExtractor.js.map +1 -0
  443. package/dist/query-router/index.d.ts +40 -0
  444. package/dist/query-router/index.d.ts.map +1 -0
  445. package/dist/query-router/index.js +46 -0
  446. package/dist/query-router/index.js.map +1 -0
  447. package/dist/query-router/types.d.ts +508 -0
  448. package/dist/query-router/types.d.ts.map +1 -0
  449. package/dist/query-router/types.js +39 -0
  450. package/dist/query-router/types.js.map +1 -0
  451. package/dist/rag/index.d.ts +5 -0
  452. package/dist/rag/index.d.ts.map +1 -1
  453. package/dist/rag/index.js +7 -0
  454. package/dist/rag/index.js.map +1 -1
  455. package/dist/rag/multimodal/LLMVisionAdapter.d.ts +43 -0
  456. package/dist/rag/multimodal/LLMVisionAdapter.d.ts.map +1 -0
  457. package/dist/rag/multimodal/LLMVisionAdapter.js +46 -0
  458. package/dist/rag/multimodal/LLMVisionAdapter.js.map +1 -0
  459. package/dist/rag/multimodal/MultimodalIndexer.d.ts +244 -0
  460. package/dist/rag/multimodal/MultimodalIndexer.d.ts.map +1 -0
  461. package/dist/rag/multimodal/MultimodalIndexer.js +411 -0
  462. package/dist/rag/multimodal/MultimodalIndexer.js.map +1 -0
  463. package/dist/rag/multimodal/MultimodalMemoryBridge.d.ts +448 -0
  464. package/dist/rag/multimodal/MultimodalMemoryBridge.d.ts.map +1 -0
  465. package/dist/rag/multimodal/MultimodalMemoryBridge.js +941 -0
  466. package/dist/rag/multimodal/MultimodalMemoryBridge.js.map +1 -0
  467. package/dist/rag/multimodal/SpeechProviderAdapter.d.ts +139 -0
  468. package/dist/rag/multimodal/SpeechProviderAdapter.d.ts.map +1 -0
  469. package/dist/rag/multimodal/SpeechProviderAdapter.js +143 -0
  470. package/dist/rag/multimodal/SpeechProviderAdapter.js.map +1 -0
  471. package/dist/rag/multimodal/createMultimodalIndexerFromResolver.d.ts +172 -0
  472. package/dist/rag/multimodal/createMultimodalIndexerFromResolver.d.ts.map +1 -0
  473. package/dist/rag/multimodal/createMultimodalIndexerFromResolver.js +152 -0
  474. package/dist/rag/multimodal/createMultimodalIndexerFromResolver.js.map +1 -0
  475. package/dist/rag/multimodal/index.d.ts +44 -0
  476. package/dist/rag/multimodal/index.d.ts.map +1 -0
  477. package/dist/rag/multimodal/index.js +42 -0
  478. package/dist/rag/multimodal/index.js.map +1 -0
  479. package/dist/rag/multimodal/types.d.ts +276 -0
  480. package/dist/rag/multimodal/types.d.ts.map +1 -0
  481. package/dist/rag/multimodal/types.js +26 -0
  482. package/dist/rag/multimodal/types.js.map +1 -0
  483. package/dist/social-posting/SocialPostManager.d.ts +3 -3
  484. package/dist/social-posting/SocialPostManager.d.ts.map +1 -1
  485. package/dist/social-posting/SocialPostManager.js +3 -5
  486. package/dist/social-posting/SocialPostManager.js.map +1 -1
  487. package/dist/speech/FallbackProxy.d.ts +6 -6
  488. package/dist/speech/FallbackProxy.d.ts.map +1 -1
  489. package/dist/speech/FallbackProxy.js +3 -3
  490. package/dist/speech/FallbackProxy.js.map +1 -1
  491. package/dist/speech/SpeechProviderResolver.d.ts +8 -8
  492. package/dist/speech/SpeechProviderResolver.d.ts.map +1 -1
  493. package/dist/speech/SpeechProviderResolver.js +22 -11
  494. package/dist/speech/SpeechProviderResolver.js.map +1 -1
  495. package/dist/speech/SpeechRuntime.d.ts +1 -5
  496. package/dist/speech/SpeechRuntime.d.ts.map +1 -1
  497. package/dist/speech/SpeechRuntime.js +17 -9
  498. package/dist/speech/SpeechRuntime.js.map +1 -1
  499. package/dist/speech/providers/AssemblyAISTTProvider.d.ts +4 -4
  500. package/dist/speech/providers/AssemblyAISTTProvider.js +4 -4
  501. package/dist/speech/providers/AzureSpeechTTSProvider.d.ts +3 -3
  502. package/dist/speech/providers/AzureSpeechTTSProvider.js +2 -2
  503. package/dist/speech/providers/AzureSpeechTTSProvider.js.map +1 -1
  504. package/dist/speech/providers/BuiltInAdaptiveVadProvider.d.ts +9 -9
  505. package/dist/speech/providers/BuiltInAdaptiveVadProvider.d.ts.map +1 -1
  506. package/dist/speech/providers/BuiltInAdaptiveVadProvider.js +5 -5
  507. package/dist/speech/providers/BuiltInAdaptiveVadProvider.js.map +1 -1
  508. package/dist/speech/providers/DeepgramBatchSTTProvider.d.ts +2 -2
  509. package/dist/speech/providers/DeepgramBatchSTTProvider.js +2 -2
  510. package/dist/speech/providers/OpenAITextToSpeechProvider.d.ts +3 -3
  511. package/dist/speech/providers/OpenAITextToSpeechProvider.js +2 -2
  512. package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.d.ts +1 -1
  513. package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.d.ts.map +1 -1
  514. package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.js +1 -1
  515. package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.js.map +1 -1
  516. package/dist/voice/TelephonyStreamTransport.d.ts +6 -6
  517. package/dist/voice/TelephonyStreamTransport.d.ts.map +1 -1
  518. package/dist/voice/TelephonyStreamTransport.js +5 -5
  519. package/dist/voice/TelephonyStreamTransport.js.map +1 -1
  520. package/dist/voice-pipeline/AcousticEndpointDetector.d.ts +4 -4
  521. package/dist/voice-pipeline/AcousticEndpointDetector.d.ts.map +1 -1
  522. package/dist/voice-pipeline/AcousticEndpointDetector.js +4 -4
  523. package/dist/voice-pipeline/AcousticEndpointDetector.js.map +1 -1
  524. package/dist/voice-pipeline/HardCutBargeinHandler.d.ts +3 -3
  525. package/dist/voice-pipeline/HardCutBargeinHandler.js +3 -3
  526. package/dist/voice-pipeline/HeuristicEndpointDetector.d.ts +3 -3
  527. package/dist/voice-pipeline/HeuristicEndpointDetector.d.ts.map +1 -1
  528. package/dist/voice-pipeline/HeuristicEndpointDetector.js +3 -3
  529. package/dist/voice-pipeline/HeuristicEndpointDetector.js.map +1 -1
  530. package/dist/voice-pipeline/SoftFadeBargeinHandler.d.ts +5 -5
  531. package/dist/voice-pipeline/SoftFadeBargeinHandler.js +1 -1
  532. package/dist/voice-pipeline/VoiceInterruptError.d.ts +6 -6
  533. package/dist/voice-pipeline/VoiceInterruptError.d.ts.map +1 -1
  534. package/dist/voice-pipeline/VoiceInterruptError.js +4 -4
  535. package/dist/voice-pipeline/VoiceInterruptError.js.map +1 -1
  536. package/dist/voice-pipeline/VoicePipelineOrchestrator.d.ts +9 -9
  537. package/dist/voice-pipeline/VoicePipelineOrchestrator.d.ts.map +1 -1
  538. package/dist/voice-pipeline/VoicePipelineOrchestrator.js +8 -8
  539. package/dist/voice-pipeline/VoicePipelineOrchestrator.js.map +1 -1
  540. package/dist/voice-pipeline/WebRTCStreamTransport.d.ts +421 -0
  541. package/dist/voice-pipeline/WebRTCStreamTransport.d.ts.map +1 -0
  542. package/dist/voice-pipeline/WebRTCStreamTransport.js +573 -0
  543. package/dist/voice-pipeline/WebRTCStreamTransport.js.map +1 -0
  544. package/dist/voice-pipeline/WebSocketStreamTransport.d.ts +8 -8
  545. package/dist/voice-pipeline/WebSocketStreamTransport.js +5 -5
  546. package/dist/voice-pipeline/index.d.ts +1 -0
  547. package/dist/voice-pipeline/index.d.ts.map +1 -1
  548. package/dist/voice-pipeline/index.js +2 -0
  549. package/dist/voice-pipeline/index.js.map +1 -1
  550. package/dist/voice-pipeline/types.d.ts +43 -43
  551. package/dist/voice-pipeline/types.d.ts.map +1 -1
  552. package/package.json +19 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VisionPipeline.js","sourceRoot":"","sources":["../../../src/core/vision/VisionPipeline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * @module core/vision
3
+ *
4
+ * Unified vision pipeline with progressive enhancement for AgentOS.
5
+ *
6
+ * Processes images through three configurable tiers:
7
+ *
8
+ * 1. **Local OCR** (PaddleOCR / Tesseract.js) — fast, free, offline
9
+ * 2. **Local Vision Models** (TrOCR / Florence-2 / CLIP) — offline, richer
10
+ * 3. **Cloud Vision LLMs** (GPT-4o / Claude / Gemini) — best quality
11
+ *
12
+ * The {@link createVisionPipeline} factory auto-detects which providers
13
+ * are installed and builds a pipeline with sensible defaults.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * import {
18
+ * createVisionPipeline,
19
+ * VisionPipeline,
20
+ * type VisionPipelineConfig,
21
+ * type VisionResult,
22
+ * } from '../../core/vision';
23
+ *
24
+ * // Auto-detect available providers
25
+ * const pipeline = await createVisionPipeline();
26
+ * const result = await pipeline.process(imageBuffer);
27
+ *
28
+ * // Or configure explicitly
29
+ * const custom = await createVisionPipeline({
30
+ * strategy: 'progressive',
31
+ * ocr: 'paddle',
32
+ * embedding: true,
33
+ * cloudProvider: 'openai',
34
+ * });
35
+ * ```
36
+ *
37
+ * @see {@link VisionPipeline} for the main pipeline class.
38
+ * @see {@link VisionPipelineConfig} for configuration options.
39
+ * @see {@link LLMVisionProvider} for a simple cloud-only vision provider.
40
+ * @see {@link PipelineVisionProvider} for wrapping the pipeline as IVisionProvider.
41
+ */
42
+ export { VisionPipeline } from './VisionPipeline.js';
43
+ export { LLMVisionProvider } from './providers/LLMVisionProvider.js';
44
+ export type { LLMVisionProviderConfig } from './providers/LLMVisionProvider.js';
45
+ export { PipelineVisionProvider } from './providers/PipelineVisionProvider.js';
46
+ export type { VisionPipelineConfig, VisionResult, VisionStrategy, VisionTier, ContentCategory, TierResult, TextRegion, DocumentLayout, DocumentPage, LayoutBlock, VisionPreprocessingConfig, } from './types.js';
47
+ /**
48
+ * Create a vision pipeline with sensible defaults by auto-detecting
49
+ * which providers are installed in the current environment.
50
+ *
51
+ * The factory probes for optional peer dependencies (ppu-paddle-ocr,
52
+ * tesseract.js, \@huggingface/transformers) and cloud API keys in
53
+ * environment variables, then configures the pipeline accordingly.
54
+ *
55
+ * ## Auto-detection logic
56
+ *
57
+ * | Check | Result |
58
+ * |-------|--------|
59
+ * | `ppu-paddle-ocr` importable | `ocr: 'paddle'` |
60
+ * | `tesseract.js` importable (paddle missing) | `ocr: 'tesseract'` |
61
+ * | Neither importable | `ocr: 'none'` |
62
+ * | `@huggingface/transformers` importable | `handwriting: true`, `documentAI: true`, `embedding: true` |
63
+ * | `OPENAI_API_KEY` / `ANTHROPIC_API_KEY` / etc. set | `cloudProvider` configured |
64
+ *
65
+ * Caller-supplied config overrides always take precedence over
66
+ * auto-detected values.
67
+ *
68
+ * @param config - Optional partial configuration. Fields that are set
69
+ * override auto-detected values. Fields that are omitted are filled
70
+ * by the auto-detection logic.
71
+ * @returns A configured and ready-to-use VisionPipeline instance.
72
+ *
73
+ * @example
74
+ * ```typescript
75
+ * // Full auto-detection
76
+ * const pipeline = await createVisionPipeline();
77
+ *
78
+ * // Override strategy but auto-detect everything else
79
+ * const localOnly = await createVisionPipeline({
80
+ * strategy: 'local-only',
81
+ * });
82
+ *
83
+ * // Explicit full config (no auto-detection)
84
+ * const explicit = await createVisionPipeline({
85
+ * strategy: 'progressive',
86
+ * ocr: 'tesseract',
87
+ * handwriting: true,
88
+ * documentAI: false,
89
+ * embedding: true,
90
+ * cloudProvider: 'openai',
91
+ * cloudModel: 'gpt-4o',
92
+ * confidenceThreshold: 0.85,
93
+ * });
94
+ * ```
95
+ */
96
+ export declare function createVisionPipeline(config?: Partial<import('./types.js').VisionPipelineConfig>): Promise<import('./VisionPipeline.js').VisionPipeline>;
97
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/vision/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,YAAY,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE/E,YAAY,EACV,oBAAoB,EACpB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,eAAe,EACf,UAAU,EACV,UAAU,EACV,cAAc,EACd,YAAY,EACZ,WAAW,EACX,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AA4CpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,CAAC,EAAE,OAAO,CAAC,OAAO,YAAY,EAAE,oBAAoB,CAAC,GAC1D,OAAO,CAAC,OAAO,qBAAqB,EAAE,cAAc,CAAC,CA+CvD"}
@@ -0,0 +1,182 @@
1
+ /**
2
+ * @module core/vision
3
+ *
4
+ * Unified vision pipeline with progressive enhancement for AgentOS.
5
+ *
6
+ * Processes images through three configurable tiers:
7
+ *
8
+ * 1. **Local OCR** (PaddleOCR / Tesseract.js) — fast, free, offline
9
+ * 2. **Local Vision Models** (TrOCR / Florence-2 / CLIP) — offline, richer
10
+ * 3. **Cloud Vision LLMs** (GPT-4o / Claude / Gemini) — best quality
11
+ *
12
+ * The {@link createVisionPipeline} factory auto-detects which providers
13
+ * are installed and builds a pipeline with sensible defaults.
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * import {
18
+ * createVisionPipeline,
19
+ * VisionPipeline,
20
+ * type VisionPipelineConfig,
21
+ * type VisionResult,
22
+ * } from '../../core/vision/index.js';
23
+ *
24
+ * // Auto-detect available providers
25
+ * const pipeline = await createVisionPipeline();
26
+ * const result = await pipeline.process(imageBuffer);
27
+ *
28
+ * // Or configure explicitly
29
+ * const custom = await createVisionPipeline({
30
+ * strategy: 'progressive',
31
+ * ocr: 'paddle',
32
+ * embedding: true,
33
+ * cloudProvider: 'openai',
34
+ * });
35
+ * ```
36
+ *
37
+ * @see {@link VisionPipeline} for the main pipeline class.
38
+ * @see {@link VisionPipelineConfig} for configuration options.
39
+ * @see {@link LLMVisionProvider} for a simple cloud-only vision provider.
40
+ * @see {@link PipelineVisionProvider} for wrapping the pipeline as IVisionProvider.
41
+ */
42
+ export { VisionPipeline } from './VisionPipeline.js';
43
+ export { LLMVisionProvider } from './providers/LLMVisionProvider.js';
44
+ export { PipelineVisionProvider } from './providers/PipelineVisionProvider.js';
45
+ // ---------------------------------------------------------------------------
46
+ // Provider availability probes
47
+ // ---------------------------------------------------------------------------
48
+ /**
49
+ * Check if a module is importable without actually loading it.
50
+ * Uses a dynamic import wrapped in try/catch — the module is loaded
51
+ * then immediately discarded, so the overhead is minimal on first probe
52
+ * but cached by the runtime on subsequent probes.
53
+ *
54
+ * @param moduleId - npm package name to probe.
55
+ * @returns True if the module can be imported.
56
+ */
57
+ async function isModuleAvailable(moduleId) {
58
+ try {
59
+ await import(moduleId);
60
+ return true;
61
+ }
62
+ catch {
63
+ return false;
64
+ }
65
+ }
66
+ /**
67
+ * Detect which cloud vision provider is available based on environment
68
+ * variables. Returns the first provider that has a valid API key set.
69
+ *
70
+ * @returns Provider name string, or undefined if no API keys are found.
71
+ */
72
+ function detectCloudProvider() {
73
+ // Check common vision-capable provider API keys in preference order.
74
+ // GPT-4o is the most widely used vision LLM, so we prefer OpenAI first.
75
+ if (process.env.OPENAI_API_KEY)
76
+ return 'openai';
77
+ if (process.env.ANTHROPIC_API_KEY)
78
+ return 'anthropic';
79
+ if (process.env.GOOGLE_API_KEY || process.env.GEMINI_API_KEY)
80
+ return 'google';
81
+ if (process.env.OPENROUTER_API_KEY)
82
+ return 'openrouter';
83
+ return undefined;
84
+ }
85
+ // ---------------------------------------------------------------------------
86
+ // Factory
87
+ // ---------------------------------------------------------------------------
88
+ /**
89
+ * Create a vision pipeline with sensible defaults by auto-detecting
90
+ * which providers are installed in the current environment.
91
+ *
92
+ * The factory probes for optional peer dependencies (ppu-paddle-ocr,
93
+ * tesseract.js, \@huggingface/transformers) and cloud API keys in
94
+ * environment variables, then configures the pipeline accordingly.
95
+ *
96
+ * ## Auto-detection logic
97
+ *
98
+ * | Check | Result |
99
+ * |-------|--------|
100
+ * | `ppu-paddle-ocr` importable | `ocr: 'paddle'` |
101
+ * | `tesseract.js` importable (paddle missing) | `ocr: 'tesseract'` |
102
+ * | Neither importable | `ocr: 'none'` |
103
+ * | `@huggingface/transformers` importable | `handwriting: true`, `documentAI: true`, `embedding: true` |
104
+ * | `OPENAI_API_KEY` / `ANTHROPIC_API_KEY` / etc. set | `cloudProvider` configured |
105
+ *
106
+ * Caller-supplied config overrides always take precedence over
107
+ * auto-detected values.
108
+ *
109
+ * @param config - Optional partial configuration. Fields that are set
110
+ * override auto-detected values. Fields that are omitted are filled
111
+ * by the auto-detection logic.
112
+ * @returns A configured and ready-to-use VisionPipeline instance.
113
+ *
114
+ * @example
115
+ * ```typescript
116
+ * // Full auto-detection
117
+ * const pipeline = await createVisionPipeline();
118
+ *
119
+ * // Override strategy but auto-detect everything else
120
+ * const localOnly = await createVisionPipeline({
121
+ * strategy: 'local-only',
122
+ * });
123
+ *
124
+ * // Explicit full config (no auto-detection)
125
+ * const explicit = await createVisionPipeline({
126
+ * strategy: 'progressive',
127
+ * ocr: 'tesseract',
128
+ * handwriting: true,
129
+ * documentAI: false,
130
+ * embedding: true,
131
+ * cloudProvider: 'openai',
132
+ * cloudModel: 'gpt-4o',
133
+ * confidenceThreshold: 0.85,
134
+ * });
135
+ * ```
136
+ */
137
+ export async function createVisionPipeline(config) {
138
+ // Probe available OCR engines in parallel for speed
139
+ const [hasPaddle, hasTesseract, hasTransformers] = await Promise.all([
140
+ // Only probe if caller didn't explicitly set the OCR engine
141
+ config?.ocr !== undefined ? Promise.resolve(false) : isModuleAvailable('ppu-paddle-ocr'),
142
+ config?.ocr !== undefined ? Promise.resolve(false) : isModuleAvailable('tesseract.js'),
143
+ // Only probe if caller didn't explicitly set all HF-dependent flags
144
+ (config?.handwriting !== undefined && config?.documentAI !== undefined && config?.embedding !== undefined)
145
+ ? Promise.resolve(false)
146
+ : isModuleAvailable('@huggingface/transformers'),
147
+ ]);
148
+ // Resolve OCR engine: caller override > paddle > tesseract > none
149
+ let ocr = config?.ocr;
150
+ if (ocr === undefined) {
151
+ if (hasPaddle) {
152
+ ocr = 'paddle';
153
+ }
154
+ else if (hasTesseract) {
155
+ ocr = 'tesseract';
156
+ }
157
+ else {
158
+ ocr = 'none';
159
+ }
160
+ }
161
+ // Resolve HuggingFace-dependent features: caller override > auto-detect
162
+ const handwriting = config?.handwriting ?? (hasTransformers ? true : false);
163
+ const documentAI = config?.documentAI ?? (hasTransformers ? true : false);
164
+ const embedding = config?.embedding ?? (hasTransformers ? true : false);
165
+ // Resolve cloud provider: caller override > env var auto-detect
166
+ const cloudProvider = config?.cloudProvider ?? detectCloudProvider();
167
+ // Build the final resolved config
168
+ const resolvedConfig = {
169
+ strategy: config?.strategy ?? 'progressive',
170
+ ocr,
171
+ handwriting,
172
+ documentAI,
173
+ embedding,
174
+ cloudProvider,
175
+ cloudModel: config?.cloudModel,
176
+ confidenceThreshold: config?.confidenceThreshold,
177
+ preprocessing: config?.preprocessing,
178
+ };
179
+ const { VisionPipeline } = await import('./VisionPipeline.js');
180
+ return new VisionPipeline(resolvedConfig);
181
+ }
182
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/vision/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,135 @@
1
+ /**
2
+ * @module core/vision/providers/LLMVisionProvider
3
+ *
4
+ * Implements the {@link IVisionProvider} interface by wrapping the
5
+ * `generateText()` high-level API with a multimodal image message.
6
+ *
7
+ * Works with any vision-capable LLM provider — GPT-4o, Claude,
8
+ * Gemini, Ollama + LLaVA, OpenRouter, etc. The provider and model
9
+ * are specified at construction time and used for every call.
10
+ *
11
+ * This is the simplest way to add vision to the multimodal indexer
12
+ * without the full OCR + embedding pipeline. For the full progressive
13
+ * pipeline, see {@link PipelineVisionProvider}.
14
+ *
15
+ * @see {@link IVisionProvider} for the interface contract.
16
+ * @see {@link PipelineVisionProvider} for the full-pipeline wrapper.
17
+ * @see {@link VisionPipeline} for the underlying pipeline engine.
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * import { LLMVisionProvider } from '../../../core/vision';
22
+ *
23
+ * const vision = new LLMVisionProvider({
24
+ * provider: 'openai',
25
+ * model: 'gpt-4o',
26
+ * });
27
+ *
28
+ * const description = await vision.describeImage(imageUrl);
29
+ * ```
30
+ */
31
+ import type { IVisionProvider } from '../../../rag/multimodal/types.js';
32
+ /**
33
+ * Configuration for the LLM vision provider.
34
+ *
35
+ * @example
36
+ * ```typescript
37
+ * const config: LLMVisionProviderConfig = {
38
+ * provider: 'openai',
39
+ * model: 'gpt-4o',
40
+ * prompt: 'Describe this image for a search index.',
41
+ * apiKey: process.env.OPENAI_API_KEY,
42
+ * };
43
+ * ```
44
+ */
45
+ export interface LLMVisionProviderConfig {
46
+ /**
47
+ * LLM provider name (e.g. 'openai', 'anthropic', 'google', 'ollama').
48
+ * Must be resolvable by the `generateText()` API.
49
+ */
50
+ provider: string;
51
+ /**
52
+ * Model identifier. When omitted, the provider's default vision model
53
+ * is used.
54
+ * @example 'gpt-4o', 'claude-sonnet-4-20250514', 'gemini-2.0-flash'
55
+ */
56
+ model?: string;
57
+ /**
58
+ * Custom prompt for image description. When omitted, a default prompt
59
+ * optimized for search indexing is used.
60
+ */
61
+ prompt?: string;
62
+ /**
63
+ * Override the API key instead of reading from environment variables.
64
+ * Useful for multi-tenant setups where each user has their own key.
65
+ */
66
+ apiKey?: string;
67
+ /**
68
+ * Override the provider base URL (e.g. for Ollama or local proxies).
69
+ */
70
+ baseUrl?: string;
71
+ }
72
+ /**
73
+ * Vision provider that delegates to a cloud LLM via `generateText()`.
74
+ *
75
+ * Satisfies the narrow {@link IVisionProvider} contract used by the
76
+ * {@link MultimodalIndexer}, allowing any vision-capable LLM to serve
77
+ * as the image description backend.
78
+ *
79
+ * @example
80
+ * ```typescript
81
+ * const provider = new LLMVisionProvider({ provider: 'openai' });
82
+ * const indexer = new MultimodalIndexer({
83
+ * embeddingManager,
84
+ * vectorStore,
85
+ * visionProvider: provider,
86
+ * });
87
+ * ```
88
+ */
89
+ export declare class LLMVisionProvider implements IVisionProvider {
90
+ /** Resolved configuration. */
91
+ private readonly _config;
92
+ /** Description prompt. */
93
+ private readonly _prompt;
94
+ /**
95
+ * Create a new LLM vision provider.
96
+ *
97
+ * @param config - Provider configuration specifying which LLM to use.
98
+ *
99
+ * @throws {Error} If `config.provider` is not specified.
100
+ *
101
+ * @example
102
+ * ```typescript
103
+ * const provider = new LLMVisionProvider({
104
+ * provider: 'anthropic',
105
+ * model: 'claude-sonnet-4-20250514',
106
+ * });
107
+ * ```
108
+ */
109
+ constructor(config: LLMVisionProviderConfig);
110
+ /**
111
+ * Generate a text description of the provided image using a cloud
112
+ * vision LLM.
113
+ *
114
+ * The image is sent as a base64 data URL in a multimodal message
115
+ * to the configured provider. The LLM's response is returned as-is.
116
+ *
117
+ * @param image - Image as a URL string (https://...) or base64 data URL
118
+ * (data:image/png;base64,...).
119
+ * @returns Detailed text description of the image content.
120
+ *
121
+ * @throws {Error} If the LLM call fails.
122
+ * @throws {Error} If the LLM returns an empty response.
123
+ *
124
+ * @example
125
+ * ```typescript
126
+ * const description = await provider.describeImage(
127
+ * 'data:image/png;base64,iVBORw0KGgoAAAA...'
128
+ * );
129
+ * console.log(description);
130
+ * // "A golden retriever playing fetch on a sandy beach..."
131
+ * ```
132
+ */
133
+ describeImage(image: string): Promise<string>;
134
+ }
135
+ //# sourceMappingURL=LLMVisionProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LLMVisionProvider.d.ts","sourceRoot":"","sources":["../../../../src/core/vision/providers/LLMVisionProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAMxE;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAqBD;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,iBAAkB,YAAW,eAAe;IACvD,8BAA8B;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAElD,0BAA0B;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IAEjC;;;;;;;;;;;;;;OAcG;gBACS,MAAM,EAAE,uBAAuB;IAW3C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA+BpD"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * @module core/vision/providers/LLMVisionProvider
3
+ *
4
+ * Implements the {@link IVisionProvider} interface by wrapping the
5
+ * `generateText()` high-level API with a multimodal image message.
6
+ *
7
+ * Works with any vision-capable LLM provider — GPT-4o, Claude,
8
+ * Gemini, Ollama + LLaVA, OpenRouter, etc. The provider and model
9
+ * are specified at construction time and used for every call.
10
+ *
11
+ * This is the simplest way to add vision to the multimodal indexer
12
+ * without the full OCR + embedding pipeline. For the full progressive
13
+ * pipeline, see {@link PipelineVisionProvider}.
14
+ *
15
+ * @see {@link IVisionProvider} for the interface contract.
16
+ * @see {@link PipelineVisionProvider} for the full-pipeline wrapper.
17
+ * @see {@link VisionPipeline} for the underlying pipeline engine.
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * import { LLMVisionProvider } from '../../../core/vision/index.js';
22
+ *
23
+ * const vision = new LLMVisionProvider({
24
+ * provider: 'openai',
25
+ * model: 'gpt-4o',
26
+ * });
27
+ *
28
+ * const description = await vision.describeImage(imageUrl);
29
+ * ```
30
+ */
31
+ // ---------------------------------------------------------------------------
32
+ // Default prompt
33
+ // ---------------------------------------------------------------------------
34
+ /**
35
+ * Default prompt used when describing images for search indexing.
36
+ * Balances thoroughness with conciseness to produce embedding-friendly
37
+ * descriptions.
38
+ */
39
+ const DEFAULT_DESCRIPTION_PROMPT = 'Describe this image in detail for use in a search index. ' +
40
+ 'Include objects, actions, colors, text, spatial relationships, ' +
41
+ 'and any notable characteristics. Extract all visible text exactly ' +
42
+ 'as written. Be thorough but concise.';
43
+ // ---------------------------------------------------------------------------
44
+ // Implementation
45
+ // ---------------------------------------------------------------------------
46
+ /**
47
+ * Vision provider that delegates to a cloud LLM via `generateText()`.
48
+ *
49
+ * Satisfies the narrow {@link IVisionProvider} contract used by the
50
+ * {@link MultimodalIndexer}, allowing any vision-capable LLM to serve
51
+ * as the image description backend.
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * const provider = new LLMVisionProvider({ provider: 'openai' });
56
+ * const indexer = new MultimodalIndexer({
57
+ * embeddingManager,
58
+ * vectorStore,
59
+ * visionProvider: provider,
60
+ * });
61
+ * ```
62
+ */
63
+ export class LLMVisionProvider {
64
+ /**
65
+ * Create a new LLM vision provider.
66
+ *
67
+ * @param config - Provider configuration specifying which LLM to use.
68
+ *
69
+ * @throws {Error} If `config.provider` is not specified.
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * const provider = new LLMVisionProvider({
74
+ * provider: 'anthropic',
75
+ * model: 'claude-sonnet-4-20250514',
76
+ * });
77
+ * ```
78
+ */
79
+ constructor(config) {
80
+ if (!config.provider) {
81
+ throw new Error('LLMVisionProvider: provider name is required (e.g. "openai", "anthropic").');
82
+ }
83
+ this._config = { ...config };
84
+ this._prompt = config.prompt ?? DEFAULT_DESCRIPTION_PROMPT;
85
+ }
86
+ /**
87
+ * Generate a text description of the provided image using a cloud
88
+ * vision LLM.
89
+ *
90
+ * The image is sent as a base64 data URL in a multimodal message
91
+ * to the configured provider. The LLM's response is returned as-is.
92
+ *
93
+ * @param image - Image as a URL string (https://...) or base64 data URL
94
+ * (data:image/png;base64,...).
95
+ * @returns Detailed text description of the image content.
96
+ *
97
+ * @throws {Error} If the LLM call fails.
98
+ * @throws {Error} If the LLM returns an empty response.
99
+ *
100
+ * @example
101
+ * ```typescript
102
+ * const description = await provider.describeImage(
103
+ * 'data:image/png;base64,iVBORw0KGgoAAAA...'
104
+ * );
105
+ * console.log(description);
106
+ * // "A golden retriever playing fetch on a sandy beach..."
107
+ * ```
108
+ */
109
+ async describeImage(image) {
110
+ // Lazy import to avoid loading the full API machinery until needed
111
+ const { generateText } = await import('../../../api/generateText.js');
112
+ // Build the multimodal message with text prompt + image.
113
+ // The content array format is the standard multimodal message shape
114
+ // accepted by all major vision LLM providers (OpenAI, Anthropic, Gemini).
115
+ const result = await generateText({
116
+ provider: this._config.provider,
117
+ model: this._config.model,
118
+ apiKey: this._config.apiKey,
119
+ baseUrl: this._config.baseUrl,
120
+ messages: [{
121
+ role: 'user',
122
+ // Serialize the content parts array as JSON. The provider adapter
123
+ // will parse it back into the appropriate multimodal format.
124
+ content: JSON.stringify([
125
+ { type: 'text', text: this._prompt },
126
+ { type: 'image_url', image_url: { url: image } },
127
+ ]),
128
+ }],
129
+ });
130
+ if (!result.text || result.text.trim().length === 0) {
131
+ throw new Error(`LLMVisionProvider: ${this._config.provider} returned empty description.`);
132
+ }
133
+ return result.text;
134
+ }
135
+ }
136
+ //# sourceMappingURL=LLMVisionProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LLMVisionProvider.js","sourceRoot":"","sources":["../../../../src/core/vision/providers/LLMVisionProvider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAqDH,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,0BAA0B,GAC9B,2DAA2D;IAC3D,iEAAiE;IACjE,oEAAoE;IACpE,sCAAsC,CAAC;AAEzC,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,OAAO,iBAAiB;IAO5B;;;;;;;;;;;;;;OAcG;IACH,YAAY,MAA+B;QACzC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,IAAI,0BAA0B,CAAC;IAC7D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CAAC,aAAa,CAAC,KAAa;QAC/B,mEAAmE;QACnE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAEtE,yDAAyD;QACzD,oEAAoE;QACpE,0EAA0E;QAC1E,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;YAChC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAC/B,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK;YACzB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;YAC7B,QAAQ,EAAE,CAAC;oBACT,IAAI,EAAE,MAAM;oBACZ,kEAAkE;oBAClE,6DAA6D;oBAC7D,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC;wBACtB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE;wBACpC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;qBACjD,CAAC;iBACH,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,CAAC,OAAO,CAAC,QAAQ,8BAA8B,CAC1E,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAC;IACrB,CAAC;CACF"}