daycare-cli 2026.2.12 → 2026.2.23
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/dist/engine/agents/agent.d.ts.map +1 -1
- package/dist/engine/agents/agent.js +54 -24
- package/dist/engine/agents/agent.js.map +1 -1
- package/dist/engine/agents/agentSystem.d.ts +9 -1
- package/dist/engine/agents/agentSystem.d.ts.map +1 -1
- package/dist/engine/agents/agentSystem.js +25 -5
- package/dist/engine/agents/agentSystem.js.map +1 -1
- package/dist/engine/agents/ops/agentBackgroundList.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentBackgroundList.js +3 -1
- package/dist/engine/agents/ops/agentBackgroundList.js.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorCacheKey.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorCacheKey.js +2 -0
- package/dist/engine/agents/ops/agentDescriptorCacheKey.js.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorCacheKey.spec.js +3 -0
- package/dist/engine/agents/ops/agentDescriptorCacheKey.spec.js.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorIsHeartbeat.spec.js +1 -1
- package/dist/engine/agents/ops/agentDescriptorIsHeartbeat.spec.js.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorLabel.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorLabel.js +3 -0
- package/dist/engine/agents/ops/agentDescriptorLabel.js.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorLabel.spec.js +0 -1
- package/dist/engine/agents/ops/agentDescriptorLabel.spec.js.map +1 -1
- package/dist/engine/agents/ops/agentDescriptorTypes.d.ts +3 -0
- package/dist/engine/agents/ops/agentDescriptorTypes.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentHistoryContext.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentHistoryContext.js +14 -0
- package/dist/engine/agents/ops/agentHistoryContext.js.map +1 -1
- package/dist/engine/agents/ops/agentHistoryContext.spec.js +107 -0
- package/dist/engine/agents/ops/agentHistoryContext.spec.js.map +1 -1
- package/dist/engine/agents/ops/agentHistoryLoadAll.d.ts +3 -2
- package/dist/engine/agents/ops/agentHistoryLoadAll.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentHistoryLoadAll.js +4 -3
- package/dist/engine/agents/ops/agentHistoryLoadAll.js.map +1 -1
- package/dist/engine/agents/ops/agentLoopRun.d.ts +3 -0
- package/dist/engine/agents/ops/agentLoopRun.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentLoopRun.js +43 -7
- package/dist/engine/agents/ops/agentLoopRun.js.map +1 -1
- package/dist/engine/agents/ops/agentLoopRun.spec.js +108 -31
- package/dist/engine/agents/ops/agentLoopRun.spec.js.map +1 -1
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.d.ts +7 -0
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.d.ts.map +1 -0
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.js +16 -0
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.js.map +1 -0
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.spec.d.ts +2 -0
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.spec.d.ts.map +1 -0
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.spec.js +20 -0
- package/dist/engine/agents/ops/agentMessageRunPythonTerminalTrim.spec.js.map +1 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.d.ts +10 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.d.ts.map +1 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.js +48 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.js.map +1 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.spec.d.ts +2 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.spec.d.ts.map +1 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.spec.js +43 -0
- package/dist/engine/agents/ops/agentModelOverrideApply.spec.js.map +1 -0
- package/dist/engine/agents/ops/agentPromptResolve.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentPromptResolve.js +8 -0
- package/dist/engine/agents/ops/agentPromptResolve.js.map +1 -1
- package/dist/engine/agents/ops/agentPromptResolve.spec.js +8 -0
- package/dist/engine/agents/ops/agentPromptResolve.spec.js.map +1 -1
- package/dist/engine/agents/ops/agentSystemPrompt.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentSystemPrompt.js +8 -1
- package/dist/engine/agents/ops/agentSystemPrompt.js.map +1 -1
- package/dist/engine/agents/ops/agentSystemPrompt.spec.js +39 -8
- package/dist/engine/agents/ops/agentSystemPrompt.spec.js.map +1 -1
- package/dist/engine/agents/ops/agentSystemPromptContext.d.ts +2 -0
- package/dist/engine/agents/ops/agentSystemPromptContext.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.d.ts.map +1 -1
- package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.js +1 -3
- package/dist/engine/agents/ops/agentSystemPromptSectionPermissions.js.map +1 -1
- package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.js +15 -1
- package/dist/engine/agents/ops/agentSystemPromptSectionToolCalling.js.map +1 -1
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.d.ts +11 -0
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.d.ts.map +1 -0
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.js +17 -0
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.js.map +1 -0
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.spec.d.ts +2 -0
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.spec.d.ts.map +1 -0
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.spec.js +26 -0
- package/dist/engine/agents/ops/agentToolExecutionAllowlistResolve.spec.js.map +1 -0
- package/dist/engine/agents/ops/agentTypes.d.ts +8 -0
- package/dist/engine/agents/ops/agentTypes.d.ts.map +1 -1
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.d.ts +6 -0
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.d.ts.map +1 -0
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.js +21 -0
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.js.map +1 -0
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.spec.d.ts +2 -0
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.spec.d.ts.map +1 -0
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.spec.js +17 -0
- package/dist/engine/agents/ops/inferenceErrorAnthropicPromptOverflowTokensExtract.spec.js.map +1 -0
- package/dist/engine/agents/ops/messageContextReset.js +1 -1
- package/dist/engine/agents/ops/messageContextReset.js.map +1 -1
- package/dist/engine/agents/ops/messageContextReset.spec.js +1 -1
- package/dist/engine/agents/ops/messageContextReset.spec.js.map +1 -1
- package/dist/engine/agents/system/_systemAgents.d.ts.map +1 -1
- package/dist/engine/agents/system/_systemAgents.js +0 -5
- package/dist/engine/agents/system/_systemAgents.js.map +1 -1
- package/dist/engine/agents/system/systemAgentPromptResolve.spec.js +0 -6
- package/dist/engine/agents/system/systemAgentPromptResolve.spec.js.map +1 -1
- package/dist/engine/agents/system/systemAgentTagIs.spec.js +3 -4
- package/dist/engine/agents/system/systemAgentTagIs.spec.js.map +1 -1
- package/dist/engine/apps/appToolExecutorBuild.spec.js +11 -9
- package/dist/engine/apps/appToolExecutorBuild.spec.js.map +1 -1
- package/dist/engine/engine.d.ts +2 -0
- package/dist/engine/engine.d.ts.map +1 -1
- package/dist/engine/engine.js +18 -1
- package/dist/engine/engine.js.map +1 -1
- package/dist/engine/ipc/server.d.ts.map +1 -1
- package/dist/engine/ipc/server.js +21 -2
- package/dist/engine/ipc/server.js.map +1 -1
- package/dist/engine/ipc/serverMemoryRoutesRegister.d.ts +24 -0
- package/dist/engine/ipc/serverMemoryRoutesRegister.d.ts.map +1 -0
- package/dist/engine/ipc/serverMemoryRoutesRegister.js +54 -0
- package/dist/engine/ipc/serverMemoryRoutesRegister.js.map +1 -0
- package/dist/engine/ipc/serverMemoryRoutesRegister.spec.d.ts +2 -0
- package/dist/engine/ipc/serverMemoryRoutesRegister.spec.d.ts.map +1 -0
- package/dist/engine/ipc/serverMemoryRoutesRegister.spec.js +157 -0
- package/dist/engine/ipc/serverMemoryRoutesRegister.spec.js.map +1 -0
- package/dist/engine/memory/graph/graphNodeParse.d.ts +7 -0
- package/dist/engine/memory/graph/graphNodeParse.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphNodeParse.js +122 -0
- package/dist/engine/memory/graph/graphNodeParse.js.map +1 -0
- package/dist/engine/memory/graph/graphNodeParse.spec.d.ts +2 -0
- package/dist/engine/memory/graph/graphNodeParse.spec.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphNodeParse.spec.js +68 -0
- package/dist/engine/memory/graph/graphNodeParse.spec.js.map +1 -0
- package/dist/engine/memory/graph/graphNodeSerialize.d.ts +7 -0
- package/dist/engine/memory/graph/graphNodeSerialize.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphNodeSerialize.js +17 -0
- package/dist/engine/memory/graph/graphNodeSerialize.js.map +1 -0
- package/dist/engine/memory/graph/graphNodeSerialize.spec.d.ts +2 -0
- package/dist/engine/memory/graph/graphNodeSerialize.spec.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphNodeSerialize.spec.js +45 -0
- package/dist/engine/memory/graph/graphNodeSerialize.spec.js.map +1 -0
- package/dist/engine/memory/graph/graphRootNodeRead.d.ts +8 -0
- package/dist/engine/memory/graph/graphRootNodeRead.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphRootNodeRead.js +23 -0
- package/dist/engine/memory/graph/graphRootNodeRead.js.map +1 -0
- package/dist/engine/memory/graph/graphRootNodeRead.spec.d.ts +2 -0
- package/dist/engine/memory/graph/graphRootNodeRead.spec.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphRootNodeRead.spec.js +14 -0
- package/dist/engine/memory/graph/graphRootNodeRead.spec.js.map +1 -0
- package/dist/engine/memory/graph/graphStoreRead.d.ts +7 -0
- package/dist/engine/memory/graph/graphStoreRead.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphStoreRead.js +32 -0
- package/dist/engine/memory/graph/graphStoreRead.js.map +1 -0
- package/dist/engine/memory/graph/graphStoreRead.spec.d.ts +2 -0
- package/dist/engine/memory/graph/graphStoreRead.spec.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphStoreRead.spec.js +57 -0
- package/dist/engine/memory/graph/graphStoreRead.spec.js.map +1 -0
- package/dist/engine/memory/graph/graphStoreWrite.d.ts +7 -0
- package/dist/engine/memory/graph/graphStoreWrite.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphStoreWrite.js +18 -0
- package/dist/engine/memory/graph/graphStoreWrite.js.map +1 -0
- package/dist/engine/memory/graph/graphStoreWrite.spec.d.ts +2 -0
- package/dist/engine/memory/graph/graphStoreWrite.spec.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphStoreWrite.spec.js +50 -0
- package/dist/engine/memory/graph/graphStoreWrite.spec.js.map +1 -0
- package/dist/engine/memory/graph/graphTreeBuild.d.ts +9 -0
- package/dist/engine/memory/graph/graphTreeBuild.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphTreeBuild.js +85 -0
- package/dist/engine/memory/graph/graphTreeBuild.js.map +1 -0
- package/dist/engine/memory/graph/graphTreeBuild.spec.d.ts +2 -0
- package/dist/engine/memory/graph/graphTreeBuild.spec.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphTreeBuild.spec.js +46 -0
- package/dist/engine/memory/graph/graphTreeBuild.spec.js.map +1 -0
- package/dist/engine/memory/graph/graphTypes.d.ts +19 -0
- package/dist/engine/memory/graph/graphTypes.d.ts.map +1 -0
- package/dist/engine/memory/graph/graphTypes.js +2 -0
- package/dist/engine/memory/graph/graphTypes.js.map +1 -0
- package/dist/engine/memory/infer/inferObservations.d.ts +22 -0
- package/dist/engine/memory/infer/inferObservations.d.ts.map +1 -0
- package/dist/engine/memory/infer/inferObservations.js +71 -0
- package/dist/engine/memory/infer/inferObservations.js.map +1 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.d.ts +9 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.d.ts.map +1 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.js +50 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.js.map +1 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.spec.d.ts +2 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.spec.d.ts.map +1 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.spec.js +109 -0
- package/dist/engine/memory/infer/utils/formatHistoryMessages.spec.js.map +1 -0
- package/dist/engine/memory/infer/utils/parseObservations.d.ts +7 -0
- package/dist/engine/memory/infer/utils/parseObservations.d.ts.map +1 -0
- package/dist/engine/memory/infer/utils/parseObservations.js +24 -0
- package/dist/engine/memory/infer/utils/parseObservations.js.map +1 -0
- package/dist/engine/memory/infer/utils/parseObservations.spec.d.ts +2 -0
- package/dist/engine/memory/infer/utils/parseObservations.spec.d.ts.map +1 -0
- package/dist/engine/memory/infer/utils/parseObservations.spec.js +31 -0
- package/dist/engine/memory/infer/utils/parseObservations.spec.js.map +1 -0
- package/dist/engine/memory/memory.d.ts +18 -0
- package/dist/engine/memory/memory.d.ts.map +1 -0
- package/dist/engine/memory/memory.js +71 -0
- package/dist/engine/memory/memory.js.map +1 -0
- package/dist/engine/memory/memory.spec.d.ts +2 -0
- package/dist/engine/memory/memory.spec.d.ts.map +1 -0
- package/dist/engine/memory/memory.spec.js +68 -0
- package/dist/engine/memory/memory.spec.js.map +1 -0
- package/dist/engine/memory/memorySessionObserve.d.ts +14 -2
- package/dist/engine/memory/memorySessionObserve.d.ts.map +1 -1
- package/dist/engine/memory/memorySessionObserve.js +13 -3
- package/dist/engine/memory/memorySessionObserve.js.map +1 -1
- package/dist/engine/memory/memorySessionObserve.spec.js +129 -4
- package/dist/engine/memory/memorySessionObserve.spec.js.map +1 -1
- package/dist/engine/memory/memoryWorker.d.ts +19 -2
- package/dist/engine/memory/memoryWorker.d.ts.map +1 -1
- package/dist/engine/memory/memoryWorker.js +46 -10
- package/dist/engine/memory/memoryWorker.js.map +1 -1
- package/dist/engine/memory/memoryWorker.spec.js +136 -21
- package/dist/engine/memory/memoryWorker.spec.js.map +1 -1
- package/dist/engine/memory/observationLogAppend.d.ts +9 -0
- package/dist/engine/memory/observationLogAppend.d.ts.map +1 -0
- package/dist/engine/memory/observationLogAppend.js +26 -0
- package/dist/engine/memory/observationLogAppend.js.map +1 -0
- package/dist/engine/memory/observationLogAppend.spec.d.ts +2 -0
- package/dist/engine/memory/observationLogAppend.spec.d.ts.map +1 -0
- package/dist/engine/memory/observationLogAppend.spec.js +67 -0
- package/dist/engine/memory/observationLogAppend.spec.js.map +1 -0
- package/dist/engine/modules/executablePrompts/executablePromptExpand.d.ts.map +1 -1
- package/dist/engine/modules/executablePrompts/executablePromptExpand.js +2 -1
- package/dist/engine/modules/executablePrompts/executablePromptExpand.js.map +1 -1
- package/dist/engine/modules/executablePrompts/executablePromptExpand.spec.js +1 -0
- package/dist/engine/modules/executablePrompts/executablePromptExpand.spec.js.map +1 -1
- package/dist/engine/modules/inference/router.d.ts +1 -0
- package/dist/engine/modules/inference/router.d.ts.map +1 -1
- package/dist/engine/modules/inference/router.js +1 -0
- package/dist/engine/modules/inference/router.js.map +1 -1
- package/dist/engine/modules/rlm/rlmExecute.d.ts.map +1 -1
- package/dist/engine/modules/rlm/rlmExecute.js +2 -1
- package/dist/engine/modules/rlm/rlmExecute.js.map +1 -1
- package/dist/engine/modules/rlm/rlmExecute.spec.js +1 -0
- package/dist/engine/modules/rlm/rlmExecute.spec.js.map +1 -1
- package/dist/engine/modules/rlm/rlmRestore.d.ts.map +1 -1
- package/dist/engine/modules/rlm/rlmRestore.js +2 -1
- package/dist/engine/modules/rlm/rlmRestore.js.map +1 -1
- package/dist/engine/modules/rlm/rlmRestore.spec.js +1 -0
- package/dist/engine/modules/rlm/rlmRestore.spec.js.map +1 -1
- package/dist/engine/modules/rlm/rlmResultTextBuild.d.ts.map +1 -1
- package/dist/engine/modules/rlm/rlmResultTextBuild.js +12 -3
- package/dist/engine/modules/rlm/rlmResultTextBuild.js.map +1 -1
- package/dist/engine/modules/rlm/rlmResultTextBuild.spec.d.ts +2 -0
- package/dist/engine/modules/rlm/rlmResultTextBuild.spec.d.ts.map +1 -0
- package/dist/engine/modules/rlm/rlmResultTextBuild.spec.js +32 -0
- package/dist/engine/modules/rlm/rlmResultTextBuild.spec.js.map +1 -0
- package/dist/engine/modules/rlm/rlmTool.d.ts.map +1 -1
- package/dist/engine/modules/rlm/rlmTool.js +2 -1
- package/dist/engine/modules/rlm/rlmTool.js.map +1 -1
- package/dist/engine/modules/rlm/rlmTool.spec.js +73 -0
- package/dist/engine/modules/rlm/rlmTool.spec.js.map +1 -1
- package/dist/engine/modules/rlm/rlmToolResultBuild.d.ts.map +1 -1
- package/dist/engine/modules/rlm/rlmToolResultBuild.js +5 -2
- package/dist/engine/modules/rlm/rlmToolResultBuild.js.map +1 -1
- package/dist/engine/modules/rlm/rlmToolResultBuild.spec.d.ts +2 -0
- package/dist/engine/modules/rlm/rlmToolResultBuild.spec.d.ts.map +1 -0
- package/dist/engine/modules/rlm/rlmToolResultBuild.spec.js +25 -0
- package/dist/engine/modules/rlm/rlmToolResultBuild.spec.js.map +1 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.d.ts +9 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.d.ts.map +1 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.js +18 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.js.map +1 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.spec.d.ts +2 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.spec.d.ts.map +1 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.spec.js +77 -0
- package/dist/engine/modules/rlm/rlmToolsForContextResolve.spec.js.map +1 -0
- package/dist/engine/modules/toolResolver.d.ts +3 -2
- package/dist/engine/modules/toolResolver.d.ts.map +1 -1
- package/dist/engine/modules/toolResolver.js +31 -9
- package/dist/engine/modules/toolResolver.js.map +1 -1
- package/dist/engine/modules/toolResolver.spec.js +101 -0
- package/dist/engine/modules/toolResolver.spec.js.map +1 -1
- package/dist/engine/modules/tools/agentModelSetToolBuild.d.ts +10 -0
- package/dist/engine/modules/tools/agentModelSetToolBuild.d.ts.map +1 -0
- package/dist/engine/modules/tools/agentModelSetToolBuild.js +94 -0
- package/dist/engine/modules/tools/agentModelSetToolBuild.js.map +1 -0
- package/dist/engine/modules/tools/agentModelSetToolBuild.spec.d.ts +2 -0
- package/dist/engine/modules/tools/agentModelSetToolBuild.spec.d.ts.map +1 -0
- package/dist/engine/modules/tools/agentModelSetToolBuild.spec.js +45 -0
- package/dist/engine/modules/tools/agentModelSetToolBuild.spec.js.map +1 -0
- package/dist/engine/modules/tools/channelSendTool.js +3 -0
- package/dist/engine/modules/tools/channelSendTool.js.map +1 -1
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.d.ts +8 -0
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.d.ts.map +1 -0
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.js +99 -0
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.js.map +1 -0
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.spec.d.ts +2 -0
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.spec.d.ts.map +1 -0
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.spec.js +112 -0
- package/dist/engine/modules/tools/memoryNodeReadToolBuild.spec.js.map +1 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.d.ts +10 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.d.ts.map +1 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.js +115 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.js.map +1 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.spec.d.ts +2 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.spec.d.ts.map +1 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.spec.js +163 -0
- package/dist/engine/modules/tools/memoryNodeWriteToolBuild.spec.js.map +1 -0
- package/dist/engine/modules/tools/toolResultTruncate.d.ts +1 -1
- package/dist/engine/modules/tools/toolResultTruncate.d.ts.map +1 -1
- package/dist/engine/modules/tools/toolResultTruncate.js +46 -22
- package/dist/engine/modules/tools/toolResultTruncate.js.map +1 -1
- package/dist/engine/modules/tools/toolResultTruncate.spec.js +28 -2
- package/dist/engine/modules/tools/toolResultTruncate.spec.js.map +1 -1
- package/dist/engine/modules/tools/types.d.ts +10 -1
- package/dist/engine/modules/tools/types.d.ts.map +1 -1
- package/dist/engine/permissions/permissionBuildUser.d.ts.map +1 -1
- package/dist/engine/permissions/permissionBuildUser.js +5 -1
- package/dist/engine/permissions/permissionBuildUser.js.map +1 -1
- package/dist/engine/permissions/permissionBuildUser.spec.js +2 -1
- package/dist/engine/permissions/permissionBuildUser.spec.js.map +1 -1
- package/dist/engine/permissions.d.ts +1 -0
- package/dist/engine/permissions.d.ts.map +1 -1
- package/dist/engine/permissions.js +12 -2
- package/dist/engine/permissions.js.map +1 -1
- package/dist/engine/plugins/descriptor.d.ts +2 -2
- package/dist/engine/processes/processes.js +2 -1
- package/dist/engine/processes/processes.js.map +1 -1
- package/dist/engine/processes/processes.spec.js +5 -3
- package/dist/engine/processes/processes.spec.js.map +1 -1
- package/dist/engine/users/userHome.d.ts +1 -0
- package/dist/engine/users/userHome.d.ts.map +1 -1
- package/dist/engine/users/userHome.js +2 -0
- package/dist/engine/users/userHome.js.map +1 -1
- package/dist/engine/users/userHome.spec.js +1 -0
- package/dist/engine/users/userHome.spec.js.map +1 -1
- package/dist/engine/users/userHomeEnsure.d.ts.map +1 -1
- package/dist/engine/users/userHomeEnsure.js +1 -0
- package/dist/engine/users/userHomeEnsure.js.map +1 -1
- package/dist/engine/users/userHomeEnsure.spec.js +1 -0
- package/dist/engine/users/userHomeEnsure.spec.js.map +1 -1
- package/dist/plugins/dashboard/site/404.html +1 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/{315-7c3dbac7865a2549.js → 129-0781090dbd74ef24.js} +1 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/315-e0c2965b599a90c8.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/agent/page-2d345f6346edc077.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/agents/page-326ff3cf564198c7.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/automations/page-6a39540c21d6b25b.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/connectors/page-92a732501885071f.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/memory/page-74c0b70421c567ab.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/page-c4cbe1c7aca2ecd7.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/processes/page-bf7900fe583d361e.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/providers/page-b2e79cb03244c267.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/signals/page-2992aa1807b6fdab.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/app/telemetry/{page-98aa9367902606e3.js → page-eabe78b4fbbf1439.js} +1 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/tools/page-4a2e5a16190af659.js +1 -0
- package/dist/plugins/dashboard/site/_next/static/chunks/{main-2004b9415696334d.js → main-5352cc0d54d797b4.js} +1 -1
- package/dist/plugins/dashboard/site/_next/static/css/42d76d007d742231.css +5 -0
- package/dist/plugins/dashboard/site/agent.html +1 -1
- package/dist/plugins/dashboard/site/agent.txt +2 -2
- package/dist/plugins/dashboard/site/agents.html +1 -1
- package/dist/plugins/dashboard/site/agents.txt +2 -2
- package/dist/plugins/dashboard/site/automations.html +1 -1
- package/dist/plugins/dashboard/site/automations.txt +2 -2
- package/dist/plugins/dashboard/site/connectors.html +1 -1
- package/dist/plugins/dashboard/site/connectors.txt +2 -2
- package/dist/plugins/dashboard/site/index.html +2 -2
- package/dist/plugins/dashboard/site/index.txt +2 -2
- package/dist/plugins/dashboard/site/memory.html +1 -0
- package/dist/plugins/dashboard/site/memory.txt +7 -0
- package/dist/plugins/dashboard/site/processes.html +1 -1
- package/dist/plugins/dashboard/site/processes.txt +2 -2
- package/dist/plugins/dashboard/site/providers.html +1 -1
- package/dist/plugins/dashboard/site/providers.txt +2 -2
- package/dist/plugins/dashboard/site/signals.html +1 -1
- package/dist/plugins/dashboard/site/signals.txt +2 -2
- package/dist/plugins/dashboard/site/telemetry.html +2 -2
- package/dist/plugins/dashboard/site/telemetry.txt +2 -2
- package/dist/plugins/dashboard/site/tools.html +1 -1
- package/dist/plugins/dashboard/site/tools.txt +2 -2
- package/dist/plugins/shell/tool.d.ts +1 -0
- package/dist/plugins/shell/tool.d.ts.map +1 -1
- package/dist/plugins/shell/tool.js +16 -5
- package/dist/plugins/shell/tool.js.map +1 -1
- package/dist/plugins/shell/tool.spec.js +33 -6
- package/dist/plugins/shell/tool.spec.js.map +1 -1
- package/dist/prompts/SYSTEM_AGENCY.md +1 -1
- package/dist/prompts/SYSTEM_PERMISSIONS.md +4 -25
- package/dist/prompts/memory/MEMORY_AGENT.md +148 -0
- package/dist/prompts/memory/MEMORY_ROOT.md +322 -0
- package/dist/prompts/memory/OBSERVE.md +74 -0
- package/dist/sandbox/runtime.spec.js +3 -1
- package/dist/sandbox/runtime.spec.js.map +1 -1
- package/dist/sandbox/sandboxCanRead.d.ts.map +1 -1
- package/dist/sandbox/sandboxCanRead.js +26 -2
- package/dist/sandbox/sandboxCanRead.js.map +1 -1
- package/dist/sandbox/sandboxCanRead.spec.js +51 -8
- package/dist/sandbox/sandboxCanRead.spec.js.map +1 -1
- package/dist/sandbox/sandboxCanWrite.d.ts.map +1 -1
- package/dist/sandbox/sandboxCanWrite.js +11 -0
- package/dist/sandbox/sandboxCanWrite.js.map +1 -1
- package/dist/sandbox/sandboxCanWrite.spec.js +32 -1
- package/dist/sandbox/sandboxCanWrite.spec.js.map +1 -1
- package/dist/sandbox/sandboxDangerousFileCheck.d.ts +11 -0
- package/dist/sandbox/sandboxDangerousFileCheck.d.ts.map +1 -0
- package/dist/sandbox/sandboxDangerousFileCheck.js +37 -0
- package/dist/sandbox/sandboxDangerousFileCheck.js.map +1 -0
- package/dist/sandbox/sandboxDangerousFileCheck.spec.d.ts +2 -0
- package/dist/sandbox/sandboxDangerousFileCheck.spec.d.ts.map +1 -0
- package/dist/sandbox/sandboxDangerousFileCheck.spec.js +25 -0
- package/dist/sandbox/sandboxDangerousFileCheck.spec.js.map +1 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.d.ts +11 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.d.ts.map +1 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.js +23 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.js.map +1 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.spec.d.ts +2 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.spec.d.ts.map +1 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.spec.js +31 -0
- package/dist/sandbox/sandboxDangerousFilesBuild.spec.js.map +1 -0
- package/dist/sandbox/sandboxFilesystemPolicyBuild.d.ts.map +1 -1
- package/dist/sandbox/sandboxFilesystemPolicyBuild.js +5 -47
- package/dist/sandbox/sandboxFilesystemPolicyBuild.js.map +1 -1
- package/dist/sandbox/sandboxPathDenyCheck.d.ts +6 -0
- package/dist/sandbox/sandboxPathDenyCheck.d.ts.map +1 -0
- package/dist/sandbox/sandboxPathDenyCheck.js +26 -0
- package/dist/sandbox/sandboxPathDenyCheck.js.map +1 -0
- package/dist/sandbox/sandboxPathDenyCheck.spec.d.ts +2 -0
- package/dist/sandbox/sandboxPathDenyCheck.spec.d.ts.map +1 -0
- package/dist/sandbox/sandboxPathDenyCheck.spec.js +23 -0
- package/dist/sandbox/sandboxPathDenyCheck.spec.js.map +1 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.d.ts +11 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.d.ts.map +1 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.js +63 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.js.map +1 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.spec.d.ts +2 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.spec.d.ts.map +1 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.spec.js +52 -0
- package/dist/sandbox/sandboxSensitiveDenyPathsBuild.spec.js.map +1 -0
- package/dist/skills/memory-document/SKILL.md +134 -0
- package/dist/skills/skills/memory-document/SKILL.md +134 -0
- package/dist/storage/historyRepository.d.ts +1 -1
- package/dist/storage/historyRepository.d.ts.map +1 -1
- package/dist/storage/historyRepository.js +5 -5
- package/dist/storage/historyRepository.js.map +1 -1
- package/dist/storage/processesRepository.js +9 -3
- package/dist/storage/processesRepository.js.map +1 -1
- package/dist/types.d.ts +4 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/stringTruncateHeadTail.d.ts +6 -0
- package/dist/utils/stringTruncateHeadTail.d.ts.map +1 -0
- package/dist/utils/stringTruncateHeadTail.js +18 -0
- package/dist/utils/stringTruncateHeadTail.js.map +1 -0
- package/dist/utils/stringTruncateHeadTail.spec.d.ts +2 -0
- package/dist/utils/stringTruncateHeadTail.spec.d.ts.map +1 -0
- package/dist/utils/stringTruncateHeadTail.spec.js +20 -0
- package/dist/utils/stringTruncateHeadTail.spec.js.map +1 -0
- package/dist/utils/stringTruncateTail.d.ts +6 -0
- package/dist/utils/stringTruncateTail.d.ts.map +1 -0
- package/dist/utils/stringTruncateTail.js +15 -0
- package/dist/utils/stringTruncateTail.js.map +1 -0
- package/dist/utils/stringTruncateTail.spec.d.ts +2 -0
- package/dist/utils/stringTruncateTail.spec.d.ts.map +1 -0
- package/dist/utils/stringTruncateTail.spec.js +19 -0
- package/dist/utils/stringTruncateTail.spec.js.map +1 -0
- package/package.json +1 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/668-ebfa412e61ce0ba6.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/agent/page-22dfc72e39faa099.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/agents/page-7b0c562c7534861a.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/automations/page-6245088e82da3e1c.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/connectors/page-036fb8590b50cc57.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/page-8c0afc21c643ff8b.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/processes/page-98da30b493398bf7.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/providers/page-f0d02a91a69b9eb8.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/signals/page-44ccbe1e003b1905.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/chunks/app/tools/page-6ff89d201c006847.js +0 -1
- package/dist/plugins/dashboard/site/_next/static/css/5e0d68fc118b66c8.css +0 -5
- package/dist/prompts/ACTORS.md +0 -37
- package/dist/prompts/ARCHITECT.md +0 -36
- package/dist/prompts/PERMISSIONS.md +0 -63
- /package/dist/plugins/dashboard/site/_next/static/{dkIRezLpmA4xSr6Bj5DQ6 → 9-NVJBP-YwBbxw-w3gjmQ}/_buildManifest.js +0 -0
- /package/dist/plugins/dashboard/site/_next/static/{dkIRezLpmA4xSr6Bj5DQ6 → 9-NVJBP-YwBbxw-w3gjmQ}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentLoopRun.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,gBAAgB,EAAqB,MAAM,qBAAqB,CAAC;AAE1F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AACnC,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEhF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"agentLoopRun.d.ts","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,10 @@ import { agentHistoryPendingToolResults } from "./agentHistoryPendingToolResults
|
|
|
23
23
|
import { agentInferencePromptWrite } from "./agentInferencePromptWrite.js";
|
|
24
24
|
import { agentMessageRunPythonFailureTrim } from "./agentMessageRunPythonFailureTrim.js";
|
|
25
25
|
import { agentMessageRunPythonSayAfterTrim } from "./agentMessageRunPythonSayAfterTrim.js";
|
|
26
|
+
import { agentMessageRunPythonTerminalTrim } from "./agentMessageRunPythonTerminalTrim.js";
|
|
27
|
+
import { agentToolExecutionAllowlistResolve } from "./agentToolExecutionAllowlistResolve.js";
|
|
26
28
|
import { inferenceErrorAnthropicPromptOverflowIs } from "./inferenceErrorAnthropicPromptOverflowIs.js";
|
|
29
|
+
import { inferenceErrorAnthropicPromptOverflowTokensExtract } from "./inferenceErrorAnthropicPromptOverflowTokensExtract.js";
|
|
27
30
|
import { tokensResolve } from "./tokensResolve.js";
|
|
28
31
|
const MAX_TOOL_ITERATIONS = 500; // Make this big enough to handle complex tasks
|
|
29
32
|
/**
|
|
@@ -31,7 +34,7 @@ const MAX_TOOL_ITERATIONS = 500; // Make this big enough to handle complex tasks
|
|
|
31
34
|
* Expects: context already includes the user message and system prompt.
|
|
32
35
|
*/
|
|
33
36
|
export async function agentLoopRun(options) {
|
|
34
|
-
const { entry, agent, source, context, connector, connectorRegistry, inferenceRouter, toolResolver, fileStore, authStore, eventBus, assistant, agentSystem, heartbeats, skills, providersForAgent, verbose, logger, abortSignal, appendHistoryRecord, notifySubagentFailure } = options;
|
|
37
|
+
const { entry, agent, source, context, connector, connectorRegistry, inferenceRouter, toolResolver, fileStore, authStore, eventBus, assistant, agentSystem, heartbeats, memory, skills, providersForAgent, verbose, logger, abortSignal, appendHistoryRecord, notifySubagentFailure } = options;
|
|
35
38
|
let response = null;
|
|
36
39
|
let skipTurnDetected = false;
|
|
37
40
|
let toolLoopExceeded = false;
|
|
@@ -48,15 +51,24 @@ export async function agentLoopRun(options) {
|
|
|
48
51
|
const agentKind = agent.descriptor.type === "user" ? "foreground" : "background";
|
|
49
52
|
const target = agentDescriptorTargetResolve(agent.descriptor);
|
|
50
53
|
const targetId = target?.targetId ?? null;
|
|
54
|
+
const toolVisibilityContext = {
|
|
55
|
+
userId: agent.userId,
|
|
56
|
+
agentId: agent.id,
|
|
57
|
+
descriptor: agent.descriptor
|
|
58
|
+
};
|
|
59
|
+
const allowedToolNames = agentToolExecutionAllowlistResolve(agent.descriptor, {
|
|
60
|
+
rlmEnabled: agentSystem.config.current.features.rlm
|
|
61
|
+
});
|
|
51
62
|
logger.debug(`start: Starting typing indicator targetId=${targetId ?? "none"}`);
|
|
52
63
|
const stopTyping = targetId ? connector?.startTyping?.(targetId) : null;
|
|
53
64
|
try {
|
|
54
65
|
logger.debug(`start: Starting inference loop maxIterations=${MAX_TOOL_ITERATIONS}`);
|
|
55
66
|
for (let iteration = 0; iteration < MAX_TOOL_ITERATIONS; iteration += 1) {
|
|
56
67
|
const noToolsModeEnabled = rlmNoToolsModeIs(agentSystem.config.current.features);
|
|
68
|
+
let availableTools = toolResolver.listToolsForAgent(toolVisibilityContext);
|
|
57
69
|
try {
|
|
58
70
|
activeSkills = await skills.list();
|
|
59
|
-
|
|
71
|
+
availableTools = toolResolver.listToolsForAgent(toolVisibilityContext);
|
|
60
72
|
const rlmToolDescription = agentSystem.config.current.features.rlm && !noToolsModeEnabled
|
|
61
73
|
? await rlmToolDescriptionBuild(availableTools)
|
|
62
74
|
: undefined;
|
|
@@ -90,6 +102,11 @@ export async function agentLoopRun(options) {
|
|
|
90
102
|
}
|
|
91
103
|
response = await inferenceRouter.complete(context, inferenceSessionId, {
|
|
92
104
|
providersOverride: providersForAgent,
|
|
105
|
+
providerOptions: noToolsModeEnabled
|
|
106
|
+
? {
|
|
107
|
+
stop: ["</run_python>"]
|
|
108
|
+
}
|
|
109
|
+
: undefined,
|
|
93
110
|
signal: abortSignal,
|
|
94
111
|
onAttempt: (providerId, modelId) => {
|
|
95
112
|
logger.debug(`start: Inference attempt starting providerId=${providerId} modelId=${modelId} agentId=${agent.id}`);
|
|
@@ -142,7 +159,15 @@ export async function agentLoopRun(options) {
|
|
|
142
159
|
}
|
|
143
160
|
logger.debug(`receive: Inference response received providerId=${response.providerId} modelId=${response.modelId} stopReason=${response.message.stopReason}`);
|
|
144
161
|
context.messages.push(response.message);
|
|
145
|
-
|
|
162
|
+
let responseText = messageExtractText(response.message);
|
|
163
|
+
if (noToolsModeEnabled && responseText) {
|
|
164
|
+
const terminalTrimmed = agentMessageRunPythonTerminalTrim(responseText);
|
|
165
|
+
if (terminalTrimmed !== null) {
|
|
166
|
+
responseText = terminalTrimmed;
|
|
167
|
+
messageAssistantTextRewrite(response.message, terminalTrimmed);
|
|
168
|
+
logger.debug("event: Trimmed inline RLM assistant text at first </run_python>");
|
|
169
|
+
}
|
|
170
|
+
}
|
|
146
171
|
let historyResponseText = responseText ?? "";
|
|
147
172
|
const pendingHistoryRewrites = [];
|
|
148
173
|
const toolCalls = messageExtractToolCalls(response.message);
|
|
@@ -315,7 +340,7 @@ export async function agentLoopRun(options) {
|
|
|
315
340
|
}
|
|
316
341
|
if (noToolsModeEnabled) {
|
|
317
342
|
if (hasRunPythonTag) {
|
|
318
|
-
const preamble = montyRuntimePreambleBuild(
|
|
343
|
+
const preamble = montyRuntimePreambleBuild(availableTools);
|
|
319
344
|
const executionContext = {
|
|
320
345
|
connectorRegistry,
|
|
321
346
|
fileStore,
|
|
@@ -329,10 +354,12 @@ export async function agentLoopRun(options) {
|
|
|
329
354
|
messageContext: entry.context,
|
|
330
355
|
agentSystem,
|
|
331
356
|
heartbeats,
|
|
357
|
+
memory,
|
|
332
358
|
toolResolver,
|
|
333
359
|
skills: activeSkills,
|
|
334
360
|
appendHistoryRecord,
|
|
335
|
-
rlmToolOnly: false
|
|
361
|
+
rlmToolOnly: false,
|
|
362
|
+
allowedToolNames
|
|
336
363
|
};
|
|
337
364
|
for (let index = 0; index < runPythonCodes.length; index += 1) {
|
|
338
365
|
const runPythonCode = runPythonCodes[index];
|
|
@@ -438,10 +465,12 @@ export async function agentLoopRun(options) {
|
|
|
438
465
|
messageContext: entry.context,
|
|
439
466
|
agentSystem,
|
|
440
467
|
heartbeats,
|
|
468
|
+
memory,
|
|
441
469
|
toolResolver,
|
|
442
470
|
skills: activeSkills,
|
|
443
471
|
appendHistoryRecord,
|
|
444
|
-
rlmToolOnly: agentSystem.config.current.features.rlm
|
|
472
|
+
rlmToolOnly: agentSystem.config.current.features.rlm,
|
|
473
|
+
allowedToolNames
|
|
445
474
|
});
|
|
446
475
|
logger.debug(`event: Tool execution completed toolName=${toolCall.name} isError=${toolResult.toolMessage.isError}`);
|
|
447
476
|
if (verbose && !suppressUserOutput && connector && targetId) {
|
|
@@ -587,8 +616,15 @@ export async function agentLoopRun(options) {
|
|
|
587
616
|
providerId: response.providerId,
|
|
588
617
|
errorMessage: response.message.errorMessage
|
|
589
618
|
})) {
|
|
619
|
+
const contextOverflowTokens = inferenceErrorAnthropicPromptOverflowTokensExtract(response.message.errorMessage);
|
|
590
620
|
logger.warn(`error: Inference returned Anthropic prompt overflow response provider=${response.providerId} model=${response.modelId} stopReason=${response.message.stopReason} error=${errorDetail}`);
|
|
591
|
-
return {
|
|
621
|
+
return {
|
|
622
|
+
responseText: finalResponseText,
|
|
623
|
+
historyRecords,
|
|
624
|
+
contextOverflow: true,
|
|
625
|
+
contextOverflowTokens,
|
|
626
|
+
tokenStatsUpdates
|
|
627
|
+
};
|
|
592
628
|
}
|
|
593
629
|
const message = "Inference failed.";
|
|
594
630
|
logger.warn(`error: Inference returned error response provider=${response.providerId} model=${response.modelId} stopReason=${response.message.stopReason} error=${errorDetail}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentLoopRun.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agentLoopRun.js","sourceRoot":"","sources":["../../../../sources/engine/agents/ops/agentLoopRun.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { promises as fs } from "node:fs";
|
|
2
2
|
import path from "node:path";
|
|
3
|
+
import { Type } from "@sinclair/typebox";
|
|
3
4
|
import { describe, expect, it, vi } from "vitest";
|
|
4
5
|
import { messageExtractText } from "../../messages/messageExtractText.js";
|
|
6
|
+
import { ToolResolver } from "../../modules/toolResolver.js";
|
|
5
7
|
import { agentLoopRun } from "./agentLoopRun.js";
|
|
6
8
|
describe("agentLoopRun", () => {
|
|
7
9
|
it("treats provider error responses with token wording as normal inference failures", async () => {
|
|
@@ -49,6 +51,7 @@ describe("agentLoopRun", () => {
|
|
|
49
51
|
options.notifySubagentFailure = notifySubagentFailure;
|
|
50
52
|
const result = await agentLoopRun(options);
|
|
51
53
|
expect(result.contextOverflow).toBe(true);
|
|
54
|
+
expect(result.contextOverflowTokens).toBe(216_326);
|
|
52
55
|
expect(connectorSend).not.toHaveBeenCalled();
|
|
53
56
|
expect(notifySubagentFailure).not.toHaveBeenCalled();
|
|
54
57
|
});
|
|
@@ -155,6 +158,7 @@ describe("agentLoopRun", () => {
|
|
|
155
158
|
};
|
|
156
159
|
const toolResolver = {
|
|
157
160
|
listTools: vi.fn(() => tools),
|
|
161
|
+
listToolsForAgent: vi.fn(() => tools),
|
|
158
162
|
execute: vi.fn(async (_toolCall, executeContext) => {
|
|
159
163
|
toolResolverSkills.push(executeContext.skills);
|
|
160
164
|
return toolResultTextBuild("call-1", "run_python", "ok");
|
|
@@ -232,6 +236,7 @@ describe("agentLoopRun", () => {
|
|
|
232
236
|
const execute = vi.fn(async () => toolResultTextBuild("call-1", "read_file", "ok"));
|
|
233
237
|
const toolResolver = {
|
|
234
238
|
listTools: () => [],
|
|
239
|
+
listToolsForAgent: () => [],
|
|
235
240
|
execute
|
|
236
241
|
};
|
|
237
242
|
await agentLoopRun(optionsBuild({
|
|
@@ -305,6 +310,10 @@ describe("agentLoopRun", () => {
|
|
|
305
310
|
{ name: "run_python", description: "", parameters: {} },
|
|
306
311
|
{ name: "echo", description: "", parameters: {} }
|
|
307
312
|
]),
|
|
313
|
+
listToolsForAgent: vi.fn(() => [
|
|
314
|
+
{ name: "run_python", description: "", parameters: {} },
|
|
315
|
+
{ name: "echo", description: "", parameters: {} }
|
|
316
|
+
]),
|
|
308
317
|
execute
|
|
309
318
|
};
|
|
310
319
|
await agentLoopRun(optionsBuild({
|
|
@@ -321,6 +330,11 @@ describe("agentLoopRun", () => {
|
|
|
321
330
|
}
|
|
322
331
|
}));
|
|
323
332
|
expect(inferenceRouter.complete).toHaveBeenCalledTimes(2);
|
|
333
|
+
expect(inferenceRouter.complete).toHaveBeenNthCalledWith(1, expect.anything(), expect.any(String), expect.objectContaining({
|
|
334
|
+
providerOptions: {
|
|
335
|
+
stop: ["</run_python>"]
|
|
336
|
+
}
|
|
337
|
+
}));
|
|
324
338
|
expect(contexts[0]?.tools).toEqual([]);
|
|
325
339
|
expect(execute).toHaveBeenCalledTimes(1);
|
|
326
340
|
const secondIterationMessages = contexts[1]?.messages ?? [];
|
|
@@ -339,7 +353,7 @@ describe("agentLoopRun", () => {
|
|
|
339
353
|
expect(appendHistoryTypes).toContain("rlm_tool_result");
|
|
340
354
|
expect(appendHistoryTypes).toContain("rlm_complete");
|
|
341
355
|
});
|
|
342
|
-
it("
|
|
356
|
+
it("trims inline run_python output at the first closing tag before execution", async () => {
|
|
343
357
|
const contexts = [];
|
|
344
358
|
const connector = connectorBuild(vi.fn(async () => undefined));
|
|
345
359
|
const entry = entryBuild();
|
|
@@ -386,6 +400,12 @@ describe("agentLoopRun", () => {
|
|
|
386
400
|
{ name: "fail", description: "", parameters: {} },
|
|
387
401
|
{ name: "tail", description: "", parameters: {} }
|
|
388
402
|
]),
|
|
403
|
+
listToolsForAgent: vi.fn(() => [
|
|
404
|
+
{ name: "run_python", description: "", parameters: {} },
|
|
405
|
+
{ name: "echo", description: "", parameters: {} },
|
|
406
|
+
{ name: "fail", description: "", parameters: {} },
|
|
407
|
+
{ name: "tail", description: "", parameters: {} }
|
|
408
|
+
]),
|
|
389
409
|
execute
|
|
390
410
|
};
|
|
391
411
|
await agentLoopRun(optionsBuild({
|
|
@@ -399,13 +419,12 @@ describe("agentLoopRun", () => {
|
|
|
399
419
|
say: true
|
|
400
420
|
}));
|
|
401
421
|
expect(inferenceRouter.complete).toHaveBeenCalledTimes(2);
|
|
402
|
-
expect(execute).toHaveBeenCalledTimes(
|
|
422
|
+
expect(execute).toHaveBeenCalledTimes(1);
|
|
403
423
|
expect(execute).toHaveBeenNthCalledWith(1, expect.objectContaining({ name: "echo" }), expect.anything());
|
|
404
|
-
expect(execute).toHaveBeenNthCalledWith(2, expect.objectContaining({ name: "fail" }), expect.anything());
|
|
405
424
|
const assistantMessage = contexts[1]?.messages.find((message) => message.role === "assistant");
|
|
406
425
|
const assistantText = assistantMessage ? (messageExtractText(assistantMessage) ?? "") : "";
|
|
407
426
|
expect(assistantText).toContain("<run_python>echo()</run_python>");
|
|
408
|
-
expect(assistantText).toContain("<run_python>fail()</run_python>");
|
|
427
|
+
expect(assistantText).not.toContain("<run_python>fail()</run_python>");
|
|
409
428
|
expect(assistantText).not.toContain("<run_python>tail()</run_python>");
|
|
410
429
|
const secondIterationMessages = contexts[1]?.messages ?? [];
|
|
411
430
|
const pythonResultTexts = secondIterationMessages
|
|
@@ -413,9 +432,8 @@ describe("agentLoopRun", () => {
|
|
|
413
432
|
.flatMap((message) => (Array.isArray(message.content) ? message.content : []))
|
|
414
433
|
.filter((part) => part.type === "text" && typeof part.text === "string" && part.text.includes("<python_result>"))
|
|
415
434
|
.map((part) => part.text);
|
|
416
|
-
expect(pythonResultTexts).toHaveLength(
|
|
435
|
+
expect(pythonResultTexts).toHaveLength(1);
|
|
417
436
|
expect(pythonResultTexts[0]).toContain("Python execution completed.");
|
|
418
|
-
expect(pythonResultTexts[1]).toContain("Python runtime error.");
|
|
419
437
|
});
|
|
420
438
|
it("suppresses raw run_python text delivery in noTools mode", async () => {
|
|
421
439
|
const connectorSend = vi.fn(async () => undefined);
|
|
@@ -434,6 +452,10 @@ describe("agentLoopRun", () => {
|
|
|
434
452
|
{ name: "run_python", description: "", parameters: {} },
|
|
435
453
|
{ name: "echo", description: "", parameters: {} }
|
|
436
454
|
]),
|
|
455
|
+
listToolsForAgent: vi.fn(() => [
|
|
456
|
+
{ name: "run_python", description: "", parameters: {} },
|
|
457
|
+
{ name: "echo", description: "", parameters: {} }
|
|
458
|
+
]),
|
|
437
459
|
execute
|
|
438
460
|
};
|
|
439
461
|
await agentLoopRun(optionsBuild({
|
|
@@ -449,7 +471,7 @@ describe("agentLoopRun", () => {
|
|
|
449
471
|
expect(execute).toHaveBeenCalledTimes(1);
|
|
450
472
|
expect(connectorSend).not.toHaveBeenCalled();
|
|
451
473
|
});
|
|
452
|
-
it("
|
|
474
|
+
it("stores assistant history already trimmed at the first run_python closing tag", async () => {
|
|
453
475
|
const appendedRecords = [];
|
|
454
476
|
const connector = connectorBuild(vi.fn(async () => undefined));
|
|
455
477
|
const entry = entryBuild();
|
|
@@ -473,9 +495,6 @@ describe("agentLoopRun", () => {
|
|
|
473
495
|
if (toolCall.name === "echo") {
|
|
474
496
|
return toolResultTextBuild(toolCall.id, toolCall.name, "ok");
|
|
475
497
|
}
|
|
476
|
-
if (toolCall.name === "fail") {
|
|
477
|
-
throw new Error("boom");
|
|
478
|
-
}
|
|
479
498
|
throw new Error(`Unexpected tool: ${toolCall.name}`);
|
|
480
499
|
});
|
|
481
500
|
const toolResolver = {
|
|
@@ -485,6 +504,12 @@ describe("agentLoopRun", () => {
|
|
|
485
504
|
{ name: "fail", description: "", parameters: {} },
|
|
486
505
|
{ name: "tail", description: "", parameters: {} }
|
|
487
506
|
]),
|
|
507
|
+
listToolsForAgent: vi.fn(() => [
|
|
508
|
+
{ name: "run_python", description: "", parameters: {} },
|
|
509
|
+
{ name: "echo", description: "", parameters: {} },
|
|
510
|
+
{ name: "fail", description: "", parameters: {} },
|
|
511
|
+
{ name: "tail", description: "", parameters: {} }
|
|
512
|
+
]),
|
|
488
513
|
execute
|
|
489
514
|
};
|
|
490
515
|
await agentLoopRun(optionsBuild({
|
|
@@ -504,22 +529,10 @@ describe("agentLoopRun", () => {
|
|
|
504
529
|
if (!assistant || assistant.type !== "assistant_message") {
|
|
505
530
|
throw new Error("Expected assistant history record.");
|
|
506
531
|
}
|
|
507
|
-
expect(assistant.text).
|
|
508
|
-
expect(
|
|
532
|
+
expect(assistant.text).toBe("<say>before</say><run_python>echo()</run_python>");
|
|
533
|
+
expect(execute).toHaveBeenCalledTimes(1);
|
|
509
534
|
const rewrites = appendedRecords.filter((record) => record.type === "assistant_rewrite");
|
|
510
|
-
expect(rewrites).toHaveLength(
|
|
511
|
-
expect(rewrites[0]).toMatchObject({
|
|
512
|
-
type: "assistant_rewrite",
|
|
513
|
-
reason: "run_python_say_after_trim"
|
|
514
|
-
});
|
|
515
|
-
expect(rewrites[1]).toMatchObject({
|
|
516
|
-
type: "assistant_rewrite",
|
|
517
|
-
reason: "run_python_failure_trim"
|
|
518
|
-
});
|
|
519
|
-
expect(rewrites[0]?.assistantAt).toBe(assistant.at);
|
|
520
|
-
expect(rewrites[1]?.assistantAt).toBe(assistant.at);
|
|
521
|
-
expect(rewrites[0]?.text).not.toContain("<say>after</say>");
|
|
522
|
-
expect(rewrites[1]?.text).not.toContain("<run_python>tail()</run_python>");
|
|
535
|
+
expect(rewrites).toHaveLength(0);
|
|
523
536
|
});
|
|
524
537
|
it("breaks inference loop when skip tool is called directly", async () => {
|
|
525
538
|
const connector = connectorBuild(vi.fn(async () => undefined));
|
|
@@ -534,6 +547,7 @@ describe("agentLoopRun", () => {
|
|
|
534
547
|
});
|
|
535
548
|
const toolResolver = {
|
|
536
549
|
listTools: () => [],
|
|
550
|
+
listToolsForAgent: () => [],
|
|
537
551
|
execute
|
|
538
552
|
};
|
|
539
553
|
const result = await agentLoopRun(optionsBuild({
|
|
@@ -572,6 +586,7 @@ describe("agentLoopRun", () => {
|
|
|
572
586
|
});
|
|
573
587
|
const toolResolver = {
|
|
574
588
|
listTools: () => [],
|
|
589
|
+
listToolsForAgent: () => [],
|
|
575
590
|
execute
|
|
576
591
|
};
|
|
577
592
|
await agentLoopRun(optionsBuild({
|
|
@@ -601,6 +616,10 @@ describe("agentLoopRun", () => {
|
|
|
601
616
|
{ name: "run_python", description: "", parameters: {} },
|
|
602
617
|
{ name: "echo", description: "", parameters: {} }
|
|
603
618
|
]),
|
|
619
|
+
listToolsForAgent: vi.fn(() => [
|
|
620
|
+
{ name: "run_python", description: "", parameters: {} },
|
|
621
|
+
{ name: "echo", description: "", parameters: {} }
|
|
622
|
+
]),
|
|
604
623
|
execute
|
|
605
624
|
};
|
|
606
625
|
await agentLoopRun(optionsBuild({
|
|
@@ -620,6 +639,40 @@ describe("agentLoopRun", () => {
|
|
|
620
639
|
replyToMessageId: undefined
|
|
621
640
|
});
|
|
622
641
|
});
|
|
642
|
+
it("blocks non-whitelisted tool execution for memory-agent descriptors", async () => {
|
|
643
|
+
const entry = entryBuild();
|
|
644
|
+
const context = contextBuild();
|
|
645
|
+
const inferenceRouter = inferenceRouterBuild([
|
|
646
|
+
assistantMessageBuild([toolCallBuild("call-1", "read_file", { path: "notes.txt" })]),
|
|
647
|
+
assistantMessageBuild([])
|
|
648
|
+
]);
|
|
649
|
+
const resolver = new ToolResolver();
|
|
650
|
+
resolver.register("test", {
|
|
651
|
+
tool: {
|
|
652
|
+
name: "read_file",
|
|
653
|
+
description: "Read file.",
|
|
654
|
+
parameters: Type.Object({ path: Type.String() }, { additionalProperties: false })
|
|
655
|
+
},
|
|
656
|
+
returns: {
|
|
657
|
+
schema: Type.Object({ text: Type.String() }, { additionalProperties: false }),
|
|
658
|
+
toLLMText: (result) => result.text
|
|
659
|
+
},
|
|
660
|
+
execute: async () => toolResultTextBuild("call-1", "read_file", "ok")
|
|
661
|
+
});
|
|
662
|
+
const result = await agentLoopRun(optionsBuild({
|
|
663
|
+
entry,
|
|
664
|
+
context,
|
|
665
|
+
connector: connectorBuild(vi.fn(async () => undefined)),
|
|
666
|
+
inferenceRouter,
|
|
667
|
+
toolResolver: resolver,
|
|
668
|
+
agentType: "memory-agent"
|
|
669
|
+
}));
|
|
670
|
+
const blockedToolResult = result.historyRecords.find((record) => record.type === "tool_result" && record.toolCallId === "call-1");
|
|
671
|
+
expect(blockedToolResult?.output.toolMessage.isError).toBe(true);
|
|
672
|
+
expect(blockedToolResult?.output.toolMessage.content).toEqual([
|
|
673
|
+
{ type: "text", text: 'Tool "read_file" is not allowed for this agent.' }
|
|
674
|
+
]);
|
|
675
|
+
});
|
|
623
676
|
});
|
|
624
677
|
describe("agentLoopRun say tag", () => {
|
|
625
678
|
it("sends only say block content when say feature enabled", async () => {
|
|
@@ -762,6 +815,10 @@ describe("agentLoopRun say tag", () => {
|
|
|
762
815
|
{ name: "run_python", description: "", parameters: {} },
|
|
763
816
|
{ name: "echo", description: "", parameters: {} }
|
|
764
817
|
]),
|
|
818
|
+
listToolsForAgent: vi.fn(() => [
|
|
819
|
+
{ name: "run_python", description: "", parameters: {} },
|
|
820
|
+
{ name: "echo", description: "", parameters: {} }
|
|
821
|
+
]),
|
|
765
822
|
execute
|
|
766
823
|
};
|
|
767
824
|
await agentLoopRun(optionsBuild({
|
|
@@ -810,6 +867,10 @@ describe("agentLoopRun say tag", () => {
|
|
|
810
867
|
{ name: "run_python", description: "", parameters: {} },
|
|
811
868
|
{ name: "echo", description: "", parameters: {} }
|
|
812
869
|
]),
|
|
870
|
+
listToolsForAgent: vi.fn(() => [
|
|
871
|
+
{ name: "run_python", description: "", parameters: {} },
|
|
872
|
+
{ name: "echo", description: "", parameters: {} }
|
|
873
|
+
]),
|
|
813
874
|
execute
|
|
814
875
|
};
|
|
815
876
|
await agentLoopRun(optionsBuild({
|
|
@@ -868,6 +929,7 @@ describe("agentLoopRun say tag", () => {
|
|
|
868
929
|
};
|
|
869
930
|
const toolResolver = {
|
|
870
931
|
listTools: vi.fn(() => [{ name: "run_python", description: "", parameters: {} }]),
|
|
932
|
+
listToolsForAgent: vi.fn(() => [{ name: "run_python", description: "", parameters: {} }]),
|
|
871
933
|
execute: vi.fn(async () => {
|
|
872
934
|
throw new Error("unexpected");
|
|
873
935
|
})
|
|
@@ -1024,17 +1086,30 @@ function optionsBuild(params) {
|
|
|
1024
1086
|
{
|
|
1025
1087
|
list: vi.fn(async () => [])
|
|
1026
1088
|
};
|
|
1089
|
+
const descriptor = params.agentType === "subagent"
|
|
1090
|
+
? {
|
|
1091
|
+
type: "subagent",
|
|
1092
|
+
id: "subagent-1",
|
|
1093
|
+
parentAgentId: "agent-parent",
|
|
1094
|
+
name: "child"
|
|
1095
|
+
}
|
|
1096
|
+
: params.agentType === "memory-agent"
|
|
1097
|
+
? {
|
|
1098
|
+
type: "memory-agent",
|
|
1099
|
+
id: "source-agent-1"
|
|
1100
|
+
}
|
|
1101
|
+
: {
|
|
1102
|
+
type: "user",
|
|
1103
|
+
connector: "telegram",
|
|
1104
|
+
channelId: "channel-1",
|
|
1105
|
+
userId: "user-1"
|
|
1106
|
+
};
|
|
1027
1107
|
return {
|
|
1028
1108
|
entry: params.entry,
|
|
1029
1109
|
agent: {
|
|
1030
1110
|
id: "agent-1",
|
|
1031
1111
|
userId: "user-1",
|
|
1032
|
-
descriptor
|
|
1033
|
-
type: params.agentType ?? "user",
|
|
1034
|
-
connector: "telegram",
|
|
1035
|
-
channelId: "channel-1",
|
|
1036
|
-
userId: "user-1"
|
|
1037
|
-
},
|
|
1112
|
+
descriptor,
|
|
1038
1113
|
inbox: {
|
|
1039
1114
|
hasSteering: () => false,
|
|
1040
1115
|
consumeSteering: () => null
|
|
@@ -1070,6 +1145,7 @@ function optionsBuild(params) {
|
|
|
1070
1145
|
imageRegistry: { list: () => [] }
|
|
1071
1146
|
},
|
|
1072
1147
|
heartbeats: {},
|
|
1148
|
+
memory: {},
|
|
1073
1149
|
skills,
|
|
1074
1150
|
providersForAgent: [],
|
|
1075
1151
|
verbose: false,
|
|
@@ -1122,6 +1198,7 @@ function inferenceRouterBuild(messages) {
|
|
|
1122
1198
|
function toolResolverBuild(execute) {
|
|
1123
1199
|
return {
|
|
1124
1200
|
listTools: () => [],
|
|
1201
|
+
listToolsForAgent: () => [],
|
|
1125
1202
|
execute: vi.fn(async (toolCall) => execute(toolCall))
|
|
1126
1203
|
};
|
|
1127
1204
|
}
|