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,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Instruction injection — appends rendered instructions to tool result content.
|
|
4
|
+
*
|
|
5
|
+
* This is the bridge between the evaluator (which resolves instructions)
|
|
6
|
+
* and the tool result message (which the LLM reads). The injected text
|
|
7
|
+
* lands in the recency window — the last tokens before LLM generation.
|
|
8
|
+
*
|
|
9
|
+
* The function is intentionally simple: evaluate → render → append.
|
|
10
|
+
* Side effects (recording, logging) are handled by callers.
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.processInstructions = void 0;
|
|
14
|
+
const evaluator_1 = require("./evaluator");
|
|
15
|
+
const template_1 = require("./template");
|
|
16
|
+
/**
|
|
17
|
+
* Process instructions for a tool result and return augmented content.
|
|
18
|
+
*
|
|
19
|
+
* Full pipeline: evaluate predicates → merge runtime → render → append.
|
|
20
|
+
*
|
|
21
|
+
* @param originalContent - The tool result content string
|
|
22
|
+
* @param buildTimeInstructions - Instructions from tool definition
|
|
23
|
+
* @param ctx - Full execution context (content, error, latency, input, toolId)
|
|
24
|
+
* @param runtime - Runtime instructions/followUps from handler return
|
|
25
|
+
* @param template - Optional custom template for formatting
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* const result = processInstructions(
|
|
30
|
+
* toolResult.content,
|
|
31
|
+
* tool.instructions,
|
|
32
|
+
* { content: parsed, error: undefined, latencyMs: 42, input, toolId: tool.id },
|
|
33
|
+
* toolResult.instructions ? { instructions: toolResult.instructions } : undefined,
|
|
34
|
+
* );
|
|
35
|
+
*
|
|
36
|
+
* // result.content has instructions appended
|
|
37
|
+
* // result.fired lists which instructions matched
|
|
38
|
+
* // result.injected is true if any text was added
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
function processInstructions(originalContent, buildTimeInstructions, ctx, runtime, template) {
|
|
42
|
+
// 1. Evaluate build-time instructions
|
|
43
|
+
const buildTime = (0, evaluator_1.evaluateInstructions)(buildTimeInstructions, ctx);
|
|
44
|
+
// 2. Merge with runtime instructions
|
|
45
|
+
const all = (0, evaluator_1.mergeRuntimeInstructions)(buildTime, runtime);
|
|
46
|
+
if (all.length === 0) {
|
|
47
|
+
return { content: originalContent, fired: [], injected: false };
|
|
48
|
+
}
|
|
49
|
+
// 3. Render to text
|
|
50
|
+
const text = (0, template_1.renderInstructions)(all, template);
|
|
51
|
+
if (!text) {
|
|
52
|
+
return { content: originalContent, fired: all, injected: false };
|
|
53
|
+
}
|
|
54
|
+
// 4. Append to tool result content
|
|
55
|
+
const augmented = originalContent + '\n\n' + text;
|
|
56
|
+
return { content: augmented, fired: all, injected: true };
|
|
57
|
+
}
|
|
58
|
+
exports.processInstructions = processInstructions;
|
|
59
|
+
//# sourceMappingURL=inject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inject.js","sourceRoot":"","sources":["../../../src/lib/instructions/inject.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAKH,2CAA6E;AAC7E,yCAAgD;AAgBhD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,SAAgB,mBAAmB,CACjC,eAAuB,EACvB,qBAA4D,EAC5D,GAAuB,EACvB,OAGC,EACD,QAA8B;IAE9B,sCAAsC;IACtC,MAAM,SAAS,GAAG,IAAA,gCAAoB,EAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IAEnE,qCAAqC;IACrC,MAAM,GAAG,GAAG,IAAA,oCAAwB,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAEzD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAClE,CAAC;IAED,oBAAoB;IACpB,MAAM,IAAI,GAAG,IAAA,6BAAkB,EAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAE/C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACnE,CAAC;IAED,mCAAmC;IACnC,MAAM,SAAS,GAAG,eAAe,GAAG,MAAM,GAAG,IAAI,CAAC;IAClD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5D,CAAC;AA9BD,kDA8BC"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* previewInstructions — dry-run showing what gets injected for a mock tool result.
|
|
4
|
+
*
|
|
5
|
+
* Invaluable for debugging instruction behavior during development and for
|
|
6
|
+
* generating documentation of tool behavior.
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```typescript
|
|
10
|
+
* const preview = previewInstructions(
|
|
11
|
+
* orderTool.instructions,
|
|
12
|
+
* { content: { status: 'cancelled', trackingId: 'TRK-1' }, toolId: 'check_order' },
|
|
13
|
+
* );
|
|
14
|
+
*
|
|
15
|
+
* console.log(preview);
|
|
16
|
+
* // {
|
|
17
|
+
* // fired: [{ id: 'empathy', text: '...', safety: false }, ...],
|
|
18
|
+
* // injectedText: '[INSTRUCTION] Be empathetic...\n\n[AVAILABLE ACTION]...',
|
|
19
|
+
* // estimatedTokens: 47,
|
|
20
|
+
* // followUps: [{ toolId: 'track_package', params: { trackingId: 'TRK-1' } }],
|
|
21
|
+
* // }
|
|
22
|
+
* ```
|
|
23
|
+
*/
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.previewInstructions = void 0;
|
|
26
|
+
const evaluator_1 = require("./evaluator");
|
|
27
|
+
const template_1 = require("./template");
|
|
28
|
+
// ── Preview Function ────────────────────────────────────────
|
|
29
|
+
/**
|
|
30
|
+
* Preview which instructions would fire for a given mock tool result.
|
|
31
|
+
*
|
|
32
|
+
* Does NOT run the agent — purely evaluates instructions against the mock context.
|
|
33
|
+
* Use for debugging, testing, and generating tool behavior documentation.
|
|
34
|
+
*
|
|
35
|
+
* @param instructions - The tool's instruction array (or overridden version)
|
|
36
|
+
* @param context - Mock tool result context
|
|
37
|
+
* @param options - Optional: overrides to apply, custom template
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* // Basic preview
|
|
42
|
+
* const preview = previewInstructions(tool.instructions, {
|
|
43
|
+
* content: { status: 'denied', traceId: 'tr_1' },
|
|
44
|
+
* toolId: 'evaluate_loan',
|
|
45
|
+
* });
|
|
46
|
+
*
|
|
47
|
+
* // With overrides applied
|
|
48
|
+
* const preview = previewInstructions(tool.instructions, ctx, {
|
|
49
|
+
* overrides: { suppress: ['low-priority'] },
|
|
50
|
+
* });
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
function previewInstructions(instructions, context, options) {
|
|
54
|
+
// Apply overrides if provided
|
|
55
|
+
let effectiveInstructions = instructions;
|
|
56
|
+
if (options?.overrides && instructions) {
|
|
57
|
+
effectiveInstructions = (0, evaluator_1.applyInstructionOverrides)(instructions, options.overrides);
|
|
58
|
+
}
|
|
59
|
+
// Build full InstructionContext from preview context
|
|
60
|
+
const ctx = {
|
|
61
|
+
content: context.content,
|
|
62
|
+
error: context.error,
|
|
63
|
+
latencyMs: context.latencyMs ?? 0,
|
|
64
|
+
input: context.input ?? {},
|
|
65
|
+
toolId: context.toolId,
|
|
66
|
+
};
|
|
67
|
+
// Evaluate
|
|
68
|
+
const fired = (0, evaluator_1.evaluateInstructions)(effectiveInstructions, ctx);
|
|
69
|
+
// Render
|
|
70
|
+
const injectedText = (0, template_1.renderInstructions)(fired, options?.template);
|
|
71
|
+
// Extract follow-ups
|
|
72
|
+
const followUps = fired
|
|
73
|
+
.filter((f) => f.resolvedFollowUp)
|
|
74
|
+
.map((f) => f.resolvedFollowUp);
|
|
75
|
+
// Compute skipped IDs
|
|
76
|
+
const firedIds = fired.map((f) => f.id);
|
|
77
|
+
const firedSet = new Set(firedIds);
|
|
78
|
+
const allIds = (effectiveInstructions ?? []).map((i) => i.id);
|
|
79
|
+
const skippedIds = allIds.filter((id) => !firedSet.has(id));
|
|
80
|
+
// Rough token estimate
|
|
81
|
+
const estimatedTokens = injectedText ? Math.ceil(injectedText.length / 4) : 0;
|
|
82
|
+
return {
|
|
83
|
+
fired,
|
|
84
|
+
injectedText,
|
|
85
|
+
estimatedTokens,
|
|
86
|
+
followUps,
|
|
87
|
+
firedIds,
|
|
88
|
+
skippedIds,
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
exports.previewInstructions = previewInstructions;
|
|
92
|
+
//# sourceMappingURL=preview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/lib/instructions/preview.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAKH,2CAA8E;AAC9E,yCAAgD;AAkChD,+DAA+D;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,mBAAmB,CACjC,YAAmD,EACnD,OAAuB,EACvB,OAGC;IAED,8BAA8B;IAC9B,IAAI,qBAAqB,GAAG,YAAY,CAAC;IACzC,IAAI,OAAO,EAAE,SAAS,IAAI,YAAY,EAAE,CAAC;QACvC,qBAAqB,GAAG,IAAA,qCAAyB,EAAC,YAAY,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACrF,CAAC;IAED,qDAAqD;IACrD,MAAM,GAAG,GAAuB;QAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC;QACjC,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;QAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC;IAEF,WAAW;IACX,MAAM,KAAK,GAAG,IAAA,gCAAoB,EAAC,qBAAqB,EAAE,GAAG,CAAC,CAAC;IAE/D,SAAS;IACT,MAAM,YAAY,GAAG,IAAA,6BAAkB,EAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAElE,qBAAqB;IACrB,MAAM,SAAS,GAAG,KAAK;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;SACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAiB,CAAC,CAAC;IAEnC,sBAAsB;IACtB,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAE5D,uBAAuB;IACvB,MAAM,eAAe,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9E,OAAO;QACL,KAAK;QACL,YAAY;QACZ,eAAe;QACf,SAAS;QACT,QAAQ;QACR,UAAU;KACX,CAAC;AACJ,CAAC;AAnDD,kDAmDC"}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* strictFollowUp — auto-execute follow-ups when condition matches user message.
|
|
4
|
+
*
|
|
5
|
+
* When a tool's follow-up binding has `strict: true`, the framework stores it
|
|
6
|
+
* as a pending follow-up. On the next user message, the condition is checked:
|
|
7
|
+
* - If matched: framework auto-executes the tool with pre-resolved params,
|
|
8
|
+
* bypassing the LLM for tool call construction. Zero ID corruption risk.
|
|
9
|
+
* - If not matched: pending follow-up is cleared, LLM proceeds normally.
|
|
10
|
+
*
|
|
11
|
+
* The LLM is still used to interpret the follow-up tool's result — it's only
|
|
12
|
+
* bypassed for the mechanical "construct the tool call" step.
|
|
13
|
+
*
|
|
14
|
+
* Condition matching uses a keyword-based matcher by default. Custom matchers
|
|
15
|
+
* can be provided per follow-up binding.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.PendingFollowUpManager = exports.defaultConditionMatcher = void 0;
|
|
19
|
+
// ── Condition Matcher ───────────────────────────────────────────────────
|
|
20
|
+
/**
|
|
21
|
+
* Default keyword matcher — extracts intent keywords from the condition string
|
|
22
|
+
* and checks if the user message contains any of them.
|
|
23
|
+
*
|
|
24
|
+
* The condition is a natural language string like "User asks why or wants details".
|
|
25
|
+
* The matcher extracts content words and checks for overlap with the user message.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* defaultMatcher('User asks why or wants details', 'Why was I denied?')
|
|
30
|
+
* // → true (matches "why")
|
|
31
|
+
*
|
|
32
|
+
* defaultMatcher('User asks why or wants details', 'What is the weather?')
|
|
33
|
+
* // → false (no keyword overlap)
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
function defaultConditionMatcher(condition, userMessage) {
|
|
37
|
+
// Extract meaningful words from condition (skip stop words)
|
|
38
|
+
const stopWords = new Set([
|
|
39
|
+
'the', 'a', 'an', 'is', 'are', 'was', 'were', 'be', 'been', 'being',
|
|
40
|
+
'or', 'and', 'but', 'if', 'of', 'at', 'by', 'for', 'with', 'to',
|
|
41
|
+
'in', 'on', 'it', 'its', 'this', 'that', 'from', 'as', 'into',
|
|
42
|
+
'user', 'asks', 'wants', 'about', 'more', 'any', 'some',
|
|
43
|
+
]);
|
|
44
|
+
const conditionWords = condition
|
|
45
|
+
.toLowerCase()
|
|
46
|
+
.replace(/[^a-z0-9\s]/g, '')
|
|
47
|
+
.split(/\s+/)
|
|
48
|
+
.filter((w) => w.length > 2 && !stopWords.has(w));
|
|
49
|
+
if (conditionWords.length === 0)
|
|
50
|
+
return false;
|
|
51
|
+
const messageLower = userMessage.toLowerCase();
|
|
52
|
+
const messageWords = new Set(messageLower
|
|
53
|
+
.replace(/[^a-z0-9\s]/g, '')
|
|
54
|
+
.split(/\s+/)
|
|
55
|
+
.filter((w) => w.length > 2));
|
|
56
|
+
// Check if any condition keyword appears as an exact word in the message.
|
|
57
|
+
// For fuzzy/stem matching, use a custom matcher function.
|
|
58
|
+
return conditionWords.some((word) => messageWords.has(word));
|
|
59
|
+
}
|
|
60
|
+
exports.defaultConditionMatcher = defaultConditionMatcher;
|
|
61
|
+
/**
|
|
62
|
+
* Manages pending strict follow-ups between agent loop iterations.
|
|
63
|
+
*
|
|
64
|
+
* After tool execution, if any strict follow-up fired, it's stored here.
|
|
65
|
+
* Before the next LLM call, the user's message is checked against pending
|
|
66
|
+
* follow-ups. If matched, the follow-up is consumed and returned for
|
|
67
|
+
* auto-execution.
|
|
68
|
+
*
|
|
69
|
+
* @example
|
|
70
|
+
* ```typescript
|
|
71
|
+
* const manager = new PendingFollowUpManager();
|
|
72
|
+
*
|
|
73
|
+
* // After tool execution with strict follow-up
|
|
74
|
+
* manager.setPending({
|
|
75
|
+
* followUp: { toolId: 'get_trace', params: { traceId: 'tr_1' }, ... },
|
|
76
|
+
* sourceToolId: 'evaluate_loan',
|
|
77
|
+
* });
|
|
78
|
+
*
|
|
79
|
+
* // Before next LLM call — check user message
|
|
80
|
+
* const matched = manager.checkAndConsume('Why was I denied?');
|
|
81
|
+
* if (matched) {
|
|
82
|
+
* // Auto-execute get_trace({ traceId: 'tr_1' }) — skip LLM
|
|
83
|
+
* }
|
|
84
|
+
* ```
|
|
85
|
+
*/
|
|
86
|
+
class PendingFollowUpManager {
|
|
87
|
+
pending;
|
|
88
|
+
/** Store a strict follow-up for the next user message check. */
|
|
89
|
+
setPending(followUp) {
|
|
90
|
+
this.pending = followUp;
|
|
91
|
+
}
|
|
92
|
+
/** Check if there's a pending follow-up. */
|
|
93
|
+
hasPending() {
|
|
94
|
+
return !!this.pending;
|
|
95
|
+
}
|
|
96
|
+
/** Get the pending follow-up without consuming it. */
|
|
97
|
+
getPending() {
|
|
98
|
+
return this.pending;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Check user message against pending follow-up condition.
|
|
102
|
+
* If matched, consumes and returns the follow-up. If not matched, clears it.
|
|
103
|
+
*
|
|
104
|
+
* @returns The matched follow-up for auto-execution, or undefined.
|
|
105
|
+
*/
|
|
106
|
+
checkAndConsume(userMessage) {
|
|
107
|
+
if (!this.pending)
|
|
108
|
+
return undefined;
|
|
109
|
+
const pending = this.pending;
|
|
110
|
+
this.pending = undefined; // Always consume — one-shot
|
|
111
|
+
// Use custom matcher if provided, otherwise default keyword matcher
|
|
112
|
+
let matched;
|
|
113
|
+
try {
|
|
114
|
+
matched = pending.matcher
|
|
115
|
+
? pending.matcher(userMessage)
|
|
116
|
+
: defaultConditionMatcher(pending.followUp.condition, userMessage);
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
// Broken matcher should not crash the agent — fail-safe: skip the follow-up
|
|
120
|
+
return undefined;
|
|
121
|
+
}
|
|
122
|
+
return matched ? pending : undefined;
|
|
123
|
+
}
|
|
124
|
+
/** Clear any pending follow-up. */
|
|
125
|
+
clear() {
|
|
126
|
+
this.pending = undefined;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
exports.PendingFollowUpManager = PendingFollowUpManager;
|
|
130
|
+
//# sourceMappingURL=strictFollowUp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"strictFollowUp.js","sourceRoot":"","sources":["../../../src/lib/instructions/strictFollowUp.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAIH,2EAA2E;AAE3E;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,uBAAuB,CAAC,SAAiB,EAAE,WAAmB;IAC5E,4DAA4D;IAC5D,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;QACxB,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO;QACnE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI;QAC/D,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;QAC7D,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;KACxD,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,SAAS;SAC7B,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAE9C,MAAM,YAAY,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;IAE/C,MAAM,YAAY,GAAG,IAAI,GAAG,CAC1B,YAAY;SACT,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;SAC3B,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAC/B,CAAC;IAEF,0EAA0E;IAC1E,0DAA0D;IAC1D,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/D,CAAC;AA7BD,0DA6BC;AAgBD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAa,sBAAsB;IACzB,OAAO,CAAoC;IAEnD,gEAAgE;IAChE,UAAU,CAAC,QAA+B;QACxC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC1B,CAAC;IAED,4CAA4C;IAC5C,UAAU;QACR,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,sDAAsD;IACtD,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,WAAmB;QACjC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAEpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC,4BAA4B;QAEtD,oEAAoE;QACpE,IAAI,OAAgB,CAAC;QACrB,IAAI,CAAC;YACH,OAAO,GAAG,OAAO,CAAC,OAAO;gBACvB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;gBAC9B,CAAC,CAAC,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACvE,CAAC;QAAC,MAAM,CAAC;YACP,4EAA4E;YAC5E,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,mCAAmC;IACnC,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3B,CAAC;CACF;AAhDD,wDAgDC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* InstructionTemplate — generates LLM-facing text from resolved instructions.
|
|
4
|
+
*
|
|
5
|
+
* The template controls HOW instructions appear in the recency window.
|
|
6
|
+
* The developer writes structured data (inject text, follow-up bindings).
|
|
7
|
+
* The template formats it for the LLM.
|
|
8
|
+
*
|
|
9
|
+
* Pluggable: organizations can customize the voice and format.
|
|
10
|
+
* Default template works well for all model families.
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.renderInstructions = void 0;
|
|
14
|
+
// ── Default Template ────────────────────────────────────────────────────
|
|
15
|
+
/**
|
|
16
|
+
* Default instruction template — works well across Claude, GPT, and Llama.
|
|
17
|
+
*
|
|
18
|
+
* Uses clear delimiters and structured follow-up format:
|
|
19
|
+
* ```
|
|
20
|
+
* [INSTRUCTION] Be empathetic. Do NOT promise reversal.
|
|
21
|
+
*
|
|
22
|
+
* [AVAILABLE ACTION]
|
|
23
|
+
* Action: Retrieve detailed denial reasoning
|
|
24
|
+
* Tool: get_execution_trace
|
|
25
|
+
* Parameters: {"traceId":"tr_8f3a"}
|
|
26
|
+
* Use when: User asks why or wants details
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
function defaultFormatInject(text) {
|
|
30
|
+
return `[INSTRUCTION] ${text}`;
|
|
31
|
+
}
|
|
32
|
+
function defaultFormatFollowUp(fu) {
|
|
33
|
+
const lines = [
|
|
34
|
+
'[AVAILABLE ACTION]',
|
|
35
|
+
`Action: ${fu.description}`,
|
|
36
|
+
`Tool: ${fu.toolId}`,
|
|
37
|
+
`Parameters: ${JSON.stringify(fu.params)}`,
|
|
38
|
+
`Use when: ${fu.condition}`,
|
|
39
|
+
];
|
|
40
|
+
return lines.join('\n');
|
|
41
|
+
}
|
|
42
|
+
function defaultFormatBlock(parts) {
|
|
43
|
+
return parts.join('\n\n');
|
|
44
|
+
}
|
|
45
|
+
// ── Render Function ─────────────────────────────────────────────────────
|
|
46
|
+
/**
|
|
47
|
+
* Render resolved instructions into LLM-facing text.
|
|
48
|
+
*
|
|
49
|
+
* Takes the output of `evaluateInstructions()` (already sorted in injection order)
|
|
50
|
+
* and produces a single string to append to the tool result message.
|
|
51
|
+
*
|
|
52
|
+
* Returns `undefined` if no instructions have injectable content.
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* ```typescript
|
|
56
|
+
* const fired = evaluateInstructions(tool.instructions, ctx);
|
|
57
|
+
* const text = renderInstructions(fired);
|
|
58
|
+
* if (text) {
|
|
59
|
+
* toolResultMessage.content += '\n\n' + text;
|
|
60
|
+
* }
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
function renderInstructions(instructions, template) {
|
|
64
|
+
if (instructions.length === 0)
|
|
65
|
+
return undefined;
|
|
66
|
+
const formatText = template?.formatText ?? defaultFormatInject;
|
|
67
|
+
const formatFollowUp = template?.formatFollowUp ?? defaultFormatFollowUp;
|
|
68
|
+
const formatBlock = template?.formatBlock ?? defaultFormatBlock;
|
|
69
|
+
const parts = [];
|
|
70
|
+
for (const instr of instructions) {
|
|
71
|
+
// Follow-up first (structured action), then inject (behavioral guidance)
|
|
72
|
+
// Within each instruction, follow-up before inject so the LLM reads
|
|
73
|
+
// "here's what you can do" before "here's how to behave"
|
|
74
|
+
if (instr.resolvedFollowUp) {
|
|
75
|
+
parts.push(formatFollowUp(instr.resolvedFollowUp));
|
|
76
|
+
}
|
|
77
|
+
if (instr.text) {
|
|
78
|
+
parts.push(formatText(instr.text));
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (parts.length === 0)
|
|
82
|
+
return undefined;
|
|
83
|
+
return formatBlock(parts);
|
|
84
|
+
}
|
|
85
|
+
exports.renderInstructions = renderInstructions;
|
|
86
|
+
//# sourceMappingURL=template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template.js","sourceRoot":"","sources":["../../../src/lib/instructions/template.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AA6BH,2EAA2E;AAE3E;;;;;;;;;;;;;GAaG;AACH,SAAS,mBAAmB,CAAC,IAAY;IACvC,OAAO,iBAAiB,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,qBAAqB,CAAC,EAAoB;IACjD,MAAM,KAAK,GAAG;QACZ,oBAAoB;QACpB,WAAW,EAAE,CAAC,WAAW,EAAE;QAC3B,SAAS,EAAE,CAAC,MAAM,EAAE;QACpB,eAAe,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;QAC1C,aAAa,EAAE,CAAC,SAAS,EAAE;KAC5B,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAe;IACzC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,2EAA2E;AAE3E;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,kBAAkB,CAChC,YAAmC,EACnC,QAA8B;IAE9B,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAEhD,MAAM,UAAU,GAAG,QAAQ,EAAE,UAAU,IAAI,mBAAmB,CAAC;IAC/D,MAAM,cAAc,GAAG,QAAQ,EAAE,cAAc,IAAI,qBAAqB,CAAC;IACzE,MAAM,WAAW,GAAG,QAAQ,EAAE,WAAW,IAAI,kBAAkB,CAAC;IAEhE,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,yEAAyE;QACzE,oEAAoE;QACpE,yDAAyD;QACzD,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACzC,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AA1BD,gDA0BC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* LLMInstruction types — co-located behavioral guidance and structured follow-ups for tools.
|
|
4
|
+
*
|
|
5
|
+
* Instructions fire when a tool returns a matching result. The framework injects
|
|
6
|
+
* the instruction text into the LLM's recency window — right next to the tool result,
|
|
7
|
+
* where the model pays the most attention.
|
|
8
|
+
*
|
|
9
|
+
* Two optional fields — fill in what you need:
|
|
10
|
+
* `text`: guidance appended to tool result (LLM reads this literally)
|
|
11
|
+
* `followUp`: structured next-action binding (framework formats as string)
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.follow = exports.quickBind = void 0;
|
|
15
|
+
// ── quickBind ───────────────────────────────────────────────────────────
|
|
16
|
+
/**
|
|
17
|
+
* One-liner shorthand for common follow-up bindings.
|
|
18
|
+
*
|
|
19
|
+
* Most follow-ups follow a simple pattern: extract a field from the tool result
|
|
20
|
+
* and pass it to a target tool with the same parameter name. `quickBind`
|
|
21
|
+
* eliminates the boilerplate.
|
|
22
|
+
*
|
|
23
|
+
* @param toolId - Target tool to call
|
|
24
|
+
* @param paramNames - Field name(s) to extract from `ctx.content` and pass to target tool.
|
|
25
|
+
* Single string or array of strings. The field name in the result must match
|
|
26
|
+
* the parameter name in the target tool.
|
|
27
|
+
* @param options - Optional description and condition overrides.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* // Single param — extract traceId from result, pass to get_trace
|
|
32
|
+
* followUp: quickBind('get_execution_trace', 'traceId')
|
|
33
|
+
*
|
|
34
|
+
* // Equivalent to:
|
|
35
|
+
* followUp: {
|
|
36
|
+
* toolId: 'get_execution_trace',
|
|
37
|
+
* params: (ctx) => ({ traceId: ctx.content.traceId }),
|
|
38
|
+
* description: 'Follow up with get_execution_trace',
|
|
39
|
+
* condition: 'User asks for more details',
|
|
40
|
+
* }
|
|
41
|
+
*
|
|
42
|
+
* // Multiple params
|
|
43
|
+
* followUp: quickBind('get_step_log', ['executionId', 'stepName'])
|
|
44
|
+
*
|
|
45
|
+
* // Custom description and condition
|
|
46
|
+
* followUp: quickBind('get_trace', 'traceId', {
|
|
47
|
+
* description: 'Retrieve denial reasoning',
|
|
48
|
+
* condition: 'User asks why their application was denied',
|
|
49
|
+
* })
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
function quickBind(toolId, paramNames, options) {
|
|
53
|
+
const names = Array.isArray(paramNames) ? paramNames : [paramNames];
|
|
54
|
+
return {
|
|
55
|
+
toolId,
|
|
56
|
+
params: (ctx) => {
|
|
57
|
+
const result = {};
|
|
58
|
+
const content = ctx.content;
|
|
59
|
+
for (const name of names) {
|
|
60
|
+
result[name] = content?.[name];
|
|
61
|
+
}
|
|
62
|
+
return result;
|
|
63
|
+
},
|
|
64
|
+
description: options?.description ?? `Follow up with ${toolId}`,
|
|
65
|
+
condition: options?.condition ?? 'User asks for more details',
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
exports.quickBind = quickBind;
|
|
69
|
+
/**
|
|
70
|
+
* Create a FollowUp binding with explicit params function.
|
|
71
|
+
*
|
|
72
|
+
* Preferred over `quickBind` for computed parameters.
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* followUp: follow('get_trace', ctx => ({ traceId: ctx.content.traceId }), 'Get denial details')
|
|
77
|
+
* ```
|
|
78
|
+
*/
|
|
79
|
+
function follow(toolId, params, description, condition) {
|
|
80
|
+
return {
|
|
81
|
+
toolId,
|
|
82
|
+
params,
|
|
83
|
+
description,
|
|
84
|
+
condition: condition ?? 'User asks for more details',
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
exports.follow = follow;
|
|
88
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/instructions/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AA6RH,2EAA2E;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,SAAgB,SAAS,CACvB,MAAc,EACd,UAA6B,EAC7B,OAAsD;IAEtD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAEpE,OAAO;QACL,MAAM;QACN,MAAM,EAAE,CAAC,GAAuB,EAAE,EAAE;YAClC,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAG,GAAG,CAAC,OAAkC,CAAC;YACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,kBAAkB,MAAM,EAAE;QAC/D,SAAS,EAAE,OAAO,EAAE,SAAS,IAAI,4BAA4B;KAC9D,CAAC;AACJ,CAAC;AApBD,8BAoBC;AAED;;;;;;;;;GASG;AACH,SAAgB,MAAM,CACpB,MAAc,EACd,MAA+D,EAC/D,WAAmB,EACnB,SAAkB;IAElB,OAAO;QACL,MAAM;QACN,MAAM;QACN,WAAW;QACX,SAAS,EAAE,SAAS,IAAI,4BAA4B;KACrD,CAAC;AACJ,CAAC;AAZD,wBAYC"}
|