@framers/agentos 0.1.113 → 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.
- package/README.md +39 -5
- package/dist/api/AgentOS.d.ts +45 -12
- package/dist/api/AgentOS.d.ts.map +1 -1
- package/dist/api/AgentOS.js +225 -78
- package/dist/api/AgentOS.js.map +1 -1
- package/dist/api/AgentOSOrchestrator.d.ts +8 -0
- package/dist/api/AgentOSOrchestrator.d.ts.map +1 -1
- package/dist/api/AgentOSOrchestrator.js +350 -59
- package/dist/api/AgentOSOrchestrator.js.map +1 -1
- package/dist/api/StreamChunkEmitter.d.ts.map +1 -1
- package/dist/api/StreamChunkEmitter.js +2 -0
- package/dist/api/StreamChunkEmitter.js.map +1 -1
- package/dist/api/agency.d.ts.map +1 -1
- package/dist/api/agency.js +47 -1
- package/dist/api/agency.js.map +1 -1
- package/dist/api/agent.d.ts +18 -5
- package/dist/api/agent.d.ts.map +1 -1
- package/dist/api/agent.js +48 -9
- package/dist/api/agent.js.map +1 -1
- package/dist/api/agentExport.d.ts +202 -0
- package/dist/api/agentExport.d.ts.map +1 -0
- package/dist/api/agentExport.js +323 -0
- package/dist/api/agentExport.js.map +1 -0
- package/dist/api/editImage.d.ts +119 -0
- package/dist/api/editImage.d.ts.map +1 -0
- package/dist/api/editImage.js +150 -0
- package/dist/api/editImage.js.map +1 -0
- package/dist/api/embedText.d.ts +137 -0
- package/dist/api/embedText.d.ts.map +1 -0
- package/dist/api/embedText.js +229 -0
- package/dist/api/embedText.js.map +1 -0
- package/dist/api/externalToolRegistry.d.ts +44 -0
- package/dist/api/externalToolRegistry.d.ts.map +1 -0
- package/dist/api/externalToolRegistry.js +245 -0
- package/dist/api/externalToolRegistry.js.map +1 -0
- package/dist/api/generateImage.d.ts +1 -1
- package/dist/api/generateImage.d.ts.map +1 -1
- package/dist/api/generateImage.js +17 -13
- package/dist/api/generateImage.js.map +1 -1
- package/dist/api/generateObject.d.ts +185 -0
- package/dist/api/generateObject.d.ts.map +1 -0
- package/dist/api/generateObject.js +249 -0
- package/dist/api/generateObject.js.map +1 -0
- package/dist/api/generateText.d.ts +13 -3
- package/dist/api/generateText.d.ts.map +1 -1
- package/dist/api/generateText.js +20 -5
- package/dist/api/generateText.js.map +1 -1
- package/dist/api/interfaces/IAgentOS.d.ts +29 -1
- package/dist/api/interfaces/IAgentOS.d.ts.map +1 -1
- package/dist/api/model.d.ts +7 -7
- package/dist/api/model.d.ts.map +1 -1
- package/dist/api/model.js +22 -16
- package/dist/api/model.js.map +1 -1
- package/dist/api/processRequestWithExternalTools.d.ts +26 -0
- package/dist/api/processRequestWithExternalTools.d.ts.map +1 -0
- package/dist/api/processRequestWithExternalTools.js +52 -0
- package/dist/api/processRequestWithExternalTools.js.map +1 -0
- package/dist/api/processRequestWithRegisteredTools.d.ts +56 -0
- package/dist/api/processRequestWithRegisteredTools.d.ts.map +1 -0
- package/dist/api/processRequestWithRegisteredTools.js +125 -0
- package/dist/api/processRequestWithRegisteredTools.js.map +1 -0
- package/dist/api/provider-defaults.d.ts.map +1 -1
- package/dist/api/provider-defaults.js +28 -0
- package/dist/api/provider-defaults.js.map +1 -1
- package/dist/api/resumeExternalToolRequestWithRegisteredTools.d.ts +71 -0
- package/dist/api/resumeExternalToolRequestWithRegisteredTools.d.ts.map +1 -0
- package/dist/api/resumeExternalToolRequestWithRegisteredTools.js +159 -0
- package/dist/api/resumeExternalToolRequestWithRegisteredTools.js.map +1 -0
- package/dist/api/strategies/agentGraphBuilder.d.ts +170 -0
- package/dist/api/strategies/agentGraphBuilder.d.ts.map +1 -0
- package/dist/api/strategies/agentGraphBuilder.js +299 -0
- package/dist/api/strategies/agentGraphBuilder.js.map +1 -0
- package/dist/api/strategies/graphCompiler.d.ts +84 -0
- package/dist/api/strategies/graphCompiler.d.ts.map +1 -0
- package/dist/api/strategies/graphCompiler.js +617 -0
- package/dist/api/strategies/graphCompiler.js.map +1 -0
- package/dist/api/strategies/hierarchical.d.ts.map +1 -1
- package/dist/api/strategies/hierarchical.js +2 -1
- package/dist/api/strategies/hierarchical.js.map +1 -1
- package/dist/api/strategies/index.d.ts +3 -0
- package/dist/api/strategies/index.d.ts.map +1 -1
- package/dist/api/strategies/index.js +2 -0
- package/dist/api/strategies/index.js.map +1 -1
- package/dist/api/strategies/shared.d.ts +1 -1
- package/dist/api/strategies/shared.d.ts.map +1 -1
- package/dist/api/strategies/shared.js +3 -2
- package/dist/api/strategies/shared.js.map +1 -1
- package/dist/api/streamObject.d.ts +166 -0
- package/dist/api/streamObject.d.ts.map +1 -0
- package/dist/api/streamObject.js +268 -0
- package/dist/api/streamObject.js.map +1 -0
- package/dist/api/streamText.d.ts +1 -1
- package/dist/api/streamText.d.ts.map +1 -1
- package/dist/api/streamText.js +26 -8
- package/dist/api/streamText.js.map +1 -1
- package/dist/api/toolAdapter.d.ts +44 -8
- package/dist/api/toolAdapter.d.ts.map +1 -1
- package/dist/api/toolAdapter.js +224 -45
- package/dist/api/toolAdapter.js.map +1 -1
- package/dist/api/types/AgentOSExternalToolRequest.d.ts +35 -0
- package/dist/api/types/AgentOSExternalToolRequest.d.ts.map +1 -0
- package/dist/api/types/AgentOSExternalToolRequest.js +2 -0
- package/dist/api/types/AgentOSExternalToolRequest.js.map +1 -0
- package/dist/api/types/AgentOSResponse.d.ts +25 -0
- package/dist/api/types/AgentOSResponse.d.ts.map +1 -1
- package/dist/api/types/AgentOSResponse.js +20 -0
- package/dist/api/types/AgentOSResponse.js.map +1 -1
- package/dist/api/types/AgentOSToolResult.d.ts +11 -0
- package/dist/api/types/AgentOSToolResult.d.ts.map +1 -0
- package/dist/api/types/AgentOSToolResult.js +2 -0
- package/dist/api/types/AgentOSToolResult.js.map +1 -0
- package/dist/api/types.d.ts +28 -4
- package/dist/api/types.d.ts.map +1 -1
- package/dist/api/types.js.map +1 -1
- package/dist/api/upscaleImage.d.ts +92 -0
- package/dist/api/upscaleImage.d.ts.map +1 -0
- package/dist/api/upscaleImage.js +133 -0
- package/dist/api/upscaleImage.js.map +1 -0
- package/dist/api/variateImage.d.ts +102 -0
- package/dist/api/variateImage.d.ts.map +1 -0
- package/dist/api/variateImage.js +154 -0
- package/dist/api/variateImage.js.map +1 -0
- package/dist/cognitive_substrate/GMI.d.ts +16 -2
- package/dist/cognitive_substrate/GMI.d.ts.map +1 -1
- package/dist/cognitive_substrate/GMI.js +188 -56
- package/dist/cognitive_substrate/GMI.js.map +1 -1
- package/dist/cognitive_substrate/IGMI.d.ts +10 -0
- package/dist/cognitive_substrate/IGMI.d.ts.map +1 -1
- package/dist/cognitive_substrate/IGMI.js.map +1 -1
- package/dist/config/AgentOSConfig.d.ts +19 -2
- package/dist/config/AgentOSConfig.d.ts.map +1 -1
- package/dist/config/AgentOSConfig.js +46 -29
- package/dist/config/AgentOSConfig.js.map +1 -1
- package/dist/core/guardrails/IGuardrailService.d.ts +1 -1
- package/dist/core/images/IImageProvider.d.ts +93 -0
- package/dist/core/images/IImageProvider.d.ts.map +1 -1
- package/dist/core/images/IImageProvider.js.map +1 -1
- package/dist/core/images/ImageOperationError.d.ts +52 -0
- package/dist/core/images/ImageOperationError.d.ts.map +1 -0
- package/dist/core/images/ImageOperationError.js +58 -0
- package/dist/core/images/ImageOperationError.js.map +1 -0
- package/dist/core/images/imageToBuffer.d.ts +41 -0
- package/dist/core/images/imageToBuffer.d.ts.map +1 -0
- package/dist/core/images/imageToBuffer.js +95 -0
- package/dist/core/images/imageToBuffer.js.map +1 -0
- package/dist/core/images/index.d.ts +4 -0
- package/dist/core/images/index.d.ts.map +1 -1
- package/dist/core/images/index.js +8 -0
- package/dist/core/images/index.js.map +1 -1
- package/dist/core/images/providers/FalImageProvider.d.ts +208 -0
- package/dist/core/images/providers/FalImageProvider.d.ts.map +1 -0
- package/dist/core/images/providers/FalImageProvider.js +301 -0
- package/dist/core/images/providers/FalImageProvider.js.map +1 -0
- package/dist/core/images/providers/FluxImageProvider.d.ts +197 -0
- package/dist/core/images/providers/FluxImageProvider.d.ts.map +1 -0
- package/dist/core/images/providers/FluxImageProvider.js +271 -0
- package/dist/core/images/providers/FluxImageProvider.js.map +1 -0
- package/dist/core/images/providers/OpenAIImageProvider.d.ts +33 -1
- package/dist/core/images/providers/OpenAIImageProvider.d.ts.map +1 -1
- package/dist/core/images/providers/OpenAIImageProvider.js +125 -0
- package/dist/core/images/providers/OpenAIImageProvider.js.map +1 -1
- package/dist/core/images/providers/ReplicateImageProvider.d.ts +26 -1
- package/dist/core/images/providers/ReplicateImageProvider.d.ts.map +1 -1
- package/dist/core/images/providers/ReplicateImageProvider.js +118 -0
- package/dist/core/images/providers/ReplicateImageProvider.js.map +1 -1
- package/dist/core/images/providers/StabilityImageProvider.d.ts +41 -1
- package/dist/core/images/providers/StabilityImageProvider.d.ts.map +1 -1
- package/dist/core/images/providers/StabilityImageProvider.js +180 -7
- package/dist/core/images/providers/StabilityImageProvider.js.map +1 -1
- package/dist/core/images/providers/StableDiffusionLocalProvider.d.ts +29 -1
- package/dist/core/images/providers/StableDiffusionLocalProvider.d.ts.map +1 -1
- package/dist/core/images/providers/StableDiffusionLocalProvider.js +124 -0
- package/dist/core/images/providers/StableDiffusionLocalProvider.js.map +1 -1
- package/dist/core/llm/IPromptEngine.d.ts +2 -2
- package/dist/core/llm/IPromptEngine.d.ts.map +1 -1
- package/dist/core/llm/IPromptEngine.js +2 -2
- package/dist/core/llm/IPromptEngine.js.map +1 -1
- package/dist/core/llm/providers/AIModelProviderManager.d.ts +7 -1
- package/dist/core/llm/providers/AIModelProviderManager.d.ts.map +1 -1
- package/dist/core/llm/providers/AIModelProviderManager.js +24 -0
- package/dist/core/llm/providers/AIModelProviderManager.js.map +1 -1
- package/dist/core/llm/providers/errors/AnthropicProviderError.d.ts +42 -0
- package/dist/core/llm/providers/errors/AnthropicProviderError.d.ts.map +1 -0
- package/dist/core/llm/providers/errors/AnthropicProviderError.js +45 -0
- package/dist/core/llm/providers/errors/AnthropicProviderError.js.map +1 -0
- package/dist/core/llm/providers/errors/GeminiProviderError.d.ts +45 -0
- package/dist/core/llm/providers/errors/GeminiProviderError.d.ts.map +1 -0
- package/dist/core/llm/providers/errors/GeminiProviderError.js +46 -0
- package/dist/core/llm/providers/errors/GeminiProviderError.js.map +1 -0
- package/dist/core/llm/providers/errors/OllamaProviderError.d.ts +1 -1
- package/dist/core/llm/providers/errors/OllamaProviderError.d.ts.map +1 -1
- package/dist/core/llm/providers/errors/OllamaProviderError.js +1 -1
- package/dist/core/llm/providers/errors/OllamaProviderError.js.map +1 -1
- package/dist/core/llm/providers/errors/OpenAIProviderError.d.ts +1 -1
- package/dist/core/llm/providers/errors/OpenAIProviderError.js +1 -1
- package/dist/core/llm/providers/errors/OpenRouterProviderError.d.ts +1 -1
- package/dist/core/llm/providers/errors/OpenRouterProviderError.js +1 -1
- package/dist/core/llm/providers/implementations/AnthropicProvider.d.ts +340 -0
- package/dist/core/llm/providers/implementations/AnthropicProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/AnthropicProvider.js +959 -0
- package/dist/core/llm/providers/implementations/AnthropicProvider.js.map +1 -0
- package/dist/core/llm/providers/implementations/GeminiProvider.d.ts +339 -0
- package/dist/core/llm/providers/implementations/GeminiProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/GeminiProvider.js +1004 -0
- package/dist/core/llm/providers/implementations/GeminiProvider.js.map +1 -0
- package/dist/core/llm/providers/implementations/GroqProvider.d.ts +105 -0
- package/dist/core/llm/providers/implementations/GroqProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/GroqProvider.js +134 -0
- package/dist/core/llm/providers/implementations/GroqProvider.js.map +1 -0
- package/dist/core/llm/providers/implementations/MistralProvider.d.ts +105 -0
- package/dist/core/llm/providers/implementations/MistralProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/MistralProvider.js +146 -0
- package/dist/core/llm/providers/implementations/MistralProvider.js.map +1 -0
- package/dist/core/llm/providers/implementations/TogetherProvider.d.ts +107 -0
- package/dist/core/llm/providers/implementations/TogetherProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/TogetherProvider.js +138 -0
- package/dist/core/llm/providers/implementations/TogetherProvider.js.map +1 -0
- package/dist/core/llm/providers/implementations/XAIProvider.d.ts +102 -0
- package/dist/core/llm/providers/implementations/XAIProvider.d.ts.map +1 -0
- package/dist/core/llm/providers/implementations/XAIProvider.js +123 -0
- package/dist/core/llm/providers/implementations/XAIProvider.js.map +1 -0
- package/dist/core/orchestration/AgentOrchestrator.d.ts.map +1 -1
- package/dist/core/orchestration/AgentOrchestrator.js +26 -5
- package/dist/core/orchestration/AgentOrchestrator.js.map +1 -1
- package/dist/core/tools/IToolOrchestrator.d.ts +2 -2
- package/dist/core/tools/IToolOrchestrator.d.ts.map +1 -1
- package/dist/core/tools/ToolExecutor.d.ts +3 -0
- package/dist/core/tools/ToolExecutor.d.ts.map +1 -1
- package/dist/core/tools/ToolExecutor.js +2 -1
- package/dist/core/tools/ToolExecutor.js.map +1 -1
- package/dist/core/tools/ToolOrchestrator.d.ts +7 -7
- package/dist/core/tools/ToolOrchestrator.d.ts.map +1 -1
- package/dist/core/tools/ToolOrchestrator.js +135 -36
- package/dist/core/tools/ToolOrchestrator.js.map +1 -1
- package/dist/core/tools/permissions/ToolPermissionManager.d.ts +6 -5
- package/dist/core/tools/permissions/ToolPermissionManager.d.ts.map +1 -1
- package/dist/core/tools/permissions/ToolPermissionManager.js +47 -21
- package/dist/core/tools/permissions/ToolPermissionManager.js.map +1 -1
- package/dist/core/vision/VisionPipeline.d.ts +437 -0
- package/dist/core/vision/VisionPipeline.d.ts.map +1 -0
- package/dist/core/vision/VisionPipeline.js +1113 -0
- package/dist/core/vision/VisionPipeline.js.map +1 -0
- package/dist/core/vision/index.d.ts +97 -0
- package/dist/core/vision/index.d.ts.map +1 -0
- package/dist/core/vision/index.js +182 -0
- package/dist/core/vision/index.js.map +1 -0
- package/dist/core/vision/providers/LLMVisionProvider.d.ts +135 -0
- package/dist/core/vision/providers/LLMVisionProvider.d.ts.map +1 -0
- package/dist/core/vision/providers/LLMVisionProvider.js +136 -0
- package/dist/core/vision/providers/LLMVisionProvider.js.map +1 -0
- package/dist/core/vision/providers/PipelineVisionProvider.d.ts +154 -0
- package/dist/core/vision/providers/PipelineVisionProvider.d.ts.map +1 -0
- package/dist/core/vision/providers/PipelineVisionProvider.js +160 -0
- package/dist/core/vision/providers/PipelineVisionProvider.js.map +1 -0
- package/dist/core/vision/types.d.ts +286 -0
- package/dist/core/vision/types.d.ts.map +1 -0
- package/dist/core/vision/types.js +24 -0
- package/dist/core/vision/types.js.map +1 -0
- package/dist/discovery/CapabilityDiscoveryEngine.d.ts +1 -1
- package/dist/discovery/CapabilityDiscoveryEngine.d.ts.map +1 -1
- package/dist/discovery/CapabilityDiscoveryEngine.js +1 -1
- package/dist/discovery/CapabilityDiscoveryEngine.js.map +1 -1
- package/dist/emergent/ComposableToolBuilder.d.ts +15 -4
- package/dist/emergent/ComposableToolBuilder.d.ts.map +1 -1
- package/dist/emergent/ComposableToolBuilder.js +29 -14
- package/dist/emergent/ComposableToolBuilder.js.map +1 -1
- package/dist/emergent/EmergentCapabilityEngine.d.ts +3 -3
- package/dist/emergent/EmergentCapabilityEngine.d.ts.map +1 -1
- package/dist/emergent/EmergentCapabilityEngine.js +15 -12
- package/dist/emergent/EmergentCapabilityEngine.js.map +1 -1
- package/dist/emergent/EmergentJudge.d.ts +20 -0
- package/dist/emergent/EmergentJudge.d.ts.map +1 -1
- package/dist/emergent/EmergentJudge.js +121 -26
- package/dist/emergent/EmergentJudge.js.map +1 -1
- package/dist/emergent/EmergentToolRegistry.d.ts +17 -0
- package/dist/emergent/EmergentToolRegistry.d.ts.map +1 -1
- package/dist/emergent/EmergentToolRegistry.js +26 -0
- package/dist/emergent/EmergentToolRegistry.js.map +1 -1
- package/dist/emergent/ForgeToolMetaTool.d.ts +1 -1
- package/dist/emergent/ForgeToolMetaTool.d.ts.map +1 -1
- package/dist/emergent/ForgeToolMetaTool.js +15 -2
- package/dist/emergent/ForgeToolMetaTool.js.map +1 -1
- package/dist/emergent/SandboxedToolForge.d.ts +2 -2
- package/dist/emergent/SandboxedToolForge.d.ts.map +1 -1
- package/dist/emergent/SandboxedToolForge.js +13 -23
- package/dist/emergent/SandboxedToolForge.js.map +1 -1
- package/dist/emergent/SkillExporter.d.ts +119 -0
- package/dist/emergent/SkillExporter.d.ts.map +1 -0
- package/dist/emergent/SkillExporter.js +344 -0
- package/dist/emergent/SkillExporter.js.map +1 -0
- package/dist/emergent/index.d.ts +1 -0
- package/dist/emergent/index.d.ts.map +1 -1
- package/dist/emergent/index.js +1 -0
- package/dist/emergent/index.js.map +1 -1
- package/dist/emergent/types.d.ts +4 -4
- package/dist/index.d.ts +30 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -2
- package/dist/index.js.map +1 -1
- package/dist/memory/index.d.ts +10 -8
- package/dist/memory/index.d.ts.map +1 -1
- package/dist/memory/index.js +2 -0
- package/dist/memory/index.js.map +1 -1
- package/dist/memory/ingestion/DoclingLoader.d.ts +3 -3
- package/dist/memory/ingestion/DoclingLoader.d.ts.map +1 -1
- package/dist/memory/ingestion/DoclingLoader.js +12 -8
- package/dist/memory/ingestion/DoclingLoader.js.map +1 -1
- package/dist/memory/ingestion/FolderScanner.d.ts +7 -7
- package/dist/memory/ingestion/FolderScanner.d.ts.map +1 -1
- package/dist/memory/ingestion/FolderScanner.js +6 -6
- package/dist/memory/ingestion/FolderScanner.js.map +1 -1
- package/dist/memory/ingestion/LoaderRegistry.d.ts +8 -8
- package/dist/memory/ingestion/LoaderRegistry.d.ts.map +1 -1
- package/dist/memory/ingestion/LoaderRegistry.js +9 -11
- package/dist/memory/ingestion/LoaderRegistry.js.map +1 -1
- package/dist/memory/ingestion/MultimodalAggregator.d.ts +1 -1
- package/dist/memory/ingestion/MultimodalAggregator.js +1 -1
- package/dist/memory/ingestion/OcrPdfLoader.d.ts +2 -2
- package/dist/memory/ingestion/OcrPdfLoader.d.ts.map +1 -1
- package/dist/memory/ingestion/OcrPdfLoader.js +12 -8
- package/dist/memory/ingestion/OcrPdfLoader.js.map +1 -1
- package/dist/memory/ingestion/PdfLoader.d.ts +8 -8
- package/dist/memory/ingestion/PdfLoader.d.ts.map +1 -1
- package/dist/memory/ingestion/PdfLoader.js +13 -10
- package/dist/memory/ingestion/PdfLoader.js.map +1 -1
- package/dist/memory/io/MarkdownExporter.d.ts +1 -1
- package/dist/memory/io/MarkdownExporter.d.ts.map +1 -1
- package/dist/memory/io/MarkdownExporter.js +1 -1
- package/dist/memory/io/MarkdownExporter.js.map +1 -1
- package/dist/memory/tools/MemoryAddTool.d.ts +2 -2
- package/dist/memory/tools/MemoryAddTool.d.ts.map +1 -1
- package/dist/memory/tools/MemoryAddTool.js +8 -3
- package/dist/memory/tools/MemoryAddTool.js.map +1 -1
- package/dist/memory/tools/MemorySearchTool.d.ts +3 -3
- package/dist/memory/tools/MemorySearchTool.d.ts.map +1 -1
- package/dist/memory/tools/MemorySearchTool.js +11 -9
- package/dist/memory/tools/MemorySearchTool.js.map +1 -1
- package/dist/memory/tools/scopeContext.d.ts +11 -0
- package/dist/memory/tools/scopeContext.d.ts.map +1 -0
- package/dist/memory/tools/scopeContext.js +46 -0
- package/dist/memory/tools/scopeContext.js.map +1 -0
- package/dist/orchestration/builders/AgentGraph.d.ts +12 -11
- package/dist/orchestration/builders/AgentGraph.d.ts.map +1 -1
- package/dist/orchestration/builders/AgentGraph.js +12 -11
- package/dist/orchestration/builders/AgentGraph.js.map +1 -1
- package/dist/orchestration/builders/VoiceNodeBuilder.d.ts +2 -2
- package/dist/orchestration/builders/VoiceNodeBuilder.d.ts.map +1 -1
- package/dist/orchestration/builders/VoiceNodeBuilder.js +2 -2
- package/dist/orchestration/builders/VoiceNodeBuilder.js.map +1 -1
- package/dist/orchestration/builders/WorkflowBuilder.d.ts +1 -1
- package/dist/orchestration/builders/WorkflowBuilder.d.ts.map +1 -1
- package/dist/orchestration/builders/WorkflowBuilder.js +1 -1
- package/dist/orchestration/builders/WorkflowBuilder.js.map +1 -1
- package/dist/orchestration/checkpoint/InMemoryCheckpointStore.d.ts +7 -54
- package/dist/orchestration/checkpoint/InMemoryCheckpointStore.d.ts.map +1 -1
- package/dist/orchestration/checkpoint/InMemoryCheckpointStore.js +8 -56
- package/dist/orchestration/checkpoint/InMemoryCheckpointStore.js.map +1 -1
- package/dist/orchestration/events/GraphEvent.d.ts +12 -12
- package/dist/orchestration/events/GraphEvent.d.ts.map +1 -1
- package/dist/orchestration/events/GraphEvent.js.map +1 -1
- package/dist/orchestration/runtime/GraphRuntime.d.ts.map +1 -1
- package/dist/orchestration/runtime/GraphRuntime.js +151 -1
- package/dist/orchestration/runtime/GraphRuntime.js.map +1 -1
- package/dist/orchestration/runtime/LoopController.d.ts +3 -3
- package/dist/orchestration/runtime/LoopController.d.ts.map +1 -1
- package/dist/orchestration/runtime/LoopController.js.map +1 -1
- package/dist/orchestration/runtime/StateManager.d.ts +3 -3
- package/dist/orchestration/runtime/StateManager.js +3 -3
- package/dist/orchestration/runtime/VoiceNodeExecutor.d.ts +6 -6
- package/dist/orchestration/runtime/VoiceNodeExecutor.d.ts.map +1 -1
- package/dist/orchestration/runtime/VoiceNodeExecutor.js +27 -10
- package/dist/orchestration/runtime/VoiceNodeExecutor.js.map +1 -1
- package/dist/orchestration/runtime/VoiceTransportAdapter.d.ts +5 -5
- package/dist/orchestration/runtime/VoiceTransportAdapter.js +5 -5
- package/dist/orchestration/runtime/VoiceTurnCollector.d.ts +2 -2
- package/dist/orchestration/runtime/VoiceTurnCollector.js +2 -2
- package/dist/query-router/KeywordFallback.d.ts +70 -0
- package/dist/query-router/KeywordFallback.d.ts.map +1 -0
- package/dist/query-router/KeywordFallback.js +132 -0
- package/dist/query-router/KeywordFallback.js.map +1 -0
- package/dist/query-router/QueryClassifier.d.ts +140 -0
- package/dist/query-router/QueryClassifier.d.ts.map +1 -0
- package/dist/query-router/QueryClassifier.js +223 -0
- package/dist/query-router/QueryClassifier.js.map +1 -0
- package/dist/query-router/QueryDispatcher.d.ts +139 -0
- package/dist/query-router/QueryDispatcher.d.ts.map +1 -0
- package/dist/query-router/QueryDispatcher.js +297 -0
- package/dist/query-router/QueryDispatcher.js.map +1 -0
- package/dist/query-router/QueryGenerator.d.ts +184 -0
- package/dist/query-router/QueryGenerator.d.ts.map +1 -0
- package/dist/query-router/QueryGenerator.js +241 -0
- package/dist/query-router/QueryGenerator.js.map +1 -0
- package/dist/query-router/QueryRouter.d.ts +292 -0
- package/dist/query-router/QueryRouter.d.ts.map +1 -0
- package/dist/query-router/QueryRouter.js +803 -0
- package/dist/query-router/QueryRouter.js.map +1 -0
- package/dist/query-router/TopicExtractor.d.ts +73 -0
- package/dist/query-router/TopicExtractor.d.ts.map +1 -0
- package/dist/query-router/TopicExtractor.js +95 -0
- package/dist/query-router/TopicExtractor.js.map +1 -0
- package/dist/query-router/index.d.ts +40 -0
- package/dist/query-router/index.d.ts.map +1 -0
- package/dist/query-router/index.js +46 -0
- package/dist/query-router/index.js.map +1 -0
- package/dist/query-router/types.d.ts +508 -0
- package/dist/query-router/types.d.ts.map +1 -0
- package/dist/query-router/types.js +39 -0
- package/dist/query-router/types.js.map +1 -0
- package/dist/rag/index.d.ts +5 -0
- package/dist/rag/index.d.ts.map +1 -1
- package/dist/rag/index.js +7 -0
- package/dist/rag/index.js.map +1 -1
- package/dist/rag/multimodal/LLMVisionAdapter.d.ts +43 -0
- package/dist/rag/multimodal/LLMVisionAdapter.d.ts.map +1 -0
- package/dist/rag/multimodal/LLMVisionAdapter.js +46 -0
- package/dist/rag/multimodal/LLMVisionAdapter.js.map +1 -0
- package/dist/rag/multimodal/MultimodalIndexer.d.ts +244 -0
- package/dist/rag/multimodal/MultimodalIndexer.d.ts.map +1 -0
- package/dist/rag/multimodal/MultimodalIndexer.js +411 -0
- package/dist/rag/multimodal/MultimodalIndexer.js.map +1 -0
- package/dist/rag/multimodal/MultimodalMemoryBridge.d.ts +448 -0
- package/dist/rag/multimodal/MultimodalMemoryBridge.d.ts.map +1 -0
- package/dist/rag/multimodal/MultimodalMemoryBridge.js +941 -0
- package/dist/rag/multimodal/MultimodalMemoryBridge.js.map +1 -0
- package/dist/rag/multimodal/SpeechProviderAdapter.d.ts +139 -0
- package/dist/rag/multimodal/SpeechProviderAdapter.d.ts.map +1 -0
- package/dist/rag/multimodal/SpeechProviderAdapter.js +143 -0
- package/dist/rag/multimodal/SpeechProviderAdapter.js.map +1 -0
- package/dist/rag/multimodal/createMultimodalIndexerFromResolver.d.ts +172 -0
- package/dist/rag/multimodal/createMultimodalIndexerFromResolver.d.ts.map +1 -0
- package/dist/rag/multimodal/createMultimodalIndexerFromResolver.js +152 -0
- package/dist/rag/multimodal/createMultimodalIndexerFromResolver.js.map +1 -0
- package/dist/rag/multimodal/index.d.ts +44 -0
- package/dist/rag/multimodal/index.d.ts.map +1 -0
- package/dist/rag/multimodal/index.js +42 -0
- package/dist/rag/multimodal/index.js.map +1 -0
- package/dist/rag/multimodal/types.d.ts +276 -0
- package/dist/rag/multimodal/types.d.ts.map +1 -0
- package/dist/rag/multimodal/types.js +26 -0
- package/dist/rag/multimodal/types.js.map +1 -0
- package/dist/social-posting/SocialPostManager.d.ts +3 -3
- package/dist/social-posting/SocialPostManager.d.ts.map +1 -1
- package/dist/social-posting/SocialPostManager.js +3 -5
- package/dist/social-posting/SocialPostManager.js.map +1 -1
- package/dist/speech/FallbackProxy.d.ts +6 -6
- package/dist/speech/FallbackProxy.d.ts.map +1 -1
- package/dist/speech/FallbackProxy.js +3 -3
- package/dist/speech/FallbackProxy.js.map +1 -1
- package/dist/speech/SpeechProviderResolver.d.ts +8 -8
- package/dist/speech/SpeechProviderResolver.d.ts.map +1 -1
- package/dist/speech/SpeechProviderResolver.js +22 -11
- package/dist/speech/SpeechProviderResolver.js.map +1 -1
- package/dist/speech/SpeechRuntime.d.ts +1 -5
- package/dist/speech/SpeechRuntime.d.ts.map +1 -1
- package/dist/speech/SpeechRuntime.js +17 -9
- package/dist/speech/SpeechRuntime.js.map +1 -1
- package/dist/speech/providers/AssemblyAISTTProvider.d.ts +4 -4
- package/dist/speech/providers/AssemblyAISTTProvider.js +4 -4
- package/dist/speech/providers/AzureSpeechTTSProvider.d.ts +3 -3
- package/dist/speech/providers/AzureSpeechTTSProvider.js +2 -2
- package/dist/speech/providers/AzureSpeechTTSProvider.js.map +1 -1
- package/dist/speech/providers/BuiltInAdaptiveVadProvider.d.ts +9 -9
- package/dist/speech/providers/BuiltInAdaptiveVadProvider.d.ts.map +1 -1
- package/dist/speech/providers/BuiltInAdaptiveVadProvider.js +5 -5
- package/dist/speech/providers/BuiltInAdaptiveVadProvider.js.map +1 -1
- package/dist/speech/providers/DeepgramBatchSTTProvider.d.ts +2 -2
- package/dist/speech/providers/DeepgramBatchSTTProvider.js +2 -2
- package/dist/speech/providers/OpenAITextToSpeechProvider.d.ts +3 -3
- package/dist/speech/providers/OpenAITextToSpeechProvider.js +2 -2
- package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.d.ts +1 -1
- package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.d.ts.map +1 -1
- package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.js +1 -1
- package/dist/speech/providers/OpenAIWhisperSpeechToTextProvider.js.map +1 -1
- package/dist/voice/TelephonyStreamTransport.d.ts +6 -6
- package/dist/voice/TelephonyStreamTransport.d.ts.map +1 -1
- package/dist/voice/TelephonyStreamTransport.js +5 -5
- package/dist/voice/TelephonyStreamTransport.js.map +1 -1
- package/dist/voice-pipeline/AcousticEndpointDetector.d.ts +4 -4
- package/dist/voice-pipeline/AcousticEndpointDetector.d.ts.map +1 -1
- package/dist/voice-pipeline/AcousticEndpointDetector.js +4 -4
- package/dist/voice-pipeline/AcousticEndpointDetector.js.map +1 -1
- package/dist/voice-pipeline/HardCutBargeinHandler.d.ts +3 -3
- package/dist/voice-pipeline/HardCutBargeinHandler.js +3 -3
- package/dist/voice-pipeline/HeuristicEndpointDetector.d.ts +3 -3
- package/dist/voice-pipeline/HeuristicEndpointDetector.d.ts.map +1 -1
- package/dist/voice-pipeline/HeuristicEndpointDetector.js +3 -3
- package/dist/voice-pipeline/HeuristicEndpointDetector.js.map +1 -1
- package/dist/voice-pipeline/SoftFadeBargeinHandler.d.ts +5 -5
- package/dist/voice-pipeline/SoftFadeBargeinHandler.js +1 -1
- package/dist/voice-pipeline/VoiceInterruptError.d.ts +6 -6
- package/dist/voice-pipeline/VoiceInterruptError.d.ts.map +1 -1
- package/dist/voice-pipeline/VoiceInterruptError.js +4 -4
- package/dist/voice-pipeline/VoiceInterruptError.js.map +1 -1
- package/dist/voice-pipeline/VoicePipelineOrchestrator.d.ts +9 -9
- package/dist/voice-pipeline/VoicePipelineOrchestrator.d.ts.map +1 -1
- package/dist/voice-pipeline/VoicePipelineOrchestrator.js +8 -8
- package/dist/voice-pipeline/VoicePipelineOrchestrator.js.map +1 -1
- package/dist/voice-pipeline/WebRTCStreamTransport.d.ts +421 -0
- package/dist/voice-pipeline/WebRTCStreamTransport.d.ts.map +1 -0
- package/dist/voice-pipeline/WebRTCStreamTransport.js +573 -0
- package/dist/voice-pipeline/WebRTCStreamTransport.js.map +1 -0
- package/dist/voice-pipeline/WebSocketStreamTransport.d.ts +8 -8
- package/dist/voice-pipeline/WebSocketStreamTransport.js +5 -5
- package/dist/voice-pipeline/index.d.ts +1 -0
- package/dist/voice-pipeline/index.d.ts.map +1 -1
- package/dist/voice-pipeline/index.js +2 -0
- package/dist/voice-pipeline/index.js.map +1 -1
- package/dist/voice-pipeline/types.d.ts +43 -43
- package/dist/voice-pipeline/types.d.ts.map +1 -1
- package/package.json +19 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hierarchical.js","sourceRoot":"","sources":["../../../src/api/strategies/hierarchical.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"hierarchical.js","sourceRoot":"","sources":["../../../src/api/strategies/hierarchical.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,4 +53,7 @@ export { compileReviewLoop } from './review-loop.js';
|
|
|
53
53
|
export { compileHierarchical } from './hierarchical.js';
|
|
54
54
|
export { compileGraph } from './graph.js';
|
|
55
55
|
export { isAgent, mergeDefaults, resolveAgent, checkBeforeAgent } from './shared.js';
|
|
56
|
+
export { compileAgencyToGraph, mapGraphResultToAgencyResult, mapGraphEventToAgencyEvent } from './graphCompiler.js';
|
|
57
|
+
export { agentGraph, AgentGraphBuilder } from './agentGraphBuilder.js';
|
|
58
|
+
export type { AgentNodeConfig } from './agentGraphBuilder.js';
|
|
56
59
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/strategies/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,KAAK,EACL,eAAe,EAChB,MAAM,aAAa,CAAC;AAQrB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,GAAG,KAAK,CAAC,EAC/C,YAAY,EAAE,aAAa,GAC1B,gBAAgB,CAUlB;AAgFD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/strategies/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,gBAAgB,EAChB,KAAK,EACL,eAAe,EAChB,MAAM,aAAa,CAAC;AAQrB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,EACxB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,GAAG,KAAK,CAAC,EAC/C,YAAY,EAAE,aAAa,GAC1B,gBAAgB,CAUlB;AAgFD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACpH,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACvE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -108,4 +108,6 @@ export { compileReviewLoop } from './review-loop.js';
|
|
|
108
108
|
export { compileHierarchical } from './hierarchical.js';
|
|
109
109
|
export { compileGraph } from './graph.js';
|
|
110
110
|
export { isAgent, mergeDefaults, resolveAgent, checkBeforeAgent } from './shared.js';
|
|
111
|
+
export { compileAgencyToGraph, mapGraphResultToAgencyResult, mapGraphEventToAgencyEvent } from './graphCompiler.js';
|
|
112
|
+
export { agentGraph, AgentGraphBuilder } from './agentGraphBuilder.js';
|
|
111
113
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/strategies/index.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAwB,EACxB,MAA+C,EAC/C,YAA2B;IAE3B,0EAA0E;IAC1E,uEAAuE;IACvE,wEAAwE;IACxE,2CAA2C;IAC3C,IAAI,YAAY,CAAC,QAAQ,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;QACzD,OAAO,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,mBAAmB,CAC1B,QAAwB,EACxB,MAA+C,EAC/C,YAA2B;IAE3B,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,YAAY;YACf,OAAO,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACjD,KAAK,UAAU;YACb,OAAO,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC/C,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,KAAK,aAAa;YAChB,OAAO,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACjD,KAAK,cAAc;YACjB,OAAO,mBAAmB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACnD,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC5C;YACE,MAAM,IAAI,KAAK,CAAC,aAAa,QAAQ,uBAAuB,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAS,sBAAsB,CAC7B,eAA+B,EAC/B,MAA+C,EAC/C,YAA2B;IAE3B,MAAM,oBAAoB,GACxB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,6BAA6B,eAAe,sEAAsE;QAClH,yFAAyF,CAAC;IAE5F,MAAM,cAAc,GAAkB;QACpC,GAAG,YAAY;QACf,YAAY,EAAE,oBAAoB;QAClC,oEAAoE;QACpE,QAAQ,EAAE,KAAK;KAChB,CAAC;IAEF,OAAO,mBAAmB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AACrD,CAAC;AAED,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/strategies/index.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAwB,EACxB,MAA+C,EAC/C,YAA2B;IAE3B,0EAA0E;IAC1E,uEAAuE;IACvE,wEAAwE;IACxE,2CAA2C;IAC3C,IAAI,YAAY,CAAC,QAAQ,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;QACzD,OAAO,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;AAC7D,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAS,mBAAmB,CAC1B,QAAwB,EACxB,MAA+C,EAC/C,YAA2B;IAE3B,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,YAAY;YACf,OAAO,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACjD,KAAK,UAAU;YACb,OAAO,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC/C,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7C,KAAK,aAAa;YAChB,OAAO,iBAAiB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACjD,KAAK,cAAc;YACjB,OAAO,mBAAmB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QACnD,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC5C;YACE,MAAM,IAAI,KAAK,CAAC,aAAa,QAAQ,uBAAuB,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAS,sBAAsB,CAC7B,eAA+B,EAC/B,MAA+C,EAC/C,YAA2B;IAE3B,MAAM,oBAAoB,GACxB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,6BAA6B,eAAe,sEAAsE;QAClH,yFAAyF,CAAC;IAE5F,MAAM,cAAc,GAAkB;QACpC,GAAG,YAAY;QACf,YAAY,EAAE,oBAAoB;QAClC,oEAAoE;QACpE,QAAQ,EAAE,KAAK;KAChB,CAAC;IAEF,OAAO,mBAAmB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AACrD,CAAC;AAED,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACpH,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { AgencyOptions, Agent, BaseAgentConfig, AgentCallRecord, ApprovalDecision } from '../types.js';
|
|
2
2
|
/**
|
|
3
3
|
* Type guard that checks whether a value is a pre-built {@link Agent} instance
|
|
4
|
-
* (has a `generate` method) vs a raw
|
|
4
|
+
* (has a `generate` method) vs a raw `BaseAgentConfig` object.
|
|
5
5
|
*
|
|
6
6
|
* Uses duck-typing on the `generate` method rather than `instanceof` because
|
|
7
7
|
* Agent instances may come from different module copies (e.g. nested agencies
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/api/strategies/shared.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/api/strategies/shared.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,aAAa,EACb,KAAK,EACL,eAAe,EACf,eAAe,EAEf,gBAAgB,EACjB,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,eAAe,GAAG,KAAK,GAAG,KAAK,IAAI,KAAK,CAEtE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,aAAa,CAC3B,WAAW,EAAE,eAAe,EAC5B,YAAY,EAAE,aAAa,GAC1B,eAAe,CAcjB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,YAAY,CAC1B,aAAa,EAAE,eAAe,GAAG,KAAK,EACtC,YAAY,EAAE,aAAa,GAC1B,KAAK,CAIP;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,eAAe,EAAE,EAC7B,YAAY,EAAE,aAAa,GAC1B,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAkClC"}
|
|
@@ -11,9 +11,10 @@
|
|
|
11
11
|
* @see {@link compileStrategy} -- the dispatcher that selects and invokes strategy compilers.
|
|
12
12
|
*/
|
|
13
13
|
import { agent as createAgent } from '../agent.js';
|
|
14
|
+
import { mergeAdaptableTools } from '../toolAdapter.js';
|
|
14
15
|
/**
|
|
15
16
|
* Type guard that checks whether a value is a pre-built {@link Agent} instance
|
|
16
|
-
* (has a `generate` method) vs a raw
|
|
17
|
+
* (has a `generate` method) vs a raw `BaseAgentConfig` object.
|
|
17
18
|
*
|
|
18
19
|
* Uses duck-typing on the `generate` method rather than `instanceof` because
|
|
19
20
|
* Agent instances may come from different module copies (e.g. nested agencies
|
|
@@ -73,7 +74,7 @@ export function mergeDefaults(agentConfig, agencyConfig) {
|
|
|
73
74
|
...agentConfig,
|
|
74
75
|
// Tools are merged separately because we want additive merging
|
|
75
76
|
// (agency tools + agent tools) rather than wholesale replacement.
|
|
76
|
-
tools:
|
|
77
|
+
tools: mergeAdaptableTools(agencyConfig.tools, agentConfig.tools),
|
|
77
78
|
};
|
|
78
79
|
}
|
|
79
80
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/api/strategies/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/api/strategies/shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAUxD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,OAAO,CAAC,KAA8B;IACpD,OAAO,OAAQ,KAAe,CAAC,QAAQ,KAAK,UAAU,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,aAAa,CAC3B,WAA4B,EAC5B,YAA2B;IAE3B,OAAO;QACL,gEAAgE;QAChE,uEAAuE;QACvE,qCAAqC;QACrC,KAAK,EAAE,WAAW,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK;QAC9C,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ;QACvD,MAAM,EAAE,WAAW,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM;QACjD,OAAO,EAAE,WAAW,CAAC,OAAO,IAAI,YAAY,CAAC,OAAO;QACpD,GAAG,WAAW;QACd,+DAA+D;QAC/D,kEAAkE;QAClE,KAAK,EAAE,mBAAmB,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;KAClE,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,YAAY,CAC1B,aAAsC,EACtC,YAA2B;IAE3B,OAAO,OAAO,CAAC,aAAa,CAAC;QAC3B,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,WAAW,CAAC,EAAE,GAAG,aAAa,CAAC,aAAa,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAY,EACZ,OAAe,EACf,UAA6B,EAC7B,YAA2B;IAE3B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC;IAC9D,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC;IAE3C,uEAAuE;IACvE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,yEAAyE;IACzE,iCAAiC;IACjC,MAAM,OAAO,GAAoB;QAC/B,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;QACvB,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,SAAS;QACjB,WAAW,EAAE,UAAU,IAAI,uBAAuB;QAClD,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;QAC3B,OAAO,EAAE;YACP,UAAU;YACV,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,SAAS,EAAE,CAAC;SACb;KACF,CAAC;IAEF,oEAAoE;IACpE,oCAAoC;IACpC,YAAY,CAAC,EAAE,EAAE,iBAAiB,EAAE,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,yEAAyE;IACzE,YAAY,CAAC,EAAE,EAAE,eAAe,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE7C,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file streamObject.ts
|
|
3
|
+
* Streaming structured output extraction for the AgentOS high-level API.
|
|
4
|
+
*
|
|
5
|
+
* Wraps {@link streamText} with incremental JSON parsing so callers can
|
|
6
|
+
* observe partial objects as the LLM produces tokens, then receive a final
|
|
7
|
+
* Zod-validated result once the stream completes.
|
|
8
|
+
*
|
|
9
|
+
* @see {@link generateObject} for the non-streaming counterpart.
|
|
10
|
+
* @see {@link streamText} for the underlying streaming text primitive.
|
|
11
|
+
*/
|
|
12
|
+
import type { ZodType } from 'zod';
|
|
13
|
+
import type { Message, TokenUsage } from './generateText.js';
|
|
14
|
+
/**
|
|
15
|
+
* Recursively makes every property in `T` optional, including nested objects.
|
|
16
|
+
* Used to type the partial objects yielded by `StreamObjectResult.partialObjectStream`
|
|
17
|
+
* as the LLM incrementally builds the JSON response.
|
|
18
|
+
*
|
|
19
|
+
* @typeParam T - The source type to make deeply partial.
|
|
20
|
+
*/
|
|
21
|
+
export type DeepPartial<T> = T extends object ? {
|
|
22
|
+
[K in keyof T]?: DeepPartial<T[K]>;
|
|
23
|
+
} : T;
|
|
24
|
+
/**
|
|
25
|
+
* Options for a {@link streamObject} call.
|
|
26
|
+
*
|
|
27
|
+
* Shares the same shape as {@link GenerateObjectOptions} from {@link generateObject}.
|
|
28
|
+
* At minimum, `schema` and either `prompt` or `messages` must be supplied.
|
|
29
|
+
*
|
|
30
|
+
* @typeParam T - The Zod schema type defining the expected output shape.
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* const opts: StreamObjectOptions<typeof mySchema> = {
|
|
35
|
+
* schema: z.object({ name: z.string(), items: z.array(z.string()) }),
|
|
36
|
+
* prompt: 'List 3 fruits with a person name',
|
|
37
|
+
* };
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export interface StreamObjectOptions<T extends ZodType> {
|
|
41
|
+
/**
|
|
42
|
+
* Provider name. When supplied without `model`, the default text model for
|
|
43
|
+
* the provider is resolved automatically.
|
|
44
|
+
*
|
|
45
|
+
* @example `"openai"`, `"anthropic"`, `"ollama"`
|
|
46
|
+
*/
|
|
47
|
+
provider?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Model identifier. Accepts `"provider:model"` or plain model name with `provider`.
|
|
50
|
+
*
|
|
51
|
+
* @example `"openai:gpt-4o"`, `"gpt-4o-mini"`
|
|
52
|
+
*/
|
|
53
|
+
model?: string;
|
|
54
|
+
/** Zod schema defining the expected output shape. */
|
|
55
|
+
schema: T;
|
|
56
|
+
/**
|
|
57
|
+
* Human-readable name for the schema, injected into the system prompt.
|
|
58
|
+
*
|
|
59
|
+
* @example `"ShoppingList"`
|
|
60
|
+
*/
|
|
61
|
+
schemaName?: string;
|
|
62
|
+
/**
|
|
63
|
+
* Description of the schema, injected into the system prompt.
|
|
64
|
+
*
|
|
65
|
+
* @example `"A shopping list with a person's name and items."`
|
|
66
|
+
*/
|
|
67
|
+
schemaDescription?: string;
|
|
68
|
+
/** User prompt. */
|
|
69
|
+
prompt?: string;
|
|
70
|
+
/** System prompt. Schema instructions are appended automatically. */
|
|
71
|
+
system?: string;
|
|
72
|
+
/** Full conversation history. */
|
|
73
|
+
messages?: Message[];
|
|
74
|
+
/** Sampling temperature forwarded to the provider. */
|
|
75
|
+
temperature?: number;
|
|
76
|
+
/** Hard cap on output tokens. */
|
|
77
|
+
maxTokens?: number;
|
|
78
|
+
/**
|
|
79
|
+
* Number of retries on validation failure.
|
|
80
|
+
* Unlike {@link generateObject}, streaming retries are not currently supported
|
|
81
|
+
* (the stream is consumed once). This field is accepted for API symmetry but
|
|
82
|
+
* is unused; validation errors on the final object throw immediately.
|
|
83
|
+
*
|
|
84
|
+
* @default 0
|
|
85
|
+
*/
|
|
86
|
+
maxRetries?: number;
|
|
87
|
+
/** Override the API key. */
|
|
88
|
+
apiKey?: string;
|
|
89
|
+
/** Override the provider base URL. */
|
|
90
|
+
baseUrl?: string;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* The result object returned immediately by {@link streamObject}.
|
|
94
|
+
*
|
|
95
|
+
* Consumers iterate `partialObjectStream` for incremental partial objects,
|
|
96
|
+
* or `await` the promise properties for the final validated result.
|
|
97
|
+
*
|
|
98
|
+
* @typeParam T - The inferred type from the Zod schema.
|
|
99
|
+
*/
|
|
100
|
+
export interface StreamObjectResult<T> {
|
|
101
|
+
/**
|
|
102
|
+
* Async iterable yielding partial objects as the LLM builds the JSON
|
|
103
|
+
* response token by token. Each yielded value has the same shape as `T`
|
|
104
|
+
* but with all fields optional ({@link DeepPartial}).
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```ts
|
|
108
|
+
* for await (const partial of result.partialObjectStream) {
|
|
109
|
+
* console.log('partial:', partial);
|
|
110
|
+
* }
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
partialObjectStream: AsyncIterable<DeepPartial<T>>;
|
|
114
|
+
/**
|
|
115
|
+
* Resolves to the final Zod-validated object when the stream completes.
|
|
116
|
+
*
|
|
117
|
+
* @throws {ObjectGenerationError} When the final JSON fails validation.
|
|
118
|
+
*/
|
|
119
|
+
object: Promise<T>;
|
|
120
|
+
/** Resolves to the raw text when the stream completes. */
|
|
121
|
+
text: Promise<string>;
|
|
122
|
+
/** Resolves to aggregated token usage when the stream completes. */
|
|
123
|
+
usage: Promise<TokenUsage>;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Streams a structured object by incrementally parsing JSON as the LLM
|
|
127
|
+
* produces tokens, then validates the final result against a Zod schema.
|
|
128
|
+
*
|
|
129
|
+
* Returns immediately with a {@link StreamObjectResult} containing async
|
|
130
|
+
* iterables and promises. The underlying LLM call begins lazily when a
|
|
131
|
+
* consumer starts iterating `partialObjectStream` or awaits a promise.
|
|
132
|
+
*
|
|
133
|
+
* @typeParam T - The Zod schema type. Partial objects are typed as
|
|
134
|
+
* `DeepPartial<z.infer<T>>`, and the final `object` promise resolves
|
|
135
|
+
* to `z.infer<T>`.
|
|
136
|
+
*
|
|
137
|
+
* @param opts - Streaming generation options including the Zod schema,
|
|
138
|
+
* prompt/messages, and optional provider/model overrides.
|
|
139
|
+
* @returns A {@link StreamObjectResult} with `partialObjectStream`, `object`,
|
|
140
|
+
* `text`, and `usage` properties.
|
|
141
|
+
*
|
|
142
|
+
* @example
|
|
143
|
+
* ```ts
|
|
144
|
+
* import { z } from 'zod';
|
|
145
|
+
* import { streamObject } from '@framers/agentos';
|
|
146
|
+
*
|
|
147
|
+
* const result = streamObject({
|
|
148
|
+
* model: 'openai:gpt-4o',
|
|
149
|
+
* schema: z.object({ name: z.string(), hobbies: z.array(z.string()) }),
|
|
150
|
+
* prompt: 'Create a profile for a fictional character.',
|
|
151
|
+
* });
|
|
152
|
+
*
|
|
153
|
+
* for await (const partial of result.partialObjectStream) {
|
|
154
|
+
* console.log('partial:', partial);
|
|
155
|
+
* }
|
|
156
|
+
*
|
|
157
|
+
* const final = await result.object;
|
|
158
|
+
* console.log('final:', final);
|
|
159
|
+
* ```
|
|
160
|
+
*
|
|
161
|
+
* @see {@link generateObject} for non-streaming structured output.
|
|
162
|
+
* @see {@link streamText} for plain text streaming.
|
|
163
|
+
*/
|
|
164
|
+
export declare function streamObject<T extends ZodType>(opts: StreamObjectOptions<T>): StreamObjectResult<z.infer<T>>;
|
|
165
|
+
import type { z } from 'zod';
|
|
166
|
+
//# sourceMappingURL=streamObject.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streamObject.d.ts","sourceRoot":"","sources":["../../src/api/streamObject.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,OAAO,EAAY,MAAM,KAAK,CAAC;AAG7C,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAS7D;;;;;;GAMG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,CAAC,CAAC;AAE3F;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,OAAO;IACpD;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qDAAqD;IACrD,MAAM,EAAE,CAAC,CAAC;IAEV;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,mBAAmB;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IAErB,sDAAsD;IACtD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,sCAAsC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC;;;;;;;;;;;OAWG;IACH,mBAAmB,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnD;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAEnB,0DAA0D;IAC1D,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtB,oEAAoE;IACpE,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAC5B;AA4JD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,OAAO,EAC5C,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC3B,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAkHhC;AAGD,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC"}
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
import { streamText } from './streamText.js';
|
|
2
|
+
import { lowerZodToJsonSchema } from '../orchestration/compiler/SchemaLowering.js';
|
|
3
|
+
import { ObjectGenerationError } from './generateObject.js';
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// Internal helpers
|
|
6
|
+
// ---------------------------------------------------------------------------
|
|
7
|
+
/**
|
|
8
|
+
* Builds the same schema-aware system prompt used by {@link generateObject}.
|
|
9
|
+
*
|
|
10
|
+
* Duplicated here to keep the streaming module self-contained without
|
|
11
|
+
* exporting the helper from generateObject.
|
|
12
|
+
*
|
|
13
|
+
* @param userSystem - Optional user-supplied system prompt to prepend.
|
|
14
|
+
* @param jsonSchema - JSON Schema representation of the Zod schema.
|
|
15
|
+
* @param schemaName - Optional name for the schema.
|
|
16
|
+
* @param schemaDescription - Optional description.
|
|
17
|
+
* @returns The assembled system prompt.
|
|
18
|
+
*/
|
|
19
|
+
function buildSchemaSystemPrompt(userSystem, jsonSchema, schemaName, schemaDescription) {
|
|
20
|
+
const parts = [];
|
|
21
|
+
if (userSystem) {
|
|
22
|
+
parts.push(userSystem);
|
|
23
|
+
parts.push('');
|
|
24
|
+
}
|
|
25
|
+
parts.push('You MUST respond with ONLY a valid JSON object — no markdown, no code fences, no explanation.');
|
|
26
|
+
if (schemaName) {
|
|
27
|
+
parts.push(`The JSON object should be a "${schemaName}".`);
|
|
28
|
+
}
|
|
29
|
+
if (schemaDescription) {
|
|
30
|
+
parts.push(schemaDescription);
|
|
31
|
+
}
|
|
32
|
+
parts.push('');
|
|
33
|
+
parts.push('The JSON MUST conform to this JSON Schema:');
|
|
34
|
+
parts.push(JSON.stringify(jsonSchema, null, 2));
|
|
35
|
+
return parts.join('\n');
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Attempts to parse a partial JSON string by speculatively adding closing
|
|
39
|
+
* brackets and braces.
|
|
40
|
+
*
|
|
41
|
+
* The LLM streams tokens incrementally, so at any point the buffer may be
|
|
42
|
+
* an incomplete JSON string (e.g. `{"name":"Jo`). This function tries up to
|
|
43
|
+
* 8 closing combinations to produce a parseable partial object.
|
|
44
|
+
*
|
|
45
|
+
* @param buffer - The accumulated JSON text so far.
|
|
46
|
+
* @returns The parsed partial object, or `undefined` if no parse succeeded.
|
|
47
|
+
*/
|
|
48
|
+
function tryParsePartialJson(buffer) {
|
|
49
|
+
const trimmed = buffer.trim();
|
|
50
|
+
if (!trimmed)
|
|
51
|
+
return undefined;
|
|
52
|
+
// Fast path: maybe the buffer is already valid JSON
|
|
53
|
+
try {
|
|
54
|
+
return JSON.parse(trimmed);
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
// Expected — the buffer is incomplete
|
|
58
|
+
}
|
|
59
|
+
// Strip any leading code fence marker that the model may have started
|
|
60
|
+
let cleaned = trimmed;
|
|
61
|
+
if (cleaned.startsWith('```json')) {
|
|
62
|
+
cleaned = cleaned.slice(7).trim();
|
|
63
|
+
}
|
|
64
|
+
else if (cleaned.startsWith('```')) {
|
|
65
|
+
cleaned = cleaned.slice(3).trim();
|
|
66
|
+
}
|
|
67
|
+
// Try progressively adding closing characters.
|
|
68
|
+
// Count open braces/brackets that need closing.
|
|
69
|
+
const closers = [];
|
|
70
|
+
let inString = false;
|
|
71
|
+
let escaped = false;
|
|
72
|
+
for (const ch of cleaned) {
|
|
73
|
+
if (escaped) {
|
|
74
|
+
escaped = false;
|
|
75
|
+
continue;
|
|
76
|
+
}
|
|
77
|
+
if (ch === '\\') {
|
|
78
|
+
escaped = true;
|
|
79
|
+
continue;
|
|
80
|
+
}
|
|
81
|
+
if (ch === '"') {
|
|
82
|
+
inString = !inString;
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
if (inString)
|
|
86
|
+
continue;
|
|
87
|
+
if (ch === '{')
|
|
88
|
+
closers.push('}');
|
|
89
|
+
else if (ch === '[')
|
|
90
|
+
closers.push(']');
|
|
91
|
+
else if (ch === '}' || ch === ']')
|
|
92
|
+
closers.pop();
|
|
93
|
+
}
|
|
94
|
+
// If we're inside a string, close it first
|
|
95
|
+
let candidate = cleaned;
|
|
96
|
+
if (inString) {
|
|
97
|
+
candidate += '"';
|
|
98
|
+
}
|
|
99
|
+
// Remove any trailing comma before we add closers (JSON doesn't allow trailing commas)
|
|
100
|
+
candidate = candidate.replace(/,\s*$/, '');
|
|
101
|
+
// Add the necessary closing characters in reverse order
|
|
102
|
+
candidate += closers.reverse().join('');
|
|
103
|
+
try {
|
|
104
|
+
return JSON.parse(candidate);
|
|
105
|
+
}
|
|
106
|
+
catch {
|
|
107
|
+
return undefined;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Extracts a JSON object from raw text, handling code fences and brace extraction.
|
|
112
|
+
*
|
|
113
|
+
* @param text - The complete raw text to parse.
|
|
114
|
+
* @returns The parsed value.
|
|
115
|
+
* @throws {SyntaxError} When no valid JSON can be extracted.
|
|
116
|
+
*/
|
|
117
|
+
function extractJson(text) {
|
|
118
|
+
const trimmed = text.trim();
|
|
119
|
+
try {
|
|
120
|
+
return JSON.parse(trimmed);
|
|
121
|
+
}
|
|
122
|
+
catch {
|
|
123
|
+
// Fall through
|
|
124
|
+
}
|
|
125
|
+
const fenceMatch = trimmed.match(/```(?:json)?\s*\n?([\s\S]*?)\n?\s*```/);
|
|
126
|
+
if (fenceMatch?.[1]) {
|
|
127
|
+
return JSON.parse(fenceMatch[1].trim());
|
|
128
|
+
}
|
|
129
|
+
const firstBrace = trimmed.indexOf('{');
|
|
130
|
+
const lastBrace = trimmed.lastIndexOf('}');
|
|
131
|
+
if (firstBrace !== -1 && lastBrace > firstBrace) {
|
|
132
|
+
return JSON.parse(trimmed.slice(firstBrace, lastBrace + 1));
|
|
133
|
+
}
|
|
134
|
+
throw new SyntaxError(`No valid JSON found in streamed response: ${trimmed.slice(0, 200)}`);
|
|
135
|
+
}
|
|
136
|
+
// ---------------------------------------------------------------------------
|
|
137
|
+
// Main function
|
|
138
|
+
// ---------------------------------------------------------------------------
|
|
139
|
+
/**
|
|
140
|
+
* Streams a structured object by incrementally parsing JSON as the LLM
|
|
141
|
+
* produces tokens, then validates the final result against a Zod schema.
|
|
142
|
+
*
|
|
143
|
+
* Returns immediately with a {@link StreamObjectResult} containing async
|
|
144
|
+
* iterables and promises. The underlying LLM call begins lazily when a
|
|
145
|
+
* consumer starts iterating `partialObjectStream` or awaits a promise.
|
|
146
|
+
*
|
|
147
|
+
* @typeParam T - The Zod schema type. Partial objects are typed as
|
|
148
|
+
* `DeepPartial<z.infer<T>>`, and the final `object` promise resolves
|
|
149
|
+
* to `z.infer<T>`.
|
|
150
|
+
*
|
|
151
|
+
* @param opts - Streaming generation options including the Zod schema,
|
|
152
|
+
* prompt/messages, and optional provider/model overrides.
|
|
153
|
+
* @returns A {@link StreamObjectResult} with `partialObjectStream`, `object`,
|
|
154
|
+
* `text`, and `usage` properties.
|
|
155
|
+
*
|
|
156
|
+
* @example
|
|
157
|
+
* ```ts
|
|
158
|
+
* import { z } from 'zod';
|
|
159
|
+
* import { streamObject } from '@framers/agentos';
|
|
160
|
+
*
|
|
161
|
+
* const result = streamObject({
|
|
162
|
+
* model: 'openai:gpt-4o',
|
|
163
|
+
* schema: z.object({ name: z.string(), hobbies: z.array(z.string()) }),
|
|
164
|
+
* prompt: 'Create a profile for a fictional character.',
|
|
165
|
+
* });
|
|
166
|
+
*
|
|
167
|
+
* for await (const partial of result.partialObjectStream) {
|
|
168
|
+
* console.log('partial:', partial);
|
|
169
|
+
* }
|
|
170
|
+
*
|
|
171
|
+
* const final = await result.object;
|
|
172
|
+
* console.log('final:', final);
|
|
173
|
+
* ```
|
|
174
|
+
*
|
|
175
|
+
* @see {@link generateObject} for non-streaming structured output.
|
|
176
|
+
* @see {@link streamText} for plain text streaming.
|
|
177
|
+
*/
|
|
178
|
+
export function streamObject(opts) {
|
|
179
|
+
// Deferred promise resolvers — settled when the stream completes
|
|
180
|
+
let resolveObject;
|
|
181
|
+
let rejectObject;
|
|
182
|
+
let resolveText;
|
|
183
|
+
let resolveUsage;
|
|
184
|
+
const objectPromise = new Promise((res, rej) => {
|
|
185
|
+
resolveObject = res;
|
|
186
|
+
rejectObject = rej;
|
|
187
|
+
});
|
|
188
|
+
const textPromise = new Promise((res) => {
|
|
189
|
+
resolveText = res;
|
|
190
|
+
});
|
|
191
|
+
const usagePromise = new Promise((res) => {
|
|
192
|
+
resolveUsage = res;
|
|
193
|
+
});
|
|
194
|
+
// Convert the Zod schema to JSON Schema for the system prompt
|
|
195
|
+
const jsonSchema = lowerZodToJsonSchema(opts.schema);
|
|
196
|
+
const systemPrompt = buildSchemaSystemPrompt(opts.system, jsonSchema, opts.schemaName, opts.schemaDescription);
|
|
197
|
+
/**
|
|
198
|
+
* The core async generator that drives the stream. It calls streamText()
|
|
199
|
+
* under the hood and incrementally parses the accumulating JSON buffer,
|
|
200
|
+
* yielding DeepPartial<T> snapshots as they become available.
|
|
201
|
+
*/
|
|
202
|
+
async function* runPartialStream() {
|
|
203
|
+
// Track the last successfully parsed partial to avoid duplicate yields
|
|
204
|
+
let lastPartialJson = '';
|
|
205
|
+
let buffer = '';
|
|
206
|
+
const stream = streamText({
|
|
207
|
+
provider: opts.provider,
|
|
208
|
+
model: opts.model,
|
|
209
|
+
system: systemPrompt,
|
|
210
|
+
messages: opts.messages,
|
|
211
|
+
prompt: opts.prompt,
|
|
212
|
+
temperature: opts.temperature,
|
|
213
|
+
maxTokens: opts.maxTokens,
|
|
214
|
+
apiKey: opts.apiKey,
|
|
215
|
+
baseUrl: opts.baseUrl,
|
|
216
|
+
});
|
|
217
|
+
try {
|
|
218
|
+
for await (const chunk of stream.textStream) {
|
|
219
|
+
buffer += chunk;
|
|
220
|
+
// Attempt incremental parse on each token arrival
|
|
221
|
+
const partial = tryParsePartialJson(buffer);
|
|
222
|
+
if (partial !== undefined && typeof partial === 'object' && partial !== null) {
|
|
223
|
+
// Only yield when the parsed shape has actually changed
|
|
224
|
+
const serialized = JSON.stringify(partial);
|
|
225
|
+
if (serialized !== lastPartialJson) {
|
|
226
|
+
lastPartialJson = serialized;
|
|
227
|
+
yield partial;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
// Stream is complete — resolve the final values
|
|
232
|
+
const finalText = buffer;
|
|
233
|
+
resolveText(finalText);
|
|
234
|
+
resolveUsage(await stream.usage);
|
|
235
|
+
// Final parse and validation
|
|
236
|
+
let parsed;
|
|
237
|
+
try {
|
|
238
|
+
parsed = extractJson(finalText);
|
|
239
|
+
}
|
|
240
|
+
catch (parseErr) {
|
|
241
|
+
const err = new ObjectGenerationError(`Failed to parse streamed JSON: ${parseErr.message}`, finalText);
|
|
242
|
+
rejectObject(err);
|
|
243
|
+
return;
|
|
244
|
+
}
|
|
245
|
+
const validation = opts.schema.safeParse(parsed);
|
|
246
|
+
if (validation.success) {
|
|
247
|
+
resolveObject(validation.data);
|
|
248
|
+
}
|
|
249
|
+
else {
|
|
250
|
+
rejectObject(new ObjectGenerationError(`Streamed JSON does not match schema: ${validation.error.message}`, finalText, validation.error));
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
catch (err) {
|
|
254
|
+
// Stream interrupted or errored — resolve promises so awaiting callers unblock
|
|
255
|
+
const error = err instanceof Error ? err : new Error(String(err));
|
|
256
|
+
resolveText(buffer);
|
|
257
|
+
resolveUsage({ promptTokens: 0, completionTokens: 0, totalTokens: 0 });
|
|
258
|
+
rejectObject(new ObjectGenerationError(`Stream interrupted: ${error.message}`, buffer));
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
return {
|
|
262
|
+
partialObjectStream: runPartialStream(),
|
|
263
|
+
object: objectPromise,
|
|
264
|
+
text: textPromise,
|
|
265
|
+
usage: usagePromise,
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
//# sourceMappingURL=streamObject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"streamObject.js","sourceRoot":"","sources":["../../src/api/streamObject.ts"],"names":[],"mappings":"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"}
|
package/dist/api/streamText.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { GenerateTextOptions, TokenUsage, ToolCallRecord } from './generateText.js';
|
|
2
2
|
/**
|
|
3
3
|
* A discriminated union representing a single event emitted by the
|
|
4
|
-
*
|
|
4
|
+
* `StreamTextResult.fullStream` iterable.
|
|
5
5
|
*
|
|
6
6
|
* - `"text"` — incremental token delta from the model.
|
|
7
7
|
* - `"tool-call"` — the model requested a tool invocation.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streamText.d.ts","sourceRoot":"","sources":["../../src/api/streamText.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMzF;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEpC;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2FAA2F;IAC3F,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,yEAAyE;IACzE,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACtC,iFAAiF;IACjF,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,2EAA2E;IAC3E,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3B,yFAAyF;IACzF,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;CACtC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,mBAAmB,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"streamText.d.ts","sourceRoot":"","sources":["../../src/api/streamText.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMzF;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC9B;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GACtD;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,CAAC;AAEpC;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2FAA2F;IAC3F,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,yEAAyE;IACzE,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACtC,iFAAiF;IACjF,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACtB,2EAA2E;IAC3E,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAC3B,yFAAyF;IACzF,SAAS,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;CACtC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,mBAAmB,GAAG,gBAAgB,CAwTtE"}
|
package/dist/api/streamText.js
CHANGED
|
@@ -35,9 +35,15 @@ export function streamText(opts) {
|
|
|
35
35
|
let resolveText;
|
|
36
36
|
let resolveUsage;
|
|
37
37
|
let resolveToolCalls;
|
|
38
|
-
const textPromise = new Promise(r => {
|
|
39
|
-
|
|
40
|
-
|
|
38
|
+
const textPromise = new Promise((r) => {
|
|
39
|
+
resolveText = r;
|
|
40
|
+
});
|
|
41
|
+
const usagePromise = new Promise((r) => {
|
|
42
|
+
resolveUsage = r;
|
|
43
|
+
});
|
|
44
|
+
const toolCallsPromise = new Promise((r) => {
|
|
45
|
+
resolveToolCalls = r;
|
|
46
|
+
});
|
|
41
47
|
const parts = [];
|
|
42
48
|
const allToolCalls = [];
|
|
43
49
|
async function* runStream() {
|
|
@@ -50,7 +56,10 @@ export function streamText(opts) {
|
|
|
50
56
|
let recordedModelId;
|
|
51
57
|
try {
|
|
52
58
|
const { providerId, modelId } = resolveModelOption(opts, 'text');
|
|
53
|
-
const resolved = resolveProvider(providerId, modelId, {
|
|
59
|
+
const resolved = resolveProvider(providerId, modelId, {
|
|
60
|
+
apiKey: opts.apiKey,
|
|
61
|
+
baseUrl: opts.baseUrl,
|
|
62
|
+
});
|
|
54
63
|
const manager = await createProviderManager(resolved);
|
|
55
64
|
recordedProviderId = resolved.providerId;
|
|
56
65
|
recordedModelId = resolved.modelId;
|
|
@@ -75,7 +84,11 @@ export function streamText(opts) {
|
|
|
75
84
|
const toolSchemas = tools.length > 0
|
|
76
85
|
? tools.map((tool) => ({
|
|
77
86
|
type: 'function',
|
|
78
|
-
function: {
|
|
87
|
+
function: {
|
|
88
|
+
name: tool.name,
|
|
89
|
+
description: tool.description,
|
|
90
|
+
parameters: tool.inputSchema,
|
|
91
|
+
},
|
|
79
92
|
}))
|
|
80
93
|
: undefined;
|
|
81
94
|
const maxSteps = opts.maxSteps ?? 1;
|
|
@@ -136,8 +149,9 @@ export function streamText(opts) {
|
|
|
136
149
|
}
|
|
137
150
|
const stepText = reconstructor.getFullText();
|
|
138
151
|
const finalChunk = reconstructor.getFinalChunk();
|
|
139
|
-
const streamedToolCalls = finalChunk?.choices?.[0]?.message?.tool_calls
|
|
140
|
-
|
|
152
|
+
const streamedToolCalls = finalChunk?.choices?.[0]?.message?.tool_calls ??
|
|
153
|
+
reconstructor
|
|
154
|
+
.getToolCalls()
|
|
141
155
|
.filter((toolCall) => toolCall.id && toolCall.name)
|
|
142
156
|
.map((toolCall) => ({
|
|
143
157
|
id: toolCall.id,
|
|
@@ -187,7 +201,11 @@ export function streamText(opts) {
|
|
|
187
201
|
const tool = toolMap.get(fnName);
|
|
188
202
|
if (!tool) {
|
|
189
203
|
toolCallRecord.error = `Tool "${fnName}" not found.`;
|
|
190
|
-
const resultPart = {
|
|
204
|
+
const resultPart = {
|
|
205
|
+
type: 'tool-result',
|
|
206
|
+
toolName: fnName,
|
|
207
|
+
result: { error: toolCallRecord.error },
|
|
208
|
+
};
|
|
191
209
|
parts.push(resultPart);
|
|
192
210
|
yield resultPart;
|
|
193
211
|
messages.push({
|