@minded-ai/mindedjs 1.0.0-ec2-beta-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/dist/agent.d.ts +256 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +896 -0
- package/dist/agent.js.map +1 -0
- package/dist/browserTask/README.md +419 -0
- package/dist/browserTask/browserAgent.py +632 -0
- package/dist/browserTask/captcha_isolated.png +0 -0
- package/dist/browserTask/executeBrowserTask.d.ts +14 -0
- package/dist/browserTask/executeBrowserTask.d.ts.map +1 -0
- package/dist/browserTask/executeBrowserTask.js +195 -0
- package/dist/browserTask/executeBrowserTask.js.map +1 -0
- package/dist/browserTask/executeBrowserTask.py +153 -0
- package/dist/browserTask/executeBrowserTask.ts +79 -0
- package/dist/browserTask/localBrowserTask.d.ts +49 -0
- package/dist/browserTask/localBrowserTask.d.ts.map +1 -0
- package/dist/browserTask/localBrowserTask.js +284 -0
- package/dist/browserTask/localBrowserTask.js.map +1 -0
- package/dist/browserTask/requirements.txt +8 -0
- package/dist/browserTask/setup.sh +144 -0
- package/dist/browserTask/types.d.ts +35 -0
- package/dist/browserTask/types.d.ts.map +1 -0
- package/dist/browserTask/types.js +10 -0
- package/dist/browserTask/types.js.map +1 -0
- package/dist/checkpointer/checkpointSaverFactory.d.ts +7 -0
- package/dist/checkpointer/checkpointSaverFactory.d.ts.map +1 -0
- package/dist/checkpointer/checkpointSaverFactory.js +53 -0
- package/dist/checkpointer/checkpointSaverFactory.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +209 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/lambdaHandlerTemplate.d.ts +10 -0
- package/dist/cli/lambdaHandlerTemplate.d.ts.map +1 -0
- package/dist/cli/lambdaHandlerTemplate.js +76 -0
- package/dist/cli/lambdaHandlerTemplate.js.map +1 -0
- package/dist/cli/lambdaHandlerTemplate.ts +78 -0
- package/dist/cli/localOperatorSetup.d.ts +6 -0
- package/dist/cli/localOperatorSetup.d.ts.map +1 -0
- package/dist/cli/localOperatorSetup.js +310 -0
- package/dist/cli/localOperatorSetup.js.map +1 -0
- package/dist/debugging/index.d.ts +2 -0
- package/dist/debugging/index.d.ts.map +1 -0
- package/dist/debugging/index.js +6 -0
- package/dist/debugging/index.js.map +1 -0
- package/dist/debugging/llmCallbackHandler.d.ts +36 -0
- package/dist/debugging/llmCallbackHandler.d.ts.map +1 -0
- package/dist/debugging/llmCallbackHandler.js +101 -0
- package/dist/debugging/llmCallbackHandler.js.map +1 -0
- package/dist/edges/createDirectEdge.d.ts +4 -0
- package/dist/edges/createDirectEdge.d.ts.map +1 -0
- package/dist/edges/createDirectEdge.js +24 -0
- package/dist/edges/createDirectEdge.js.map +1 -0
- package/dist/edges/createLogicalRouter.d.ts +8 -0
- package/dist/edges/createLogicalRouter.d.ts.map +1 -0
- package/dist/edges/createLogicalRouter.js +194 -0
- package/dist/edges/createLogicalRouter.js.map +1 -0
- package/dist/edges/createPromptRouter.d.ts +12 -0
- package/dist/edges/createPromptRouter.d.ts.map +1 -0
- package/dist/edges/createPromptRouter.js +176 -0
- package/dist/edges/createPromptRouter.js.map +1 -0
- package/dist/edges/edgeFactory.d.ts +14 -0
- package/dist/edges/edgeFactory.d.ts.map +1 -0
- package/dist/edges/edgeFactory.js +125 -0
- package/dist/edges/edgeFactory.js.map +1 -0
- package/dist/events/AgentEvents.d.ts +56 -0
- package/dist/events/AgentEvents.d.ts.map +1 -0
- package/dist/events/AgentEvents.js +13 -0
- package/dist/events/AgentEvents.js.map +1 -0
- package/dist/events/index.d.ts +3 -0
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +5 -0
- package/dist/events/index.js.map +1 -0
- package/dist/index.d.ts +35 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +98 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/zendesk.d.ts +35 -0
- package/dist/interfaces/zendesk.d.ts.map +1 -0
- package/dist/interfaces/zendesk.js +219 -0
- package/dist/interfaces/zendesk.js.map +1 -0
- package/dist/internalTools/appActionRunnerTool.d.ts +5 -0
- package/dist/internalTools/appActionRunnerTool.d.ts.map +1 -0
- package/dist/internalTools/appActionRunnerTool.js +88 -0
- package/dist/internalTools/appActionRunnerTool.js.map +1 -0
- package/dist/internalTools/documentExtraction/documentExtraction.d.ts +129 -0
- package/dist/internalTools/documentExtraction/documentExtraction.d.ts.map +1 -0
- package/dist/internalTools/documentExtraction/documentExtraction.js +736 -0
- package/dist/internalTools/documentExtraction/documentExtraction.js.map +1 -0
- package/dist/internalTools/documentExtraction/types.d.ts +29 -0
- package/dist/internalTools/documentExtraction/types.d.ts.map +1 -0
- package/dist/internalTools/documentExtraction/types.js +35 -0
- package/dist/internalTools/documentExtraction/types.js.map +1 -0
- package/dist/internalTools/libraryActionRunnerTool.d.ts +4 -0
- package/dist/internalTools/libraryActionRunnerTool.d.ts.map +1 -0
- package/dist/internalTools/libraryActionRunnerTool.js +53 -0
- package/dist/internalTools/libraryActionRunnerTool.js.map +1 -0
- package/dist/internalTools/retell.d.ts +12 -0
- package/dist/internalTools/retell.d.ts.map +1 -0
- package/dist/internalTools/retell.js +54 -0
- package/dist/internalTools/retell.js.map +1 -0
- package/dist/internalTools/sendPlaceholderMessage.d.ts +14 -0
- package/dist/internalTools/sendPlaceholderMessage.d.ts.map +1 -0
- package/dist/internalTools/sendPlaceholderMessage.js +61 -0
- package/dist/internalTools/sendPlaceholderMessage.js.map +1 -0
- package/dist/internalTools/timer.d.ts +99 -0
- package/dist/internalTools/timer.d.ts.map +1 -0
- package/dist/internalTools/timer.js +139 -0
- package/dist/internalTools/timer.js.map +1 -0
- package/dist/internalTools/voice/escalateVoiceCall.d.ts +2 -0
- package/dist/internalTools/voice/escalateVoiceCall.d.ts.map +1 -0
- package/dist/internalTools/voice/escalateVoiceCall.js +52 -0
- package/dist/internalTools/voice/escalateVoiceCall.js.map +1 -0
- package/dist/internalTools/voice/retell.d.ts +12 -0
- package/dist/internalTools/voice/retell.d.ts.map +1 -0
- package/dist/internalTools/voice/retell.js +54 -0
- package/dist/internalTools/voice/retell.js.map +1 -0
- package/dist/internalTools/voice/sendPlaceholderMessage.d.ts +14 -0
- package/dist/internalTools/voice/sendPlaceholderMessage.d.ts.map +1 -0
- package/dist/internalTools/voice/sendPlaceholderMessage.js +61 -0
- package/dist/internalTools/voice/sendPlaceholderMessage.js.map +1 -0
- package/dist/interrupts/BaseInterruptSessionManager.d.ts +49 -0
- package/dist/interrupts/BaseInterruptSessionManager.d.ts.map +1 -0
- package/dist/interrupts/BaseInterruptSessionManager.js +34 -0
- package/dist/interrupts/BaseInterruptSessionManager.js.map +1 -0
- package/dist/interrupts/MemoryInterruptSessionManager.d.ts +14 -0
- package/dist/interrupts/MemoryInterruptSessionManager.d.ts.map +1 -0
- package/dist/interrupts/MemoryInterruptSessionManager.js +60 -0
- package/dist/interrupts/MemoryInterruptSessionManager.js.map +1 -0
- package/dist/interrupts/MindedInterruptSessionManager.d.ts +13 -0
- package/dist/interrupts/MindedInterruptSessionManager.d.ts.map +1 -0
- package/dist/interrupts/MindedInterruptSessionManager.js +162 -0
- package/dist/interrupts/MindedInterruptSessionManager.js.map +1 -0
- package/dist/interrupts/interruptSessionManagerFactory.d.ts +3 -0
- package/dist/interrupts/interruptSessionManagerFactory.d.ts.map +1 -0
- package/dist/interrupts/interruptSessionManagerFactory.js +56 -0
- package/dist/interrupts/interruptSessionManagerFactory.js.map +1 -0
- package/dist/llm/createLlmInstance.d.ts +3 -0
- package/dist/llm/createLlmInstance.d.ts.map +1 -0
- package/dist/llm/createLlmInstance.js +31 -0
- package/dist/llm/createLlmInstance.js.map +1 -0
- package/dist/nodes/addAppToolNode.d.ts +13 -0
- package/dist/nodes/addAppToolNode.d.ts.map +1 -0
- package/dist/nodes/addAppToolNode.js +87 -0
- package/dist/nodes/addAppToolNode.js.map +1 -0
- package/dist/nodes/addBrowserTaskNode.d.ts +13 -0
- package/dist/nodes/addBrowserTaskNode.d.ts.map +1 -0
- package/dist/nodes/addBrowserTaskNode.js +167 -0
- package/dist/nodes/addBrowserTaskNode.js.map +1 -0
- package/dist/nodes/addBrowserTaskRunNode.d.ts +13 -0
- package/dist/nodes/addBrowserTaskRunNode.d.ts.map +1 -0
- package/dist/nodes/addBrowserTaskRunNode.js +167 -0
- package/dist/nodes/addBrowserTaskRunNode.js.map +1 -0
- package/dist/nodes/addHumanInTheLoopNode.d.ts +9 -0
- package/dist/nodes/addHumanInTheLoopNode.d.ts.map +1 -0
- package/dist/nodes/addHumanInTheLoopNode.js +22 -0
- package/dist/nodes/addHumanInTheLoopNode.js.map +1 -0
- package/dist/nodes/addJumpToNode.d.ts +7 -0
- package/dist/nodes/addJumpToNode.d.ts.map +1 -0
- package/dist/nodes/addJumpToNode.js +24 -0
- package/dist/nodes/addJumpToNode.js.map +1 -0
- package/dist/nodes/addJunctionNode.d.ts +7 -0
- package/dist/nodes/addJunctionNode.d.ts.map +1 -0
- package/dist/nodes/addJunctionNode.js +20 -0
- package/dist/nodes/addJunctionNode.js.map +1 -0
- package/dist/nodes/addPromptNode.d.ts +18 -0
- package/dist/nodes/addPromptNode.d.ts.map +1 -0
- package/dist/nodes/addPromptNode.js +253 -0
- package/dist/nodes/addPromptNode.js.map +1 -0
- package/dist/nodes/addRpaNode.d.ts +18 -0
- package/dist/nodes/addRpaNode.d.ts.map +1 -0
- package/dist/nodes/addRpaNode.js +180 -0
- package/dist/nodes/addRpaNode.js.map +1 -0
- package/dist/nodes/addToolNode.d.ts +13 -0
- package/dist/nodes/addToolNode.d.ts.map +1 -0
- package/dist/nodes/addToolNode.js +67 -0
- package/dist/nodes/addToolNode.js.map +1 -0
- package/dist/nodes/addToolRunNode.d.ts +17 -0
- package/dist/nodes/addToolRunNode.d.ts.map +1 -0
- package/dist/nodes/addToolRunNode.js +59 -0
- package/dist/nodes/addToolRunNode.js.map +1 -0
- package/dist/nodes/addTriggerNode.d.ts +7 -0
- package/dist/nodes/addTriggerNode.d.ts.map +1 -0
- package/dist/nodes/addTriggerNode.js +25 -0
- package/dist/nodes/addTriggerNode.js.map +1 -0
- package/dist/nodes/compilePrompt.d.ts +5 -0
- package/dist/nodes/compilePrompt.d.ts.map +1 -0
- package/dist/nodes/compilePrompt.js +76 -0
- package/dist/nodes/compilePrompt.js.map +1 -0
- package/dist/nodes/nodeFactory.d.ts +16 -0
- package/dist/nodes/nodeFactory.d.ts.map +1 -0
- package/dist/nodes/nodeFactory.js +45 -0
- package/dist/nodes/nodeFactory.js.map +1 -0
- package/dist/nodes/rpaStepsExecutor.d.ts +5 -0
- package/dist/nodes/rpaStepsExecutor.d.ts.map +1 -0
- package/dist/nodes/rpaStepsExecutor.js +156 -0
- package/dist/nodes/rpaStepsExecutor.js.map +1 -0
- package/dist/platform/config.d.ts +16 -0
- package/dist/platform/config.d.ts.map +1 -0
- package/dist/platform/config.js +80 -0
- package/dist/platform/config.js.map +1 -0
- package/dist/platform/mindedCheckpointSaver.d.ts +10 -0
- package/dist/platform/mindedCheckpointSaver.d.ts.map +1 -0
- package/dist/platform/mindedCheckpointSaver.js +137 -0
- package/dist/platform/mindedCheckpointSaver.js.map +1 -0
- package/dist/platform/mindedConnection.d.ts +15 -0
- package/dist/platform/mindedConnection.d.ts.map +1 -0
- package/dist/platform/mindedConnection.js +254 -0
- package/dist/platform/mindedConnection.js.map +1 -0
- package/dist/platform/mindedConnectionTypes.d.ts +404 -0
- package/dist/platform/mindedConnectionTypes.d.ts.map +1 -0
- package/dist/platform/mindedConnectionTypes.js +51 -0
- package/dist/platform/mindedConnectionTypes.js.map +1 -0
- package/dist/platform/models/mindedChatOpenAI.d.ts +20 -0
- package/dist/platform/models/mindedChatOpenAI.d.ts.map +1 -0
- package/dist/platform/models/mindedChatOpenAI.js +32 -0
- package/dist/platform/models/mindedChatOpenAI.js.map +1 -0
- package/dist/platform/models/parallelWrapper.d.ts +17 -0
- package/dist/platform/models/parallelWrapper.d.ts.map +1 -0
- package/dist/platform/models/parallelWrapper.js +105 -0
- package/dist/platform/models/parallelWrapper.js.map +1 -0
- package/dist/platform/piiGateway/gateway.d.ts +14 -0
- package/dist/platform/piiGateway/gateway.d.ts.map +1 -0
- package/dist/platform/piiGateway/gateway.js +117 -0
- package/dist/platform/piiGateway/gateway.js.map +1 -0
- package/dist/platform/piiGateway/index.d.ts +3 -0
- package/dist/platform/piiGateway/index.d.ts.map +1 -0
- package/dist/platform/piiGateway/index.js +7 -0
- package/dist/platform/piiGateway/index.js.map +1 -0
- package/dist/platform/piiGateway/types.d.ts +27 -0
- package/dist/platform/piiGateway/types.d.ts.map +1 -0
- package/dist/platform/piiGateway/types.js +3 -0
- package/dist/platform/piiGateway/types.js.map +1 -0
- package/dist/platform/toolExecutor.d.ts +29 -0
- package/dist/platform/toolExecutor.d.ts.map +1 -0
- package/dist/platform/toolExecutor.js +84 -0
- package/dist/platform/toolExecutor.js.map +1 -0
- package/dist/platform/utils/parseAttachments.d.ts +14 -0
- package/dist/platform/utils/parseAttachments.d.ts.map +1 -0
- package/dist/platform/utils/parseAttachments.js +53 -0
- package/dist/platform/utils/parseAttachments.js.map +1 -0
- package/dist/platform/utils/tools.d.ts +6 -0
- package/dist/platform/utils/tools.d.ts.map +1 -0
- package/dist/platform/utils/tools.js +57 -0
- package/dist/platform/utils/tools.js.map +1 -0
- package/dist/playbooks/playbooks.d.ts +15 -0
- package/dist/playbooks/playbooks.d.ts.map +1 -0
- package/dist/playbooks/playbooks.js +208 -0
- package/dist/playbooks/playbooks.js.map +1 -0
- package/dist/toolsLibrary/classifier.d.ts +74 -0
- package/dist/toolsLibrary/classifier.d.ts.map +1 -0
- package/dist/toolsLibrary/classifier.js +256 -0
- package/dist/toolsLibrary/classifier.js.map +1 -0
- package/dist/toolsLibrary/extraction.d.ts +83 -0
- package/dist/toolsLibrary/extraction.d.ts.map +1 -0
- package/dist/toolsLibrary/extraction.js +328 -0
- package/dist/toolsLibrary/extraction.js.map +1 -0
- package/dist/toolsLibrary/index.d.ts +9 -0
- package/dist/toolsLibrary/index.d.ts.map +1 -0
- package/dist/toolsLibrary/index.js +46 -0
- package/dist/toolsLibrary/index.js.map +1 -0
- package/dist/toolsLibrary/parseDocument.d.ts +30 -0
- package/dist/toolsLibrary/parseDocument.d.ts.map +1 -0
- package/dist/toolsLibrary/parseDocument.js +119 -0
- package/dist/toolsLibrary/parseDocument.js.map +1 -0
- package/dist/triggers/triggerTypeToDefaultMessage.d.ts +4 -0
- package/dist/triggers/triggerTypeToDefaultMessage.d.ts.map +1 -0
- package/dist/triggers/triggerTypeToDefaultMessage.js +10 -0
- package/dist/triggers/triggerTypeToDefaultMessage.js.map +1 -0
- package/dist/types/Agent.types.d.ts +60 -0
- package/dist/types/Agent.types.d.ts.map +1 -0
- package/dist/types/Agent.types.js +9 -0
- package/dist/types/Agent.types.js.map +1 -0
- package/dist/types/Flows.types.d.ts +232 -0
- package/dist/types/Flows.types.d.ts.map +1 -0
- package/dist/types/Flows.types.js +65 -0
- package/dist/types/Flows.types.js.map +1 -0
- package/dist/types/LLM.types.d.ts +7 -0
- package/dist/types/LLM.types.d.ts.map +1 -0
- package/dist/types/LLM.types.js +11 -0
- package/dist/types/LLM.types.js.map +1 -0
- package/dist/types/LangGraph.types.d.ts +45 -0
- package/dist/types/LangGraph.types.d.ts.map +1 -0
- package/dist/types/LangGraph.types.js +77 -0
- package/dist/types/LangGraph.types.js.map +1 -0
- package/dist/types/Platform.types.d.ts +7 -0
- package/dist/types/Platform.types.d.ts.map +1 -0
- package/dist/types/Platform.types.js +11 -0
- package/dist/types/Platform.types.js.map +1 -0
- package/dist/types/Tools.types.d.ts +26 -0
- package/dist/types/Tools.types.d.ts.map +1 -0
- package/dist/types/Tools.types.js +3 -0
- package/dist/types/Tools.types.js.map +1 -0
- package/dist/types/Voice.types.d.ts +5 -0
- package/dist/types/Voice.types.d.ts.map +1 -0
- package/dist/types/Voice.types.js +3 -0
- package/dist/types/Voice.types.js.map +1 -0
- package/dist/utils/agentUtils.d.ts +5 -0
- package/dist/utils/agentUtils.d.ts.map +1 -0
- package/dist/utils/agentUtils.js +97 -0
- package/dist/utils/agentUtils.js.map +1 -0
- package/dist/utils/extractStateMemoryResponse.d.ts +5 -0
- package/dist/utils/extractStateMemoryResponse.d.ts.map +1 -0
- package/dist/utils/extractStateMemoryResponse.js +91 -0
- package/dist/utils/extractStateMemoryResponse.js.map +1 -0
- package/dist/utils/history.d.ts +4 -0
- package/dist/utils/history.d.ts.map +1 -0
- package/dist/utils/history.js +33 -0
- package/dist/utils/history.js.map +1 -0
- package/dist/utils/logger.d.ts +3 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +39 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/schemaUtils.d.ts +15 -0
- package/dist/utils/schemaUtils.d.ts.map +1 -0
- package/dist/utils/schemaUtils.js +56 -0
- package/dist/utils/schemaUtils.js.map +1 -0
- package/dist/utils/wait.d.ts +2 -0
- package/dist/utils/wait.d.ts.map +1 -0
- package/dist/utils/wait.js +6 -0
- package/dist/utils/wait.js.map +1 -0
- package/dist/voice/elevenLabsUtils.d.ts +65 -0
- package/dist/voice/elevenLabsUtils.d.ts.map +1 -0
- package/dist/voice/elevenLabsUtils.js +4 -0
- package/dist/voice/elevenLabsUtils.js.map +1 -0
- package/dist/voice/voiceSession.d.ts +37 -0
- package/dist/voice/voiceSession.d.ts.map +1 -0
- package/dist/voice/voiceSession.js +306 -0
- package/dist/voice/voiceSession.js.map +1 -0
- package/docs/.gitbook/assets/ADLC.png +0 -0
- package/docs/.gitbook/assets/PII-masking.png +0 -0
- package/docs/.gitbook/assets/image.png +0 -0
- package/docs/.gitbook/assets/on-prem.svg +4 -0
- package/docs/README.md +54 -0
- package/docs/SUMMARY.md +56 -0
- package/docs/examples/order-refund-flow.md +566 -0
- package/docs/getting-started/environment-configuration.md +158 -0
- package/docs/getting-started/installation.md +44 -0
- package/docs/getting-started/project-configuration.md +206 -0
- package/docs/getting-started/quick-start.md +262 -0
- package/docs/integrations/zendesk.md +554 -0
- package/docs/low-code-editor/edges.md +396 -0
- package/docs/low-code-editor/flows.md +74 -0
- package/docs/low-code-editor/nodes.md +367 -0
- package/docs/low-code-editor/playbooks.md +280 -0
- package/docs/low-code-editor/tools.md +358 -0
- package/docs/low-code-editor/triggers.md +182 -0
- package/docs/platform/on-prem.md +182 -0
- package/docs/platform/operator.md +89 -0
- package/docs/platform/pii-masking.md +221 -0
- package/docs/platform/scenarios.md +43 -0
- package/docs/platform/secrets.md +99 -0
- package/docs/platform/sso.md +27 -0
- package/docs/resources/your-first-eval.md +108 -0
- package/docs/sdk/agent-api.md +540 -0
- package/docs/sdk/debugging.md +80 -0
- package/docs/sdk/events.md +595 -0
- package/docs/sdk/logging.md +72 -0
- package/docs/sdk/memory.md +271 -0
- package/docs/sdk/parallel-llm.md +242 -0
- package/docs/sdk/vectorstore-query.md +60 -0
- package/docs/tooling/classifier.md +217 -0
- package/docs/tooling/document-processing.md +389 -0
- package/docs/tooling/extraction.md +78 -0
- package/docs/tooling/timers.md +61 -0
- package/package.json +73 -0
- package/src/agent.ts +1019 -0
- package/src/browserTask/executeBrowserTask.py +153 -0
- package/src/browserTask/executeBrowserTask.ts +253 -0
- package/src/browserTask/localBrowserTask.ts +300 -0
- package/src/browserTask/profile/Default/Extension Rules/000003.log +0 -0
- package/src/browserTask/profile/Default/Extension Scripts/000003.log +0 -0
- package/src/browserTask/profile/Default/Extension State/000003.log +0 -0
- package/src/browserTask/profile/Default/GCM Store/000003.log +0 -0
- package/src/browserTask/profile/Default/Local Storage/leveldb/000004.log +0 -0
- package/src/browserTask/profile/Default/Session Storage/000003.log +0 -0
- package/src/browserTask/profile/Default/Site Characteristics Database/000003.log +0 -0
- package/src/browserTask/profile/Default/Sync Data/LevelDB/000003.log +0 -0
- package/src/browserTask/profile/Default/shared_proto_db/000003.log +0 -0
- package/src/browserTask/profile/Default/shared_proto_db/metadata/000003.log +0 -0
- package/src/browserTask/types.ts +37 -0
- package/src/checkpointer/checkpointSaverFactory.ts +18 -0
- package/src/cli/index.ts +188 -0
- package/src/cli/lambdaHandlerTemplate.ts +78 -0
- package/src/cli/localOperatorSetup.ts +308 -0
- package/src/debugging/index.ts +1 -0
- package/src/debugging/llmCallbackHandler.ts +125 -0
- package/src/edges/createDirectEdge.ts +22 -0
- package/src/edges/createLogicalRouter.ts +182 -0
- package/src/edges/createPromptRouter.ts +213 -0
- package/src/edges/edgeFactory.ts +167 -0
- package/src/events/AgentEvents.ts +58 -0
- package/src/events/index.ts +3 -0
- package/src/index.ts +105 -0
- package/src/interfaces/zendesk.ts +212 -0
- package/src/internalTools/appActionRunnerTool.ts +68 -0
- package/src/internalTools/documentExtraction/documentExtraction.ts +804 -0
- package/src/internalTools/documentExtraction/types.ts +59 -0
- package/src/internalTools/libraryActionRunnerTool.ts +62 -0
- package/src/internalTools/timer.ts +125 -0
- package/src/internalTools/voice/escalateVoiceCall.ts +15 -0
- package/src/internalTools/voice/retell.ts +28 -0
- package/src/internalTools/voice/sendPlaceholderMessage.ts +27 -0
- package/src/interrupts/BaseInterruptSessionManager.ts +80 -0
- package/src/interrupts/MemoryInterruptSessionManager.ts +63 -0
- package/src/interrupts/MindedInterruptSessionManager.ts +163 -0
- package/src/interrupts/interruptSessionManagerFactory.ts +20 -0
- package/src/llm/createLlmInstance.ts +33 -0
- package/src/nodes/addAppToolNode.ts +111 -0
- package/src/nodes/addBrowserTaskNode.ts +191 -0
- package/src/nodes/addBrowserTaskRunNode.ts +190 -0
- package/src/nodes/addHumanInTheLoopNode.ts +26 -0
- package/src/nodes/addJumpToNode.ts +26 -0
- package/src/nodes/addJunctionNode.ts +21 -0
- package/src/nodes/addPromptNode.ts +305 -0
- package/src/nodes/addRpaNode.ts +217 -0
- package/src/nodes/addToolNode.ts +84 -0
- package/src/nodes/addToolRunNode.ts +80 -0
- package/src/nodes/addTriggerNode.ts +27 -0
- package/src/nodes/compilePrompt.ts +44 -0
- package/src/nodes/nodeFactory.ts +61 -0
- package/src/nodes/rpaStepsExecutor.ts +175 -0
- package/src/platform/config.ts +89 -0
- package/src/platform/mindedCheckpointSaver.ts +146 -0
- package/src/platform/mindedConnection.ts +250 -0
- package/src/platform/mindedConnectionTypes.ts +495 -0
- package/src/platform/models/mindedChatOpenAI.ts +49 -0
- package/src/platform/models/parallelWrapper.ts +141 -0
- package/src/platform/piiGateway/gateway.ts +103 -0
- package/src/platform/piiGateway/index.ts +5 -0
- package/src/platform/piiGateway/types.ts +29 -0
- package/src/platform/toolExecutor.ts +106 -0
- package/src/platform/utils/parseAttachments.ts +56 -0
- package/src/platform/utils/tools.ts +55 -0
- package/src/playbooks/playbooks.ts +200 -0
- package/src/toolsLibrary/classifier.ts +326 -0
- package/src/toolsLibrary/extraction.ts +393 -0
- package/src/toolsLibrary/index.ts +10 -0
- package/src/toolsLibrary/parseDocument.ts +129 -0
- package/src/triggers/triggerTypeToDefaultMessage.ts +9 -0
- package/src/types/Agent.types.ts +73 -0
- package/src/types/Flows.types.ts +262 -0
- package/src/types/LLM.types.ts +15 -0
- package/src/types/LangGraph.types.ts +86 -0
- package/src/types/Platform.types.ts +6 -0
- package/src/types/Tools.types.ts +28 -0
- package/src/types/Voice.types.ts +4 -0
- package/src/utils/agentUtils.ts +69 -0
- package/src/utils/history.ts +38 -0
- package/src/utils/logger.ts +38 -0
- package/src/utils/schemaUtils.ts +68 -0
- package/src/utils/wait.ts +1 -0
- package/src/voice/elevenLabsUtils.ts +81 -0
- package/src/voice/voiceSession.ts +309 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addHumanInTheLoopNode = exports.buildHumanInTheLoopNodeName = void 0;
|
|
4
|
+
const langgraph_1 = require("@langchain/langgraph");
|
|
5
|
+
const logger_1 = require("../utils/logger");
|
|
6
|
+
const Flows_types_1 = require("../types/Flows.types");
|
|
7
|
+
const BaseInterruptSessionManager_1 = require("../interrupts/BaseInterruptSessionManager");
|
|
8
|
+
const buildHumanInTheLoopNodeName = (nodeName) => `${nodeName}${Flows_types_1.internalNodesSuffix.HUMAN_IN_THE_LOOP}`;
|
|
9
|
+
exports.buildHumanInTheLoopNodeName = buildHumanInTheLoopNodeName;
|
|
10
|
+
const addHumanInTheLoopNode = async ({ graph, attachedToNodeName }) => {
|
|
11
|
+
const callback = async (state) => {
|
|
12
|
+
logger_1.logger.debug({ msg: `[Node] Waiting for human input`, node: attachedToNodeName });
|
|
13
|
+
if (state.messages[state.messages.length - 1].getType() === 'ai') {
|
|
14
|
+
(0, langgraph_1.interrupt)({ type: BaseInterruptSessionManager_1.InterruptType.HUMAN_IN_THE_LOOP });
|
|
15
|
+
return state;
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
graph.addNode((0, exports.buildHumanInTheLoopNodeName)(attachedToNodeName), callback);
|
|
19
|
+
graph.addEdge(attachedToNodeName, (0, exports.buildHumanInTheLoopNodeName)(attachedToNodeName));
|
|
20
|
+
};
|
|
21
|
+
exports.addHumanInTheLoopNode = addHumanInTheLoopNode;
|
|
22
|
+
//# sourceMappingURL=addHumanInTheLoopNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addHumanInTheLoopNode.js","sourceRoot":"","sources":["../../src/nodes/addHumanInTheLoopNode.ts"],"names":[],"mappings":";;;AAAA,oDAAiD;AAGjD,4CAAyC;AACzC,sDAA2D;AAC3D,2FAA0E;AAOnE,MAAM,2BAA2B,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,GAAG,QAAQ,GAAG,iCAAmB,CAAC,iBAAiB,EAAE,CAAC;AAA1G,QAAA,2BAA2B,+BAA+E;AAEhH,MAAM,qBAAqB,GAAG,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAA+B,EAAE,EAAE;IACxG,MAAM,QAAQ,GAAiB,KAAK,EAAE,KAAmC,EAAE,EAAE;QAC3E,eAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,gCAAgC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAElF,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC;YACjE,IAAA,qBAAS,EAAC,EAAE,IAAI,EAAE,2CAAa,CAAC,iBAAiB,EAAE,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,OAAO,CAAC,IAAA,mCAA2B,EAAC,kBAAkB,CAAC,EAAE,QAAQ,CAAC,CAAC;IACzE,KAAK,CAAC,OAAO,CAAC,kBAAyB,EAAE,IAAA,mCAA2B,EAAC,kBAAkB,CAAQ,CAAC,CAAC;AACnG,CAAC,CAAC;AAXW,QAAA,qBAAqB,yBAWhC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { PreCompiledGraph } from '../types/LangGraph.types';
|
|
2
|
+
import { JumpToNode } from '../types/Flows.types';
|
|
3
|
+
export declare const addJumpToNode: ({ graph, node }: {
|
|
4
|
+
graph: PreCompiledGraph;
|
|
5
|
+
node: JumpToNode;
|
|
6
|
+
}) => Promise<void>;
|
|
7
|
+
//# sourceMappingURL=addJumpToNode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addJumpToNode.d.ts","sourceRoot":"","sources":["../../src/nodes/addJumpToNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAY,MAAM,sBAAsB,CAAC;AAK5D,eAAO,MAAM,aAAa,GAAU,iBAAiB;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,kBAkBjG,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addJumpToNode = void 0;
|
|
4
|
+
const Flows_types_1 = require("../types/Flows.types");
|
|
5
|
+
const logger_1 = require("../utils/logger");
|
|
6
|
+
const history_1 = require("../utils/history");
|
|
7
|
+
const addJumpToNode = async ({ graph, node }) => {
|
|
8
|
+
const callback = async (state) => {
|
|
9
|
+
logger_1.logger.info({ msg: `Executing jump node ${node.displayName} – jumping to ${node.targetNodeId}` });
|
|
10
|
+
// No state modifications are necessary; control flow is handled via edges.
|
|
11
|
+
state.goto = node.targetNodeId;
|
|
12
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
13
|
+
type: Flows_types_1.NodeType.JUMP_TO_NODE,
|
|
14
|
+
nodeId: node.name,
|
|
15
|
+
nodeDisplayName: node.displayName,
|
|
16
|
+
raw: '',
|
|
17
|
+
}));
|
|
18
|
+
return state;
|
|
19
|
+
};
|
|
20
|
+
graph.addNode(node.name, callback);
|
|
21
|
+
graph.addEdge(node.name, node.targetNodeId);
|
|
22
|
+
};
|
|
23
|
+
exports.addJumpToNode = addJumpToNode;
|
|
24
|
+
//# sourceMappingURL=addJumpToNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addJumpToNode.js","sourceRoot":"","sources":["../../src/nodes/addJumpToNode.ts"],"names":[],"mappings":";;;AAEA,sDAA4D;AAC5D,4CAAyC;AAEzC,8CAAqD;AAE9C,MAAM,aAAa,GAAG,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAiD,EAAE,EAAE;IACpG,MAAM,QAAQ,GAAiB,KAAK,EAAE,KAAmC,EAAE,EAAE;QAC3E,eAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,uBAAuB,IAAI,CAAC,WAAW,iBAAiB,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAClG,2EAA2E;QAC3E,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC;QAC/B,KAAK,CAAC,OAAO,CAAC,IAAI,CAChB,IAAA,2BAAiB,EAAc,KAAK,CAAC,OAAO,EAAE;YAC5C,IAAI,EAAE,sBAAQ,CAAC,YAAY;YAC3B,MAAM,EAAE,IAAI,CAAC,IAAI;YACjB,eAAe,EAAE,IAAI,CAAC,WAAW;YACjC,GAAG,EAAE,EAAE;SACR,CAAC,CACH,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACnC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAW,EAAE,IAAI,CAAC,YAAmB,CAAC,CAAC;AAC5D,CAAC,CAAC;AAlBW,QAAA,aAAa,iBAkBxB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { JunctionNode } from '../types/Flows.types';
|
|
2
|
+
import { PreCompiledGraph } from '../types/LangGraph.types';
|
|
3
|
+
export declare const addJunctionNode: ({ graph, node }: {
|
|
4
|
+
graph: PreCompiledGraph;
|
|
5
|
+
node: JunctionNode;
|
|
6
|
+
}) => void;
|
|
7
|
+
//# sourceMappingURL=addJunctionNode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addJunctionNode.d.ts","sourceRoot":"","sources":["../../src/nodes/addJunctionNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAY,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAK7E,eAAO,MAAM,eAAe,GAAI,iBAAiB;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,SAc/F,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addJunctionNode = void 0;
|
|
4
|
+
const Flows_types_1 = require("../types/Flows.types");
|
|
5
|
+
const history_1 = require("../utils/history");
|
|
6
|
+
const addJunctionNode = ({ graph, node }) => {
|
|
7
|
+
const callback = async (state) => {
|
|
8
|
+
state.goto = null;
|
|
9
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
10
|
+
type: Flows_types_1.NodeType.JUNCTION,
|
|
11
|
+
nodeId: node.name,
|
|
12
|
+
nodeDisplayName: node.displayName,
|
|
13
|
+
raw: '',
|
|
14
|
+
}));
|
|
15
|
+
return state;
|
|
16
|
+
};
|
|
17
|
+
graph.addNode(node.name, callback);
|
|
18
|
+
};
|
|
19
|
+
exports.addJunctionNode = addJunctionNode;
|
|
20
|
+
//# sourceMappingURL=addJunctionNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addJunctionNode.js","sourceRoot":"","sources":["../../src/nodes/addJunctionNode.ts"],"names":[],"mappings":";;;AAAA,sDAA8D;AAG9D,8CAAqD;AAG9C,MAAM,eAAe,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAmD,EAAE,EAAE;IAClG,MAAM,QAAQ,GAAiB,KAAK,EAAE,KAAmC,EAAE,EAAE;QAC3E,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAClB,KAAK,CAAC,OAAO,CAAC,IAAI,CAChB,IAAA,2BAAiB,EAAc,KAAK,CAAC,OAAO,EAAE;YAC5C,IAAI,EAAE,sBAAQ,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,IAAI;YACjB,eAAe,EAAE,IAAI,CAAC,WAAW;YACjC,GAAG,EAAE,EAAE;SACR,CAAC,CACH,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACrC,CAAC,CAAC;AAdW,QAAA,eAAe,mBAc1B"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { PromptNode } from '../types/Flows.types';
|
|
2
|
+
import { PreCompiledGraph } from '../types/LangGraph.types';
|
|
3
|
+
import { BaseLanguageModel } from '@langchain/core/language_models/base';
|
|
4
|
+
import { Tool } from '../types/Tools.types';
|
|
5
|
+
import { AgentEventRequestPayloads } from '../events/AgentEvents';
|
|
6
|
+
import { EmitSignature } from '../types/Agent.types';
|
|
7
|
+
import { Agent } from '../agent';
|
|
8
|
+
type AddPromptNodeParams = {
|
|
9
|
+
graph: PreCompiledGraph;
|
|
10
|
+
node: PromptNode;
|
|
11
|
+
llm: BaseLanguageModel;
|
|
12
|
+
tools: Tool<any, any>[];
|
|
13
|
+
emit: EmitSignature<any, keyof AgentEventRequestPayloads<any>>;
|
|
14
|
+
agent: Agent;
|
|
15
|
+
};
|
|
16
|
+
export declare const addPromptNode: ({ graph, node, llm, tools, emit, agent }: AddPromptNodeParams) => Promise<void>;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=addPromptNode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addPromptNode.d.ts","sourceRoot":"","sources":["../../src/nodes/addPromptNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAE7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,EAAE,yBAAyB,EAAe,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAe,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAOjC,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,EAAE,UAAU,CAAC;IACjB,GAAG,EAAE,iBAAiB,CAAC;IACvB,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IACxB,IAAI,EAAE,aAAa,CAAC,GAAG,EAAE,MAAM,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,eAAO,MAAM,aAAa,GAAU,0CAA0C,mBAAmB,kBA6OhG,CAAC"}
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addPromptNode = void 0;
|
|
4
|
+
const Flows_types_1 = require("../types/Flows.types");
|
|
5
|
+
const messages_1 = require("@langchain/core/messages");
|
|
6
|
+
const tools_1 = require("@langchain/core/tools");
|
|
7
|
+
const AgentEvents_1 = require("../events/AgentEvents");
|
|
8
|
+
const createLlmInstance_1 = require("../llm/createLlmInstance");
|
|
9
|
+
const logger_1 = require("../utils/logger");
|
|
10
|
+
const playbooks_1 = require("../playbooks/playbooks");
|
|
11
|
+
const history_1 = require("../utils/history");
|
|
12
|
+
const compilePrompt_1 = require("./compilePrompt");
|
|
13
|
+
const uuid_1 = require("uuid");
|
|
14
|
+
const addPromptNode = async ({ graph, node, llm, tools, emit, agent }) => {
|
|
15
|
+
const callback = async (state) => {
|
|
16
|
+
var _a;
|
|
17
|
+
await agent.interruptSessionManager.checkQueueAndInterrupt(state.sessionId);
|
|
18
|
+
logger_1.logger.info({ msg: `[Node] Executing prompt node`, node: node.displayName, sessionId: state.sessionId });
|
|
19
|
+
const llmToUse = node.llmConfig ? (0, createLlmInstance_1.createLlmInstance)(node.llmConfig) : llm;
|
|
20
|
+
const scopedTools = tools
|
|
21
|
+
.filter((tool) => tool.isGlobal || node.prompt.includes(`{tools.${tool.name}}`))
|
|
22
|
+
.map((tool) => (0, tools_1.tool)((input) => tool.execute({ input, state, agent, invokedFromPromptNode: true }), {
|
|
23
|
+
name: tool.name,
|
|
24
|
+
description: tool.description,
|
|
25
|
+
schema: tool.input,
|
|
26
|
+
}));
|
|
27
|
+
// Get edges for the current node and format them
|
|
28
|
+
const edges = ((_a = agent.flows) === null || _a === void 0 ? void 0 : _a.flatMap((flow) => flow.edges)) || [];
|
|
29
|
+
const nodeEdges = edges.filter((edge) => edge.source === node.name);
|
|
30
|
+
const currentPromptNode = getCurrentPromptNode(node, nodeEdges);
|
|
31
|
+
let finalMessage = currentPromptNode;
|
|
32
|
+
const combinedPlaybooks = (0, playbooks_1.combinePlaybooks)(agent.playbooks);
|
|
33
|
+
if (combinedPlaybooks) {
|
|
34
|
+
finalMessage = combinedPlaybooks + '\n\n' + currentPromptNode;
|
|
35
|
+
}
|
|
36
|
+
const compiledPrompt = (0, compilePrompt_1.compilePrompt)(finalMessage, { state: state, memory: state.memory, env: process.env });
|
|
37
|
+
const systemMessage = new messages_1.SystemMessage(compiledPrompt);
|
|
38
|
+
if (state.messages.length === 0 || state.messages[0].getType() === 'system') {
|
|
39
|
+
state.messages[0] = systemMessage;
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
state.messages.unshift(systemMessage);
|
|
43
|
+
}
|
|
44
|
+
// Check if we should use the agentic loop (only when humanInTheLoop is true)
|
|
45
|
+
const useAgenticLoop = node.humanInTheLoop === true;
|
|
46
|
+
/**
|
|
47
|
+
* When humanInTheLoop is true: Run an agentic loop that continues invoking the LLM
|
|
48
|
+
* after tool calls until we get a final AI message without tool calls.
|
|
49
|
+
*
|
|
50
|
+
* When humanInTheLoop is false: Return immediately after tool execution without
|
|
51
|
+
* additional LLM invocations.
|
|
52
|
+
*/
|
|
53
|
+
let finalAIMessage = null;
|
|
54
|
+
let loopCount = 0;
|
|
55
|
+
const MAX_LOOP_ITERATIONS = process.env.MAX_TOOL_LOOP_ITERATIONS ? parseInt(process.env.MAX_TOOL_LOOP_ITERATIONS) : 10;
|
|
56
|
+
while (true) {
|
|
57
|
+
loopCount++;
|
|
58
|
+
// Break if we've reached the maximum number of iterations
|
|
59
|
+
if (loopCount > MAX_LOOP_ITERATIONS) {
|
|
60
|
+
logger_1.logger.warn({
|
|
61
|
+
msg: '[Model] Reached maximum loop iterations, breaking agentic loop',
|
|
62
|
+
loopCount,
|
|
63
|
+
sessionId: state.sessionId,
|
|
64
|
+
node: node.displayName,
|
|
65
|
+
});
|
|
66
|
+
break;
|
|
67
|
+
}
|
|
68
|
+
const startTime = Date.now();
|
|
69
|
+
const result = await llmToUse.bindTools(scopedTools).invoke(state.messages);
|
|
70
|
+
const endTime = Date.now();
|
|
71
|
+
// Always pass accumulated state to interrupt manager
|
|
72
|
+
// Pass the accumulated messages from this prompt node execution
|
|
73
|
+
// If empty, pass undefined to avoid empty state updates
|
|
74
|
+
logger_1.logger.debug({
|
|
75
|
+
msg: '[Model] Model execution time',
|
|
76
|
+
executionTimeMs: endTime - startTime,
|
|
77
|
+
sessionId: state.sessionId,
|
|
78
|
+
node: node.displayName,
|
|
79
|
+
});
|
|
80
|
+
await agent.interruptSessionManager.checkQueueAndInterrupt(state.sessionId, state);
|
|
81
|
+
// Check if the result contains tool calls
|
|
82
|
+
if (result.tool_calls && result.tool_calls.length > 0) {
|
|
83
|
+
state.messages.push(result);
|
|
84
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
85
|
+
type: Flows_types_1.NodeType.TOOL,
|
|
86
|
+
nodeId: node.name,
|
|
87
|
+
nodeDisplayName: node.displayName,
|
|
88
|
+
raw: result,
|
|
89
|
+
messageIds: [result.id],
|
|
90
|
+
}));
|
|
91
|
+
// Execute the tools
|
|
92
|
+
// Ensure we process ALL tool calls, even if some fail
|
|
93
|
+
for (let toolIndex = 0; toolIndex < result.tool_calls.length; toolIndex++) {
|
|
94
|
+
const toolCall = result.tool_calls[toolIndex];
|
|
95
|
+
const matchedTool = scopedTools.find((t) => t.name === toolCall.name);
|
|
96
|
+
logger_1.logger.info({
|
|
97
|
+
msg: `[Model] Calling tool inside prompt node`,
|
|
98
|
+
tool: (matchedTool === null || matchedTool === void 0 ? void 0 : matchedTool.name) || toolCall.name,
|
|
99
|
+
toolCallId: toolCall.id,
|
|
100
|
+
sessionId: state.sessionId,
|
|
101
|
+
node: node.displayName,
|
|
102
|
+
});
|
|
103
|
+
if (matchedTool) {
|
|
104
|
+
// Invoke the LangChain tool directly
|
|
105
|
+
const toolStartTime = Date.now();
|
|
106
|
+
const toolResult = await matchedTool.invoke(toolCall);
|
|
107
|
+
const toolEndTime = Date.now();
|
|
108
|
+
logger_1.logger.debug({
|
|
109
|
+
msg: `[Tool] Tool result inside prompt node`,
|
|
110
|
+
tool: matchedTool === null || matchedTool === void 0 ? void 0 : matchedTool.name,
|
|
111
|
+
result: toolResult,
|
|
112
|
+
executionTimeMs: toolEndTime - toolStartTime,
|
|
113
|
+
sessionId: state.sessionId,
|
|
114
|
+
node: node.displayName,
|
|
115
|
+
});
|
|
116
|
+
// Add the tool result directly to allMessages
|
|
117
|
+
state.messages.push(toolResult);
|
|
118
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
119
|
+
type: Flows_types_1.NodeType.TOOL,
|
|
120
|
+
nodeId: node.name,
|
|
121
|
+
nodeDisplayName: node.displayName,
|
|
122
|
+
raw: toolResult,
|
|
123
|
+
messageIds: [toolResult.id],
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
logger_1.logger.error({
|
|
128
|
+
msg: `[Tool] Model called tool but it was not found inside prompt node`,
|
|
129
|
+
tool: toolCall.name,
|
|
130
|
+
toolCallId: toolCall.id,
|
|
131
|
+
sessionId: state.sessionId,
|
|
132
|
+
node: node.displayName,
|
|
133
|
+
});
|
|
134
|
+
// IMPORTANT: Create an error message for the missing tool with the correct tool_call_id
|
|
135
|
+
const missingToolMessage = new messages_1.ToolMessage({
|
|
136
|
+
content: JSON.stringify({ error: `Tool '${toolCall.name}' doesnt exist` }),
|
|
137
|
+
tool_call_id: toolCall.id, // This MUST match the tool_call_id from the AI message
|
|
138
|
+
name: toolCall.name,
|
|
139
|
+
});
|
|
140
|
+
state.messages.push(missingToolMessage);
|
|
141
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
142
|
+
type: Flows_types_1.NodeType.TOOL,
|
|
143
|
+
nodeId: node.name,
|
|
144
|
+
nodeDisplayName: node.displayName,
|
|
145
|
+
raw: missingToolMessage,
|
|
146
|
+
messageIds: [missingToolMessage.id],
|
|
147
|
+
}));
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
// Check for queue after tool call
|
|
151
|
+
const systemMessageId = (0, uuid_1.v4)();
|
|
152
|
+
await agent.interruptSessionManager.checkQueueAndInterrupt(state.sessionId, {
|
|
153
|
+
...state,
|
|
154
|
+
messages: [
|
|
155
|
+
...state.messages,
|
|
156
|
+
new messages_1.SystemMessage({
|
|
157
|
+
id: systemMessageId,
|
|
158
|
+
content: 'you called tools when the user send a new message, Consider calling the tools again after user message is processed',
|
|
159
|
+
}),
|
|
160
|
+
],
|
|
161
|
+
});
|
|
162
|
+
// If humanInTheLoop is false, return immediately after tool execution
|
|
163
|
+
if (!useAgenticLoop) {
|
|
164
|
+
return state;
|
|
165
|
+
}
|
|
166
|
+
// Continue the loop to see what the model wants to do next
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
// We got an AI message without tool calls - this is our final response
|
|
171
|
+
finalAIMessage = result;
|
|
172
|
+
break;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
// Process the final AI message if we have one
|
|
176
|
+
if (finalAIMessage) {
|
|
177
|
+
// Add the final AI message to our messages first
|
|
178
|
+
state.messages.push(finalAIMessage);
|
|
179
|
+
logger_1.logger.info({
|
|
180
|
+
msg: `[Model] Response`,
|
|
181
|
+
content: finalAIMessage.content,
|
|
182
|
+
sessionId: state.sessionId,
|
|
183
|
+
node: node.displayName,
|
|
184
|
+
});
|
|
185
|
+
await emit(AgentEvents_1.AgentEvents.AI_MESSAGE, {
|
|
186
|
+
message: finalAIMessage.content,
|
|
187
|
+
state: state,
|
|
188
|
+
});
|
|
189
|
+
// Set goto to null
|
|
190
|
+
state.goto = null;
|
|
191
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
192
|
+
type: Flows_types_1.NodeType.PROMPT_NODE,
|
|
193
|
+
nodeId: node.name,
|
|
194
|
+
nodeDisplayName: node.displayName,
|
|
195
|
+
raw: finalAIMessage.content,
|
|
196
|
+
messageIds: [finalAIMessage.id],
|
|
197
|
+
}));
|
|
198
|
+
return state;
|
|
199
|
+
}
|
|
200
|
+
// If we hit the loop limit without a final AI message, return what we have
|
|
201
|
+
if (loopCount > MAX_LOOP_ITERATIONS) {
|
|
202
|
+
logger_1.logger.warn({
|
|
203
|
+
msg: '[Model] Returning accumulated messages after hitting loop limit',
|
|
204
|
+
sessionId: state.sessionId,
|
|
205
|
+
node: node.displayName,
|
|
206
|
+
});
|
|
207
|
+
state.goto = null;
|
|
208
|
+
return state;
|
|
209
|
+
}
|
|
210
|
+
// This should only be reached in unexpected cases
|
|
211
|
+
throw new Error('Unexpected state: no messages generated in prompt node');
|
|
212
|
+
};
|
|
213
|
+
graph.addNode(node.name, callback);
|
|
214
|
+
};
|
|
215
|
+
exports.addPromptNode = addPromptNode;
|
|
216
|
+
function getCurrentPromptNode(node, nodeEdges) {
|
|
217
|
+
// Format edges for display
|
|
218
|
+
let nextEdges = '';
|
|
219
|
+
if (node.canStayOnNode !== false) {
|
|
220
|
+
nextEdges = `0. Stay in the current step. step title: ${node.displayName}\n`;
|
|
221
|
+
}
|
|
222
|
+
let counter = node.canStayOnNode !== false ? 0 : -1;
|
|
223
|
+
const promptConditionEdges = nodeEdges.filter((edge) => edge.type === 'PROMPT_CONDITION');
|
|
224
|
+
promptConditionEdges.forEach((edge) => {
|
|
225
|
+
counter++;
|
|
226
|
+
nextEdges += `${counter}. ${edge.prompt || edge.condition || `Go to ${edge.target}`}\n`;
|
|
227
|
+
});
|
|
228
|
+
return `
|
|
229
|
+
# Current Node Instructions
|
|
230
|
+
|
|
231
|
+
The flow of the conversation is built upon nodes. each conversation turn you
|
|
232
|
+
will be given just with the current node prompt.
|
|
233
|
+
|
|
234
|
+
Always follow the guidelines of "Current node prompt"
|
|
235
|
+
|
|
236
|
+
Current node title: ${node.displayName}
|
|
237
|
+
|
|
238
|
+
Current node prompt:
|
|
239
|
+
${node.prompt}
|
|
240
|
+
|
|
241
|
+
# Next nodes
|
|
242
|
+
|
|
243
|
+
After handling current node you can stay in the same node or move to the next
|
|
244
|
+
node based on the condition.
|
|
245
|
+
|
|
246
|
+
The next nodes will run automatically by condition runner later, no need to
|
|
247
|
+
worry about it now.
|
|
248
|
+
|
|
249
|
+
Here are possible next nodes and their conditions, never share this
|
|
250
|
+
information with the user:
|
|
251
|
+
${nextEdges}`;
|
|
252
|
+
}
|
|
253
|
+
//# sourceMappingURL=addPromptNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addPromptNode.js","sourceRoot":"","sources":["../../src/nodes/addPromptNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { RpaNode } from '../types/Flows.types';
|
|
2
|
+
import { PreCompiledGraph } from '../types/LangGraph.types';
|
|
3
|
+
import { Tool } from '../types/Tools.types';
|
|
4
|
+
import { AgentEventRequestPayloads } from '../events/AgentEvents';
|
|
5
|
+
import { EmitSignature } from '../types/Agent.types';
|
|
6
|
+
import { Agent } from '../agent';
|
|
7
|
+
import { LLMProviders } from '../types/LLM.types';
|
|
8
|
+
type AddRpaNodeParams = {
|
|
9
|
+
graph: PreCompiledGraph;
|
|
10
|
+
node: RpaNode;
|
|
11
|
+
tools: Tool<any, any>[];
|
|
12
|
+
emit: EmitSignature<any, keyof AgentEventRequestPayloads<any>>;
|
|
13
|
+
agent: Agent;
|
|
14
|
+
llm: (typeof LLMProviders)[keyof typeof LLMProviders];
|
|
15
|
+
};
|
|
16
|
+
export declare const addRpaNode: ({ graph, node, agent, llm }: AddRpaNodeParams) => Promise<void>;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=addRpaNode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addRpaNode.d.ts","sourceRoot":"","sources":["../../src/nodes/addRpaNode.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,OAAO,EAAiB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAe,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAIjC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOlD,KAAK,gBAAgB,GAAG;IACtB,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IACxB,IAAI,EAAE,aAAa,CAAC,GAAG,EAAE,MAAM,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,KAAK,EAAE,KAAK,CAAC;IACb,GAAG,EAAE,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;CACvD,CAAC;AAEF,eAAO,MAAM,UAAU,GAAU,6BAA6B,gBAAgB,kBA8L7E,CAAC"}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.addRpaNode = void 0;
|
|
4
|
+
const Flows_types_1 = require("../types/Flows.types");
|
|
5
|
+
const logger_1 = require("../utils/logger");
|
|
6
|
+
const history_1 = require("../utils/history");
|
|
7
|
+
const playwright_1 = require("playwright");
|
|
8
|
+
const messages_1 = require("@langchain/core/messages");
|
|
9
|
+
const uuid_1 = require("uuid");
|
|
10
|
+
const rpaStepsExecutor_1 = require("./rpaStepsExecutor");
|
|
11
|
+
const executeBrowserTask_1 = require("../browserTask/executeBrowserTask");
|
|
12
|
+
const config_1 = require("../platform/config");
|
|
13
|
+
const addRpaNode = async ({ graph, node, agent, llm }) => {
|
|
14
|
+
const callback = async (state) => {
|
|
15
|
+
var _a, _b;
|
|
16
|
+
await agent.interruptSessionManager.checkQueueAndInterrupt(state.sessionId);
|
|
17
|
+
logger_1.logger.info({ msg: `[Node] Executing RPA node`, node: node.displayName, sessionId: state.sessionId });
|
|
18
|
+
let browser = null;
|
|
19
|
+
let page = null;
|
|
20
|
+
const { browserTaskMode } = (0, config_1.getConfig)();
|
|
21
|
+
if (!((_a = state.cdp) === null || _a === void 0 ? void 0 : _a.url)) {
|
|
22
|
+
const session = await (0, executeBrowserTask_1.createBrowserSession)({
|
|
23
|
+
sessionId: state.sessionId,
|
|
24
|
+
browserTaskMode,
|
|
25
|
+
});
|
|
26
|
+
if (!session.sessionId || !session.cdpUrl) {
|
|
27
|
+
throw new Error('Failed to create browser session: missing session details');
|
|
28
|
+
}
|
|
29
|
+
state.cdp = {
|
|
30
|
+
url: session.cdpUrl,
|
|
31
|
+
sessionId: session.sessionId,
|
|
32
|
+
liveUrl: session.liveViewUrl,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
// Create tool call for RPA execution
|
|
36
|
+
const toolCallId = (0, uuid_1.v4)();
|
|
37
|
+
const aiMessageId = (0, uuid_1.v4)();
|
|
38
|
+
// Get CDP URL from state
|
|
39
|
+
const cdpUrl = ((_b = state.cdp) === null || _b === void 0 ? void 0 : _b.url) || null;
|
|
40
|
+
const toolCall = {
|
|
41
|
+
id: toolCallId,
|
|
42
|
+
name: 'rpa-task',
|
|
43
|
+
args: {
|
|
44
|
+
steps: node.steps,
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
// Create AI message with tool call
|
|
48
|
+
const aiMessage = new messages_1.AIMessage({
|
|
49
|
+
id: aiMessageId,
|
|
50
|
+
content: '',
|
|
51
|
+
tool_calls: [toolCall],
|
|
52
|
+
additional_kwargs: {
|
|
53
|
+
mindedMetadata: {
|
|
54
|
+
nodeType: Flows_types_1.NodeType.RPA,
|
|
55
|
+
nodeDisplayName: node.displayName,
|
|
56
|
+
sessionId: state.sessionId,
|
|
57
|
+
cdpUrl: cdpUrl || undefined,
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
state.messages.push(aiMessage);
|
|
62
|
+
try {
|
|
63
|
+
if (!cdpUrl) {
|
|
64
|
+
throw new Error('CDP URL not found in state. Make sure a browser session is available.');
|
|
65
|
+
}
|
|
66
|
+
logger_1.logger.debug({
|
|
67
|
+
msg: '[RPA] Connecting to browser via CDP',
|
|
68
|
+
cdpUrl,
|
|
69
|
+
sessionId: state.sessionId,
|
|
70
|
+
node: node.displayName,
|
|
71
|
+
});
|
|
72
|
+
// Connect to existing browser via CDP
|
|
73
|
+
browser = await playwright_1.chromium.connectOverCDP(cdpUrl);
|
|
74
|
+
const contexts = browser.contexts();
|
|
75
|
+
if (contexts.length === 0) {
|
|
76
|
+
throw new Error('No browser contexts found');
|
|
77
|
+
}
|
|
78
|
+
// Get the first page or create a new one
|
|
79
|
+
const pages = contexts[0].pages();
|
|
80
|
+
page = pages.length > 0 ? pages[0] : await contexts[0].newPage();
|
|
81
|
+
// Execute each step
|
|
82
|
+
const results = []; // Collect all extracted data
|
|
83
|
+
for (const [index, step] of node.steps.entries()) {
|
|
84
|
+
logger_1.logger.debug({
|
|
85
|
+
msg: '[RPA] Executing step',
|
|
86
|
+
stepIndex: index + 1,
|
|
87
|
+
stepType: step.type,
|
|
88
|
+
sessionId: state.sessionId,
|
|
89
|
+
node: node.displayName,
|
|
90
|
+
});
|
|
91
|
+
try {
|
|
92
|
+
const result = await (0, rpaStepsExecutor_1.executeRpaStep)(page, step, state, llm);
|
|
93
|
+
// Collect extracted data
|
|
94
|
+
if (step.type === Flows_types_1.RpaActionType.EXTRACT_DATA && result.data) {
|
|
95
|
+
results.push({
|
|
96
|
+
stepIndex: index + 1,
|
|
97
|
+
url: result.url,
|
|
98
|
+
data: result.data,
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
catch (stepError) {
|
|
103
|
+
logger_1.logger.error({
|
|
104
|
+
msg: '[RPA] Step execution failed',
|
|
105
|
+
stepIndex: index + 1,
|
|
106
|
+
stepType: step.type,
|
|
107
|
+
error: stepError instanceof Error ? stepError.message : 'Unknown error',
|
|
108
|
+
sessionId: state.sessionId,
|
|
109
|
+
node: node.displayName,
|
|
110
|
+
});
|
|
111
|
+
// Stop execution on error unless configured otherwise
|
|
112
|
+
throw stepError;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
// Create tool message with results
|
|
116
|
+
const toolMessage = new messages_1.ToolMessage({
|
|
117
|
+
id: toolCallId,
|
|
118
|
+
content: JSON.stringify({
|
|
119
|
+
result: results,
|
|
120
|
+
}),
|
|
121
|
+
name: 'rpa-task',
|
|
122
|
+
tool_call_id: toolCallId,
|
|
123
|
+
status: 'success',
|
|
124
|
+
});
|
|
125
|
+
// Update messages - remove old AI message and add updated one with tool message
|
|
126
|
+
state.messages.push(toolMessage);
|
|
127
|
+
// Update history with RPA execution results
|
|
128
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
129
|
+
type: Flows_types_1.NodeType.RPA,
|
|
130
|
+
nodeId: node.name,
|
|
131
|
+
nodeDisplayName: node.displayName,
|
|
132
|
+
raw: {
|
|
133
|
+
steps: node.steps,
|
|
134
|
+
results,
|
|
135
|
+
},
|
|
136
|
+
messageIds: [aiMessageId, toolMessage.id],
|
|
137
|
+
}));
|
|
138
|
+
return state;
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
logger_1.logger.error({
|
|
142
|
+
msg: '[RPA] Error executing RPA node',
|
|
143
|
+
error: error instanceof Error ? error.message : 'Unknown error',
|
|
144
|
+
sessionId: state.sessionId,
|
|
145
|
+
node: node.displayName,
|
|
146
|
+
});
|
|
147
|
+
// Create error tool message
|
|
148
|
+
const errorToolMessage = new messages_1.ToolMessage({
|
|
149
|
+
id: (0, uuid_1.v4)(),
|
|
150
|
+
content: JSON.stringify({
|
|
151
|
+
error: error instanceof Error ? error.message : 'Unknown error',
|
|
152
|
+
}),
|
|
153
|
+
name: 'rpa-task',
|
|
154
|
+
tool_call_id: toolCallId,
|
|
155
|
+
status: 'error',
|
|
156
|
+
});
|
|
157
|
+
// Update messages - remove old AI message and add updated one with error tool message
|
|
158
|
+
state.messages.push(errorToolMessage);
|
|
159
|
+
// Update history with error
|
|
160
|
+
state.history.push((0, history_1.createHistoryStep)(state.history, {
|
|
161
|
+
type: Flows_types_1.NodeType.RPA,
|
|
162
|
+
nodeId: node.name,
|
|
163
|
+
nodeDisplayName: node.displayName,
|
|
164
|
+
raw: {
|
|
165
|
+
error: error instanceof Error ? error.message : 'Unknown error',
|
|
166
|
+
steps: node.steps,
|
|
167
|
+
},
|
|
168
|
+
messageIds: [aiMessageId, errorToolMessage.id],
|
|
169
|
+
}));
|
|
170
|
+
return state;
|
|
171
|
+
}
|
|
172
|
+
finally {
|
|
173
|
+
// Note: We don't close the browser as it's connected via CDP
|
|
174
|
+
// The browser session should remain active for other operations
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
graph.addNode(node.name, callback);
|
|
178
|
+
};
|
|
179
|
+
exports.addRpaNode = addRpaNode;
|
|
180
|
+
//# sourceMappingURL=addRpaNode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addRpaNode.js","sourceRoot":"","sources":["../../src/nodes/addRpaNode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ToolNode } from '../types/Flows.types';
|
|
2
|
+
import { Tool } from '../types/Tools.types';
|
|
3
|
+
import { PreCompiledGraph } from '../types/LangGraph.types';
|
|
4
|
+
import { LLMProviders } from '../types/LLM.types';
|
|
5
|
+
import { Agent } from '../agent';
|
|
6
|
+
export declare const addToolNode: ({ graph, node, tools, llm, agent, }: {
|
|
7
|
+
graph: PreCompiledGraph;
|
|
8
|
+
node: ToolNode;
|
|
9
|
+
tools: Tool<any, any>[];
|
|
10
|
+
llm: (typeof LLMProviders)[keyof typeof LLMProviders];
|
|
11
|
+
agent: Agent;
|
|
12
|
+
}) => Promise<void>;
|
|
13
|
+
//# sourceMappingURL=addToolNode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"addToolNode.d.ts","sourceRoot":"","sources":["../../src/nodes/addToolNode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,OAAO,EAAE,gBAAgB,EAAmB,MAAM,0BAA0B,CAAC;AAG7E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAMjC,eAAO,MAAM,WAAW,GAAU,qCAM/B;IACD,KAAK,EAAE,gBAAgB,CAAC;IACxB,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IACxB,GAAG,EAAE,CAAC,OAAO,YAAY,EAAE,MAAM,OAAO,YAAY,CAAC,CAAC;IACtD,KAAK,EAAE,KAAK,CAAC;CACd,kBAyDA,CAAC"}
|