agentfootprint 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +297 -0
- package/CLAUDE.md +297 -0
- package/LICENSE +21 -0
- package/README.md +339 -0
- package/ai-instructions/claude-code/SKILL.md +597 -0
- package/ai-instructions/clinerules +85 -0
- package/ai-instructions/copilot-instructions.md +109 -0
- package/ai-instructions/cursor/agentfootprint.md +101 -0
- package/ai-instructions/kiro/agentfootprint.md +101 -0
- package/ai-instructions/setup.sh +140 -0
- package/ai-instructions/windsurfrules +85 -0
- package/dist/adapters/a2a/a2aRunner.js +36 -0
- package/dist/adapters/a2a/a2aRunner.js.map +1 -0
- package/dist/adapters/anthropic/AnthropicAdapter.js +293 -0
- package/dist/adapters/anthropic/AnthropicAdapter.js.map +1 -0
- package/dist/adapters/bedrock/BedrockAdapter.js +313 -0
- package/dist/adapters/bedrock/BedrockAdapter.js.map +1 -0
- package/dist/adapters/browser/BrowserAnthropicAdapter.js +349 -0
- package/dist/adapters/browser/BrowserAnthropicAdapter.js.map +1 -0
- package/dist/adapters/browser/BrowserOpenAIAdapter.js +303 -0
- package/dist/adapters/browser/BrowserOpenAIAdapter.js.map +1 -0
- package/dist/adapters/browser/index.js +8 -0
- package/dist/adapters/browser/index.js.map +1 -0
- package/dist/adapters/createAdapterSubflow.js +46 -0
- package/dist/adapters/createAdapterSubflow.js.map +1 -0
- package/dist/adapters/createProvider.js +107 -0
- package/dist/adapters/createProvider.js.map +1 -0
- package/dist/adapters/fallbackProvider.js +94 -0
- package/dist/adapters/fallbackProvider.js.map +1 -0
- package/dist/adapters/index.js +47 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/mcp/mcpToolProvider.js +44 -0
- package/dist/adapters/mcp/mcpToolProvider.js.map +1 -0
- 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 +137 -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/adapters/mock/MockAdapter.js +66 -0
- package/dist/adapters/mock/MockAdapter.js.map +1 -0
- package/dist/adapters/mock/MockRetriever.js +61 -0
- package/dist/adapters/mock/MockRetriever.js.map +1 -0
- package/dist/adapters/openai/OpenAIAdapter.js +276 -0
- package/dist/adapters/openai/OpenAIAdapter.js.map +1 -0
- package/dist/adapters/resilientProvider.js +93 -0
- package/dist/adapters/resilientProvider.js.map +1 -0
- package/dist/compositions/index.js +17 -0
- package/dist/compositions/index.js.map +1 -0
- package/dist/compositions/withCircuitBreaker.js +84 -0
- package/dist/compositions/withCircuitBreaker.js.map +1 -0
- package/dist/compositions/withFallback.js +33 -0
- package/dist/compositions/withFallback.js.map +1 -0
- package/dist/compositions/withRetry.js +59 -0
- package/dist/compositions/withRetry.js.map +1 -0
- package/dist/concepts/FlowChart.js +205 -0
- package/dist/concepts/FlowChart.js.map +1 -0
- package/dist/concepts/LLMCall.js +160 -0
- package/dist/concepts/LLMCall.js.map +1 -0
- package/dist/concepts/Parallel.js +254 -0
- package/dist/concepts/Parallel.js.map +1 -0
- package/dist/concepts/RAG.js +198 -0
- package/dist/concepts/RAG.js.map +1 -0
- package/dist/concepts/Swarm.js +270 -0
- package/dist/concepts/Swarm.js.map +1 -0
- package/dist/concepts/index.js +23 -0
- package/dist/concepts/index.js.map +1 -0
- package/dist/concepts/specIcons.js +48 -0
- package/dist/concepts/specIcons.js.map +1 -0
- package/dist/core/config.js +7 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/index.js +14 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/providers.js +19 -0
- package/dist/core/providers.js.map +1 -0
- package/dist/core/recorders.js +7 -0
- package/dist/core/recorders.js.map +1 -0
- package/dist/esm/adapters/a2a/a2aRunner.js +32 -0
- package/dist/esm/adapters/a2a/a2aRunner.js.map +1 -0
- package/dist/esm/adapters/anthropic/AnthropicAdapter.js +289 -0
- package/dist/esm/adapters/anthropic/AnthropicAdapter.js.map +1 -0
- package/dist/esm/adapters/bedrock/BedrockAdapter.js +309 -0
- package/dist/esm/adapters/bedrock/BedrockAdapter.js.map +1 -0
- package/dist/esm/adapters/browser/BrowserAnthropicAdapter.js +345 -0
- package/dist/esm/adapters/browser/BrowserAnthropicAdapter.js.map +1 -0
- package/dist/esm/adapters/browser/BrowserOpenAIAdapter.js +299 -0
- package/dist/esm/adapters/browser/BrowserOpenAIAdapter.js.map +1 -0
- package/dist/esm/adapters/browser/index.js +3 -0
- package/dist/esm/adapters/browser/index.js.map +1 -0
- package/dist/esm/adapters/createAdapterSubflow.js +42 -0
- package/dist/esm/adapters/createAdapterSubflow.js.map +1 -0
- package/dist/esm/adapters/createProvider.js +101 -0
- package/dist/esm/adapters/createProvider.js.map +1 -0
- package/dist/esm/adapters/fallbackProvider.js +90 -0
- package/dist/esm/adapters/fallbackProvider.js.map +1 -0
- package/dist/esm/adapters/index.js +23 -0
- package/dist/esm/adapters/index.js.map +1 -0
- package/dist/esm/adapters/mcp/mcpToolProvider.js +40 -0
- package/dist/esm/adapters/mcp/mcpToolProvider.js.map +1 -0
- 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 +131 -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/adapters/mock/MockAdapter.js +61 -0
- package/dist/esm/adapters/mock/MockAdapter.js.map +1 -0
- package/dist/esm/adapters/mock/MockRetriever.js +56 -0
- package/dist/esm/adapters/mock/MockRetriever.js.map +1 -0
- package/dist/esm/adapters/openai/OpenAIAdapter.js +272 -0
- package/dist/esm/adapters/openai/OpenAIAdapter.js.map +1 -0
- package/dist/esm/adapters/resilientProvider.js +89 -0
- package/dist/esm/adapters/resilientProvider.js.map +1 -0
- package/dist/esm/compositions/index.js +10 -0
- package/dist/esm/compositions/index.js.map +1 -0
- package/dist/esm/compositions/withCircuitBreaker.js +79 -0
- package/dist/esm/compositions/withCircuitBreaker.js.map +1 -0
- package/dist/esm/compositions/withFallback.js +29 -0
- package/dist/esm/compositions/withFallback.js.map +1 -0
- package/dist/esm/compositions/withRetry.js +55 -0
- package/dist/esm/compositions/withRetry.js.map +1 -0
- package/dist/esm/concepts/FlowChart.js +200 -0
- package/dist/esm/concepts/FlowChart.js.map +1 -0
- package/dist/esm/concepts/LLMCall.js +155 -0
- package/dist/esm/concepts/LLMCall.js.map +1 -0
- package/dist/esm/concepts/Parallel.js +249 -0
- package/dist/esm/concepts/Parallel.js.map +1 -0
- package/dist/esm/concepts/RAG.js +193 -0
- package/dist/esm/concepts/RAG.js.map +1 -0
- package/dist/esm/concepts/Swarm.js +265 -0
- package/dist/esm/concepts/Swarm.js.map +1 -0
- package/dist/esm/concepts/index.js +8 -0
- package/dist/esm/concepts/index.js.map +1 -0
- package/dist/esm/concepts/specIcons.js +44 -0
- package/dist/esm/concepts/specIcons.js.map +1 -0
- package/dist/esm/core/config.js +6 -0
- package/dist/esm/core/config.js.map +1 -0
- package/dist/esm/core/index.js +13 -0
- package/dist/esm/core/index.js.map +1 -0
- package/dist/esm/core/providers.js +18 -0
- package/dist/esm/core/providers.js.map +1 -0
- package/dist/esm/core/recorders.js +6 -0
- package/dist/esm/core/recorders.js.map +1 -0
- package/dist/esm/executor/agentLoop.js +150 -0
- package/dist/esm/executor/agentLoop.js.map +1 -0
- package/dist/esm/executor/index.js +5 -0
- package/dist/esm/executor/index.js.map +1 -0
- package/dist/esm/explain.barrel.js +19 -0
- package/dist/esm/explain.barrel.js.map +1 -0
- package/dist/esm/index.js +29 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/instructions.barrel.js +22 -0
- package/dist/esm/instructions.barrel.js.map +1 -0
- package/dist/esm/lib/call/callLLMStage.js +64 -0
- package/dist/esm/lib/call/callLLMStage.js.map +1 -0
- package/dist/esm/lib/call/handleResponseStage.js +49 -0
- package/dist/esm/lib/call/handleResponseStage.js.map +1 -0
- package/dist/esm/lib/call/helpers.js +164 -0
- package/dist/esm/lib/call/helpers.js.map +1 -0
- package/dist/esm/lib/call/index.js +7 -0
- package/dist/esm/lib/call/index.js.map +1 -0
- package/dist/esm/lib/call/parseResponseStage.js +48 -0
- package/dist/esm/lib/call/parseResponseStage.js.map +1 -0
- package/dist/esm/lib/call/streamingCallLLMStage.js +103 -0
- package/dist/esm/lib/call/streamingCallLLMStage.js.map +1 -0
- package/dist/esm/lib/call/toolExecutionSubflow.js +87 -0
- package/dist/esm/lib/call/toolExecutionSubflow.js.map +1 -0
- package/dist/esm/lib/call/types.js +10 -0
- package/dist/esm/lib/call/types.js.map +1 -0
- package/dist/esm/lib/concepts/Agent.js +7 -0
- package/dist/esm/lib/concepts/Agent.js.map +1 -0
- package/dist/esm/lib/concepts/AgentBuilder.js +224 -0
- package/dist/esm/lib/concepts/AgentBuilder.js.map +1 -0
- package/dist/esm/lib/concepts/AgentRunner.js +337 -0
- package/dist/esm/lib/concepts/AgentRunner.js.map +1 -0
- package/dist/esm/lib/concepts/index.js +2 -0
- package/dist/esm/lib/concepts/index.js.map +1 -0
- package/dist/esm/lib/instructions/InstructionRecorder.js +121 -0
- package/dist/esm/lib/instructions/InstructionRecorder.js.map +1 -0
- package/dist/esm/lib/instructions/agentInstruction.js +139 -0
- package/dist/esm/lib/instructions/agentInstruction.js.map +1 -0
- package/dist/esm/lib/instructions/buildInstructionsToLLMSubflow.js +83 -0
- package/dist/esm/lib/instructions/buildInstructionsToLLMSubflow.js.map +1 -0
- package/dist/esm/lib/instructions/evaluator.js +196 -0
- package/dist/esm/lib/instructions/evaluator.js.map +1 -0
- package/dist/esm/lib/instructions/index.js +10 -0
- package/dist/esm/lib/instructions/index.js.map +1 -0
- package/dist/esm/lib/instructions/inject.js +55 -0
- package/dist/esm/lib/instructions/inject.js.map +1 -0
- package/dist/esm/lib/instructions/preview.js +88 -0
- package/dist/esm/lib/instructions/preview.js.map +1 -0
- package/dist/esm/lib/instructions/strictFollowUp.js +125 -0
- package/dist/esm/lib/instructions/strictFollowUp.js.map +1 -0
- package/dist/esm/lib/instructions/template.js +82 -0
- package/dist/esm/lib/instructions/template.js.map +1 -0
- package/dist/esm/lib/instructions/types.js +83 -0
- package/dist/esm/lib/instructions/types.js.map +1 -0
- package/dist/esm/lib/loop/buildAgentLoop.js +401 -0
- package/dist/esm/lib/loop/buildAgentLoop.js.map +1 -0
- package/dist/esm/lib/loop/index.js +3 -0
- package/dist/esm/lib/loop/index.js.map +1 -0
- package/dist/esm/lib/loop/types.js +71 -0
- package/dist/esm/lib/loop/types.js.map +1 -0
- package/dist/esm/lib/narrative/agentRenderer.js +293 -0
- package/dist/esm/lib/narrative/agentRenderer.js.map +1 -0
- package/dist/esm/lib/narrative/groundingHelpers.js +136 -0
- package/dist/esm/lib/narrative/groundingHelpers.js.map +1 -0
- package/dist/esm/lib/narrative/index.js +3 -0
- package/dist/esm/lib/narrative/index.js.map +1 -0
- package/dist/esm/lib/slots/helpers.js +23 -0
- package/dist/esm/lib/slots/helpers.js.map +1 -0
- package/dist/esm/lib/slots/index.js +4 -0
- package/dist/esm/lib/slots/index.js.map +1 -0
- package/dist/esm/lib/slots/messages/buildMessagesSubflow.js +108 -0
- package/dist/esm/lib/slots/messages/buildMessagesSubflow.js.map +1 -0
- package/dist/esm/lib/slots/messages/index.js +2 -0
- package/dist/esm/lib/slots/messages/index.js.map +1 -0
- package/dist/esm/lib/slots/messages/types.js +10 -0
- package/dist/esm/lib/slots/messages/types.js.map +1 -0
- package/dist/esm/lib/slots/system-prompt/buildSystemPromptSubflow.js +64 -0
- package/dist/esm/lib/slots/system-prompt/buildSystemPromptSubflow.js.map +1 -0
- package/dist/esm/lib/slots/system-prompt/index.js +2 -0
- package/dist/esm/lib/slots/system-prompt/index.js.map +1 -0
- package/dist/esm/lib/slots/system-prompt/types.js +9 -0
- package/dist/esm/lib/slots/system-prompt/types.js.map +1 -0
- package/dist/esm/lib/slots/tools/buildToolsSubflow.js +67 -0
- package/dist/esm/lib/slots/tools/buildToolsSubflow.js.map +1 -0
- package/dist/esm/lib/slots/tools/index.js +2 -0
- package/dist/esm/lib/slots/tools/index.js.map +1 -0
- package/dist/esm/lib/slots/tools/types.js +11 -0
- package/dist/esm/lib/slots/tools/types.js.map +1 -0
- package/dist/esm/lib/swarm/buildSwarmRouting.js +207 -0
- package/dist/esm/lib/swarm/buildSwarmRouting.js.map +1 -0
- package/dist/esm/lib/swarm/index.js +2 -0
- package/dist/esm/lib/swarm/index.js.map +1 -0
- package/dist/esm/memory/conversationHelpers.js +56 -0
- package/dist/esm/memory/conversationHelpers.js.map +1 -0
- package/dist/esm/memory/index.js +2 -0
- package/dist/esm/memory/index.js.map +1 -0
- package/dist/esm/models/index.js +3 -0
- package/dist/esm/models/index.js.map +1 -0
- package/dist/esm/models/pricing.js +23 -0
- package/dist/esm/models/pricing.js.map +1 -0
- package/dist/esm/models/providers.js +42 -0
- package/dist/esm/models/providers.js.map +1 -0
- package/dist/esm/models/types.js +6 -0
- package/dist/esm/models/types.js.map +1 -0
- package/dist/esm/observe.barrel.js +18 -0
- package/dist/esm/observe.barrel.js.map +1 -0
- package/dist/esm/providers/index.js +12 -0
- package/dist/esm/providers/index.js.map +1 -0
- package/dist/esm/providers/messages/charBudget.js +39 -0
- package/dist/esm/providers/messages/charBudget.js.map +1 -0
- package/dist/esm/providers/messages/compositeMessages.js +33 -0
- package/dist/esm/providers/messages/compositeMessages.js.map +1 -0
- package/dist/esm/providers/messages/fullHistory.js +15 -0
- package/dist/esm/providers/messages/fullHistory.js.map +1 -0
- package/dist/esm/providers/messages/index.js +11 -0
- package/dist/esm/providers/messages/index.js.map +1 -0
- package/dist/esm/providers/messages/persistentHistory.js +40 -0
- package/dist/esm/providers/messages/persistentHistory.js.map +1 -0
- package/dist/esm/providers/messages/slidingWindow.js +24 -0
- package/dist/esm/providers/messages/slidingWindow.js.map +1 -0
- package/dist/esm/providers/messages/summaryStrategy.js +41 -0
- package/dist/esm/providers/messages/summaryStrategy.js.map +1 -0
- package/dist/esm/providers/messages/withToolPairSafety.js +76 -0
- package/dist/esm/providers/messages/withToolPairSafety.js.map +1 -0
- package/dist/esm/providers/prompt/compositePrompt.js +28 -0
- package/dist/esm/providers/prompt/compositePrompt.js.map +1 -0
- package/dist/esm/providers/prompt/index.js +8 -0
- package/dist/esm/providers/prompt/index.js.map +1 -0
- package/dist/esm/providers/prompt/skillBasedPrompt.js +37 -0
- package/dist/esm/providers/prompt/skillBasedPrompt.js.map +1 -0
- package/dist/esm/providers/prompt/static.js +9 -0
- package/dist/esm/providers/prompt/static.js.map +1 -0
- package/dist/esm/providers/prompt/template.js +20 -0
- package/dist/esm/providers/prompt/template.js.map +1 -0
- package/dist/esm/providers/tools/PermissionPolicy.js +100 -0
- package/dist/esm/providers/tools/PermissionPolicy.js.map +1 -0
- package/dist/esm/providers/tools/agentAsTool.js +47 -0
- package/dist/esm/providers/tools/agentAsTool.js.map +1 -0
- package/dist/esm/providers/tools/compositeTools.js +49 -0
- package/dist/esm/providers/tools/compositeTools.js.map +1 -0
- package/dist/esm/providers/tools/dynamicTools.js +41 -0
- package/dist/esm/providers/tools/dynamicTools.js.map +1 -0
- package/dist/esm/providers/tools/gatedTools.js +90 -0
- package/dist/esm/providers/tools/gatedTools.js.map +1 -0
- package/dist/esm/providers/tools/index.js +11 -0
- package/dist/esm/providers/tools/index.js.map +1 -0
- package/dist/esm/providers/tools/noTools.js +9 -0
- package/dist/esm/providers/tools/noTools.js.map +1 -0
- package/dist/esm/providers/tools/staticTools.js +25 -0
- package/dist/esm/providers/tools/staticTools.js.map +1 -0
- package/dist/esm/providers.barrel.js +32 -0
- package/dist/esm/providers.barrel.js.map +1 -0
- package/dist/esm/recorders/index.js +5 -0
- package/dist/esm/recorders/index.js.map +1 -0
- 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 +93 -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 +79 -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 +85 -0
- package/dist/esm/recorders/v2/RecorderBridge.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 +62 -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/resilience.barrel.js +16 -0
- package/dist/esm/resilience.barrel.js.map +1 -0
- package/dist/esm/scope/AgentScope.js +153 -0
- package/dist/esm/scope/AgentScope.js.map +1 -0
- package/dist/esm/scope/index.js +2 -0
- package/dist/esm/scope/index.js.map +1 -0
- package/dist/esm/scope/types.js +37 -0
- package/dist/esm/scope/types.js.map +1 -0
- package/dist/esm/security.barrel.js +17 -0
- package/dist/esm/security.barrel.js.map +1 -0
- package/dist/esm/stages/augmentPrompt.js +28 -0
- package/dist/esm/stages/augmentPrompt.js.map +1 -0
- package/dist/esm/stages/callLLM.js +15 -0
- package/dist/esm/stages/callLLM.js.map +1 -0
- package/dist/esm/stages/commitMemory.js +94 -0
- package/dist/esm/stages/commitMemory.js.map +1 -0
- package/dist/esm/stages/finalize.js +12 -0
- package/dist/esm/stages/finalize.js.map +1 -0
- package/dist/esm/stages/helpers.js +58 -0
- package/dist/esm/stages/helpers.js.map +1 -0
- package/dist/esm/stages/index.js +9 -0
- package/dist/esm/stages/index.js.map +1 -0
- package/dist/esm/stages/parseResponse.js +25 -0
- package/dist/esm/stages/parseResponse.js.map +1 -0
- package/dist/esm/stages/retrieve.js +18 -0
- package/dist/esm/stages/retrieve.js.map +1 -0
- package/dist/esm/stages/runnerAsStage.js +66 -0
- package/dist/esm/stages/runnerAsStage.js.map +1 -0
- package/dist/esm/stream.barrel.js +18 -0
- package/dist/esm/stream.barrel.js.map +1 -0
- package/dist/esm/streaming/StreamEmitter.js +43 -0
- package/dist/esm/streaming/StreamEmitter.js.map +1 -0
- package/dist/esm/streaming/index.js +2 -0
- package/dist/esm/streaming/index.js.map +1 -0
- package/dist/esm/subflows/index.js +2 -0
- package/dist/esm/subflows/index.js.map +1 -0
- package/dist/esm/subflows/prepareMemory.js +83 -0
- package/dist/esm/subflows/prepareMemory.js.map +1 -0
- package/dist/esm/tools/ToolRegistry.js +84 -0
- package/dist/esm/tools/ToolRegistry.js.map +1 -0
- package/dist/esm/tools/askHuman.js +63 -0
- package/dist/esm/tools/askHuman.js.map +1 -0
- package/dist/esm/tools/index.js +3 -0
- package/dist/esm/tools/index.js.map +1 -0
- package/dist/esm/tools/validateInput.js +56 -0
- package/dist/esm/tools/validateInput.js.map +1 -0
- package/dist/esm/tools/zodToJsonSchema.js +65 -0
- package/dist/esm/tools/zodToJsonSchema.js.map +1 -0
- package/dist/esm/types/adapter.js +11 -0
- package/dist/esm/types/adapter.js.map +1 -0
- package/dist/esm/types/agent.js +5 -0
- package/dist/esm/types/agent.js.map +1 -0
- package/dist/esm/types/content.js +82 -0
- package/dist/esm/types/content.js.map +1 -0
- package/dist/esm/types/errors.js +74 -0
- package/dist/esm/types/errors.js.map +1 -0
- package/dist/esm/types/index.js +5 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/llm.js +6 -0
- package/dist/esm/types/llm.js.map +1 -0
- package/dist/esm/types/messages.js +24 -0
- package/dist/esm/types/messages.js.map +1 -0
- package/dist/esm/types/multiAgent.js +5 -0
- package/dist/esm/types/multiAgent.js.map +1 -0
- package/dist/esm/types/retriever.js +6 -0
- package/dist/esm/types/retriever.js.map +1 -0
- package/dist/esm/types/tools.js +5 -0
- package/dist/esm/types/tools.js.map +1 -0
- package/dist/executor/agentLoop.js +154 -0
- package/dist/executor/agentLoop.js.map +1 -0
- package/dist/executor/index.js +9 -0
- package/dist/executor/index.js.map +1 -0
- package/dist/explain.barrel.js +27 -0
- package/dist/explain.barrel.js.map +1 -0
- package/dist/index.js +74 -0
- package/dist/index.js.map +1 -0
- package/dist/instructions.barrel.js +30 -0
- package/dist/instructions.barrel.js.map +1 -0
- package/dist/lib/call/callLLMStage.js +68 -0
- package/dist/lib/call/callLLMStage.js.map +1 -0
- package/dist/lib/call/handleResponseStage.js +53 -0
- package/dist/lib/call/handleResponseStage.js.map +1 -0
- package/dist/lib/call/helpers.js +169 -0
- package/dist/lib/call/helpers.js.map +1 -0
- package/dist/lib/call/index.js +17 -0
- package/dist/lib/call/index.js.map +1 -0
- package/dist/lib/call/parseResponseStage.js +52 -0
- package/dist/lib/call/parseResponseStage.js.map +1 -0
- package/dist/lib/call/streamingCallLLMStage.js +107 -0
- package/dist/lib/call/streamingCallLLMStage.js.map +1 -0
- package/dist/lib/call/toolExecutionSubflow.js +91 -0
- package/dist/lib/call/toolExecutionSubflow.js.map +1 -0
- package/dist/lib/call/types.js +11 -0
- package/dist/lib/call/types.js.map +1 -0
- package/dist/lib/concepts/Agent.js +12 -0
- package/dist/lib/concepts/Agent.js.map +1 -0
- package/dist/lib/concepts/AgentBuilder.js +228 -0
- package/dist/lib/concepts/AgentBuilder.js.map +1 -0
- package/dist/lib/concepts/AgentRunner.js +341 -0
- package/dist/lib/concepts/AgentRunner.js.map +1 -0
- package/dist/lib/concepts/index.js +7 -0
- package/dist/lib/concepts/index.js.map +1 -0
- package/dist/lib/instructions/InstructionRecorder.js +125 -0
- package/dist/lib/instructions/InstructionRecorder.js.map +1 -0
- package/dist/lib/instructions/agentInstruction.js +144 -0
- package/dist/lib/instructions/agentInstruction.js.map +1 -0
- package/dist/lib/instructions/buildInstructionsToLLMSubflow.js +87 -0
- package/dist/lib/instructions/buildInstructionsToLLMSubflow.js.map +1 -0
- package/dist/lib/instructions/evaluator.js +202 -0
- package/dist/lib/instructions/evaluator.js.map +1 -0
- package/dist/lib/instructions/index.js +27 -0
- package/dist/lib/instructions/index.js.map +1 -0
- package/dist/lib/instructions/inject.js +59 -0
- package/dist/lib/instructions/inject.js.map +1 -0
- package/dist/lib/instructions/preview.js +92 -0
- package/dist/lib/instructions/preview.js.map +1 -0
- package/dist/lib/instructions/strictFollowUp.js +130 -0
- package/dist/lib/instructions/strictFollowUp.js.map +1 -0
- package/dist/lib/instructions/template.js +86 -0
- package/dist/lib/instructions/template.js.map +1 -0
- package/dist/lib/instructions/types.js +88 -0
- package/dist/lib/instructions/types.js.map +1 -0
- package/dist/lib/loop/buildAgentLoop.js +405 -0
- package/dist/lib/loop/buildAgentLoop.js.map +1 -0
- package/dist/lib/loop/index.js +9 -0
- package/dist/lib/loop/index.js.map +1 -0
- package/dist/lib/loop/types.js +74 -0
- package/dist/lib/loop/types.js.map +1 -0
- package/dist/lib/narrative/agentRenderer.js +297 -0
- package/dist/lib/narrative/agentRenderer.js.map +1 -0
- package/dist/lib/narrative/groundingHelpers.js +142 -0
- package/dist/lib/narrative/groundingHelpers.js.map +1 -0
- package/dist/lib/narrative/index.js +10 -0
- package/dist/lib/narrative/index.js.map +1 -0
- package/dist/lib/slots/helpers.js +28 -0
- package/dist/lib/slots/helpers.js.map +1 -0
- package/dist/lib/slots/index.js +10 -0
- package/dist/lib/slots/index.js.map +1 -0
- package/dist/lib/slots/messages/buildMessagesSubflow.js +112 -0
- package/dist/lib/slots/messages/buildMessagesSubflow.js.map +1 -0
- package/dist/lib/slots/messages/index.js +6 -0
- package/dist/lib/slots/messages/index.js.map +1 -0
- package/dist/lib/slots/messages/types.js +11 -0
- package/dist/lib/slots/messages/types.js.map +1 -0
- package/dist/lib/slots/system-prompt/buildSystemPromptSubflow.js +68 -0
- package/dist/lib/slots/system-prompt/buildSystemPromptSubflow.js.map +1 -0
- package/dist/lib/slots/system-prompt/index.js +6 -0
- package/dist/lib/slots/system-prompt/index.js.map +1 -0
- package/dist/lib/slots/system-prompt/types.js +10 -0
- package/dist/lib/slots/system-prompt/types.js.map +1 -0
- package/dist/lib/slots/tools/buildToolsSubflow.js +71 -0
- package/dist/lib/slots/tools/buildToolsSubflow.js.map +1 -0
- package/dist/lib/slots/tools/index.js +6 -0
- package/dist/lib/slots/tools/index.js.map +1 -0
- package/dist/lib/slots/tools/types.js +12 -0
- package/dist/lib/slots/tools/types.js.map +1 -0
- package/dist/lib/swarm/buildSwarmRouting.js +211 -0
- package/dist/lib/swarm/buildSwarmRouting.js.map +1 -0
- package/dist/lib/swarm/index.js +6 -0
- package/dist/lib/swarm/index.js.map +1 -0
- package/dist/memory/conversationHelpers.js +66 -0
- package/dist/memory/conversationHelpers.js.map +1 -0
- package/dist/memory/index.js +12 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/models/index.js +12 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/pricing.js +27 -0
- package/dist/models/pricing.js.map +1 -0
- package/dist/models/providers.js +49 -0
- package/dist/models/providers.js.map +1 -0
- package/dist/models/types.js +7 -0
- package/dist/models/types.js.map +1 -0
- package/dist/observe.barrel.js +31 -0
- package/dist/observe.barrel.js.map +1 -0
- package/dist/providers/index.js +34 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/messages/charBudget.js +43 -0
- package/dist/providers/messages/charBudget.js.map +1 -0
- package/dist/providers/messages/compositeMessages.js +37 -0
- package/dist/providers/messages/compositeMessages.js.map +1 -0
- package/dist/providers/messages/fullHistory.js +19 -0
- package/dist/providers/messages/fullHistory.js.map +1 -0
- package/dist/providers/messages/index.js +22 -0
- package/dist/providers/messages/index.js.map +1 -0
- package/dist/providers/messages/persistentHistory.js +45 -0
- package/dist/providers/messages/persistentHistory.js.map +1 -0
- package/dist/providers/messages/slidingWindow.js +28 -0
- package/dist/providers/messages/slidingWindow.js.map +1 -0
- package/dist/providers/messages/summaryStrategy.js +45 -0
- package/dist/providers/messages/summaryStrategy.js.map +1 -0
- package/dist/providers/messages/withToolPairSafety.js +80 -0
- package/dist/providers/messages/withToolPairSafety.js.map +1 -0
- package/dist/providers/prompt/compositePrompt.js +32 -0
- package/dist/providers/prompt/compositePrompt.js.map +1 -0
- package/dist/providers/prompt/index.js +15 -0
- package/dist/providers/prompt/index.js.map +1 -0
- package/dist/providers/prompt/skillBasedPrompt.js +41 -0
- package/dist/providers/prompt/skillBasedPrompt.js.map +1 -0
- package/dist/providers/prompt/static.js +13 -0
- package/dist/providers/prompt/static.js.map +1 -0
- package/dist/providers/prompt/template.js +24 -0
- package/dist/providers/prompt/template.js.map +1 -0
- package/dist/providers/tools/PermissionPolicy.js +104 -0
- package/dist/providers/tools/PermissionPolicy.js.map +1 -0
- package/dist/providers/tools/agentAsTool.js +51 -0
- package/dist/providers/tools/agentAsTool.js.map +1 -0
- package/dist/providers/tools/compositeTools.js +53 -0
- package/dist/providers/tools/compositeTools.js.map +1 -0
- package/dist/providers/tools/dynamicTools.js +45 -0
- package/dist/providers/tools/dynamicTools.js.map +1 -0
- package/dist/providers/tools/gatedTools.js +94 -0
- package/dist/providers/tools/gatedTools.js.map +1 -0
- package/dist/providers/tools/index.js +21 -0
- package/dist/providers/tools/index.js.map +1 -0
- package/dist/providers/tools/noTools.js +13 -0
- package/dist/providers/tools/noTools.js.map +1 -0
- package/dist/providers/tools/staticTools.js +29 -0
- package/dist/providers/tools/staticTools.js.map +1 -0
- package/dist/providers.barrel.js +61 -0
- package/dist/providers.barrel.js.map +1 -0
- package/dist/recorders/index.js +17 -0
- package/dist/recorders/index.js.map +1 -0
- 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 +97 -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 +83 -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 +89 -0
- package/dist/recorders/v2/RecorderBridge.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 +66 -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/resilience.barrel.js +25 -0
- package/dist/resilience.barrel.js.map +1 -0
- package/dist/scope/AgentScope.js +156 -0
- package/dist/scope/AgentScope.js.map +1 -0
- package/dist/scope/index.js +10 -0
- package/dist/scope/index.js.map +1 -0
- package/dist/scope/types.js +40 -0
- package/dist/scope/types.js.map +1 -0
- package/dist/security.barrel.js +22 -0
- package/dist/security.barrel.js.map +1 -0
- package/dist/stages/augmentPrompt.js +32 -0
- package/dist/stages/augmentPrompt.js.map +1 -0
- package/dist/stages/callLLM.js +19 -0
- package/dist/stages/callLLM.js.map +1 -0
- package/dist/stages/commitMemory.js +98 -0
- package/dist/stages/commitMemory.js.map +1 -0
- package/dist/stages/finalize.js +16 -0
- package/dist/stages/finalize.js.map +1 -0
- package/dist/stages/helpers.js +63 -0
- package/dist/stages/helpers.js.map +1 -0
- package/dist/stages/index.js +21 -0
- package/dist/stages/index.js.map +1 -0
- package/dist/stages/parseResponse.js +29 -0
- package/dist/stages/parseResponse.js.map +1 -0
- package/dist/stages/retrieve.js +22 -0
- package/dist/stages/retrieve.js.map +1 -0
- package/dist/stages/runnerAsStage.js +70 -0
- package/dist/stages/runnerAsStage.js.map +1 -0
- package/dist/stream.barrel.js +23 -0
- package/dist/stream.barrel.js.map +1 -0
- package/dist/streaming/StreamEmitter.js +48 -0
- package/dist/streaming/StreamEmitter.js.map +1 -0
- package/dist/streaming/index.js +7 -0
- package/dist/streaming/index.js.map +1 -0
- package/dist/subflows/index.js +6 -0
- package/dist/subflows/index.js.map +1 -0
- package/dist/subflows/prepareMemory.js +87 -0
- package/dist/subflows/prepareMemory.js.map +1 -0
- package/dist/tools/ToolRegistry.js +89 -0
- package/dist/tools/ToolRegistry.js.map +1 -0
- package/dist/tools/askHuman.js +68 -0
- package/dist/tools/askHuman.js.map +1 -0
- package/dist/tools/index.js +9 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/validateInput.js +61 -0
- package/dist/tools/validateInput.js.map +1 -0
- package/dist/tools/zodToJsonSchema.js +70 -0
- package/dist/tools/zodToJsonSchema.js.map +1 -0
- package/dist/types/adapter.js +14 -0
- package/dist/types/adapter.js.map +1 -0
- package/dist/types/adapters/a2a/a2aRunner.d.ts +40 -0
- package/dist/types/adapters/a2a/a2aRunner.d.ts.map +1 -0
- package/dist/types/adapters/anthropic/AnthropicAdapter.d.ts +37 -0
- package/dist/types/adapters/anthropic/AnthropicAdapter.d.ts.map +1 -0
- package/dist/types/adapters/bedrock/BedrockAdapter.d.ts +44 -0
- package/dist/types/adapters/bedrock/BedrockAdapter.d.ts.map +1 -0
- package/dist/types/adapters/browser/BrowserAnthropicAdapter.d.ts +40 -0
- package/dist/types/adapters/browser/BrowserAnthropicAdapter.d.ts.map +1 -0
- package/dist/types/adapters/browser/BrowserOpenAIAdapter.d.ts +46 -0
- package/dist/types/adapters/browser/BrowserOpenAIAdapter.d.ts.map +1 -0
- package/dist/types/adapters/browser/index.d.ts +5 -0
- package/dist/types/adapters/browser/index.d.ts.map +1 -0
- package/dist/types/adapters/createAdapterSubflow.d.ts +36 -0
- package/dist/types/adapters/createAdapterSubflow.d.ts.map +1 -0
- package/dist/types/adapters/createProvider.d.ts +47 -0
- package/dist/types/adapters/createProvider.d.ts.map +1 -0
- package/dist/types/adapters/fallbackProvider.d.ts +45 -0
- package/dist/types/adapters/fallbackProvider.d.ts.map +1 -0
- package/dist/types/adapters/index.d.ts +30 -0
- package/dist/types/adapters/index.d.ts.map +1 -0
- package/dist/types/adapters/mcp/mcpToolProvider.d.ts +41 -0
- package/dist/types/adapters/mcp/mcpToolProvider.d.ts.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/adapters/mock/MockAdapter.d.ts +51 -0
- package/dist/types/adapters/mock/MockAdapter.d.ts.map +1 -0
- package/dist/types/adapters/mock/MockRetriever.d.ts +43 -0
- package/dist/types/adapters/mock/MockRetriever.d.ts.map +1 -0
- package/dist/types/adapters/openai/OpenAIAdapter.d.ts +47 -0
- package/dist/types/adapters/openai/OpenAIAdapter.d.ts.map +1 -0
- package/dist/types/adapters/resilientProvider.d.ts +33 -0
- package/dist/types/adapters/resilientProvider.d.ts.map +1 -0
- package/dist/types/agent.js +6 -0
- package/dist/types/agent.js.map +1 -0
- package/dist/types/compositions/index.d.ts +13 -0
- package/dist/types/compositions/index.d.ts.map +1 -0
- package/dist/types/compositions/withCircuitBreaker.d.ts +43 -0
- package/dist/types/compositions/withCircuitBreaker.d.ts.map +1 -0
- package/dist/types/compositions/withFallback.d.ts +17 -0
- package/dist/types/compositions/withFallback.d.ts.map +1 -0
- package/dist/types/compositions/withRetry.d.ts +27 -0
- package/dist/types/compositions/withRetry.d.ts.map +1 -0
- package/dist/types/concepts/FlowChart.d.ts +52 -0
- package/dist/types/concepts/FlowChart.d.ts.map +1 -0
- package/dist/types/concepts/LLMCall.d.ts +56 -0
- package/dist/types/concepts/LLMCall.d.ts.map +1 -0
- package/dist/types/concepts/Parallel.d.ts +110 -0
- package/dist/types/concepts/Parallel.d.ts.map +1 -0
- package/dist/types/concepts/RAG.d.ts +71 -0
- package/dist/types/concepts/RAG.d.ts.map +1 -0
- package/dist/types/concepts/Swarm.d.ts +98 -0
- package/dist/types/concepts/Swarm.d.ts.map +1 -0
- package/dist/types/concepts/index.d.ts +12 -0
- package/dist/types/concepts/index.d.ts.map +1 -0
- package/dist/types/concepts/specIcons.d.ts +14 -0
- package/dist/types/concepts/specIcons.d.ts.map +1 -0
- package/dist/types/content.js +97 -0
- package/dist/types/content.js.map +1 -0
- package/dist/types/core/config.d.ts +24 -0
- package/dist/types/core/config.d.ts.map +1 -0
- package/dist/types/core/index.d.ts +15 -0
- package/dist/types/core/index.d.ts.map +1 -0
- package/dist/types/core/providers.d.ts +160 -0
- package/dist/types/core/providers.d.ts.map +1 -0
- package/dist/types/core/recorders.d.ts +54 -0
- package/dist/types/core/recorders.d.ts.map +1 -0
- package/dist/types/errors.js +80 -0
- package/dist/types/errors.js.map +1 -0
- package/dist/types/executor/agentLoop.d.ts +37 -0
- package/dist/types/executor/agentLoop.d.ts.map +1 -0
- package/dist/types/executor/index.d.ts +6 -0
- package/dist/types/executor/index.d.ts.map +1 -0
- package/dist/types/explain.barrel.d.ts +20 -0
- package/dist/types/explain.barrel.d.ts.map +1 -0
- package/dist/types/index.d.ts +31 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +29 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/instructions.barrel.d.ts +24 -0
- package/dist/types/instructions.barrel.d.ts.map +1 -0
- package/dist/types/lib/call/callLLMStage.d.ts +29 -0
- package/dist/types/lib/call/callLLMStage.d.ts.map +1 -0
- 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/helpers.d.ts +64 -0
- package/dist/types/lib/call/helpers.d.ts.map +1 -0
- package/dist/types/lib/call/index.d.ts +10 -0
- package/dist/types/lib/call/index.d.ts.map +1 -0
- package/dist/types/lib/call/parseResponseStage.d.ts +21 -0
- package/dist/types/lib/call/parseResponseStage.d.ts.map +1 -0
- package/dist/types/lib/call/streamingCallLLMStage.d.ts +23 -0
- package/dist/types/lib/call/streamingCallLLMStage.d.ts.map +1 -0
- package/dist/types/lib/call/toolExecutionSubflow.d.ts +70 -0
- package/dist/types/lib/call/toolExecutionSubflow.d.ts.map +1 -0
- package/dist/types/lib/call/types.d.ts +17 -0
- package/dist/types/lib/call/types.d.ts.map +1 -0
- package/dist/types/lib/concepts/Agent.d.ts +9 -0
- package/dist/types/lib/concepts/Agent.d.ts.map +1 -0
- package/dist/types/lib/concepts/AgentBuilder.d.ts +152 -0
- package/dist/types/lib/concepts/AgentBuilder.d.ts.map +1 -0
- package/dist/types/lib/concepts/AgentRunner.d.ts +100 -0
- package/dist/types/lib/concepts/AgentRunner.d.ts.map +1 -0
- package/dist/types/lib/concepts/index.d.ts +3 -0
- package/dist/types/lib/concepts/index.d.ts.map +1 -0
- package/dist/types/lib/instructions/InstructionRecorder.d.ts +85 -0
- package/dist/types/lib/instructions/InstructionRecorder.d.ts.map +1 -0
- package/dist/types/lib/instructions/agentInstruction.d.ts +150 -0
- package/dist/types/lib/instructions/agentInstruction.d.ts.map +1 -0
- package/dist/types/lib/instructions/buildInstructionsToLLMSubflow.d.ts +56 -0
- package/dist/types/lib/instructions/buildInstructionsToLLMSubflow.d.ts.map +1 -0
- package/dist/types/lib/instructions/evaluator.d.ts +99 -0
- package/dist/types/lib/instructions/evaluator.d.ts.map +1 -0
- package/dist/types/lib/instructions/index.d.ts +18 -0
- package/dist/types/lib/instructions/index.d.ts.map +1 -0
- package/dist/types/lib/instructions/inject.d.ts +54 -0
- package/dist/types/lib/instructions/inject.d.ts.map +1 -0
- package/dist/types/lib/instructions/preview.d.ts +85 -0
- package/dist/types/lib/instructions/preview.d.ts.map +1 -0
- package/dist/types/lib/instructions/strictFollowUp.d.ts +88 -0
- package/dist/types/lib/instructions/strictFollowUp.d.ts.map +1 -0
- package/dist/types/lib/instructions/template.d.ts +52 -0
- package/dist/types/lib/instructions/template.d.ts.map +1 -0
- package/dist/types/lib/instructions/types.d.ts +394 -0
- package/dist/types/lib/instructions/types.d.ts.map +1 -0
- package/dist/types/lib/loop/buildAgentLoop.d.ts +67 -0
- package/dist/types/lib/loop/buildAgentLoop.d.ts.map +1 -0
- package/dist/types/lib/loop/index.d.ts +5 -0
- package/dist/types/lib/loop/index.d.ts.map +1 -0
- package/dist/types/lib/loop/types.d.ts +248 -0
- package/dist/types/lib/loop/types.d.ts.map +1 -0
- package/dist/types/lib/narrative/agentRenderer.d.ts +51 -0
- package/dist/types/lib/narrative/agentRenderer.d.ts.map +1 -0
- 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/narrative/index.d.ts +5 -0
- package/dist/types/lib/narrative/index.d.ts.map +1 -0
- package/dist/types/lib/slots/helpers.d.ts +16 -0
- package/dist/types/lib/slots/helpers.d.ts.map +1 -0
- package/dist/types/lib/slots/index.d.ts +7 -0
- package/dist/types/lib/slots/index.d.ts.map +1 -0
- package/dist/types/lib/slots/messages/buildMessagesSubflow.d.ts +40 -0
- package/dist/types/lib/slots/messages/buildMessagesSubflow.d.ts.map +1 -0
- package/dist/types/lib/slots/messages/index.d.ts +3 -0
- package/dist/types/lib/slots/messages/index.d.ts.map +1 -0
- package/dist/types/lib/slots/messages/types.d.ts +26 -0
- package/dist/types/lib/slots/messages/types.d.ts.map +1 -0
- package/dist/types/lib/slots/system-prompt/buildSystemPromptSubflow.d.ts +27 -0
- package/dist/types/lib/slots/system-prompt/buildSystemPromptSubflow.d.ts.map +1 -0
- package/dist/types/lib/slots/system-prompt/index.d.ts +3 -0
- package/dist/types/lib/slots/system-prompt/index.d.ts.map +1 -0
- package/dist/types/lib/slots/system-prompt/types.d.ts +17 -0
- package/dist/types/lib/slots/system-prompt/types.d.ts.map +1 -0
- package/dist/types/lib/slots/tools/buildToolsSubflow.d.ts +23 -0
- package/dist/types/lib/slots/tools/buildToolsSubflow.d.ts.map +1 -0
- package/dist/types/lib/slots/tools/index.d.ts +3 -0
- package/dist/types/lib/slots/tools/index.d.ts.map +1 -0
- package/dist/types/lib/slots/tools/types.d.ts +18 -0
- package/dist/types/lib/slots/tools/types.d.ts.map +1 -0
- package/dist/types/lib/swarm/buildSwarmRouting.d.ts +36 -0
- package/dist/types/lib/swarm/buildSwarmRouting.d.ts.map +1 -0
- package/dist/types/lib/swarm/index.d.ts +3 -0
- package/dist/types/lib/swarm/index.d.ts.map +1 -0
- package/dist/types/llm.js +7 -0
- package/dist/types/llm.js.map +1 -0
- package/dist/types/memory/conversationHelpers.d.ts +23 -0
- package/dist/types/memory/conversationHelpers.d.ts.map +1 -0
- package/dist/types/memory/index.d.ts +2 -0
- package/dist/types/memory/index.d.ts.map +1 -0
- package/dist/types/messages.js +32 -0
- package/dist/types/messages.js.map +1 -0
- package/dist/types/models/index.d.ts +4 -0
- package/dist/types/models/index.d.ts.map +1 -0
- package/dist/types/models/pricing.d.ts +8 -0
- package/dist/types/models/pricing.d.ts.map +1 -0
- package/dist/types/models/providers.d.ts +23 -0
- package/dist/types/models/providers.d.ts.map +1 -0
- package/dist/types/models/types.d.ts +25 -0
- package/dist/types/models/types.d.ts.map +1 -0
- package/dist/types/multiAgent.js +6 -0
- package/dist/types/multiAgent.js.map +1 -0
- package/dist/types/observe.barrel.d.ts +21 -0
- package/dist/types/observe.barrel.d.ts.map +1 -0
- package/dist/types/providers/index.d.ts +15 -0
- package/dist/types/providers/index.d.ts.map +1 -0
- package/dist/types/providers/messages/charBudget.d.ts +19 -0
- package/dist/types/providers/messages/charBudget.d.ts.map +1 -0
- package/dist/types/providers/messages/compositeMessages.d.ts +16 -0
- package/dist/types/providers/messages/compositeMessages.d.ts.map +1 -0
- package/dist/types/providers/messages/fullHistory.d.ts +12 -0
- package/dist/types/providers/messages/fullHistory.d.ts.map +1 -0
- package/dist/types/providers/messages/index.d.ts +15 -0
- package/dist/types/providers/messages/index.d.ts.map +1 -0
- package/dist/types/providers/messages/persistentHistory.d.ts +32 -0
- package/dist/types/providers/messages/persistentHistory.d.ts.map +1 -0
- package/dist/types/providers/messages/slidingWindow.d.ts +16 -0
- package/dist/types/providers/messages/slidingWindow.d.ts.map +1 -0
- package/dist/types/providers/messages/summaryStrategy.d.ts +29 -0
- package/dist/types/providers/messages/summaryStrategy.d.ts.map +1 -0
- package/dist/types/providers/messages/withToolPairSafety.d.ts +19 -0
- package/dist/types/providers/messages/withToolPairSafety.d.ts.map +1 -0
- package/dist/types/providers/prompt/compositePrompt.d.ts +20 -0
- package/dist/types/providers/prompt/compositePrompt.d.ts.map +1 -0
- package/dist/types/providers/prompt/index.d.ts +10 -0
- package/dist/types/providers/prompt/index.d.ts.map +1 -0
- package/dist/types/providers/prompt/skillBasedPrompt.d.ts +33 -0
- package/dist/types/providers/prompt/skillBasedPrompt.d.ts.map +1 -0
- package/dist/types/providers/prompt/static.d.ts +6 -0
- package/dist/types/providers/prompt/static.d.ts.map +1 -0
- package/dist/types/providers/prompt/template.d.ts +6 -0
- package/dist/types/providers/prompt/template.d.ts.map +1 -0
- package/dist/types/providers/tools/PermissionPolicy.d.ts +76 -0
- package/dist/types/providers/tools/PermissionPolicy.d.ts.map +1 -0
- package/dist/types/providers/tools/agentAsTool.d.ts +40 -0
- package/dist/types/providers/tools/agentAsTool.d.ts.map +1 -0
- package/dist/types/providers/tools/compositeTools.d.ts +18 -0
- package/dist/types/providers/tools/compositeTools.d.ts.map +1 -0
- package/dist/types/providers/tools/dynamicTools.d.ts +27 -0
- package/dist/types/providers/tools/dynamicTools.d.ts.map +1 -0
- package/dist/types/providers/tools/gatedTools.d.ts +52 -0
- package/dist/types/providers/tools/gatedTools.d.ts.map +1 -0
- package/dist/types/providers/tools/index.d.ts +15 -0
- package/dist/types/providers/tools/index.d.ts.map +1 -0
- package/dist/types/providers/tools/noTools.d.ts +6 -0
- package/dist/types/providers/tools/noTools.d.ts.map +1 -0
- package/dist/types/providers/tools/staticTools.d.ts +7 -0
- package/dist/types/providers/tools/staticTools.d.ts.map +1 -0
- package/dist/types/providers.barrel.d.ts +34 -0
- package/dist/types/providers.barrel.d.ts.map +1 -0
- package/dist/types/recorders/index.d.ts +6 -0
- package/dist/types/recorders/index.d.ts.map +1 -0
- 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 +43 -0
- package/dist/types/recorders/v2/CostRecorder.d.ts.map +1 -0
- package/dist/types/recorders/v2/ExplainRecorder.d.ts +67 -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 +38 -0
- package/dist/types/recorders/v2/RecorderBridge.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 +68 -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/resilience.barrel.d.ts +18 -0
- package/dist/types/resilience.barrel.d.ts.map +1 -0
- package/dist/types/retriever.js +7 -0
- package/dist/types/retriever.js.map +1 -0
- package/dist/types/scope/AgentScope.d.ts +87 -0
- package/dist/types/scope/AgentScope.d.ts.map +1 -0
- package/dist/types/scope/index.d.ts +3 -0
- package/dist/types/scope/index.d.ts.map +1 -0
- package/dist/types/scope/types.d.ts +151 -0
- package/dist/types/scope/types.d.ts.map +1 -0
- package/dist/types/security.barrel.d.ts +17 -0
- package/dist/types/security.barrel.d.ts.map +1 -0
- package/dist/types/stages/augmentPrompt.d.ts +7 -0
- package/dist/types/stages/augmentPrompt.d.ts.map +1 -0
- package/dist/types/stages/callLLM.d.ts +8 -0
- package/dist/types/stages/callLLM.d.ts.map +1 -0
- package/dist/types/stages/commitMemory.d.ts +51 -0
- package/dist/types/stages/commitMemory.d.ts.map +1 -0
- package/dist/types/stages/finalize.d.ts +7 -0
- package/dist/types/stages/finalize.d.ts.map +1 -0
- package/dist/types/stages/helpers.d.ts +17 -0
- package/dist/types/stages/helpers.d.ts.map +1 -0
- package/dist/types/stages/index.d.ts +10 -0
- package/dist/types/stages/index.d.ts.map +1 -0
- package/dist/types/stages/parseResponse.d.ts +8 -0
- package/dist/types/stages/parseResponse.d.ts.map +1 -0
- package/dist/types/stages/retrieve.d.ts +8 -0
- package/dist/types/stages/retrieve.d.ts.map +1 -0
- package/dist/types/stages/runnerAsStage.d.ts +18 -0
- package/dist/types/stages/runnerAsStage.d.ts.map +1 -0
- package/dist/types/stream.barrel.d.ts +19 -0
- package/dist/types/stream.barrel.d.ts.map +1 -0
- package/dist/types/streaming/StreamEmitter.d.ts +93 -0
- package/dist/types/streaming/StreamEmitter.d.ts.map +1 -0
- package/dist/types/streaming/index.d.ts +3 -0
- package/dist/types/streaming/index.d.ts.map +1 -0
- package/dist/types/subflows/index.d.ts +3 -0
- package/dist/types/subflows/index.d.ts.map +1 -0
- package/dist/types/subflows/prepareMemory.d.ts +60 -0
- package/dist/types/subflows/prepareMemory.d.ts.map +1 -0
- package/dist/types/tools/ToolRegistry.d.ts +47 -0
- package/dist/types/tools/ToolRegistry.d.ts.map +1 -0
- package/dist/types/tools/askHuman.d.ts +39 -0
- package/dist/types/tools/askHuman.d.ts.map +1 -0
- package/dist/types/tools/index.d.ts +3 -0
- package/dist/types/tools/index.d.ts.map +1 -0
- package/dist/types/tools/validateInput.d.ts +29 -0
- package/dist/types/tools/validateInput.d.ts.map +1 -0
- package/dist/types/tools/zodToJsonSchema.d.ts +9 -0
- package/dist/types/tools/zodToJsonSchema.d.ts.map +1 -0
- package/dist/types/tools.js +6 -0
- package/dist/types/tools.js.map +1 -0
- package/dist/types/types/adapter.d.ts +36 -0
- package/dist/types/types/adapter.d.ts.map +1 -0
- package/dist/types/types/agent.d.ts +37 -0
- package/dist/types/types/agent.d.ts.map +1 -0
- package/dist/types/types/content.d.ts +104 -0
- package/dist/types/types/content.d.ts.map +1 -0
- package/dist/types/types/errors.d.ts +27 -0
- package/dist/types/types/errors.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +14 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/llm.d.ts +78 -0
- package/dist/types/types/llm.d.ts.map +1 -0
- package/dist/types/types/messages.d.ts +40 -0
- package/dist/types/types/messages.d.ts.map +1 -0
- package/dist/types/types/multiAgent.d.ts +57 -0
- package/dist/types/types/multiAgent.d.ts.map +1 -0
- package/dist/types/types/retriever.d.ts +41 -0
- package/dist/types/types/retriever.d.ts.map +1 -0
- package/dist/types/types/tools.d.ts +19 -0
- package/dist/types/types/tools.d.ts.map +1 -0
- package/package.json +178 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* FlowChart — sequential composition of runners as a flowchart.
|
|
3
|
+
*
|
|
4
|
+
* The simplest multi-agent pattern: run agents in order, each feeding into the next.
|
|
5
|
+
* More complex patterns (fan-out, hierarchy, swarm) are user-built with footprintjs
|
|
6
|
+
* primitives (fork, addDeciderFunction, loopTo).
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* const composed = FlowChart.create()
|
|
10
|
+
* .agent('researcher', 'Research', researchRunner)
|
|
11
|
+
* .agent('writer', 'Write', writerRunner)
|
|
12
|
+
* .build();
|
|
13
|
+
* const result = await composed.run('Write about AI');
|
|
14
|
+
*/
|
|
15
|
+
import type { AgentStageConfig, TraversalResult } from '../types';
|
|
16
|
+
import type { RunnerLike } from '../types';
|
|
17
|
+
import type { AgentRecorder } from '../core';
|
|
18
|
+
export declare class FlowChart {
|
|
19
|
+
private readonly agents;
|
|
20
|
+
private readonly recorders;
|
|
21
|
+
private constructor();
|
|
22
|
+
static create(): FlowChart;
|
|
23
|
+
/** Add a runner to the flowchart. Runners execute in the order added. */
|
|
24
|
+
agent(id: string, name: string, runner: RunnerLike, options?: {
|
|
25
|
+
inputMapper?: AgentStageConfig['inputMapper'];
|
|
26
|
+
outputMapper?: AgentStageConfig['outputMapper'];
|
|
27
|
+
}): this;
|
|
28
|
+
/** Attach an AgentRecorder to observe execution events. */
|
|
29
|
+
recorder(rec: AgentRecorder): this;
|
|
30
|
+
/** Build the composed flowchart and return a runner. */
|
|
31
|
+
build(): FlowChartRunner;
|
|
32
|
+
}
|
|
33
|
+
export declare class FlowChartRunner {
|
|
34
|
+
private readonly agents;
|
|
35
|
+
private readonly recorders;
|
|
36
|
+
private lastExecutor?;
|
|
37
|
+
private lastSpec?;
|
|
38
|
+
constructor(agents: readonly AgentStageConfig[], recorders?: AgentRecorder[]);
|
|
39
|
+
run(message: string, options?: {
|
|
40
|
+
signal?: AbortSignal;
|
|
41
|
+
timeoutMs?: number;
|
|
42
|
+
}): Promise<TraversalResult>;
|
|
43
|
+
/** Get the flowchart spec (stage graph metadata). */
|
|
44
|
+
getSpec(): unknown;
|
|
45
|
+
/** Get the narrative from the last run. */
|
|
46
|
+
getNarrative(): string[];
|
|
47
|
+
/** Get structured narrative entries from the last run. */
|
|
48
|
+
getNarrativeEntries(): import("footprintjs").CombinedNarrativeEntry[];
|
|
49
|
+
/** Get the full execution snapshot from the last run. */
|
|
50
|
+
getSnapshot(): import("footprintjs").RuntimeSnapshot | undefined;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=FlowChart.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FlowChart.d.ts","sourceRoot":"","sources":["../../../src/concepts/FlowChart.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,gBAAgB,EAAoB,eAAe,EAAE,MAAM,UAAU,CAAC;AAEpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAe7C,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuB;IAEjD,OAAO;IAEP,MAAM,CAAC,MAAM,IAAI,SAAS;IAI1B,yEAAyE;IACzE,KAAK,CACH,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,gBAAgB,CAAC,aAAa,CAAC,CAAC;QAC9C,YAAY,CAAC,EAAE,gBAAgB,CAAC,cAAc,CAAC,CAAC;KACjD,GACA,IAAI;IAWP,2DAA2D;IAC3D,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAKlC,wDAAwD;IACxD,KAAK,IAAI,eAAe;CAMzB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA8B;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAAU;gBAEf,MAAM,EAAE,SAAS,gBAAgB,EAAE,EAAE,SAAS,GAAE,aAAa,EAAO;IAK1E,GAAG,CACP,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GACrD,OAAO,CAAC,eAAe,CAAC;IA+G3B,qDAAqD;IACrD,OAAO,IAAI,OAAO;IAmClB,2CAA2C;IAC3C,YAAY,IAAI,MAAM,EAAE;IAIxB,0DAA0D;IAC1D,mBAAmB;IAInB,yDAAyD;IACzD,WAAW;CAGZ"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LLMCall — simplest concept: single LLM call, no tools, no loop.
|
|
3
|
+
*
|
|
4
|
+
* Flowchart: SystemPrompt → Messages → CallLLM → ParseResponse → Finalize
|
|
5
|
+
*
|
|
6
|
+
* Usage:
|
|
7
|
+
* const caller = LLMCall.create({ provider: mock([{ content: 'Hi!' }]) })
|
|
8
|
+
* .system('You are helpful.')
|
|
9
|
+
* .build();
|
|
10
|
+
* const result = await caller.run('Hello');
|
|
11
|
+
*/
|
|
12
|
+
import type { FlowChart as FlowChartType } from 'footprintjs';
|
|
13
|
+
import type { LLMProvider, Message } from '../types';
|
|
14
|
+
import type { ModelConfig } from '../models';
|
|
15
|
+
import type { AgentRecorder } from '../core';
|
|
16
|
+
export interface LLMCallOptions {
|
|
17
|
+
/** LLMProvider instance or ModelConfig from anthropic()/openai()/bedrock()/ollama(). */
|
|
18
|
+
readonly provider: LLMProvider | ModelConfig;
|
|
19
|
+
}
|
|
20
|
+
export declare class LLMCall {
|
|
21
|
+
private readonly provider;
|
|
22
|
+
private sysPrompt?;
|
|
23
|
+
private readonly recorders;
|
|
24
|
+
private enableStreaming;
|
|
25
|
+
private constructor();
|
|
26
|
+
static create(options: LLMCallOptions): LLMCall;
|
|
27
|
+
system(prompt: string): this;
|
|
28
|
+
streaming(enabled: boolean): this;
|
|
29
|
+
/** Attach an AgentRecorder to observe execution events. */
|
|
30
|
+
recorder(rec: AgentRecorder): this;
|
|
31
|
+
build(): LLMCallRunner;
|
|
32
|
+
}
|
|
33
|
+
export declare class LLMCallRunner {
|
|
34
|
+
private readonly provider;
|
|
35
|
+
private readonly sysPrompt?;
|
|
36
|
+
private readonly recorders;
|
|
37
|
+
private readonly streamingEnabled;
|
|
38
|
+
private lastExecutor?;
|
|
39
|
+
private lastSpec?;
|
|
40
|
+
constructor(provider: LLMProvider, sysPrompt?: string, recorders?: AgentRecorder[], streaming?: boolean);
|
|
41
|
+
/** Expose the internal flowChart for subflow composition. */
|
|
42
|
+
toFlowChart(): FlowChartType;
|
|
43
|
+
run(message: string, options?: {
|
|
44
|
+
signal?: AbortSignal;
|
|
45
|
+
timeoutMs?: number;
|
|
46
|
+
onToken?: (token: string) => void;
|
|
47
|
+
}): Promise<{
|
|
48
|
+
content: string;
|
|
49
|
+
messages: Message[];
|
|
50
|
+
}>;
|
|
51
|
+
private buildChart;
|
|
52
|
+
getSpec(): unknown;
|
|
53
|
+
getNarrative(): string[];
|
|
54
|
+
getSnapshot(): import("footprintjs").RuntimeSnapshot | undefined;
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=LLMCall.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LLMCall.d.ts","sourceRoot":"","sources":["../../../src/concepts/LLMCall.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAwC,MAAM,aAAa,CAAC;AAGpG,OAAO,KAAK,EAAE,WAAW,EAAe,OAAO,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAQ7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI7C,MAAM,WAAW,cAAc;IAC7B,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,CAAC;CAC9C;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IACvC,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuB;IACjD,OAAO,CAAC,eAAe,CAAS;IAEhC,OAAO;IAIP,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAI/C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK5B,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAKjC,2DAA2D;IAC3D,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAKlC,KAAK,IAAI,aAAa;CAGvB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAU;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAAU;gBAEf,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,GAAE,aAAa,EAAO,EAAE,SAAS,UAAQ;IAOzG,6DAA6D;IAC7D,WAAW,IAAI,aAAa;IAItB,GAAG,CACP,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,GACxF,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;KAAE,CAAC;IAiDpD,OAAO,CAAC,UAAU;IAsClB,OAAO,IAAI,OAAO;IAOlB,YAAY,IAAI,MAAM,EAAE;IAIxB,WAAW;CAGZ"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parallel — concurrent agent execution with fan-out/fan-in.
|
|
3
|
+
*
|
|
4
|
+
* Runs N agents in parallel, each as an isolated subflow. Merges results
|
|
5
|
+
* via LLM call (default) or custom function.
|
|
6
|
+
*
|
|
7
|
+
* Flowchart:
|
|
8
|
+
* Seed → [fork]
|
|
9
|
+
* ├── agent-A (isolated subflow)
|
|
10
|
+
* ├── agent-B (isolated subflow)
|
|
11
|
+
* └── agent-C (isolated subflow)
|
|
12
|
+
* Merge → Finalize
|
|
13
|
+
*
|
|
14
|
+
* Each branch gets its own ExecutionRuntime (isolated scope).
|
|
15
|
+
* Results flow back through outputMapper (delta pattern).
|
|
16
|
+
*
|
|
17
|
+
* Usage:
|
|
18
|
+
* const parallel = Parallel.create({ provider })
|
|
19
|
+
* .agent('research', researchAgent, 'Research the topic')
|
|
20
|
+
* .agent('writing', writingAgent, 'Draft content')
|
|
21
|
+
* .mergeWithLLM('Synthesize into a coherent report')
|
|
22
|
+
* .build();
|
|
23
|
+
* const result = await parallel.run('Write about AI safety');
|
|
24
|
+
*/
|
|
25
|
+
import type { LLMProvider, Message } from '../types';
|
|
26
|
+
import type { ModelConfig } from '../models';
|
|
27
|
+
import type { RunnerLike } from '../types/multiAgent';
|
|
28
|
+
import type { AgentRecorder } from '../core';
|
|
29
|
+
export interface ParallelOptions {
|
|
30
|
+
/** LLMProvider instance or ModelConfig from anthropic()/openai()/bedrock()/ollama(). */
|
|
31
|
+
readonly provider: LLMProvider | ModelConfig;
|
|
32
|
+
readonly name?: string;
|
|
33
|
+
}
|
|
34
|
+
interface BranchDef {
|
|
35
|
+
readonly id: string;
|
|
36
|
+
readonly description: string;
|
|
37
|
+
readonly runner: RunnerLike;
|
|
38
|
+
}
|
|
39
|
+
/** Result from a single parallel branch. */
|
|
40
|
+
export interface BranchResult {
|
|
41
|
+
readonly id: string;
|
|
42
|
+
readonly status: 'fulfilled' | 'rejected';
|
|
43
|
+
readonly content: string;
|
|
44
|
+
readonly error?: string;
|
|
45
|
+
}
|
|
46
|
+
export interface ParallelResult {
|
|
47
|
+
/** Final merged content. */
|
|
48
|
+
readonly content: string;
|
|
49
|
+
/** Per-branch results. */
|
|
50
|
+
readonly branches: readonly BranchResult[];
|
|
51
|
+
/** Full message history (if LLM merge was used). */
|
|
52
|
+
readonly messages: Message[];
|
|
53
|
+
}
|
|
54
|
+
export declare class Parallel {
|
|
55
|
+
private readonly provider;
|
|
56
|
+
private readonly parallelName;
|
|
57
|
+
private readonly branches;
|
|
58
|
+
private mergePrompt?;
|
|
59
|
+
private mergeFn?;
|
|
60
|
+
private readonly recorders;
|
|
61
|
+
private streamingEnabled;
|
|
62
|
+
private constructor();
|
|
63
|
+
static create(options: ParallelOptions): Parallel;
|
|
64
|
+
/** Add an agent branch to run in parallel. */
|
|
65
|
+
agent(id: string, runner: RunnerLike, description: string): this;
|
|
66
|
+
/**
|
|
67
|
+
* Merge results using an LLM call (default strategy).
|
|
68
|
+
* The LLM receives all branch results as context and generates a unified response.
|
|
69
|
+
*/
|
|
70
|
+
mergeWithLLM(prompt: string): this;
|
|
71
|
+
/**
|
|
72
|
+
* Merge results using a custom function (escape hatch for structured data).
|
|
73
|
+
*/
|
|
74
|
+
merge(fn: (results: Record<string, BranchResult>) => string): this;
|
|
75
|
+
streaming(enabled: boolean): this;
|
|
76
|
+
recorder(rec: AgentRecorder): this;
|
|
77
|
+
build(): ParallelRunner;
|
|
78
|
+
}
|
|
79
|
+
interface ParallelRunnerOptions {
|
|
80
|
+
readonly provider: LLMProvider;
|
|
81
|
+
readonly name: string;
|
|
82
|
+
readonly branches: readonly BranchDef[];
|
|
83
|
+
readonly mergePrompt?: string;
|
|
84
|
+
readonly mergeFn?: (results: Record<string, BranchResult>) => string;
|
|
85
|
+
readonly streaming: boolean;
|
|
86
|
+
readonly recorders: AgentRecorder[];
|
|
87
|
+
}
|
|
88
|
+
export declare class ParallelRunner {
|
|
89
|
+
private readonly opts;
|
|
90
|
+
private lastExecutor?;
|
|
91
|
+
private lastSpec?;
|
|
92
|
+
private readonly narrativeRenderer;
|
|
93
|
+
constructor(options: ParallelRunnerOptions);
|
|
94
|
+
get name(): string;
|
|
95
|
+
/** Build the parallel flowchart. */
|
|
96
|
+
private buildChart;
|
|
97
|
+
/** Build a single branch's flowchart. */
|
|
98
|
+
private buildBranchChart;
|
|
99
|
+
run(message: string, options?: {
|
|
100
|
+
signal?: AbortSignal;
|
|
101
|
+
timeoutMs?: number;
|
|
102
|
+
onToken?: (token: string) => void;
|
|
103
|
+
}): Promise<ParallelResult>;
|
|
104
|
+
getNarrative(): string[];
|
|
105
|
+
getNarrativeEntries(): import("footprintjs").CombinedNarrativeEntry[];
|
|
106
|
+
getSnapshot(): import("footprintjs").RuntimeSnapshot | undefined;
|
|
107
|
+
getSpec(): unknown;
|
|
108
|
+
}
|
|
109
|
+
export {};
|
|
110
|
+
//# sourceMappingURL=Parallel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Parallel.d.ts","sourceRoot":"","sources":["../../../src/concepts/Parallel.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RAG — Retrieve-Augment-Generate concept.
|
|
3
|
+
*
|
|
4
|
+
* Flowchart: Seed → Retrieve → AugmentPrompt → CallLLM → ParseResponse → Finalize
|
|
5
|
+
*
|
|
6
|
+
* Usage:
|
|
7
|
+
* const rag = RAG.create({ provider: mock([...]), retriever: mockRetriever([...]) })
|
|
8
|
+
* .system('You are helpful.')
|
|
9
|
+
* .topK(5)
|
|
10
|
+
* .build();
|
|
11
|
+
* const result = await rag.run('What is X?');
|
|
12
|
+
*/
|
|
13
|
+
import type { FlowChart as FlowChartType } from 'footprintjs';
|
|
14
|
+
import type { LLMProvider, RetrieverProvider, RetrieveOptions, RAGResult } from '../types';
|
|
15
|
+
import type { ModelConfig } from '../models';
|
|
16
|
+
import type { AgentRecorder } from '../core';
|
|
17
|
+
export interface RAGOptions {
|
|
18
|
+
/** LLMProvider instance or ModelConfig from anthropic()/openai()/bedrock()/ollama(). */
|
|
19
|
+
readonly provider: LLMProvider | ModelConfig;
|
|
20
|
+
readonly retriever: RetrieverProvider;
|
|
21
|
+
}
|
|
22
|
+
export declare class RAG {
|
|
23
|
+
private readonly provider;
|
|
24
|
+
private readonly retriever;
|
|
25
|
+
private sysPrompt?;
|
|
26
|
+
private retrieveOptions;
|
|
27
|
+
private readonly recorders;
|
|
28
|
+
private enableStreaming;
|
|
29
|
+
private constructor();
|
|
30
|
+
static create(options: RAGOptions): RAG;
|
|
31
|
+
/** Set system prompt. */
|
|
32
|
+
system(prompt: string): this;
|
|
33
|
+
/** Set number of chunks to retrieve. */
|
|
34
|
+
topK(n: number): this;
|
|
35
|
+
/** Set minimum relevance score threshold. */
|
|
36
|
+
minScore(score: number): this;
|
|
37
|
+
/** Enable token-by-token streaming for the LLM call. */
|
|
38
|
+
streaming(enabled: boolean): this;
|
|
39
|
+
/** Attach an AgentRecorder to observe execution events. */
|
|
40
|
+
recorder(rec: AgentRecorder): this;
|
|
41
|
+
/** Build the RAG pipeline and return a runner. */
|
|
42
|
+
build(): RAGRunner;
|
|
43
|
+
}
|
|
44
|
+
export declare class RAGRunner {
|
|
45
|
+
private readonly provider;
|
|
46
|
+
private readonly retriever;
|
|
47
|
+
private readonly sysPrompt?;
|
|
48
|
+
private readonly retrieveOptions;
|
|
49
|
+
private readonly recorders;
|
|
50
|
+
private lastExecutor?;
|
|
51
|
+
private lastSpec?;
|
|
52
|
+
private readonly streamingEnabled;
|
|
53
|
+
constructor(provider: LLMProvider, retriever: RetrieverProvider, sysPrompt: string | undefined, retrieveOptions: RetrieveOptions, recorders?: AgentRecorder[], streaming?: boolean);
|
|
54
|
+
/** Expose the internal flowChart for subflow composition. */
|
|
55
|
+
toFlowChart(): FlowChartType;
|
|
56
|
+
run(message: string, options?: {
|
|
57
|
+
signal?: AbortSignal;
|
|
58
|
+
timeoutMs?: number;
|
|
59
|
+
onToken?: (token: string) => void;
|
|
60
|
+
}): Promise<RAGResult>;
|
|
61
|
+
private buildChart;
|
|
62
|
+
/** Get the flowchart spec (stage graph metadata). */
|
|
63
|
+
getSpec(): unknown;
|
|
64
|
+
/** Get the narrative from the last run. */
|
|
65
|
+
getNarrative(): string[];
|
|
66
|
+
/** Get structured narrative entries from the last run. */
|
|
67
|
+
getNarrativeEntries(): import("footprintjs").CombinedNarrativeEntry[];
|
|
68
|
+
/** Get the full execution snapshot from the last run. */
|
|
69
|
+
getSnapshot(): import("footprintjs").RuntimeSnapshot | undefined;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=RAG.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RAG.d.ts","sourceRoot":"","sources":["../../../src/concepts/RAG.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,SAAS,IAAI,aAAa,EAAwC,MAAM,aAAa,CAAC;AAGpG,OAAO,KAAK,EACV,WAAW,EAEX,iBAAiB,EACjB,eAAe,EAGf,SAAS,EACV,MAAM,UAAU,CAAC;AAClB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAW7C,MAAM,WAAW,UAAU;IACzB,wFAAwF;IACxF,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC;CACvC;AAED,qBAAa,GAAG;IACd,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAuB;IACjD,OAAO,CAAC,eAAe,CAAS;IAEhC,OAAO;IAKP,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,GAAG,GAAG;IAIvC,yBAAyB;IACzB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK5B,wCAAwC;IACxC,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI;IAKrB,6CAA6C;IAC7C,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,wDAAwD;IACxD,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAKjC,2DAA2D;IAC3D,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,IAAI;IAKlC,kDAAkD;IAClD,KAAK,IAAI,SAAS;CAGnB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAc;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAClD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAkB;IAC5C,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,QAAQ,CAAC,CAAU;IAE3B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAU;gBAGzC,QAAQ,EAAE,WAAW,EACrB,SAAS,EAAE,iBAAiB,EAC5B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,eAAe,EAAE,eAAe,EAChC,SAAS,GAAE,aAAa,EAAO,EAC/B,SAAS,UAAQ;IAUnB,6DAA6D;IAC7D,WAAW,IAAI,aAAa;IAItB,GAAG,CACP,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;KAAE,GACxF,OAAO,CAAC,SAAS,CAAC;IAuDrB,OAAO,CAAC,UAAU;IAyClB,qDAAqD;IACrD,OAAO,IAAI,OAAO;IAOlB,2CAA2C;IAC3C,YAAY,IAAI,MAAM,EAAE;IAIxB,0DAA0D;IAC1D,mBAAmB;IAInB,yDAAyD;IACzD,WAAW;CAGZ"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Swarm — multi-agent delegation via buildAgentLoop + buildSwarmRouting.
|
|
3
|
+
*
|
|
4
|
+
* An orchestrator LLM selects which specialist to invoke. Each specialist
|
|
5
|
+
* is mounted as a **lazy subflow** — visible in BTS with drill-down.
|
|
6
|
+
*
|
|
7
|
+
* Swarm IS an Agent with a different routing strategy:
|
|
8
|
+
* Agent: ... → RouteResponse{tool-calls | final}
|
|
9
|
+
* Swarm: ... → RouteSpecialist{specialist-A | specialist-B | swarm-tools | final}
|
|
10
|
+
*
|
|
11
|
+
* Everything upstream (SystemPrompt, Messages, Tools, AssemblePrompt,
|
|
12
|
+
* CallLLM, ParseResponse) is the same Agent loop infrastructure.
|
|
13
|
+
*
|
|
14
|
+
* > "Every feature you add to Agent automatically works in Swarm."
|
|
15
|
+
*/
|
|
16
|
+
import type { LLMProvider } from '../types/llm';
|
|
17
|
+
import type { ModelConfig } from '../models';
|
|
18
|
+
import type { ToolDefinition } from '../types/tools';
|
|
19
|
+
import type { RunnerLike, TraversalResult } from '../types/multiAgent';
|
|
20
|
+
import type { AgentRecorder } from '../core';
|
|
21
|
+
import type { FlowChart as FlowChartType } from 'footprintjs';
|
|
22
|
+
import type { SwarmSpecialist } from '../lib/swarm/buildSwarmRouting';
|
|
23
|
+
import type { Message } from '../types/messages';
|
|
24
|
+
export interface SwarmOptions {
|
|
25
|
+
/** LLMProvider instance or ModelConfig from anthropic()/openai()/bedrock()/ollama(). */
|
|
26
|
+
readonly provider: LLMProvider | ModelConfig;
|
|
27
|
+
readonly name?: string;
|
|
28
|
+
}
|
|
29
|
+
export declare class Swarm {
|
|
30
|
+
private readonly provider;
|
|
31
|
+
private readonly swarmName;
|
|
32
|
+
private systemPromptText?;
|
|
33
|
+
private readonly specialists;
|
|
34
|
+
private readonly extraTools;
|
|
35
|
+
private readonly recorders;
|
|
36
|
+
private maxIter;
|
|
37
|
+
private streamingEnabled;
|
|
38
|
+
private constructor();
|
|
39
|
+
static create(options: SwarmOptions): Swarm;
|
|
40
|
+
system(prompt: string): this;
|
|
41
|
+
/**
|
|
42
|
+
* Register a specialist agent.
|
|
43
|
+
*
|
|
44
|
+
* Each specialist is mounted as a **lazy subflow** — only built when the
|
|
45
|
+
* orchestrator LLM selects it. Visible in BTS with drill-down.
|
|
46
|
+
*/
|
|
47
|
+
specialist(id: string, description: string, runner: RunnerLike): this;
|
|
48
|
+
/** Register a non-specialist tool (calculator, search, etc.) available to the orchestrator. */
|
|
49
|
+
tool(toolDef: ToolDefinition): this;
|
|
50
|
+
maxIterations(n: number): this;
|
|
51
|
+
streaming(enabled: boolean): this;
|
|
52
|
+
recorder(rec: AgentRecorder): this;
|
|
53
|
+
build(): SwarmRunner;
|
|
54
|
+
}
|
|
55
|
+
export declare class SwarmRunner {
|
|
56
|
+
private readonly provider;
|
|
57
|
+
readonly name: string;
|
|
58
|
+
private readonly systemPromptText?;
|
|
59
|
+
private readonly specialists;
|
|
60
|
+
private readonly extraTools;
|
|
61
|
+
private readonly maxIter;
|
|
62
|
+
private readonly streamingEnabled;
|
|
63
|
+
readonly recorders: AgentRecorder[];
|
|
64
|
+
private conversationHistory;
|
|
65
|
+
private lastExecutor?;
|
|
66
|
+
private lastSpec?;
|
|
67
|
+
private readonly narrativeRenderer;
|
|
68
|
+
/** Cached routing config — constructed once, reused across runs. */
|
|
69
|
+
private readonly routingConfig;
|
|
70
|
+
/** Cached tool descriptions — constructed once, reused across runs. */
|
|
71
|
+
private readonly toolDescs;
|
|
72
|
+
/** Cached system prompt — constructed once, reused across runs. */
|
|
73
|
+
private readonly fullSystemPrompt;
|
|
74
|
+
constructor(provider: LLMProvider, name: string, systemPromptText: string | undefined, specialists: readonly SwarmSpecialist[], extraTools: readonly ToolDefinition[], maxIter: number, streaming: boolean, recorders?: AgentRecorder[]);
|
|
75
|
+
/** Build the system prompt with specialist descriptions appended. */
|
|
76
|
+
private buildSystemPrompt;
|
|
77
|
+
/** Build tool descriptions for specialist + extra tools. */
|
|
78
|
+
private buildToolDescriptions;
|
|
79
|
+
/** Build AgentLoopConfig — Swarm uses the same loop as Agent with custom routing. */
|
|
80
|
+
private buildConfig;
|
|
81
|
+
/** Expose the swarm's internal flowChart for subflow composition. */
|
|
82
|
+
toFlowChart(): FlowChartType;
|
|
83
|
+
private buildLoop;
|
|
84
|
+
run(message: string, options?: {
|
|
85
|
+
signal?: AbortSignal;
|
|
86
|
+
timeoutMs?: number;
|
|
87
|
+
onToken?: (token: string) => void;
|
|
88
|
+
}): Promise<TraversalResult>;
|
|
89
|
+
/** Get conversation history (for multi-turn). */
|
|
90
|
+
getMessages(): Message[];
|
|
91
|
+
/** Reset conversation state for a fresh conversation. */
|
|
92
|
+
resetConversation(): void;
|
|
93
|
+
getNarrative(): string[];
|
|
94
|
+
getNarrativeEntries(): import("footprintjs").CombinedNarrativeEntry[];
|
|
95
|
+
getSnapshot(): import("footprintjs").RuntimeSnapshot | undefined;
|
|
96
|
+
getSpec(): unknown;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=Swarm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Swarm.d.ts","sourceRoot":"","sources":["../../../src/concepts/Swarm.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { Agent, AgentRunner } from '../lib/concepts';
|
|
2
|
+
export type { AgentOptions } from '../lib/concepts';
|
|
3
|
+
export { LLMCall, LLMCallRunner } from './LLMCall';
|
|
4
|
+
export type { LLMCallOptions } from './LLMCall';
|
|
5
|
+
export { RAG, RAGRunner } from './RAG';
|
|
6
|
+
export type { RAGOptions } from './RAG';
|
|
7
|
+
export { FlowChart, FlowChartRunner } from './FlowChart';
|
|
8
|
+
export { Swarm, SwarmRunner } from './Swarm';
|
|
9
|
+
export type { SwarmOptions } from './Swarm';
|
|
10
|
+
export { Parallel, ParallelRunner } from './Parallel';
|
|
11
|
+
export type { ParallelOptions, ParallelResult, BranchResult } from './Parallel';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/concepts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACrD,YAAY,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACvC,YAAY,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Annotates a pipeline spec tree with semantic icon hints for visualization.
|
|
3
|
+
* Icons are matched by stage ID — unknown IDs are left without an icon.
|
|
4
|
+
* Mutates the spec in-place and returns it for chaining.
|
|
5
|
+
*/
|
|
6
|
+
export interface SpecLike {
|
|
7
|
+
id?: string;
|
|
8
|
+
icon?: string;
|
|
9
|
+
next?: SpecLike;
|
|
10
|
+
children?: SpecLike[];
|
|
11
|
+
subflowStructure?: SpecLike;
|
|
12
|
+
}
|
|
13
|
+
export declare function annotateSpecIcons<T extends SpecLike>(spec: T, extraIcons?: Record<string, string>): T;
|
|
14
|
+
//# sourceMappingURL=specIcons.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"specIcons.d.ts","sourceRoot":"","sources":["../../../src/concepts/specIcons.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA0BH,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,gBAAgB,CAAC,EAAE,QAAQ,CAAC;CAC7B;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,QAAQ,EAClD,IAAI,EAAE,CAAC,EACP,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,CAAC,CAIH"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Multi-modal content blocks for LLM messages.
|
|
4
|
+
* Provider-agnostic — adapters translate to/from provider formats (Anthropic, OpenAI, etc.).
|
|
5
|
+
*
|
|
6
|
+
* Design: discriminated union on `type` field, like Anthropic's API.
|
|
7
|
+
* Every message's `content` is `string | ContentBlock[]` — string for backward compat,
|
|
8
|
+
* ContentBlock[] for multi-modal (images, tool use, structured results).
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.getToolUseBlocks = exports.hasToolUseBlocks = exports.contentLength = exports.getTextContent = exports.blockToToolCall = exports.toolCallToBlock = exports.toolResultBlock = exports.toolUseBlock = exports.urlImage = exports.base64Image = exports.imageBlock = exports.textBlock = void 0;
|
|
12
|
+
// ── Factory Functions ───────────────────────────────────────
|
|
13
|
+
function textBlock(text) {
|
|
14
|
+
return { type: 'text', text };
|
|
15
|
+
}
|
|
16
|
+
exports.textBlock = textBlock;
|
|
17
|
+
function imageBlock(source) {
|
|
18
|
+
return { type: 'image', source };
|
|
19
|
+
}
|
|
20
|
+
exports.imageBlock = imageBlock;
|
|
21
|
+
function base64Image(mediaType, data) {
|
|
22
|
+
return { type: 'image', source: { type: 'base64', mediaType, data } };
|
|
23
|
+
}
|
|
24
|
+
exports.base64Image = base64Image;
|
|
25
|
+
function urlImage(url) {
|
|
26
|
+
return { type: 'image', source: { type: 'url', url } };
|
|
27
|
+
}
|
|
28
|
+
exports.urlImage = urlImage;
|
|
29
|
+
function toolUseBlock(id, name, input) {
|
|
30
|
+
return { type: 'tool_use', id, name, input };
|
|
31
|
+
}
|
|
32
|
+
exports.toolUseBlock = toolUseBlock;
|
|
33
|
+
function toolResultBlock(toolUseId, content, isError) {
|
|
34
|
+
return { type: 'tool_result', toolUseId, content, isError };
|
|
35
|
+
}
|
|
36
|
+
exports.toolResultBlock = toolResultBlock;
|
|
37
|
+
// ── ToolCall ↔ ToolUseBlock Conversion ──────────────────────
|
|
38
|
+
/**
|
|
39
|
+
* Convert a legacy ToolCall (from AssistantMessage.toolCalls) to a ToolUseBlock.
|
|
40
|
+
* Bridges the two representations: ToolCall uses `arguments`, ToolUseBlock uses `input`.
|
|
41
|
+
*/
|
|
42
|
+
function toolCallToBlock(call) {
|
|
43
|
+
return { type: 'tool_use', id: call.id, name: call.name, input: call.arguments };
|
|
44
|
+
}
|
|
45
|
+
exports.toolCallToBlock = toolCallToBlock;
|
|
46
|
+
/**
|
|
47
|
+
* Convert a ToolUseBlock to a legacy ToolCall format.
|
|
48
|
+
* Bridges the two representations: ToolUseBlock uses `input`, ToolCall uses `arguments`.
|
|
49
|
+
*/
|
|
50
|
+
function blockToToolCall(block) {
|
|
51
|
+
return { id: block.id, name: block.name, arguments: block.input };
|
|
52
|
+
}
|
|
53
|
+
exports.blockToToolCall = blockToToolCall;
|
|
54
|
+
// ── Content Helpers ─────────────────────────────────────────
|
|
55
|
+
/**
|
|
56
|
+
* Extract text from message content, regardless of form.
|
|
57
|
+
* - string → returned as-is
|
|
58
|
+
* - ContentBlock[] → concatenates all TextBlock.text values
|
|
59
|
+
*
|
|
60
|
+
* Use this instead of `msg.content.length` or string operations on content.
|
|
61
|
+
*/
|
|
62
|
+
function getTextContent(content) {
|
|
63
|
+
if (typeof content === 'string')
|
|
64
|
+
return content;
|
|
65
|
+
return content
|
|
66
|
+
.filter((block) => block.type === 'text')
|
|
67
|
+
.map((block) => block.text)
|
|
68
|
+
.join('');
|
|
69
|
+
}
|
|
70
|
+
exports.getTextContent = getTextContent;
|
|
71
|
+
/**
|
|
72
|
+
* Get the character length of message content (for budget calculations).
|
|
73
|
+
* Handles both string and ContentBlock[] forms.
|
|
74
|
+
*/
|
|
75
|
+
function contentLength(content) {
|
|
76
|
+
return getTextContent(content).length;
|
|
77
|
+
}
|
|
78
|
+
exports.contentLength = contentLength;
|
|
79
|
+
/**
|
|
80
|
+
* Check if content contains any tool use blocks.
|
|
81
|
+
*/
|
|
82
|
+
function hasToolUseBlocks(content) {
|
|
83
|
+
if (typeof content === 'string')
|
|
84
|
+
return false;
|
|
85
|
+
return content.some((block) => block.type === 'tool_use');
|
|
86
|
+
}
|
|
87
|
+
exports.hasToolUseBlocks = hasToolUseBlocks;
|
|
88
|
+
/**
|
|
89
|
+
* Extract tool use blocks from content.
|
|
90
|
+
*/
|
|
91
|
+
function getToolUseBlocks(content) {
|
|
92
|
+
if (typeof content === 'string')
|
|
93
|
+
return [];
|
|
94
|
+
return content.filter((block) => block.type === 'tool_use');
|
|
95
|
+
}
|
|
96
|
+
exports.getToolUseBlocks = getToolUseBlocks;
|
|
97
|
+
//# sourceMappingURL=content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../src/types/content.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AgentLoopConfig — everything the core loop needs to run.
|
|
3
|
+
* Assembled by builders (Agent.create(), etc.).
|
|
4
|
+
*/
|
|
5
|
+
import type { LLMProvider } from '../types/llm';
|
|
6
|
+
import type { PromptProvider, MessageStrategy, ToolProvider } from './providers';
|
|
7
|
+
import type { AgentRecorder } from './recorders';
|
|
8
|
+
export interface AgentLoopConfig {
|
|
9
|
+
/** Resolves system prompt each turn. */
|
|
10
|
+
readonly promptProvider: PromptProvider;
|
|
11
|
+
/** Prepares messages for LLM. */
|
|
12
|
+
readonly messageStrategy: MessageStrategy;
|
|
13
|
+
/** Resolves and executes tools. */
|
|
14
|
+
readonly toolProvider: ToolProvider;
|
|
15
|
+
/** LLM provider (chat API). */
|
|
16
|
+
readonly llmProvider: LLMProvider;
|
|
17
|
+
/** Max tool-loop iterations per turn. */
|
|
18
|
+
readonly maxIterations: number;
|
|
19
|
+
/** Passive observers. */
|
|
20
|
+
readonly recorders: AgentRecorder[];
|
|
21
|
+
/** Agent name (for narrative/debugging). */
|
|
22
|
+
readonly name: string;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/core/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,MAAM,WAAW,eAAe;IAC9B,wCAAwC;IACxC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IACxC,iCAAiC;IACjC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,mCAAmC;IACnC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,+BAA+B;IAC/B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,yCAAyC;IACzC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,yBAAyB;IACzB,QAAQ,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC;IACpC,4CAA4C;IAC5C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* core/ — Agent loop interfaces and types.
|
|
3
|
+
*
|
|
4
|
+
* The "traversal engine" of agentfootprint. Defines the provider
|
|
5
|
+
* and recorder interfaces that everything else plugs into.
|
|
6
|
+
*
|
|
7
|
+
* Three files:
|
|
8
|
+
* providers.ts — active strategies (shape behavior)
|
|
9
|
+
* recorders.ts — passive observers (watch behavior)
|
|
10
|
+
* config.ts — loop configuration
|
|
11
|
+
*/
|
|
12
|
+
export type { SlotDecision, PromptProvider, MessageStrategy, ToolProvider, PromptContext, MessageContext, ToolContext, ToolExecutionResult, } from './providers';
|
|
13
|
+
export type { AgentRecorder, AgentPhase, TurnStartEvent, LLMCallEvent, ToolCallEvent, TurnCompleteEvent, AgentErrorEvent, } from './recorders';
|
|
14
|
+
export type { AgentLoopConfig } from './config';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,YAAY,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EACf,YAAY,EACZ,aAAa,EACb,cAAc,EACd,WAAW,EACX,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAGrB,YAAY,EACV,aAAa,EACb,UAAU,EACV,cAAc,EACd,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,eAAe,GAChB,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC"}
|