agentfootprint 1.17.4 → 1.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -16
- package/dist/adapters/memory/inMemory.js +38 -0
- package/dist/adapters/memory/inMemory.js.map +1 -0
- package/dist/adapters/memory/index.js +6 -0
- package/dist/adapters/memory/index.js.map +1 -0
- package/dist/adapters/memory/stores.js +145 -0
- package/dist/adapters/memory/stores.js.map +1 -0
- package/dist/adapters/memory/types.js +14 -0
- package/dist/adapters/memory/types.js.map +1 -0
- package/dist/compositions/withCircuitBreaker.js +1 -1
- package/dist/compositions/withCircuitBreaker.js.map +1 -1
- package/dist/compositions/withFallback.js +1 -1
- package/dist/compositions/withFallback.js.map +1 -1
- package/dist/compositions/withRetry.js +1 -1
- package/dist/compositions/withRetry.js.map +1 -1
- package/dist/concepts/Conditional.js +30 -4
- package/dist/concepts/Conditional.js.map +1 -1
- package/dist/concepts/FlowChart.js +31 -5
- package/dist/concepts/FlowChart.js.map +1 -1
- package/dist/concepts/LLMCall.js +51 -6
- package/dist/concepts/LLMCall.js.map +1 -1
- package/dist/concepts/Parallel.js +33 -4
- package/dist/concepts/Parallel.js.map +1 -1
- package/dist/concepts/Pipeline.js +108 -0
- package/dist/concepts/Pipeline.js.map +1 -0
- package/dist/concepts/RAG.js +47 -7
- package/dist/concepts/RAG.js.map +1 -1
- package/dist/concepts/Swarm.js +34 -3
- package/dist/concepts/Swarm.js.map +1 -1
- package/dist/esm/adapters/memory/inMemory.js +34 -0
- package/dist/esm/adapters/memory/inMemory.js.map +1 -0
- package/dist/esm/adapters/memory/index.js +2 -0
- package/dist/esm/adapters/memory/index.js.map +1 -0
- package/dist/esm/adapters/memory/stores.js +139 -0
- package/dist/esm/adapters/memory/stores.js.map +1 -0
- package/dist/esm/adapters/memory/types.js +13 -0
- package/dist/esm/adapters/memory/types.js.map +1 -0
- package/dist/esm/compositions/withCircuitBreaker.js +1 -1
- package/dist/esm/compositions/withCircuitBreaker.js.map +1 -1
- package/dist/esm/compositions/withFallback.js +1 -1
- package/dist/esm/compositions/withFallback.js.map +1 -1
- package/dist/esm/compositions/withRetry.js +1 -1
- package/dist/esm/compositions/withRetry.js.map +1 -1
- package/dist/esm/concepts/Conditional.js +30 -4
- package/dist/esm/concepts/Conditional.js.map +1 -1
- package/dist/esm/concepts/FlowChart.js +31 -5
- package/dist/esm/concepts/FlowChart.js.map +1 -1
- package/dist/esm/concepts/LLMCall.js +50 -5
- package/dist/esm/concepts/LLMCall.js.map +1 -1
- package/dist/esm/concepts/Parallel.js +32 -3
- package/dist/esm/concepts/Parallel.js.map +1 -1
- package/dist/esm/concepts/Pipeline.js +103 -0
- package/dist/esm/concepts/Pipeline.js.map +1 -0
- package/dist/esm/concepts/RAG.js +46 -6
- package/dist/esm/concepts/RAG.js.map +1 -1
- package/dist/esm/concepts/Swarm.js +34 -3
- package/dist/esm/concepts/Swarm.js.map +1 -1
- package/dist/esm/executor/scopeFactory.js +12 -0
- package/dist/esm/executor/scopeFactory.js.map +1 -0
- package/dist/esm/exportTrace.js +0 -1
- package/dist/esm/exportTrace.js.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/call/handleResponseStage.js +49 -0
- package/dist/esm/lib/call/handleResponseStage.js.map +1 -0
- package/dist/esm/lib/call/toolExecutionSubflow.js +89 -1
- package/dist/esm/lib/call/toolExecutionSubflow.js.map +1 -1
- package/dist/esm/lib/concepts/AgentBuilder.js +4 -1
- package/dist/esm/lib/concepts/AgentBuilder.js.map +1 -1
- package/dist/esm/lib/concepts/AgentRunner.js +44 -12
- package/dist/esm/lib/concepts/AgentRunner.js.map +1 -1
- package/dist/esm/lib/narrative/groundingHelpers.js +142 -0
- package/dist/esm/lib/narrative/groundingHelpers.js.map +1 -0
- package/dist/esm/lib/swarm/buildSwarmChart.js +107 -0
- package/dist/esm/lib/swarm/buildSwarmChart.js.map +1 -0
- package/dist/esm/lib/swarm/buildSwarmLoop.js +170 -0
- package/dist/esm/lib/swarm/buildSwarmLoop.js.map +1 -0
- package/dist/esm/memory/stages/formatDefault.js +20 -0
- package/dist/esm/memory/stages/formatDefault.js.map +1 -1
- package/dist/esm/observe.barrel.js +1 -1
- package/dist/esm/observe.barrel.js.map +1 -1
- package/dist/esm/providers/messages/persistentHistory.js +42 -0
- package/dist/esm/providers/messages/persistentHistory.js.map +1 -0
- package/dist/esm/recorders/ContextEngineeringRecorder.js +155 -0
- package/dist/esm/recorders/ContextEngineeringRecorder.js.map +1 -0
- package/dist/esm/recorders/LLMRecorder.js +62 -0
- package/dist/esm/recorders/LLMRecorder.js.map +1 -0
- package/dist/esm/recorders/MultiAgentRecorder.js +55 -0
- package/dist/esm/recorders/MultiAgentRecorder.js.map +1 -0
- package/dist/esm/recorders/RAGRecorder.js +59 -0
- package/dist/esm/recorders/RAGRecorder.js.map +1 -0
- package/dist/esm/recorders/forwardEmitRecorders.js +29 -0
- package/dist/esm/recorders/forwardEmitRecorders.js.map +1 -0
- package/dist/esm/recorders/index.js +1 -0
- package/dist/esm/recorders/index.js.map +1 -1
- package/dist/esm/recorders/v2/CompositeRecorder.js +65 -0
- package/dist/esm/recorders/v2/CompositeRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/CostRecorder.js +47 -0
- package/dist/esm/recorders/v2/CostRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/ExplainRecorder.js +144 -0
- package/dist/esm/recorders/v2/ExplainRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/GuardrailRecorder.js +58 -0
- package/dist/esm/recorders/v2/GuardrailRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/OTelRecorder.js +82 -0
- package/dist/esm/recorders/v2/OTelRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/PermissionRecorder.js +86 -0
- package/dist/esm/recorders/v2/PermissionRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/QualityRecorder.js +48 -0
- package/dist/esm/recorders/v2/QualityRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/RecorderBridge.js +93 -0
- package/dist/esm/recorders/v2/RecorderBridge.js.map +1 -0
- package/dist/esm/recorders/v2/TagRecorder.js +224 -0
- package/dist/esm/recorders/v2/TagRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/TokenRecorder.js +72 -0
- package/dist/esm/recorders/v2/TokenRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/ToolUsageRecorder.js +54 -0
- package/dist/esm/recorders/v2/ToolUsageRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/TurnRecorder.js +83 -0
- package/dist/esm/recorders/v2/TurnRecorder.js.map +1 -0
- package/dist/esm/recorders/v2/agentObservability.js +53 -0
- package/dist/esm/recorders/v2/agentObservability.js.map +1 -0
- package/dist/esm/recorders/v2/index.js +13 -0
- package/dist/esm/recorders/v2/index.js.map +1 -0
- package/dist/esm/stages/agentLoop.js +98 -0
- package/dist/esm/stages/agentLoop.js.map +1 -0
- package/dist/esm/stages/augmentPrompt.js +36 -3
- package/dist/esm/stages/augmentPrompt.js.map +1 -1
- package/dist/esm/stages/commitMemory.js +94 -0
- package/dist/esm/stages/commitMemory.js.map +1 -0
- package/dist/esm/stages/retrieve.js +13 -0
- package/dist/esm/stages/retrieve.js.map +1 -1
- package/dist/esm/stages/routeDecider.js +20 -0
- package/dist/esm/stages/routeDecider.js.map +1 -0
- package/dist/esm/stages/runnerAsStage.js +1 -1
- package/dist/esm/stages/runnerAsStage.js.map +1 -1
- package/dist/esm/stages/toolExecution.js +43 -0
- package/dist/esm/stages/toolExecution.js.map +1 -0
- package/dist/esm/streaming/EventDispatcher.js +44 -0
- package/dist/esm/streaming/EventDispatcher.js.map +1 -0
- package/dist/esm/streaming/StreamEventRecorder.js +29 -5
- package/dist/esm/streaming/StreamEventRecorder.js.map +1 -1
- package/dist/esm/streaming/index.js +1 -0
- package/dist/esm/streaming/index.js.map +1 -1
- package/dist/esm/subflows/prepareMemory.js +83 -0
- package/dist/esm/subflows/prepareMemory.js.map +1 -0
- package/dist/esm/types/adapters/a2a/a2aRunner.d.ts +40 -0
- package/dist/esm/types/adapters/a2a/a2aRunner.d.ts.map +1 -0
- package/dist/esm/types/adapters/anthropic/AnthropicAdapter.d.ts +37 -0
- package/dist/esm/types/adapters/anthropic/AnthropicAdapter.d.ts.map +1 -0
- package/dist/esm/types/adapters/bedrock/BedrockAdapter.d.ts +44 -0
- package/dist/esm/types/adapters/bedrock/BedrockAdapter.d.ts.map +1 -0
- package/dist/esm/types/adapters/browser/BrowserAnthropicAdapter.d.ts +40 -0
- package/dist/esm/types/adapters/browser/BrowserAnthropicAdapter.d.ts.map +1 -0
- package/dist/esm/types/adapters/browser/BrowserOpenAIAdapter.d.ts +46 -0
- package/dist/esm/types/adapters/browser/BrowserOpenAIAdapter.d.ts.map +1 -0
- package/dist/esm/types/adapters/browser/index.d.ts +5 -0
- package/dist/esm/types/adapters/browser/index.d.ts.map +1 -0
- package/dist/esm/types/adapters/createAdapterSubflow.d.ts +36 -0
- package/dist/esm/types/adapters/createAdapterSubflow.d.ts.map +1 -0
- package/dist/esm/types/adapters/createProvider.d.ts +47 -0
- package/dist/esm/types/adapters/createProvider.d.ts.map +1 -0
- package/dist/esm/types/adapters/fallbackProvider.d.ts +45 -0
- package/dist/esm/types/adapters/fallbackProvider.d.ts.map +1 -0
- package/dist/esm/types/adapters/index.d.ts +30 -0
- package/dist/esm/types/adapters/index.d.ts.map +1 -0
- package/dist/esm/types/adapters/mcp/mcpToolProvider.d.ts +41 -0
- package/dist/esm/types/adapters/mcp/mcpToolProvider.d.ts.map +1 -0
- package/dist/esm/types/adapters/memory/inMemory.d.ts +22 -0
- package/dist/esm/types/adapters/memory/inMemory.d.ts.map +1 -0
- package/dist/esm/types/adapters/memory/index.d.ts +3 -0
- package/dist/esm/types/adapters/memory/index.d.ts.map +1 -0
- package/dist/esm/types/adapters/memory/stores.d.ts +92 -0
- package/dist/esm/types/adapters/memory/stores.d.ts.map +1 -0
- package/dist/esm/types/adapters/memory/types.d.ts +74 -0
- package/dist/esm/types/adapters/memory/types.d.ts.map +1 -0
- package/dist/esm/types/adapters/mock/MockAdapter.d.ts +51 -0
- package/dist/esm/types/adapters/mock/MockAdapter.d.ts.map +1 -0
- package/dist/esm/types/adapters/mock/MockRetriever.d.ts +43 -0
- package/dist/esm/types/adapters/mock/MockRetriever.d.ts.map +1 -0
- package/dist/esm/types/adapters/openai/OpenAIAdapter.d.ts +47 -0
- package/dist/esm/types/adapters/openai/OpenAIAdapter.d.ts.map +1 -0
- package/dist/esm/types/adapters/resilientProvider.d.ts +33 -0
- package/dist/esm/types/adapters/resilientProvider.d.ts.map +1 -0
- package/dist/esm/types/compositions/index.d.ts +13 -0
- package/dist/esm/types/compositions/index.d.ts.map +1 -0
- package/dist/esm/types/compositions/withCircuitBreaker.d.ts +43 -0
- package/dist/esm/types/compositions/withCircuitBreaker.d.ts.map +1 -0
- package/dist/esm/types/compositions/withFallback.d.ts +17 -0
- package/dist/esm/types/compositions/withFallback.d.ts.map +1 -0
- package/dist/esm/types/compositions/withRetry.d.ts +27 -0
- package/dist/esm/types/compositions/withRetry.d.ts.map +1 -0
- package/dist/esm/types/concepts/Agent.d.ts +122 -0
- package/dist/esm/types/concepts/Agent.d.ts.map +1 -0
- package/dist/esm/types/concepts/FlowChart.d.ts +52 -0
- package/dist/esm/types/concepts/FlowChart.d.ts.map +1 -0
- package/dist/esm/types/concepts/LLMCall.d.ts +56 -0
- package/dist/esm/types/concepts/LLMCall.d.ts.map +1 -0
- package/dist/esm/types/concepts/Parallel.d.ts +110 -0
- package/dist/esm/types/concepts/Parallel.d.ts.map +1 -0
- package/dist/esm/types/concepts/Pipeline.d.ts +51 -0
- package/dist/esm/types/concepts/Pipeline.d.ts.map +1 -0
- package/dist/esm/types/concepts/RAG.d.ts +71 -0
- package/dist/esm/types/concepts/RAG.d.ts.map +1 -0
- package/dist/esm/types/concepts/Swarm.d.ts +98 -0
- package/dist/esm/types/concepts/Swarm.d.ts.map +1 -0
- package/dist/esm/types/concepts/index.d.ts +12 -0
- package/dist/esm/types/concepts/index.d.ts.map +1 -0
- package/dist/esm/types/concepts/specIcons.d.ts +14 -0
- package/dist/esm/types/concepts/specIcons.d.ts.map +1 -0
- package/dist/esm/types/core/config.d.ts +24 -0
- package/dist/esm/types/core/config.d.ts.map +1 -0
- package/dist/esm/types/core/index.d.ts +15 -0
- package/dist/esm/types/core/index.d.ts.map +1 -0
- package/dist/esm/types/core/providers.d.ts +160 -0
- package/dist/esm/types/core/providers.d.ts.map +1 -0
- package/dist/esm/types/core/recorders.d.ts +54 -0
- package/dist/esm/types/core/recorders.d.ts.map +1 -0
- package/dist/esm/types/executor/agentLoop.d.ts +37 -0
- package/dist/esm/types/executor/agentLoop.d.ts.map +1 -0
- package/dist/esm/types/executor/index.d.ts +6 -0
- package/dist/esm/types/executor/index.d.ts.map +1 -0
- package/dist/esm/types/executor/scopeFactory.d.ts +13 -0
- package/dist/esm/types/executor/scopeFactory.d.ts.map +1 -0
- package/dist/esm/types/explain.barrel.d.ts +20 -0
- package/dist/esm/types/explain.barrel.d.ts.map +1 -0
- package/dist/esm/types/index.d.ts +31 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/instructions.barrel.d.ts +24 -0
- package/dist/esm/types/instructions.barrel.d.ts.map +1 -0
- package/dist/esm/types/lib/call/callLLMStage.d.ts +29 -0
- package/dist/esm/types/lib/call/callLLMStage.d.ts.map +1 -0
- package/dist/esm/types/lib/call/handleResponseStage.d.ts +35 -0
- package/dist/esm/types/lib/call/handleResponseStage.d.ts.map +1 -0
- package/dist/esm/types/lib/call/helpers.d.ts +64 -0
- package/dist/esm/types/lib/call/helpers.d.ts.map +1 -0
- package/dist/esm/types/lib/call/index.d.ts +10 -0
- package/dist/esm/types/lib/call/index.d.ts.map +1 -0
- package/dist/esm/types/lib/call/parseResponseStage.d.ts +21 -0
- package/dist/esm/types/lib/call/parseResponseStage.d.ts.map +1 -0
- package/dist/esm/types/lib/call/streamingCallLLMStage.d.ts +23 -0
- package/dist/esm/types/lib/call/streamingCallLLMStage.d.ts.map +1 -0
- package/dist/esm/types/lib/call/toolExecutionSubflow.d.ts +70 -0
- package/dist/esm/types/lib/call/toolExecutionSubflow.d.ts.map +1 -0
- package/dist/esm/types/lib/call/types.d.ts +17 -0
- package/dist/esm/types/lib/call/types.d.ts.map +1 -0
- package/dist/esm/types/lib/concepts/Agent.d.ts +9 -0
- package/dist/esm/types/lib/concepts/Agent.d.ts.map +1 -0
- package/dist/esm/types/lib/concepts/AgentBuilder.d.ts +152 -0
- package/dist/esm/types/lib/concepts/AgentBuilder.d.ts.map +1 -0
- package/dist/esm/types/lib/concepts/AgentRunner.d.ts +100 -0
- package/dist/esm/types/lib/concepts/AgentRunner.d.ts.map +1 -0
- package/dist/esm/types/lib/concepts/index.d.ts +3 -0
- package/dist/esm/types/lib/concepts/index.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/InstructionRecorder.d.ts +85 -0
- package/dist/esm/types/lib/instructions/InstructionRecorder.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/agentInstruction.d.ts +150 -0
- package/dist/esm/types/lib/instructions/agentInstruction.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/buildInstructionsToLLMSubflow.d.ts +56 -0
- package/dist/esm/types/lib/instructions/buildInstructionsToLLMSubflow.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/evaluator.d.ts +99 -0
- package/dist/esm/types/lib/instructions/evaluator.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/index.d.ts +18 -0
- package/dist/esm/types/lib/instructions/index.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/inject.d.ts +54 -0
- package/dist/esm/types/lib/instructions/inject.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/preview.d.ts +85 -0
- package/dist/esm/types/lib/instructions/preview.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/strictFollowUp.d.ts +88 -0
- package/dist/esm/types/lib/instructions/strictFollowUp.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/template.d.ts +52 -0
- package/dist/esm/types/lib/instructions/template.d.ts.map +1 -0
- package/dist/esm/types/lib/instructions/types.d.ts +394 -0
- package/dist/esm/types/lib/instructions/types.d.ts.map +1 -0
- package/dist/esm/types/lib/loop/buildAgentLoop.d.ts +67 -0
- package/dist/esm/types/lib/loop/buildAgentLoop.d.ts.map +1 -0
- package/dist/esm/types/lib/loop/index.d.ts +5 -0
- package/dist/esm/types/lib/loop/index.d.ts.map +1 -0
- package/dist/esm/types/lib/loop/types.d.ts +248 -0
- package/dist/esm/types/lib/loop/types.d.ts.map +1 -0
- package/dist/esm/types/lib/narrative/agentRenderer.d.ts +51 -0
- package/dist/esm/types/lib/narrative/agentRenderer.d.ts.map +1 -0
- package/dist/esm/types/lib/narrative/groundingHelpers.d.ts +94 -0
- package/dist/esm/types/lib/narrative/groundingHelpers.d.ts.map +1 -0
- package/dist/esm/types/lib/narrative/index.d.ts +5 -0
- package/dist/esm/types/lib/narrative/index.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/helpers.d.ts +16 -0
- package/dist/esm/types/lib/slots/helpers.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/index.d.ts +7 -0
- package/dist/esm/types/lib/slots/index.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/messages/buildMessagesSubflow.d.ts +40 -0
- package/dist/esm/types/lib/slots/messages/buildMessagesSubflow.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/messages/index.d.ts +3 -0
- package/dist/esm/types/lib/slots/messages/index.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/messages/types.d.ts +26 -0
- package/dist/esm/types/lib/slots/messages/types.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/system-prompt/buildSystemPromptSubflow.d.ts +27 -0
- package/dist/esm/types/lib/slots/system-prompt/buildSystemPromptSubflow.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/system-prompt/index.d.ts +3 -0
- package/dist/esm/types/lib/slots/system-prompt/index.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/system-prompt/types.d.ts +17 -0
- package/dist/esm/types/lib/slots/system-prompt/types.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/tools/buildToolsSubflow.d.ts +23 -0
- package/dist/esm/types/lib/slots/tools/buildToolsSubflow.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/tools/index.d.ts +3 -0
- package/dist/esm/types/lib/slots/tools/index.d.ts.map +1 -0
- package/dist/esm/types/lib/slots/tools/types.d.ts +18 -0
- package/dist/esm/types/lib/slots/tools/types.d.ts.map +1 -0
- package/dist/esm/types/lib/swarm/buildSwarmChart.d.ts +50 -0
- package/dist/esm/types/lib/swarm/buildSwarmChart.d.ts.map +1 -0
- package/dist/esm/types/lib/swarm/buildSwarmLoop.d.ts +54 -0
- package/dist/esm/types/lib/swarm/buildSwarmLoop.d.ts.map +1 -0
- package/dist/esm/types/lib/swarm/buildSwarmRouting.d.ts +36 -0
- package/dist/esm/types/lib/swarm/buildSwarmRouting.d.ts.map +1 -0
- package/dist/esm/types/lib/swarm/index.d.ts +3 -0
- package/dist/esm/types/lib/swarm/index.d.ts.map +1 -0
- package/dist/esm/types/memory/conversationHelpers.d.ts +23 -0
- package/dist/esm/types/memory/conversationHelpers.d.ts.map +1 -0
- package/dist/esm/types/memory/index.d.ts +2 -0
- package/dist/esm/types/memory/index.d.ts.map +1 -0
- package/dist/esm/types/models/index.d.ts +4 -0
- package/dist/esm/types/models/index.d.ts.map +1 -0
- package/dist/esm/types/models/pricing.d.ts +8 -0
- package/dist/esm/types/models/pricing.d.ts.map +1 -0
- package/dist/esm/types/models/providers.d.ts +23 -0
- package/dist/esm/types/models/providers.d.ts.map +1 -0
- package/dist/esm/types/models/types.d.ts +25 -0
- package/dist/esm/types/models/types.d.ts.map +1 -0
- package/dist/esm/types/observe.barrel.d.ts +21 -0
- package/dist/esm/types/observe.barrel.d.ts.map +1 -0
- package/dist/esm/types/providers/index.d.ts +15 -0
- package/dist/esm/types/providers/index.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/charBudget.d.ts +19 -0
- package/dist/esm/types/providers/messages/charBudget.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/compositeMessages.d.ts +16 -0
- package/dist/esm/types/providers/messages/compositeMessages.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/fullHistory.d.ts +12 -0
- package/dist/esm/types/providers/messages/fullHistory.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/index.d.ts +15 -0
- package/dist/esm/types/providers/messages/index.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/persistentHistory.d.ts +32 -0
- package/dist/esm/types/providers/messages/persistentHistory.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/slidingWindow.d.ts +16 -0
- package/dist/esm/types/providers/messages/slidingWindow.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/summaryStrategy.d.ts +29 -0
- package/dist/esm/types/providers/messages/summaryStrategy.d.ts.map +1 -0
- package/dist/esm/types/providers/messages/withToolPairSafety.d.ts +19 -0
- package/dist/esm/types/providers/messages/withToolPairSafety.d.ts.map +1 -0
- package/dist/esm/types/providers/prompt/compositePrompt.d.ts +20 -0
- package/dist/esm/types/providers/prompt/compositePrompt.d.ts.map +1 -0
- package/dist/esm/types/providers/prompt/index.d.ts +10 -0
- package/dist/esm/types/providers/prompt/index.d.ts.map +1 -0
- package/dist/esm/types/providers/prompt/skillBasedPrompt.d.ts +33 -0
- package/dist/esm/types/providers/prompt/skillBasedPrompt.d.ts.map +1 -0
- package/dist/esm/types/providers/prompt/static.d.ts +6 -0
- package/dist/esm/types/providers/prompt/static.d.ts.map +1 -0
- package/dist/esm/types/providers/prompt/template.d.ts +6 -0
- package/dist/esm/types/providers/prompt/template.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/PermissionPolicy.d.ts +76 -0
- package/dist/esm/types/providers/tools/PermissionPolicy.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/agentAsTool.d.ts +40 -0
- package/dist/esm/types/providers/tools/agentAsTool.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/compositeTools.d.ts +18 -0
- package/dist/esm/types/providers/tools/compositeTools.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/dynamicTools.d.ts +27 -0
- package/dist/esm/types/providers/tools/dynamicTools.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/gatedTools.d.ts +52 -0
- package/dist/esm/types/providers/tools/gatedTools.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/index.d.ts +15 -0
- package/dist/esm/types/providers/tools/index.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/noTools.d.ts +6 -0
- package/dist/esm/types/providers/tools/noTools.d.ts.map +1 -0
- package/dist/esm/types/providers/tools/staticTools.d.ts +7 -0
- package/dist/esm/types/providers/tools/staticTools.d.ts.map +1 -0
- package/dist/esm/types/providers.barrel.d.ts +34 -0
- package/dist/esm/types/providers.barrel.d.ts.map +1 -0
- package/dist/esm/types/recorders/CostRecorder.d.ts +31 -0
- package/dist/esm/types/recorders/CostRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/LLMRecorder.d.ts +36 -0
- package/dist/esm/types/recorders/LLMRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/MultiAgentRecorder.d.ts +33 -0
- package/dist/esm/types/recorders/MultiAgentRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/RAGRecorder.d.ts +35 -0
- package/dist/esm/types/recorders/RAGRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/index.d.ts +6 -0
- package/dist/esm/types/recorders/index.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/CompositeRecorder.d.ts +30 -0
- package/dist/esm/types/recorders/v2/CompositeRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/CostRecorder.d.ts +43 -0
- package/dist/esm/types/recorders/v2/CostRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/ExplainRecorder.d.ts +67 -0
- package/dist/esm/types/recorders/v2/ExplainRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/GuardrailRecorder.d.ts +45 -0
- package/dist/esm/types/recorders/v2/GuardrailRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/OTelRecorder.d.ts +50 -0
- package/dist/esm/types/recorders/v2/OTelRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/PermissionRecorder.d.ts +66 -0
- package/dist/esm/types/recorders/v2/PermissionRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/QualityRecorder.d.ts +37 -0
- package/dist/esm/types/recorders/v2/QualityRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/RecorderBridge.d.ts +38 -0
- package/dist/esm/types/recorders/v2/RecorderBridge.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/TagRecorder.d.ts +154 -0
- package/dist/esm/types/recorders/v2/TagRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/TokenRecorder.d.ts +54 -0
- package/dist/esm/types/recorders/v2/TokenRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/ToolUsageRecorder.d.ts +34 -0
- package/dist/esm/types/recorders/v2/ToolUsageRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/TurnRecorder.d.ts +36 -0
- package/dist/esm/types/recorders/v2/TurnRecorder.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/agentObservability.d.ts +68 -0
- package/dist/esm/types/recorders/v2/agentObservability.d.ts.map +1 -0
- package/dist/esm/types/recorders/v2/index.d.ts +21 -0
- package/dist/esm/types/recorders/v2/index.d.ts.map +1 -0
- package/dist/esm/types/resilience.barrel.d.ts +18 -0
- package/dist/esm/types/resilience.barrel.d.ts.map +1 -0
- package/dist/esm/types/scope/AgentScope.d.ts +87 -0
- package/dist/esm/types/scope/AgentScope.d.ts.map +1 -0
- package/dist/esm/types/scope/index.d.ts +3 -0
- package/dist/esm/types/scope/index.d.ts.map +1 -0
- package/dist/esm/types/scope/types.d.ts +151 -0
- package/dist/esm/types/scope/types.d.ts.map +1 -0
- package/dist/esm/types/security.barrel.d.ts +17 -0
- package/dist/esm/types/security.barrel.d.ts.map +1 -0
- package/dist/esm/types/stages/agentLoop.d.ts +14 -0
- package/dist/esm/types/stages/agentLoop.d.ts.map +1 -0
- package/dist/esm/types/stages/augmentPrompt.d.ts +7 -0
- package/dist/esm/types/stages/augmentPrompt.d.ts.map +1 -0
- package/dist/esm/types/stages/callLLM.d.ts +8 -0
- package/dist/esm/types/stages/callLLM.d.ts.map +1 -0
- package/dist/esm/types/stages/commitMemory.d.ts +51 -0
- package/dist/esm/types/stages/commitMemory.d.ts.map +1 -0
- package/dist/esm/types/stages/finalize.d.ts +7 -0
- package/dist/esm/types/stages/finalize.d.ts.map +1 -0
- package/dist/esm/types/stages/handleResponse.d.ts +17 -0
- package/dist/esm/types/stages/handleResponse.d.ts.map +1 -0
- package/dist/esm/types/stages/helpers.d.ts +17 -0
- package/dist/esm/types/stages/helpers.d.ts.map +1 -0
- package/dist/esm/types/stages/index.d.ts +10 -0
- package/dist/esm/types/stages/index.d.ts.map +1 -0
- package/dist/esm/types/stages/parseResponse.d.ts +8 -0
- package/dist/esm/types/stages/parseResponse.d.ts.map +1 -0
- package/dist/esm/types/stages/promptAssembly.d.ts +7 -0
- package/dist/esm/types/stages/promptAssembly.d.ts.map +1 -0
- package/dist/esm/types/stages/retrieve.d.ts +8 -0
- package/dist/esm/types/stages/retrieve.d.ts.map +1 -0
- package/dist/esm/types/stages/routeDecider.d.ts +9 -0
- package/dist/esm/types/stages/routeDecider.d.ts.map +1 -0
- package/dist/esm/types/stages/runnerAsStage.d.ts +18 -0
- package/dist/esm/types/stages/runnerAsStage.d.ts.map +1 -0
- package/dist/esm/types/stages/seedScope.d.ts +14 -0
- package/dist/esm/types/stages/seedScope.d.ts.map +1 -0
- package/dist/esm/types/stages/toolExecution.d.ts +7 -0
- package/dist/esm/types/stages/toolExecution.d.ts.map +1 -0
- package/dist/esm/types/stream.barrel.d.ts +19 -0
- package/dist/esm/types/stream.barrel.d.ts.map +1 -0
- package/dist/esm/types/streaming/StreamEmitter.d.ts +93 -0
- package/dist/esm/types/streaming/StreamEmitter.d.ts.map +1 -0
- package/dist/esm/types/streaming/index.d.ts +3 -0
- package/dist/esm/types/streaming/index.d.ts.map +1 -0
- package/dist/esm/types/subflows/index.d.ts +3 -0
- package/dist/esm/types/subflows/index.d.ts.map +1 -0
- package/dist/esm/types/subflows/prepareMemory.d.ts +60 -0
- package/dist/esm/types/subflows/prepareMemory.d.ts.map +1 -0
- package/dist/esm/types/tools/ToolRegistry.d.ts +47 -0
- package/dist/esm/types/tools/ToolRegistry.d.ts.map +1 -0
- package/dist/esm/types/tools/askHuman.d.ts +39 -0
- package/dist/esm/types/tools/askHuman.d.ts.map +1 -0
- package/dist/esm/types/tools/index.d.ts +3 -0
- package/dist/esm/types/tools/index.d.ts.map +1 -0
- package/dist/esm/types/tools/validateInput.d.ts +29 -0
- package/dist/esm/types/tools/validateInput.d.ts.map +1 -0
- package/dist/esm/types/tools/zodToJsonSchema.d.ts +9 -0
- package/dist/esm/types/tools/zodToJsonSchema.d.ts.map +1 -0
- package/dist/esm/types/types/adapter.d.ts +36 -0
- package/dist/esm/types/types/adapter.d.ts.map +1 -0
- package/dist/esm/types/types/agent.d.ts +37 -0
- package/dist/esm/types/types/agent.d.ts.map +1 -0
- package/dist/esm/types/types/content.d.ts +104 -0
- package/dist/esm/types/types/content.d.ts.map +1 -0
- package/dist/esm/types/types/errors.d.ts +27 -0
- package/dist/esm/types/types/errors.d.ts.map +1 -0
- package/dist/esm/types/types/index.d.ts +14 -0
- package/dist/esm/types/types/index.d.ts.map +1 -0
- package/dist/esm/types/types/llm.d.ts +78 -0
- package/dist/esm/types/types/llm.d.ts.map +1 -0
- package/dist/esm/types/types/messages.d.ts +40 -0
- package/dist/esm/types/types/messages.d.ts.map +1 -0
- package/dist/esm/types/types/multiAgent.d.ts +57 -0
- package/dist/esm/types/types/multiAgent.d.ts.map +1 -0
- package/dist/esm/types/types/retriever.d.ts +41 -0
- package/dist/esm/types/types/retriever.d.ts.map +1 -0
- package/dist/esm/types/types/tools.d.ts +19 -0
- package/dist/esm/types/types/tools.d.ts.map +1 -0
- package/dist/executor/scopeFactory.js +16 -0
- package/dist/executor/scopeFactory.js.map +1 -0
- package/dist/exportTrace.js +0 -1
- package/dist/exportTrace.js.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/call/handleResponseStage.js +53 -0
- package/dist/lib/call/handleResponseStage.js.map +1 -0
- package/dist/lib/call/toolExecutionSubflow.js +89 -1
- package/dist/lib/call/toolExecutionSubflow.js.map +1 -1
- package/dist/lib/concepts/AgentBuilder.js +4 -1
- package/dist/lib/concepts/AgentBuilder.js.map +1 -1
- package/dist/lib/concepts/AgentRunner.js +43 -11
- package/dist/lib/concepts/AgentRunner.js.map +1 -1
- package/dist/lib/narrative/groundingHelpers.js +148 -0
- package/dist/lib/narrative/groundingHelpers.js.map +1 -0
- package/dist/lib/swarm/buildSwarmChart.js +111 -0
- package/dist/lib/swarm/buildSwarmChart.js.map +1 -0
- package/dist/lib/swarm/buildSwarmLoop.js +174 -0
- package/dist/lib/swarm/buildSwarmLoop.js.map +1 -0
- package/dist/memory/stages/formatDefault.js +20 -0
- package/dist/memory/stages/formatDefault.js.map +1 -1
- package/dist/observe.barrel.js +2 -1
- package/dist/observe.barrel.js.map +1 -1
- package/dist/providers/messages/persistentHistory.js +47 -0
- package/dist/providers/messages/persistentHistory.js.map +1 -0
- package/dist/recorders/ContextEngineeringRecorder.js +159 -0
- package/dist/recorders/ContextEngineeringRecorder.js.map +1 -0
- package/dist/recorders/LLMRecorder.js +66 -0
- package/dist/recorders/LLMRecorder.js.map +1 -0
- package/dist/recorders/MultiAgentRecorder.js +59 -0
- package/dist/recorders/MultiAgentRecorder.js.map +1 -0
- package/dist/recorders/RAGRecorder.js +63 -0
- package/dist/recorders/RAGRecorder.js.map +1 -0
- package/dist/recorders/forwardEmitRecorders.js +33 -0
- package/dist/recorders/forwardEmitRecorders.js.map +1 -0
- package/dist/recorders/index.js +3 -1
- package/dist/recorders/index.js.map +1 -1
- package/dist/recorders/v2/CompositeRecorder.js +69 -0
- package/dist/recorders/v2/CompositeRecorder.js.map +1 -0
- package/dist/recorders/v2/CostRecorder.js +51 -0
- package/dist/recorders/v2/CostRecorder.js.map +1 -0
- package/dist/recorders/v2/ExplainRecorder.js +148 -0
- package/dist/recorders/v2/ExplainRecorder.js.map +1 -0
- package/dist/recorders/v2/GuardrailRecorder.js +62 -0
- package/dist/recorders/v2/GuardrailRecorder.js.map +1 -0
- package/dist/recorders/v2/OTelRecorder.js +86 -0
- package/dist/recorders/v2/OTelRecorder.js.map +1 -0
- package/dist/recorders/v2/PermissionRecorder.js +90 -0
- package/dist/recorders/v2/PermissionRecorder.js.map +1 -0
- package/dist/recorders/v2/QualityRecorder.js +52 -0
- package/dist/recorders/v2/QualityRecorder.js.map +1 -0
- package/dist/recorders/v2/RecorderBridge.js +97 -0
- package/dist/recorders/v2/RecorderBridge.js.map +1 -0
- package/dist/recorders/v2/TagRecorder.js +229 -0
- package/dist/recorders/v2/TagRecorder.js.map +1 -0
- package/dist/recorders/v2/TokenRecorder.js +76 -0
- package/dist/recorders/v2/TokenRecorder.js.map +1 -0
- package/dist/recorders/v2/ToolUsageRecorder.js +58 -0
- package/dist/recorders/v2/ToolUsageRecorder.js.map +1 -0
- package/dist/recorders/v2/TurnRecorder.js +87 -0
- package/dist/recorders/v2/TurnRecorder.js.map +1 -0
- package/dist/recorders/v2/agentObservability.js +57 -0
- package/dist/recorders/v2/agentObservability.js.map +1 -0
- package/dist/recorders/v2/index.js +25 -0
- package/dist/recorders/v2/index.js.map +1 -0
- package/dist/stages/agentLoop.js +102 -0
- package/dist/stages/agentLoop.js.map +1 -0
- package/dist/stages/augmentPrompt.js +36 -3
- package/dist/stages/augmentPrompt.js.map +1 -1
- package/dist/stages/commitMemory.js +98 -0
- package/dist/stages/commitMemory.js.map +1 -0
- package/dist/stages/retrieve.js +13 -0
- package/dist/stages/retrieve.js.map +1 -1
- package/dist/stages/routeDecider.js +24 -0
- package/dist/stages/routeDecider.js.map +1 -0
- package/dist/stages/runnerAsStage.js +1 -1
- package/dist/stages/runnerAsStage.js.map +1 -1
- package/dist/stages/toolExecution.js +47 -0
- package/dist/stages/toolExecution.js.map +1 -0
- package/dist/streaming/EventDispatcher.js +48 -0
- package/dist/streaming/EventDispatcher.js.map +1 -0
- package/dist/streaming/StreamEventRecorder.js +30 -6
- package/dist/streaming/StreamEventRecorder.js.map +1 -1
- package/dist/streaming/index.js +3 -1
- package/dist/streaming/index.js.map +1 -1
- package/dist/subflows/prepareMemory.js +87 -0
- package/dist/subflows/prepareMemory.js.map +1 -0
- package/dist/types/adapters/memory/inMemory.d.ts +22 -0
- package/dist/types/adapters/memory/inMemory.d.ts.map +1 -0
- package/dist/types/adapters/memory/index.d.ts +3 -0
- package/dist/types/adapters/memory/index.d.ts.map +1 -0
- package/dist/types/adapters/memory/stores.d.ts +92 -0
- package/dist/types/adapters/memory/stores.d.ts.map +1 -0
- package/dist/types/adapters/memory/types.d.ts +74 -0
- package/dist/types/adapters/memory/types.d.ts.map +1 -0
- package/dist/types/compositions/withFallback.d.ts.map +1 -1
- package/dist/types/concepts/Agent.d.ts +122 -0
- package/dist/types/concepts/Agent.d.ts.map +1 -0
- package/dist/types/concepts/Conditional.d.ts +10 -3
- package/dist/types/concepts/Conditional.d.ts.map +1 -1
- package/dist/types/concepts/FlowChart.d.ts +11 -4
- package/dist/types/concepts/FlowChart.d.ts.map +1 -1
- package/dist/types/concepts/LLMCall.d.ts +20 -3
- package/dist/types/concepts/LLMCall.d.ts.map +1 -1
- package/dist/types/concepts/Parallel.d.ts +10 -2
- package/dist/types/concepts/Parallel.d.ts.map +1 -1
- package/dist/types/concepts/Pipeline.d.ts +51 -0
- package/dist/types/concepts/Pipeline.d.ts.map +1 -0
- package/dist/types/concepts/RAG.d.ts +22 -4
- package/dist/types/concepts/RAG.d.ts.map +1 -1
- package/dist/types/concepts/Swarm.d.ts +10 -2
- package/dist/types/concepts/Swarm.d.ts.map +1 -1
- package/dist/types/executor/scopeFactory.d.ts +13 -0
- package/dist/types/executor/scopeFactory.d.ts.map +1 -0
- package/dist/types/exportTrace.d.ts +1 -2
- package/dist/types/exportTrace.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lib/call/handleResponseStage.d.ts +35 -0
- package/dist/types/lib/call/handleResponseStage.d.ts.map +1 -0
- package/dist/types/lib/call/toolExecutionSubflow.d.ts.map +1 -1
- package/dist/types/lib/concepts/AgentBuilder.d.ts +7 -2
- package/dist/types/lib/concepts/AgentBuilder.d.ts.map +1 -1
- package/dist/types/lib/concepts/AgentRunner.d.ts +25 -1
- package/dist/types/lib/concepts/AgentRunner.d.ts.map +1 -1
- package/dist/types/lib/narrative/groundingHelpers.d.ts +94 -0
- package/dist/types/lib/narrative/groundingHelpers.d.ts.map +1 -0
- package/dist/types/lib/swarm/buildSwarmChart.d.ts +50 -0
- package/dist/types/lib/swarm/buildSwarmChart.d.ts.map +1 -0
- package/dist/types/lib/swarm/buildSwarmLoop.d.ts +54 -0
- package/dist/types/lib/swarm/buildSwarmLoop.d.ts.map +1 -0
- package/dist/types/memory/stages/formatDefault.d.ts.map +1 -1
- package/dist/types/observe.barrel.d.ts +2 -2
- package/dist/types/observe.barrel.d.ts.map +1 -1
- package/dist/types/providers/messages/persistentHistory.d.ts +32 -0
- package/dist/types/providers/messages/persistentHistory.d.ts.map +1 -0
- package/dist/types/recorders/ContextEngineeringRecorder.d.ts +105 -0
- package/dist/types/recorders/ContextEngineeringRecorder.d.ts.map +1 -0
- package/dist/types/recorders/LLMRecorder.d.ts +36 -0
- package/dist/types/recorders/LLMRecorder.d.ts.map +1 -0
- package/dist/types/recorders/MultiAgentRecorder.d.ts +33 -0
- package/dist/types/recorders/MultiAgentRecorder.d.ts.map +1 -0
- package/dist/types/recorders/RAGRecorder.d.ts +35 -0
- package/dist/types/recorders/RAGRecorder.d.ts.map +1 -0
- package/dist/types/recorders/forwardEmitRecorders.d.ts +22 -0
- package/dist/types/recorders/forwardEmitRecorders.d.ts.map +1 -0
- package/dist/types/recorders/index.d.ts +2 -0
- package/dist/types/recorders/index.d.ts.map +1 -1
- package/dist/types/recorders/v2/CompositeRecorder.d.ts +30 -0
- package/dist/types/recorders/v2/CompositeRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/CostRecorder.d.ts +39 -0
- package/dist/types/recorders/v2/CostRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/ExplainRecorder.d.ts +114 -0
- package/dist/types/recorders/v2/ExplainRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/GuardrailRecorder.d.ts +45 -0
- package/dist/types/recorders/v2/GuardrailRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/OTelRecorder.d.ts +50 -0
- package/dist/types/recorders/v2/OTelRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/PermissionRecorder.d.ts +66 -0
- package/dist/types/recorders/v2/PermissionRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/QualityRecorder.d.ts +37 -0
- package/dist/types/recorders/v2/QualityRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/RecorderBridge.d.ts +48 -0
- package/dist/types/recorders/v2/RecorderBridge.d.ts.map +1 -0
- package/dist/types/recorders/v2/TagRecorder.d.ts +154 -0
- package/dist/types/recorders/v2/TagRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/TokenRecorder.d.ts +54 -0
- package/dist/types/recorders/v2/TokenRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/ToolUsageRecorder.d.ts +34 -0
- package/dist/types/recorders/v2/ToolUsageRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/TurnRecorder.d.ts +36 -0
- package/dist/types/recorders/v2/TurnRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/agentObservability.d.ts +59 -0
- package/dist/types/recorders/v2/agentObservability.d.ts.map +1 -0
- package/dist/types/recorders/v2/index.d.ts +21 -0
- package/dist/types/recorders/v2/index.d.ts.map +1 -0
- package/dist/types/stages/agentLoop.d.ts +14 -0
- package/dist/types/stages/agentLoop.d.ts.map +1 -0
- package/dist/types/stages/augmentPrompt.d.ts +10 -1
- package/dist/types/stages/augmentPrompt.d.ts.map +1 -1
- package/dist/types/stages/commitMemory.d.ts +51 -0
- package/dist/types/stages/commitMemory.d.ts.map +1 -0
- package/dist/types/stages/handleResponse.d.ts +17 -0
- package/dist/types/stages/handleResponse.d.ts.map +1 -0
- package/dist/types/stages/promptAssembly.d.ts +7 -0
- package/dist/types/stages/promptAssembly.d.ts.map +1 -0
- package/dist/types/stages/retrieve.d.ts +6 -0
- package/dist/types/stages/retrieve.d.ts.map +1 -1
- package/dist/types/stages/routeDecider.d.ts +9 -0
- package/dist/types/stages/routeDecider.d.ts.map +1 -0
- package/dist/types/stages/seedScope.d.ts +14 -0
- package/dist/types/stages/seedScope.d.ts.map +1 -0
- package/dist/types/stages/toolExecution.d.ts +7 -0
- package/dist/types/stages/toolExecution.d.ts.map +1 -0
- package/dist/types/streaming/EventDispatcher.d.ts +42 -0
- package/dist/types/streaming/EventDispatcher.d.ts.map +1 -0
- package/dist/types/streaming/StreamEventRecorder.d.ts +5 -0
- package/dist/types/streaming/StreamEventRecorder.d.ts.map +1 -1
- package/dist/types/streaming/index.d.ts +1 -0
- package/dist/types/streaming/index.d.ts.map +1 -1
- package/dist/types/subflows/prepareMemory.d.ts +60 -0
- package/dist/types/subflows/prepareMemory.d.ts.map +1 -0
- package/dist/types/types/multiAgent.d.ts +3 -1
- package/dist/types/types/multiAgent.d.ts.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
<a href="https://footprintjs.github.io/footPrint/"><img src="https://img.shields.io/badge/Built_on-footprintjs-ca8a04?style=flat" alt="Built on footprintjs"></a>
|
|
17
17
|
</p>
|
|
18
18
|
|
|
19
|
-
> **Most agent frameworks
|
|
19
|
+
> **Most agent frameworks invent new class names for every paper. agentfootprint gives you 2 primitives, 3 compositions, and makes every other "feature" explicit about what it injects into the Agent's prompt.** Context engineering, visible. Students and engineers can read any agent paper and see it in agentfootprint terms.
|
|
20
20
|
|
|
21
21
|
```bash
|
|
22
22
|
npm install agentfootprint
|
|
@@ -35,9 +35,9 @@ import { SSEFormatter } from 'agentfootprint/stream'; // Real-time ev
|
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
38
|
-
##
|
|
38
|
+
## The Mental Model — 2 Primitives + 3 Compositions + N Patterns
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
Everything in agentfootprint is expressible in five building blocks. Named patterns (ReAct, Swarm, Reflexion, Tree-of-Thoughts, Plan-Execute...) are recipes that combine them — not new classes.
|
|
41
41
|
|
|
42
42
|
```typescript
|
|
43
43
|
import { Agent, defineTool } from 'agentfootprint';
|
|
@@ -56,23 +56,47 @@ console.log(result.content); // LLM response
|
|
|
56
56
|
console.log(obs.explain().iterations); // per-iteration evaluation data ← the differentiator
|
|
57
57
|
```
|
|
58
58
|
|
|
59
|
-
**
|
|
59
|
+
**Primitives — atomic invocation units:**
|
|
60
60
|
|
|
61
|
-
|
|
|
62
|
-
|
|
63
|
-
| **
|
|
64
|
-
| **Agent** |
|
|
65
|
-
| **RAG** | + Retrieval | Q&A over documents |
|
|
61
|
+
| # | Primitive | What it is | Use case |
|
|
62
|
+
|---|-----------|------------|----------|
|
|
63
|
+
| 1 | **LLM** | One call in, one response out | Summarization, classification, extraction |
|
|
64
|
+
| 2 | **Agent** | A loop of (think → tool → think) — **Agent = ReAct** | Research, code generation, anything iterative |
|
|
66
65
|
|
|
67
|
-
**
|
|
66
|
+
**Compositions — how primitives arrange:**
|
|
68
67
|
|
|
69
|
-
|
|
|
70
|
-
|
|
71
|
-
| **
|
|
72
|
-
| **Parallel** |
|
|
73
|
-
| **
|
|
68
|
+
| # | Composition | What it is | Use case |
|
|
69
|
+
|---|-------------|------------|----------|
|
|
70
|
+
| 1 | **Sequence** | One after another | Approval flows, ETL — output of one feeds the next |
|
|
71
|
+
| 2 | **Parallel** | At the same time | Analysis from multiple perspectives — merged by LLM |
|
|
72
|
+
| 3 | **Conditional** | Branch on a decider | Triage flows, deterministic routing |
|
|
74
73
|
|
|
75
|
-
|
|
74
|
+
**Patterns — named configurations of the above:**
|
|
75
|
+
|
|
76
|
+
| Pattern | Built from | Source |
|
|
77
|
+
|---------|-----------|--------|
|
|
78
|
+
| **ReAct** | Agent (default) | Yao 2022 |
|
|
79
|
+
| **Dynamic ReAct** | Agent with per-iteration context re-evaluation | agentfootprint extension |
|
|
80
|
+
| **Hierarchy (Swarm)** | Agent routing to specialist-Agents via tools | OpenAI 2024 |
|
|
81
|
+
| **Reflexion** | Sequence(Agent, LLM-critique, Agent) | Shinn 2023 |
|
|
82
|
+
| **Tree-of-Thoughts** | Parallel(Agent × N) + LLM-rank | Yao 2023 |
|
|
83
|
+
| **Plan-Execute** | LLM-plan + Sequence(Agent per step) | Wang 2023 |
|
|
84
|
+
| **Map-Reduce** | Parallel(Agent × N) + LLM-merge | Dean 2004 applied to LLMs |
|
|
85
|
+
|
|
86
|
+
**Context Engineering — cross-cutting, applies to any Agent:**
|
|
87
|
+
|
|
88
|
+
What you inject into the Agent's slots. This is the library's teaching thesis — every "new agent feature" that competing frameworks wrap in new classes is just **content flowing into one of three slots**.
|
|
89
|
+
|
|
90
|
+
| Mechanism | Target slot | What it does |
|
|
91
|
+
|-----------|-------------|--------------|
|
|
92
|
+
| **RAG** | messages | Retrieved chunks injected into the prompt |
|
|
93
|
+
| **Memory** | messages | Prior-turn context re-injected |
|
|
94
|
+
| **Skills** | system-prompt (+ tools) | Activate a skill → its prompt + tools become visible |
|
|
95
|
+
| **Instructions** | system-prompt | Per-tool guidance injected after specific tool results |
|
|
96
|
+
| **Tools** | tools slot | Available functions the LLM can call |
|
|
97
|
+
| **Grounding** | system-prompt | Style guides, rules, non-negotiables |
|
|
98
|
+
|
|
99
|
+
**Every runner** (LLMCall, Agent, Sequence/FlowChart, Parallel, Conditional, Swarm) shares one interface: `.build()` → `.run()`, `.observe(h)`, `.getNarrativeEntries()`, `.getSnapshot()`, `.getSpec()`.
|
|
76
100
|
|
|
77
101
|
---
|
|
78
102
|
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* InMemoryStore — ConversationStore implementation backed by a plain Map.
|
|
4
|
+
*
|
|
5
|
+
* For testing and development only. Data does not survive process restarts.
|
|
6
|
+
* Use a real backend (Redis, Postgres, DynamoDB) in production.
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.InMemoryStore = void 0;
|
|
10
|
+
class InMemoryStore {
|
|
11
|
+
conversations = new Map();
|
|
12
|
+
load(conversationId) {
|
|
13
|
+
const stored = this.conversations.get(conversationId);
|
|
14
|
+
return stored ? [...stored] : [];
|
|
15
|
+
}
|
|
16
|
+
save(conversationId, messages) {
|
|
17
|
+
// Shallow copy — prevent external mutation of stored array
|
|
18
|
+
this.conversations.set(conversationId, [...messages]);
|
|
19
|
+
}
|
|
20
|
+
/** Return all conversation IDs currently in store. */
|
|
21
|
+
ids() {
|
|
22
|
+
return Array.from(this.conversations.keys());
|
|
23
|
+
}
|
|
24
|
+
/** Return number of messages stored for a conversation. */
|
|
25
|
+
size(conversationId) {
|
|
26
|
+
return this.conversations.get(conversationId)?.length ?? 0;
|
|
27
|
+
}
|
|
28
|
+
/** Clear a specific conversation. */
|
|
29
|
+
delete(conversationId) {
|
|
30
|
+
this.conversations.delete(conversationId);
|
|
31
|
+
}
|
|
32
|
+
/** Clear all stored conversations. */
|
|
33
|
+
clear() {
|
|
34
|
+
this.conversations.clear();
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.InMemoryStore = InMemoryStore;
|
|
38
|
+
//# sourceMappingURL=inMemory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inMemory.js","sourceRoot":"","sources":["../../../src/adapters/memory/inMemory.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAKH,MAAa,aAAa;IACP,aAAa,GAAG,IAAI,GAAG,EAAqB,CAAC;IAE9D,IAAI,CAAC,cAAsB;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACtD,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,cAAsB,EAAE,QAAmB;QAC9C,2DAA2D;QAC3D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,sDAAsD;IACtD,GAAG;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,2DAA2D;IAC3D,IAAI,CAAC,cAAsB;QACzB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IAC7D,CAAC;IAED,qCAAqC;IACrC,MAAM,CAAC,cAAsB;QAC3B,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC5C,CAAC;IAED,sCAAsC;IACtC,KAAK;QACH,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IAC7B,CAAC;CACF;AAhCD,sCAgCC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InMemoryStore = void 0;
|
|
4
|
+
var inMemory_1 = require("./inMemory");
|
|
5
|
+
Object.defineProperty(exports, "InMemoryStore", { enumerable: true, get: function () { return inMemory_1.InMemoryStore; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/adapters/memory/index.ts"],"names":[],"mappings":";;;AACA,uCAA2C;AAAlC,yGAAA,aAAa,OAAA"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Memory store adapter factories — consumer brings their own client.
|
|
4
|
+
*
|
|
5
|
+
* Zero new dependencies. Each factory wraps the consumer's client instance
|
|
6
|
+
* into a ConversationStore that implements load() + save().
|
|
7
|
+
*
|
|
8
|
+
* @example Redis
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import Redis from 'ioredis';
|
|
11
|
+
* import { redisStore } from 'agentfootprint';
|
|
12
|
+
*
|
|
13
|
+
* const store = redisStore(new Redis(), { ttlSeconds: 3600 });
|
|
14
|
+
* agent.memory({ store, conversationId: 'session-123' });
|
|
15
|
+
* ```
|
|
16
|
+
*
|
|
17
|
+
* @example DynamoDB
|
|
18
|
+
* ```typescript
|
|
19
|
+
* import { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
20
|
+
* import { dynamoStore } from 'agentfootprint';
|
|
21
|
+
*
|
|
22
|
+
* const store = dynamoStore(new DynamoDBClient({}), { tableName: 'conversations' });
|
|
23
|
+
* agent.memory({ store, conversationId: 'session-123' });
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.postgresStore = exports.dynamoStore = exports.redisStore = void 0;
|
|
28
|
+
/**
|
|
29
|
+
* Create a ConversationStore backed by Redis.
|
|
30
|
+
* Consumer provides their own Redis client (ioredis, redis, etc.).
|
|
31
|
+
*/
|
|
32
|
+
function redisStore(client, options) {
|
|
33
|
+
const prefix = options?.prefix ?? 'agentfp:conv:';
|
|
34
|
+
const ttl = options?.ttlSeconds;
|
|
35
|
+
const hasTtl = ttl !== undefined && ttl !== null;
|
|
36
|
+
return {
|
|
37
|
+
async load(conversationId) {
|
|
38
|
+
const data = await client.get(`${prefix}${conversationId}`);
|
|
39
|
+
if (!data)
|
|
40
|
+
return null;
|
|
41
|
+
try {
|
|
42
|
+
return JSON.parse(data);
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
async save(conversationId, messages) {
|
|
49
|
+
const key = `${prefix}${conversationId}`;
|
|
50
|
+
const value = JSON.stringify(messages);
|
|
51
|
+
try {
|
|
52
|
+
if (hasTtl) {
|
|
53
|
+
// ioredis: set(key, value, 'EX', ttl) — node-redis v4: set(key, value, { EX: ttl })
|
|
54
|
+
// Try options object first (node-redis v4), fall back to variadic (ioredis)
|
|
55
|
+
try {
|
|
56
|
+
await client.set(key, value, { EX: ttl });
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
await client.set(key, value, 'EX', ttl);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
await client.set(key, value);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
/* fire-and-forget — ConversationStore contract */
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
exports.redisStore = redisStore;
|
|
73
|
+
/**
|
|
74
|
+
* Create a ConversationStore backed by DynamoDB.
|
|
75
|
+
* Consumer provides a thin wrapper around their DynamoDB client.
|
|
76
|
+
*/
|
|
77
|
+
function dynamoStore(client, options) {
|
|
78
|
+
const { tableName, partitionKey = 'id' } = options;
|
|
79
|
+
return {
|
|
80
|
+
async load(conversationId) {
|
|
81
|
+
try {
|
|
82
|
+
const item = await client.get(tableName, { [partitionKey]: conversationId });
|
|
83
|
+
if (!item)
|
|
84
|
+
return null;
|
|
85
|
+
const data = item.messages;
|
|
86
|
+
if (typeof data === 'string')
|
|
87
|
+
return JSON.parse(data);
|
|
88
|
+
if (Array.isArray(data))
|
|
89
|
+
return data;
|
|
90
|
+
return null;
|
|
91
|
+
}
|
|
92
|
+
catch {
|
|
93
|
+
return null;
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
async save(conversationId, messages) {
|
|
97
|
+
try {
|
|
98
|
+
await client.put(tableName, {
|
|
99
|
+
[partitionKey]: conversationId,
|
|
100
|
+
messages: JSON.stringify(messages),
|
|
101
|
+
updatedAt: Date.now(),
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
catch {
|
|
105
|
+
/* fire-and-forget — ConversationStore contract */
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
exports.dynamoStore = dynamoStore;
|
|
111
|
+
/**
|
|
112
|
+
* Create a ConversationStore backed by PostgreSQL.
|
|
113
|
+
* Consumer provides their own pg client/pool.
|
|
114
|
+
*
|
|
115
|
+
* Expects table: CREATE TABLE conversations (id TEXT PRIMARY KEY, messages JSONB, updated_at TIMESTAMPTZ DEFAULT NOW());
|
|
116
|
+
*/
|
|
117
|
+
const SAFE_TABLE_NAME = /^[a-zA-Z_][a-zA-Z0-9_]{0,63}$/;
|
|
118
|
+
function postgresStore(client, options) {
|
|
119
|
+
const table = options?.tableName ?? 'conversations';
|
|
120
|
+
if (!SAFE_TABLE_NAME.test(table)) {
|
|
121
|
+
throw new Error(`Invalid table name "${table}". Use alphanumeric + underscore only.`);
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
async load(conversationId) {
|
|
125
|
+
const result = await client.query(`SELECT messages FROM ${table} WHERE id = $1`, [
|
|
126
|
+
conversationId,
|
|
127
|
+
]);
|
|
128
|
+
if (result.rows.length === 0)
|
|
129
|
+
return null;
|
|
130
|
+
const row = result.rows[0];
|
|
131
|
+
return row.messages;
|
|
132
|
+
},
|
|
133
|
+
async save(conversationId, messages) {
|
|
134
|
+
try {
|
|
135
|
+
await client.query(`INSERT INTO ${table} (id, messages, updated_at) VALUES ($1, $2, NOW())
|
|
136
|
+
ON CONFLICT (id) DO UPDATE SET messages = $2, updated_at = NOW()`, [conversationId, JSON.stringify(messages)]);
|
|
137
|
+
}
|
|
138
|
+
catch {
|
|
139
|
+
/* fire-and-forget — ConversationStore contract */
|
|
140
|
+
}
|
|
141
|
+
},
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
exports.postgresStore = postgresStore;
|
|
145
|
+
//# sourceMappingURL=stores.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stores.js","sourceRoot":"","sources":["../../../src/adapters/memory/stores.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Memory adapter types — ConversationStore interface for persistent conversation history.
|
|
4
|
+
*
|
|
5
|
+
* ConversationStore is the persistence adapter: it defines WHERE messages are stored.
|
|
6
|
+
* Implement this interface to plug in Redis, Postgres, DynamoDB, localStorage,
|
|
7
|
+
* or any other backend. The library ships with InMemoryStore for testing.
|
|
8
|
+
*
|
|
9
|
+
* This is the memory equivalent of LLMProvider — same adapter-swap story:
|
|
10
|
+
* - Swap mock ↔ real adapter without changing agent logic
|
|
11
|
+
* - Swap InMemoryStore ↔ RedisStore without touching flowchart stages
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/adapters/memory/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG"}
|
|
@@ -75,7 +75,7 @@ function withCircuitBreaker(runner, options = {}) {
|
|
|
75
75
|
throw err;
|
|
76
76
|
}
|
|
77
77
|
},
|
|
78
|
-
|
|
78
|
+
getNarrativeEntries: runner.getNarrativeEntries?.bind(runner),
|
|
79
79
|
getSnapshot: runner.getSnapshot?.bind(runner),
|
|
80
80
|
};
|
|
81
81
|
return wrapped;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withCircuitBreaker.js","sourceRoot":"","sources":["../../src/compositions/withCircuitBreaker.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAaH,MAAa,cAAc;IACjB,KAAK,GAAiB,QAAQ,CAAC;IAC/B,QAAQ,GAAG,CAAC,CAAC;IACb,eAAe,GAAG,CAAC,CAAC;IACX,SAAS,CAAS;IAClB,YAAY,CAAS;IAEtC,YAAY,UAAiC,EAAE;QAC7C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC;IACrD,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC3D,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;QACtB,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF;AAvCD,wCAuCC;AAED,SAAgB,kBAAkB,CAChC,MAAkB,EAClB,UAAiC,EAAE;IAEnC,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IAE5C,MAAM,OAAO,GAA6C;QACxD,OAAO;QACP,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAEjC,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC7C,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBACrD,OAAO,CAAC,aAAa,EAAE,CAAC;gBACxB,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,aAAa,EAAE,CAAC;gBACxB,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QACD,
|
|
1
|
+
{"version":3,"file":"withCircuitBreaker.js","sourceRoot":"","sources":["../../src/compositions/withCircuitBreaker.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAaH,MAAa,cAAc;IACjB,KAAK,GAAiB,QAAQ,CAAC;IAC/B,QAAQ,GAAG,CAAC,CAAC;IACb,eAAe,GAAG,CAAC,CAAC;IACX,SAAS,CAAS;IAClB,YAAY,CAAS;IAEtC,YAAY,UAAiC,EAAE;QAC7C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC;IACrD,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;YAC1B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBAC3D,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;YAC3B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;QACtB,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF;AAvCD,wCAuCC;AAED,SAAgB,kBAAkB,CAChC,MAAkB,EAClB,UAAiC,EAAE;IAEnC,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IAE5C,MAAM,OAAO,GAA6C;QACxD,OAAO;QACP,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YAEjC,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;YAC7C,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBACrD,OAAO,CAAC,aAAa,EAAE,CAAC;gBACxB,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,aAAa,EAAE,CAAC;gBACxB,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QACD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC;QAC7D,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;KAC9C,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC;AA7BD,gDA6BC"}
|
|
@@ -25,7 +25,7 @@ function withFallback(primary, fallback, options = {}) {
|
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
// Narrative/snapshot from whichever runner succeeded
|
|
28
|
-
|
|
28
|
+
getNarrativeEntries: () => primary.getNarrativeEntries?.() ?? fallback.getNarrativeEntries?.() ?? [],
|
|
29
29
|
getSnapshot: () => primary.getSnapshot?.() ?? fallback.getSnapshot?.(),
|
|
30
30
|
};
|
|
31
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withFallback.js","sourceRoot":"","sources":["../../src/compositions/withFallback.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AASH,SAAgB,YAAY,CAC1B,OAAmB,EACnB,QAAoB,EACpB,UAA2B,EAAE;IAE7B,MAAM,EAAE,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC;IAEhD,OAAO;QACL,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;YACjC,IAAI,CAAC;gBACH,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;oBAAE,MAAM,GAAG,CAAC;gBACpC,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QACD,qDAAqD;QACrD,
|
|
1
|
+
{"version":3,"file":"withFallback.js","sourceRoot":"","sources":["../../src/compositions/withFallback.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AASH,SAAgB,YAAY,CAC1B,OAAmB,EACnB,QAAoB,EACpB,UAA2B,EAAE;IAE7B,MAAM,EAAE,cAAc,GAAG,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC;IAEhD,OAAO;QACL,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;YACjC,IAAI,CAAC;gBACH,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAChD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC;oBAAE,MAAM,GAAG,CAAC;gBACpC,OAAO,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QACD,qDAAqD;QACrD,mBAAmB,EAAE,GAAG,EAAE,CACxB,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,QAAQ,CAAC,mBAAmB,EAAE,EAAE,IAAI,EAAE;QAC3E,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE;KACvE,CAAC;AACJ,CAAC;AArBD,oCAqBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withRetry.js","sourceRoot":"","sources":["../../src/compositions/withRetry.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAeH,SAAgB,SAAS,CAAC,MAAkB,EAAE,UAAwB,EAAE;IACtE,MAAM,EACJ,UAAU,GAAG,CAAC,EACd,SAAS,GAAG,CAAC,EACb,iBAAiB,GAAG,CAAC,EACrB,WAAW,GAAG,GAAG,EAAE,CAAC,IAAI,GACzB,GAAG,OAAO,CAAC;IAEZ,OAAO;QACL,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;YACjC,IAAI,SAAkB,CAAC;YACvB,IAAI,KAAK,GAAG,SAAS,CAAC;YAEtB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;gBACvD,IAAI,CAAC;oBACH,OAAO,MAAM,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBAC/C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,SAAS,GAAG,GAAG,CAAC;oBAEhB,IAAI,OAAO,IAAI,UAAU,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC/C,MAAM;oBACR,CAAC;oBAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;wBACd,MAAM,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;wBACvC,KAAK,IAAI,iBAAiB,CAAC;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,SAAS,CAAC;QAClB,CAAC;QACD,
|
|
1
|
+
{"version":3,"file":"withRetry.js","sourceRoot":"","sources":["../../src/compositions/withRetry.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAeH,SAAgB,SAAS,CAAC,MAAkB,EAAE,UAAwB,EAAE;IACtE,MAAM,EACJ,UAAU,GAAG,CAAC,EACd,SAAS,GAAG,CAAC,EACb,iBAAiB,GAAG,CAAC,EACrB,WAAW,GAAG,GAAG,EAAE,CAAC,IAAI,GACzB,GAAG,OAAO,CAAC;IAEZ,OAAO;QACL,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE;YACjC,IAAI,SAAkB,CAAC;YACvB,IAAI,KAAK,GAAG,SAAS,CAAC;YAEtB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;gBACvD,IAAI,CAAC;oBACH,OAAO,MAAM,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;gBAC/C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,SAAS,GAAG,GAAG,CAAC;oBAEhB,IAAI,OAAO,IAAI,UAAU,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC/C,MAAM;oBACR,CAAC;oBAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;wBACd,MAAM,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;wBACvC,KAAK,IAAI,iBAAiB,CAAC;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,SAAS,CAAC;QAClB,CAAC;QACD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB,EAAE,IAAI,CAAC,MAAM,CAAC;QAC7D,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;KAC9C,CAAC;AACJ,CAAC;AAnCD,8BAmCC;AAED,SAAS,KAAK,CAAC,EAAU,EAAE,MAAoB;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QACD,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACtC,MAAM,EAAE,gBAAgB,CACtB,OAAO,EACP,GAAG,EAAE;YACH,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAChD,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -43,6 +43,8 @@ const runnerAsStage_1 = require("../stages/runnerAsStage");
|
|
|
43
43
|
const RecorderBridge_1 = require("../recorders/RecorderBridge");
|
|
44
44
|
const specIcons_1 = require("./specIcons");
|
|
45
45
|
const narrative_1 = require("../lib/narrative");
|
|
46
|
+
const streaming_1 = require("../streaming");
|
|
47
|
+
const forwardEmitRecorders_1 = require("../recorders/forwardEmitRecorders");
|
|
46
48
|
/** True iff the runner exposes `toFlowChart()` for subflow composition. */
|
|
47
49
|
function hasFlowChart(runner) {
|
|
48
50
|
return typeof runner.toFlowChart === 'function';
|
|
@@ -111,6 +113,7 @@ class Conditional {
|
|
|
111
113
|
this.defaultName = options.name;
|
|
112
114
|
return this;
|
|
113
115
|
}
|
|
116
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
114
117
|
recorder(rec) {
|
|
115
118
|
this.recorders.push(rec);
|
|
116
119
|
return this;
|
|
@@ -143,17 +146,39 @@ class ConditionalRunner {
|
|
|
143
146
|
lastExecutor;
|
|
144
147
|
lastSpec;
|
|
145
148
|
narrativeRenderer = (0, narrative_1.createAgentRenderer)();
|
|
149
|
+
/** Persistent observer list — see AgentRunner.dispatcher. */
|
|
150
|
+
dispatcher = new streaming_1.EventDispatcher();
|
|
146
151
|
constructor(opts) {
|
|
147
152
|
this.opts = opts;
|
|
148
153
|
}
|
|
149
154
|
async run(message, options) {
|
|
150
155
|
const startTime = Date.now();
|
|
151
156
|
const bridge = this.opts.recorders.length > 0 ? new RecorderBridge_1.RecorderBridge([...this.opts.recorders]) : null;
|
|
157
|
+
const dispatcher = this.dispatcher;
|
|
158
|
+
const perRun = options?.onEvent;
|
|
159
|
+
const onStreamEvent = dispatcher.size > 0 || perRun
|
|
160
|
+
? (e) => {
|
|
161
|
+
dispatcher.dispatch(e);
|
|
162
|
+
if (perRun) {
|
|
163
|
+
try {
|
|
164
|
+
perRun(e);
|
|
165
|
+
}
|
|
166
|
+
catch {
|
|
167
|
+
/* swallow */
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
: undefined;
|
|
172
|
+
onStreamEvent?.({ type: 'turn_start', userMessage: message });
|
|
152
173
|
bridge?.dispatchTurnStart(message);
|
|
153
174
|
const chart = this.buildChart();
|
|
154
175
|
const executor = new footprintjs_1.FlowChartExecutor(chart, { enrichSnapshots: true });
|
|
155
176
|
executor.enableNarrative({ renderer: this.narrativeRenderer });
|
|
156
177
|
executor.attachRecorder(new footprintjs_1.MetricRecorder('metrics'));
|
|
178
|
+
(0, forwardEmitRecorders_1.forwardEmitRecorders)(executor, this.opts.recorders);
|
|
179
|
+
if (onStreamEvent) {
|
|
180
|
+
executor.attachEmitRecorder((0, streaming_1.createStreamEventRecorder)(onStreamEvent));
|
|
181
|
+
}
|
|
157
182
|
try {
|
|
158
183
|
await executor.run({
|
|
159
184
|
input: { message },
|
|
@@ -170,12 +195,17 @@ class ConditionalRunner {
|
|
|
170
195
|
const state = snapshot?.sharedState ?? {};
|
|
171
196
|
const content = state.result ?? '';
|
|
172
197
|
bridge?.dispatchTurnComplete(content, 0);
|
|
198
|
+
onStreamEvent?.({ type: 'turn_end', content, iterations: 1 });
|
|
173
199
|
return {
|
|
174
200
|
content,
|
|
175
201
|
agents: [],
|
|
176
202
|
totalLatencyMs: Date.now() - startTime,
|
|
177
203
|
};
|
|
178
204
|
}
|
|
205
|
+
/** Subscribe to the runner's live stream of events. See AgentRunner.observe(). */
|
|
206
|
+
observe(handler) {
|
|
207
|
+
return this.dispatcher.observe(handler);
|
|
208
|
+
}
|
|
179
209
|
buildChart() {
|
|
180
210
|
// Seed stage: store pipeline input so runner stages can read it.
|
|
181
211
|
const seedStage = (scope) => {
|
|
@@ -253,10 +283,6 @@ class ConditionalRunner {
|
|
|
253
283
|
toFlowChart() {
|
|
254
284
|
return this.buildChart();
|
|
255
285
|
}
|
|
256
|
-
/** Get the narrative from the last run. */
|
|
257
|
-
getNarrative() {
|
|
258
|
-
return this.lastExecutor?.getNarrative() ?? [];
|
|
259
|
-
}
|
|
260
286
|
/** Get structured narrative entries from the last run. */
|
|
261
287
|
getNarrativeEntries() {
|
|
262
288
|
return this.lastExecutor?.getNarrativeEntries() ?? [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Conditional.js","sourceRoot":"","sources":["../../src/concepts/Conditional.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;;;AAEH,6CAKqB;AAKrB,2DAAwD;AACxD,gEAA6D;AAC7D,2CAAgD;AAChD,gDAAuD;AAEvD,2EAA2E;AAC3E,SAAS,YAAY,CAAC,MAAkB;IACtC,OAAO,OAAQ,MAA6C,CAAC,WAAW,KAAK,UAAU,CAAC;AAC1F,CAAC;AAiBD,uEAAuE;AACvE,MAAM,eAAe,GAAG,6BAA6B,CAAC;AAEtD,SAAS,YAAY,CAAC,CAAU;IAC9B,OAAO,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,OAAQ,CAAuB,CAAC,GAAG,KAAK,UAAU,CAAC;AACnG,CAAC;AAED;;;;GAIG;AACH,MAAa,WAAW;IACL,eAAe,CAAS;IACxB,QAAQ,GAAwB,EAAE,CAAC;IAC5C,aAAa,CAAc;IAC3B,WAAW,GAAG,SAAS,CAAC;IACf,SAAS,GAAoB,EAAE,CAAC;IAEjD,YAAoB,OAA2B;QAC7C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,IAAI,aAAa,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,UAA8B,EAAE;QAC5C,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,CACF,SAA+B,EAC/B,MAAkB,EAClB,OAAwC;QAExC,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;YACpC,MAAM,IAAI,SAAS,CACjB,2EAA2E,CAC5E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CACjB,kGAAkG,CACnG,CAAC;QACJ,CAAC;QACD,MAAM,EAAE,GAAG,OAAO,EAAE,EAAE,IAAI,UAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC3D,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CACb,0FAA0F,CAC3F,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,gCAAgC,EAAE,+HAA+H,CAClK,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,qCAAqC,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACjB,EAAE;YACF,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE;YACzB,SAAS;YACT,MAAM;SACP,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2EAA2E;IAC3E,SAAS,CAAC,MAAkB,EAAE,OAA2B;QACvD,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,SAAS,CACjB,uGAAuG,CACxG,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC;QAC5B,IAAI,OAAO,EAAE,IAAI;YAAE,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"Conditional.js","sourceRoot":"","sources":["../../src/concepts/Conditional.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,8 @@ const footprintjs_1 = require("footprintjs");
|
|
|
19
19
|
const specIcons_1 = require("./specIcons");
|
|
20
20
|
const runnerAsStage_1 = require("../stages/runnerAsStage");
|
|
21
21
|
const RecorderBridge_1 = require("../recorders/RecorderBridge");
|
|
22
|
+
const forwardEmitRecorders_1 = require("../recorders/forwardEmitRecorders");
|
|
23
|
+
const streaming_1 = require("../streaming");
|
|
22
24
|
/**
|
|
23
25
|
* Check if a runner exposes its internal flowChart for subflow composition.
|
|
24
26
|
* Runners with `toFlowChart()` are mounted as subflows (enables UI drill-down).
|
|
@@ -45,7 +47,8 @@ class FlowChart {
|
|
|
45
47
|
});
|
|
46
48
|
return this;
|
|
47
49
|
}
|
|
48
|
-
/** Attach
|
|
50
|
+
/** Attach a recorder. AgentRecorder OR EmitRecorder (e.g. contextEngineering). */
|
|
51
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
49
52
|
recorder(rec) {
|
|
50
53
|
this.recorders.push(rec);
|
|
51
54
|
return this;
|
|
@@ -64,6 +67,8 @@ class FlowChartRunner {
|
|
|
64
67
|
recorders;
|
|
65
68
|
lastExecutor;
|
|
66
69
|
lastSpec;
|
|
70
|
+
/** Persistent observer list — see AgentRunner.dispatcher. */
|
|
71
|
+
dispatcher = new streaming_1.EventDispatcher();
|
|
67
72
|
constructor(agents, recorders = []) {
|
|
68
73
|
this.agents = agents;
|
|
69
74
|
this.recorders = recorders;
|
|
@@ -71,6 +76,22 @@ class FlowChartRunner {
|
|
|
71
76
|
async run(message, options) {
|
|
72
77
|
const startTime = Date.now();
|
|
73
78
|
const bridge = this.recorders.length > 0 ? new RecorderBridge_1.RecorderBridge(this.recorders) : null;
|
|
79
|
+
const dispatcher = this.dispatcher;
|
|
80
|
+
const perRun = options?.onEvent;
|
|
81
|
+
const onStreamEvent = dispatcher.size > 0 || perRun
|
|
82
|
+
? (e) => {
|
|
83
|
+
dispatcher.dispatch(e);
|
|
84
|
+
if (perRun) {
|
|
85
|
+
try {
|
|
86
|
+
perRun(e);
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
/* swallow */
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
: undefined;
|
|
94
|
+
onStreamEvent?.({ type: 'turn_start', userMessage: message });
|
|
74
95
|
bridge?.dispatchTurnStart(message);
|
|
75
96
|
// Seed stage: set input and initialize agent results.
|
|
76
97
|
// Signal/timeout are passed via executor.run({ signal, timeoutMs }) and
|
|
@@ -107,6 +128,10 @@ class FlowChartRunner {
|
|
|
107
128
|
const executor = new footprintjs_1.FlowChartExecutor(chart, { enrichSnapshots: true });
|
|
108
129
|
executor.enableNarrative();
|
|
109
130
|
executor.attachRecorder(new footprintjs_1.MetricRecorder('metrics'));
|
|
131
|
+
(0, forwardEmitRecorders_1.forwardEmitRecorders)(executor, this.recorders);
|
|
132
|
+
if (onStreamEvent) {
|
|
133
|
+
executor.attachEmitRecorder((0, streaming_1.createStreamEventRecorder)(onStreamEvent));
|
|
134
|
+
}
|
|
110
135
|
try {
|
|
111
136
|
await executor.run({
|
|
112
137
|
input: { message },
|
|
@@ -149,12 +174,17 @@ class FlowChartRunner {
|
|
|
149
174
|
lastSubflowContent ??
|
|
150
175
|
(flatAgentResults.length > 0 ? flatAgentResults[flatAgentResults.length - 1].content : '');
|
|
151
176
|
bridge?.dispatchTurnComplete(content, 0);
|
|
177
|
+
onStreamEvent?.({ type: 'turn_end', content, iterations: 1 });
|
|
152
178
|
return {
|
|
153
179
|
content,
|
|
154
180
|
agents: allAgentResults,
|
|
155
181
|
totalLatencyMs: Date.now() - startTime,
|
|
156
182
|
};
|
|
157
183
|
}
|
|
184
|
+
/** Subscribe to the runner's live stream of events. See AgentRunner.observe(). */
|
|
185
|
+
observe(handler) {
|
|
186
|
+
return this.dispatcher.observe(handler);
|
|
187
|
+
}
|
|
158
188
|
/** Get the flowchart spec (stage graph metadata). */
|
|
159
189
|
getSpec() {
|
|
160
190
|
if (!this.lastSpec) {
|
|
@@ -184,10 +214,6 @@ class FlowChartRunner {
|
|
|
184
214
|
}
|
|
185
215
|
return this.lastSpec;
|
|
186
216
|
}
|
|
187
|
-
/** Get the narrative from the last run. */
|
|
188
|
-
getNarrative() {
|
|
189
|
-
return this.lastExecutor?.getNarrative() ?? [];
|
|
190
|
-
}
|
|
191
217
|
/** Get structured narrative entries from the last run. */
|
|
192
218
|
getNarrativeEntries() {
|
|
193
219
|
return this.lastExecutor?.getNarrativeEntries() ?? [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowChart.js","sourceRoot":"","sources":["../../src/concepts/FlowChart.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAEH,6CAA6F;AAE7F,2CAAgD;AAGhD,2DAAwD;AAGxD,gEAA6D;
|
|
1
|
+
{"version":3,"file":"FlowChart.js","sourceRoot":"","sources":["../../src/concepts/FlowChart.ts"],"names":[],"mappings":"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"}
|