@illuma-ai/agents 1.5.0 → 1.5.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/dist/cjs/agents/AgentContext.cjs +2 -2
- package/dist/cjs/agents/AgentContext.cjs.map +1 -1
- package/dist/cjs/common/enum.cjs +12 -12
- package/dist/cjs/common/enum.cjs.map +1 -1
- package/dist/cjs/graphs/Graph.cjs +5 -5
- package/dist/cjs/graphs/Graph.cjs.map +1 -1
- package/dist/cjs/graphs/MultiAgentGraph.cjs +1 -1
- package/dist/cjs/graphs/MultiAgentGraph.cjs.map +1 -1
- package/dist/cjs/graphs/phases/memoryFlushPhase.cjs +1 -1
- package/dist/cjs/graphs/phases/memoryFlushPhase.cjs.map +1 -1
- package/dist/cjs/hooks/HookRegistry.cjs +1 -1
- package/dist/cjs/hooks/HookRegistry.cjs.map +1 -1
- package/dist/cjs/hooks/matchers.cjs +2 -2
- package/dist/cjs/hooks/matchers.cjs.map +1 -1
- package/dist/cjs/hooks/types.cjs +1 -1
- package/dist/cjs/hooks/types.cjs.map +1 -1
- package/dist/cjs/llm/bedrock/cacheSupport.cjs +1 -1
- package/dist/cjs/llm/bedrock/cacheSupport.cjs.map +1 -1
- package/dist/cjs/llm/bedrock/index.cjs +2 -2
- package/dist/cjs/llm/bedrock/index.cjs.map +1 -1
- package/dist/cjs/llm/openai/index.cjs +1 -1
- package/dist/cjs/llm/openai/index.cjs.map +1 -1
- package/dist/cjs/llm/openai/utils/index.cjs +2 -2
- package/dist/cjs/llm/openai/utils/index.cjs.map +1 -1
- package/dist/cjs/memory/citations.cjs +4 -4
- package/dist/cjs/memory/citations.cjs.map +1 -1
- package/dist/cjs/memory/constants.cjs +17 -17
- package/dist/cjs/memory/constants.cjs.map +1 -1
- package/dist/cjs/memory/mmr.cjs +1 -1
- package/dist/cjs/memory/mmr.cjs.map +1 -1
- package/dist/cjs/memory/paths.cjs +1 -1
- package/dist/cjs/memory/paths.cjs.map +1 -1
- package/dist/cjs/memory/recallTracking.cjs +3 -3
- package/dist/cjs/memory/recallTracking.cjs.map +1 -1
- package/dist/cjs/memory/temporalDecay.cjs +2 -2
- package/dist/cjs/memory/temporalDecay.cjs.map +1 -1
- package/dist/cjs/messages/format.cjs +3 -3
- package/dist/cjs/messages/format.cjs.map +1 -1
- package/dist/cjs/tools/CodeExecutor.cjs +4 -3
- package/dist/cjs/tools/CodeExecutor.cjs.map +1 -1
- package/dist/cjs/tools/ToolNode.cjs +5 -5
- package/dist/cjs/tools/ToolNode.cjs.map +1 -1
- package/dist/cjs/tools/memory/memoryAppendTool.cjs +1 -1
- package/dist/cjs/tools/memory/memoryAppendTool.cjs.map +1 -1
- package/dist/cjs/tools/memory/memoryGetTool.cjs +2 -2
- package/dist/cjs/tools/memory/memoryGetTool.cjs.map +1 -1
- package/dist/cjs/tools/memory/memorySearchTool.cjs +3 -3
- package/dist/cjs/tools/memory/memorySearchTool.cjs.map +1 -1
- package/dist/cjs/tools/memory/shared.cjs +1 -1
- package/dist/cjs/tools/memory/shared.cjs.map +1 -1
- package/dist/cjs/types/agent-cache.cjs +6 -5
- package/dist/cjs/types/agent-cache.cjs.map +1 -1
- package/dist/cjs/types/graph.cjs.map +1 -1
- package/dist/esm/agents/AgentContext.mjs +2 -2
- package/dist/esm/agents/AgentContext.mjs.map +1 -1
- package/dist/esm/common/enum.mjs +12 -12
- package/dist/esm/common/enum.mjs.map +1 -1
- package/dist/esm/graphs/Graph.mjs +5 -5
- package/dist/esm/graphs/Graph.mjs.map +1 -1
- package/dist/esm/graphs/MultiAgentGraph.mjs +1 -1
- package/dist/esm/graphs/MultiAgentGraph.mjs.map +1 -1
- package/dist/esm/graphs/phases/memoryFlushPhase.mjs +1 -1
- package/dist/esm/graphs/phases/memoryFlushPhase.mjs.map +1 -1
- package/dist/esm/hooks/HookRegistry.mjs +1 -1
- package/dist/esm/hooks/HookRegistry.mjs.map +1 -1
- package/dist/esm/hooks/matchers.mjs +2 -2
- package/dist/esm/hooks/matchers.mjs.map +1 -1
- package/dist/esm/hooks/types.mjs +1 -1
- package/dist/esm/hooks/types.mjs.map +1 -1
- package/dist/esm/llm/bedrock/cacheSupport.mjs +1 -1
- package/dist/esm/llm/bedrock/cacheSupport.mjs.map +1 -1
- package/dist/esm/llm/bedrock/index.mjs +2 -2
- package/dist/esm/llm/bedrock/index.mjs.map +1 -1
- package/dist/esm/llm/openai/index.mjs +1 -1
- package/dist/esm/llm/openai/index.mjs.map +1 -1
- package/dist/esm/llm/openai/utils/index.mjs +2 -2
- package/dist/esm/llm/openai/utils/index.mjs.map +1 -1
- package/dist/esm/memory/citations.mjs +4 -4
- package/dist/esm/memory/citations.mjs.map +1 -1
- package/dist/esm/memory/constants.mjs +17 -17
- package/dist/esm/memory/constants.mjs.map +1 -1
- package/dist/esm/memory/mmr.mjs +1 -1
- package/dist/esm/memory/mmr.mjs.map +1 -1
- package/dist/esm/memory/paths.mjs +1 -1
- package/dist/esm/memory/paths.mjs.map +1 -1
- package/dist/esm/memory/recallTracking.mjs +3 -3
- package/dist/esm/memory/recallTracking.mjs.map +1 -1
- package/dist/esm/memory/temporalDecay.mjs +2 -2
- package/dist/esm/memory/temporalDecay.mjs.map +1 -1
- package/dist/esm/messages/format.mjs +3 -3
- package/dist/esm/messages/format.mjs.map +1 -1
- package/dist/esm/tools/CodeExecutor.mjs +4 -3
- package/dist/esm/tools/CodeExecutor.mjs.map +1 -1
- package/dist/esm/tools/ToolNode.mjs +5 -5
- package/dist/esm/tools/ToolNode.mjs.map +1 -1
- package/dist/esm/tools/memory/memoryAppendTool.mjs +1 -1
- package/dist/esm/tools/memory/memoryAppendTool.mjs.map +1 -1
- package/dist/esm/tools/memory/memoryGetTool.mjs +2 -2
- package/dist/esm/tools/memory/memoryGetTool.mjs.map +1 -1
- package/dist/esm/tools/memory/memorySearchTool.mjs +3 -3
- package/dist/esm/tools/memory/memorySearchTool.mjs.map +1 -1
- package/dist/esm/tools/memory/shared.mjs +1 -1
- package/dist/esm/tools/memory/shared.mjs.map +1 -1
- package/dist/esm/types/agent-cache.mjs +6 -5
- package/dist/esm/types/agent-cache.mjs.map +1 -1
- package/dist/esm/types/graph.mjs.map +1 -1
- package/dist/types/agents/AgentContext.d.ts +1 -1
- package/dist/types/common/enum.d.ts +12 -12
- package/dist/types/graphs/Graph.d.ts +2 -2
- package/dist/types/graphs/phases/memoryFlushPhase.d.ts +2 -2
- package/dist/types/hooks/HookRegistry.d.ts +1 -1
- package/dist/types/hooks/matchers.d.ts +2 -2
- package/dist/types/hooks/types.d.ts +1 -1
- package/dist/types/llm/bedrock/cacheSupport.d.ts +1 -1
- package/dist/types/llm/bedrock/index.d.ts +2 -2
- package/dist/types/llm/openai/index.d.ts +1 -1
- package/dist/types/memory/citations.d.ts +4 -4
- package/dist/types/memory/constants.d.ts +17 -17
- package/dist/types/memory/mmr.d.ts +3 -3
- package/dist/types/memory/paths.d.ts +1 -1
- package/dist/types/memory/temporalDecay.d.ts +2 -2
- package/dist/types/memory/types.d.ts +3 -3
- package/dist/types/messages/format.d.ts +1 -1
- package/dist/types/tools/ToolNode.d.ts +3 -3
- package/dist/types/tools/memory/shared.d.ts +1 -1
- package/dist/types/types/agent-cache.d.ts +6 -5
- package/dist/types/types/graph.d.ts +7 -6
- package/dist/types/types/messages.d.ts +1 -1
- package/dist/types/types/run.d.ts +1 -1
- package/dist/types/types/tools.d.ts +5 -5
- package/package.json +1 -1
- package/src/agents/AgentContext.ts +2 -2
- package/src/agents/__tests__/AgentContext.crossAgentTier1.live.test.ts +5 -3
- package/src/agents/__tests__/AgentContext.test.ts +1 -1
- package/src/common/__tests__/enum.test.ts +1 -1
- package/src/common/enum.ts +12 -12
- package/src/graphs/Graph.ts +5 -5
- package/src/graphs/MultiAgentGraph.ts +1 -1
- package/src/graphs/gapFeatures.test.ts +1 -1
- package/src/graphs/phases/__tests__/memoryFlushPhase.test.ts +1 -1
- package/src/graphs/phases/memoryFlushPhase.ts +2 -2
- package/src/hooks/HookRegistry.ts +1 -1
- package/src/hooks/index.ts +1 -1
- package/src/hooks/matchers.ts +2 -2
- package/src/hooks/types.ts +1 -1
- package/src/llm/anthropic/utils/server-tool-inputs.test.ts +7 -7
- package/src/llm/bedrock/__tests__/bedrock-caching.test.ts +2 -2
- package/src/llm/bedrock/cacheSupport.ts +1 -1
- package/src/llm/bedrock/index.ts +2 -2
- package/src/llm/openai/index.ts +2 -2
- package/src/llm/openai/utils/index.ts +2 -2
- package/src/memory/citations.ts +4 -4
- package/src/memory/constants.ts +17 -17
- package/src/memory/mmr.ts +3 -3
- package/src/memory/paths.ts +1 -1
- package/src/memory/recallTracking.ts +3 -3
- package/src/memory/temporalDecay.ts +2 -2
- package/src/memory/types.ts +3 -3
- package/src/messages/cache.test.ts +1 -1
- package/src/messages/ensureThinkingBlock.test.ts +1 -1
- package/src/messages/format.ts +4 -4
- package/src/messages/formatAgentMessages.test.ts +1 -1
- package/src/scripts/subagent-event-driven-debug.ts +2 -2
- package/src/specs/anthropic.simple.test.ts +1 -1
- package/src/specs/prune.orphans.test.ts +1 -1
- package/src/tools/CodeExecutor.ts +4 -3
- package/src/tools/ToolNode.ts +6 -6
- package/src/tools/__tests__/CodeExecutor.test.ts +3 -3
- package/src/tools/memory/memoryAppendTool.ts +1 -1
- package/src/tools/memory/memoryGetTool.ts +2 -2
- package/src/tools/memory/memorySearchTool.ts +3 -3
- package/src/tools/memory/shared.ts +1 -1
- package/src/types/agent-cache.ts +6 -5
- package/src/types/graph.ts +7 -6
- package/src/types/messages.ts +1 -1
- package/src/types/run.ts +1 -1
- package/src/types/tools.ts +5 -5
- package/dist/types/tools/search/test.d.ts +0 -1
- package/src/agents/AgentContext.js.map +0 -1
- package/src/agents/AgentContext.test.js.map +0 -1
- package/src/agents/__tests__/AgentContext.test.js.map +0 -1
- package/src/agents/__tests__/resolveStructuredOutputMode.test.js.map +0 -1
- package/src/common/enum.js.map +0 -1
- package/src/common/index.js.map +0 -1
- package/src/events.js.map +0 -1
- package/src/graphs/Graph.js.map +0 -1
- package/src/graphs/MultiAgentGraph.js.map +0 -1
- package/src/graphs/__tests__/structured-output.integration.test.js.map +0 -1
- package/src/graphs/__tests__/structured-output.test.js.map +0 -1
- package/src/graphs/contextManagement.e2e.test.js.map +0 -1
- package/src/graphs/contextManagement.test.js.map +0 -1
- package/src/graphs/handoffValidation.test.js.map +0 -1
- package/src/graphs/index.js.map +0 -1
- package/src/index.js.map +0 -1
- package/src/instrumentation.js.map +0 -1
- package/src/llm/anthropic/index.js.map +0 -1
- package/src/llm/anthropic/types.js.map +0 -1
- package/src/llm/anthropic/utils/message_inputs.js.map +0 -1
- package/src/llm/anthropic/utils/message_outputs.js.map +0 -1
- package/src/llm/anthropic/utils/output_parsers.js.map +0 -1
- package/src/llm/anthropic/utils/tools.js.map +0 -1
- package/src/llm/bedrock/__tests__/bedrock-caching.test.js.map +0 -1
- package/src/llm/bedrock/index.js.map +0 -1
- package/src/llm/bedrock/types.js.map +0 -1
- package/src/llm/bedrock/utils/index.js.map +0 -1
- package/src/llm/bedrock/utils/message_inputs.js.map +0 -1
- package/src/llm/bedrock/utils/message_outputs.js.map +0 -1
- package/src/llm/fake.js.map +0 -1
- package/src/llm/google/index.js.map +0 -1
- package/src/llm/google/types.js.map +0 -1
- package/src/llm/google/utils/common.js.map +0 -1
- package/src/llm/google/utils/tools.js.map +0 -1
- package/src/llm/google/utils/zod_to_genai_parameters.js.map +0 -1
- package/src/llm/openai/index.js.map +0 -1
- package/src/llm/openai/types.js.map +0 -1
- package/src/llm/openai/utils/index.js.map +0 -1
- package/src/llm/openai/utils/isReasoningModel.test.js.map +0 -1
- package/src/llm/openrouter/index.js.map +0 -1
- package/src/llm/openrouter/reasoning.test.js.map +0 -1
- package/src/llm/providers.js.map +0 -1
- package/src/llm/text.js.map +0 -1
- package/src/llm/vertexai/index.js.map +0 -1
- package/src/messages/__tests__/tools.test.js.map +0 -1
- package/src/messages/cache.js.map +0 -1
- package/src/messages/cache.test.js.map +0 -1
- package/src/messages/content.js.map +0 -1
- package/src/messages/content.test.js.map +0 -1
- package/src/messages/core.js.map +0 -1
- package/src/messages/ensureThinkingBlock.test.js.map +0 -1
- package/src/messages/format.js.map +0 -1
- package/src/messages/formatAgentMessages.test.js.map +0 -1
- package/src/messages/formatAgentMessages.tools.test.js.map +0 -1
- package/src/messages/formatMessage.test.js.map +0 -1
- package/src/messages/ids.js.map +0 -1
- package/src/messages/index.js.map +0 -1
- package/src/messages/labelContentByAgent.test.js.map +0 -1
- package/src/messages/prune.js.map +0 -1
- package/src/messages/reducer.js.map +0 -1
- package/src/messages/shiftIndexTokenCountMap.test.js.map +0 -1
- package/src/messages/summarize.js.map +0 -1
- package/src/messages/summarize.test.js.map +0 -1
- package/src/messages/tools.js.map +0 -1
- package/src/mockStream.js.map +0 -1
- package/src/prompts/collab.js.map +0 -1
- package/src/prompts/index.js.map +0 -1
- package/src/prompts/taskmanager.js.map +0 -1
- package/src/run.js.map +0 -1
- package/src/schemas/index.js.map +0 -1
- package/src/schemas/schema-preparation.test.js.map +0 -1
- package/src/schemas/validate.js.map +0 -1
- package/src/schemas/validate.test.js.map +0 -1
- package/src/scripts/abort.js.map +0 -1
- package/src/scripts/ant_web_search.js.map +0 -1
- package/src/scripts/ant_web_search_edge_case.js.map +0 -1
- package/src/scripts/ant_web_search_error_edge_case.js.map +0 -1
- package/src/scripts/args.js.map +0 -1
- package/src/scripts/bedrock-cache-debug.js.map +0 -1
- package/src/scripts/bedrock-content-aggregation-test.js.map +0 -1
- package/src/scripts/bedrock-merge-test.js.map +0 -1
- package/src/scripts/bedrock-parallel-tools-test.js.map +0 -1
- package/src/scripts/caching.js.map +0 -1
- package/src/scripts/cli.js.map +0 -1
- package/src/scripts/cli2.js.map +0 -1
- package/src/scripts/cli3.js.map +0 -1
- package/src/scripts/cli4.js.map +0 -1
- package/src/scripts/cli5.js.map +0 -1
- package/src/scripts/code_exec.js.map +0 -1
- package/src/scripts/code_exec_files.js.map +0 -1
- package/src/scripts/code_exec_multi_session.js.map +0 -1
- package/src/scripts/code_exec_ptc.js.map +0 -1
- package/src/scripts/code_exec_session.js.map +0 -1
- package/src/scripts/code_exec_simple.js.map +0 -1
- package/src/scripts/content.js.map +0 -1
- package/src/scripts/empty_input.js.map +0 -1
- package/src/scripts/handoff-test.js.map +0 -1
- package/src/scripts/image.js.map +0 -1
- package/src/scripts/memory.js.map +0 -1
- package/src/scripts/multi-agent-chain.js.map +0 -1
- package/src/scripts/multi-agent-conditional.js.map +0 -1
- package/src/scripts/multi-agent-document-review-chain.js.map +0 -1
- package/src/scripts/multi-agent-hybrid-flow.js.map +0 -1
- package/src/scripts/multi-agent-parallel-start.js.map +0 -1
- package/src/scripts/multi-agent-parallel.js.map +0 -1
- package/src/scripts/multi-agent-sequence.js.map +0 -1
- package/src/scripts/multi-agent-supervisor.js.map +0 -1
- package/src/scripts/multi-agent-test.js.map +0 -1
- package/src/scripts/parallel-asymmetric-tools-test.js.map +0 -1
- package/src/scripts/parallel-full-metadata-test.js.map +0 -1
- package/src/scripts/parallel-tools-test.js.map +0 -1
- package/src/scripts/programmatic_exec.js.map +0 -1
- package/src/scripts/programmatic_exec_agent.js.map +0 -1
- package/src/scripts/search.js.map +0 -1
- package/src/scripts/sequential-full-metadata-test.js.map +0 -1
- package/src/scripts/simple.js.map +0 -1
- package/src/scripts/single-agent-metadata-test.js.map +0 -1
- package/src/scripts/stream.js.map +0 -1
- package/src/scripts/test-custom-prompt-key.js.map +0 -1
- package/src/scripts/test-handoff-input.js.map +0 -1
- package/src/scripts/test-handoff-preamble.js.map +0 -1
- package/src/scripts/test-handoff-steering.js.map +0 -1
- package/src/scripts/test-multi-agent-list-handoff.js.map +0 -1
- package/src/scripts/test-parallel-agent-labeling.js.map +0 -1
- package/src/scripts/test-parallel-handoffs.js.map +0 -1
- package/src/scripts/test-thinking-handoff-bedrock.js.map +0 -1
- package/src/scripts/test-thinking-handoff.js.map +0 -1
- package/src/scripts/test-thinking-to-thinking-handoff-bedrock.js.map +0 -1
- package/src/scripts/test-tool-before-handoff-role-order.js.map +0 -1
- package/src/scripts/test-tools-before-handoff.js.map +0 -1
- package/src/scripts/test_code_api.js.map +0 -1
- package/src/scripts/thinking-bedrock.js.map +0 -1
- package/src/scripts/thinking-vertexai.js.map +0 -1
- package/src/scripts/thinking.js.map +0 -1
- package/src/scripts/tool_search.js.map +0 -1
- package/src/scripts/tools.js.map +0 -1
- package/src/specs/agent-handoffs-bedrock.integration.test.js.map +0 -1
- package/src/specs/agent-handoffs.test.js.map +0 -1
- package/src/specs/anthropic.simple.test.js.map +0 -1
- package/src/specs/azure.simple.test.js.map +0 -1
- package/src/specs/cache.simple.test.js.map +0 -1
- package/src/specs/custom-event-await.test.js.map +0 -1
- package/src/specs/deepseek.simple.test.js.map +0 -1
- package/src/specs/emergency-prune.test.js.map +0 -1
- package/src/specs/moonshot.simple.test.js.map +0 -1
- package/src/specs/observability.integration.test.js.map +0 -1
- package/src/specs/openai.simple.test.js.map +0 -1
- package/src/specs/openrouter.simple.test.js.map +0 -1
- package/src/specs/prune.test.js.map +0 -1
- package/src/specs/reasoning.test.js.map +0 -1
- package/src/specs/spec.utils.js.map +0 -1
- package/src/specs/thinking-handoff.test.js.map +0 -1
- package/src/specs/thinking-prune.test.js.map +0 -1
- package/src/specs/token-distribution-edge-case.test.js.map +0 -1
- package/src/specs/token-memoization.test.js.map +0 -1
- package/src/specs/tokens.test.js.map +0 -1
- package/src/specs/tool-error.test.js.map +0 -1
- package/src/splitStream.js.map +0 -1
- package/src/splitStream.test.js.map +0 -1
- package/src/stream.js.map +0 -1
- package/src/stream.test.js.map +0 -1
- package/src/test/mockTools.js.map +0 -1
- package/src/tools/BrowserTools.js.map +0 -1
- package/src/tools/Calculator.js.map +0 -1
- package/src/tools/Calculator.test.js.map +0 -1
- package/src/tools/CodeExecutor.js.map +0 -1
- package/src/tools/ProgrammaticToolCalling.js.map +0 -1
- package/src/tools/StreamingToolCallBuffer.js.map +0 -1
- package/src/tools/ToolNode.js.map +0 -1
- package/src/tools/ToolSearch.js.map +0 -1
- package/src/tools/__tests__/BrowserTools.test.js.map +0 -1
- package/src/tools/__tests__/ProgrammaticToolCalling.integration.test.js.map +0 -1
- package/src/tools/__tests__/ProgrammaticToolCalling.test.js.map +0 -1
- package/src/tools/__tests__/StreamingToolCallBuffer.test.js.map +0 -1
- package/src/tools/__tests__/ToolApproval.test.js.map +0 -1
- package/src/tools/__tests__/ToolNode.recovery.test.js.map +0 -1
- package/src/tools/__tests__/ToolNode.session.test.js.map +0 -1
- package/src/tools/__tests__/ToolSearch.integration.test.js.map +0 -1
- package/src/tools/__tests__/ToolSearch.test.js.map +0 -1
- package/src/tools/__tests__/handlers.test.js.map +0 -1
- package/src/tools/__tests__/truncation-recovery.integration.test.js.map +0 -1
- package/src/tools/handlers.js.map +0 -1
- package/src/tools/schema.js.map +0 -1
- package/src/tools/search/anthropic.js.map +0 -1
- package/src/tools/search/content.js.map +0 -1
- package/src/tools/search/content.test.js.map +0 -1
- package/src/tools/search/firecrawl.js.map +0 -1
- package/src/tools/search/format.js.map +0 -1
- package/src/tools/search/highlights.js.map +0 -1
- package/src/tools/search/index.js.map +0 -1
- package/src/tools/search/jina-reranker.test.js.map +0 -1
- package/src/tools/search/output.md +0 -2775
- package/src/tools/search/rerankers.js.map +0 -1
- package/src/tools/search/schema.js.map +0 -1
- package/src/tools/search/search.js.map +0 -1
- package/src/tools/search/serper-scraper.js.map +0 -1
- package/src/tools/search/test.html +0 -884
- package/src/tools/search/test.js.map +0 -1
- package/src/tools/search/test.md +0 -643
- package/src/tools/search/test.ts +0 -159
- package/src/tools/search/tool.js.map +0 -1
- package/src/tools/search/types.js.map +0 -1
- package/src/tools/search/utils.js.map +0 -1
- package/src/types/graph.js.map +0 -1
- package/src/types/graph.test.js.map +0 -1
- package/src/types/index.js.map +0 -1
- package/src/types/llm.js.map +0 -1
- package/src/types/messages.js.map +0 -1
- package/src/types/run.js.map +0 -1
- package/src/types/stream.js.map +0 -1
- package/src/types/tools.js.map +0 -1
- package/src/utils/contextAnalytics.js.map +0 -1
- package/src/utils/contextAnalytics.test.js.map +0 -1
- package/src/utils/events.js.map +0 -1
- package/src/utils/graph.js.map +0 -1
- package/src/utils/handlers.js.map +0 -1
- package/src/utils/index.js.map +0 -1
- package/src/utils/llm.js.map +0 -1
- package/src/utils/llmConfig.js.map +0 -1
- package/src/utils/logging.js.map +0 -1
- package/src/utils/misc.js.map +0 -1
- package/src/utils/run.js.map +0 -1
- package/src/utils/schema.js.map +0 -1
- package/src/utils/title.js.map +0 -1
- package/src/utils/tokens.js.map +0 -1
- package/src/utils/toonFormat.js.map +0 -1
package/src/memory/citations.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Citation decoration — Phase 2.
|
|
3
3
|
*
|
|
4
|
-
* Ported from
|
|
4
|
+
* Ported from a reference implementation `extensions/memory-core/src/tools.citations.ts`.
|
|
5
5
|
* Decorates memory_search hits with `[path#L{start}-L{end}]` markers so
|
|
6
6
|
* the model can attribute claims back to specific memory files when it
|
|
7
7
|
* uses them in its answer.
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* compute line ranges from the returned content block on the fly:
|
|
11
11
|
* - `startLine` = 1 (line 1 of the file)
|
|
12
12
|
* - `endLine` = total number of lines in the block
|
|
13
|
-
* This matches
|
|
13
|
+
* This matches the standard output format exactly while keeping the pg
|
|
14
14
|
* schema chunk-free.
|
|
15
15
|
*/
|
|
16
16
|
|
|
@@ -48,7 +48,7 @@ function formatCitation(
|
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
/**
|
|
51
|
-
* Decorate each hit with a citation marker. Mirrors
|
|
51
|
+
* Decorate each hit with a citation marker. Mirrors the standard behavior:
|
|
52
52
|
* appends `\n\nSource: <citation>` to the content and sets `citation`.
|
|
53
53
|
* When `include=false`, clears any existing citation field.
|
|
54
54
|
*/
|
|
@@ -69,7 +69,7 @@ export function decorateCitations<T extends CitationCandidate>(
|
|
|
69
69
|
/**
|
|
70
70
|
* Whether citations should be emitted for this call.
|
|
71
71
|
*
|
|
72
|
-
*
|
|
72
|
+
* The reference implementation keys `auto` off the session type (direct/group/channel). In
|
|
73
73
|
* Phase 1 we only have direct chat, so `auto` => `on`. Callers that
|
|
74
74
|
* later distinguish session types can pass `mode` explicitly.
|
|
75
75
|
*/
|
package/src/memory/constants.ts
CHANGED
|
@@ -26,14 +26,14 @@ export const MEMORY_PHASE_NORMAL = 'normal';
|
|
|
26
26
|
export const MEMORY_PHASE_FLUSHING = 'memory_flushing';
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
|
-
* Search defaults — aligned with
|
|
29
|
+
* Search defaults — aligned with the standard defaults.
|
|
30
30
|
*
|
|
31
31
|
* Sources:
|
|
32
|
-
* - `
|
|
33
|
-
* - `
|
|
32
|
+
* - `reference` → maxResults=6
|
|
33
|
+
* - `reference` → maxInjectedChars=4000
|
|
34
34
|
*
|
|
35
|
-
* Keeping these in lockstep with
|
|
36
|
-
* description, budget clamps, and eval corpora line up with
|
|
35
|
+
* Keeping these in lockstep with means the mandatory-recall tool
|
|
36
|
+
* description, budget clamps, and eval corpora line up with the standard
|
|
37
37
|
* tuning — we inherit their calibration instead of re-tuning from scratch.
|
|
38
38
|
*/
|
|
39
39
|
export const DEFAULT_MAX_SEARCH_RESULTS = 6;
|
|
@@ -45,11 +45,11 @@ export const HYBRID_VECTOR_WEIGHT = 0.7;
|
|
|
45
45
|
export const HYBRID_TEXT_WEIGHT = 0.3;
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
|
-
* Phase 2 rerank defaults — ported from
|
|
48
|
+
* Phase 2 rerank defaults — ported from a reference implementation.
|
|
49
49
|
*
|
|
50
50
|
* Sources:
|
|
51
|
-
* - `
|
|
52
|
-
* - `
|
|
51
|
+
* - `reference` → lambda=0.7
|
|
52
|
+
* - `reference` → halfLifeDays=30
|
|
53
53
|
*
|
|
54
54
|
* Both features are opt-in (enabled=false by default) — the Phase 2
|
|
55
55
|
* features are layered on top of hybrid search and don't change default
|
|
@@ -63,11 +63,11 @@ export const DEFAULT_RECALL_TRACKING_ENABLED = false;
|
|
|
63
63
|
export const DEFAULT_CITATIONS_MODE = 'auto' as const;
|
|
64
64
|
|
|
65
65
|
/**
|
|
66
|
-
* Flush trigger margins (token counts) — aligned with
|
|
66
|
+
* Flush trigger margins (token counts) — aligned with standard.
|
|
67
67
|
*
|
|
68
68
|
* Sources:
|
|
69
|
-
* - `
|
|
70
|
-
* - `
|
|
69
|
+
* - `reference` → softThreshold=4000
|
|
70
|
+
* - `reference` → reserveFloor=20000
|
|
71
71
|
*/
|
|
72
72
|
export const DEFAULT_FLUSH_SOFT_THRESHOLD_TOKENS = 4000;
|
|
73
73
|
export const DEFAULT_FLUSH_RESERVE_FLOOR_TOKENS = 20000;
|
|
@@ -79,7 +79,7 @@ export const DEFAULT_MAX_APPENDS_PER_FLUSH = 20;
|
|
|
79
79
|
* Hard cap on agentic loop iterations inside {@link runMemoryFlush}.
|
|
80
80
|
*
|
|
81
81
|
* Each iteration = one model.invoke() followed by execution of any
|
|
82
|
-
* `memory_append` tool_calls it emits. Mirrors
|
|
82
|
+
* `memory_append` tool_calls it emits. Mirrors the standard flush-plan
|
|
83
83
|
* loop cap; 8 is enough for ~2–3 reflections of batched notes while
|
|
84
84
|
* protecting against runaway cycles if the model refuses to stop.
|
|
85
85
|
*/
|
|
@@ -97,9 +97,9 @@ export const MEMORY_APPEND_TOOL_NAME = 'memory_append';
|
|
|
97
97
|
* Mandatory-recall description — the single most load-bearing line in the
|
|
98
98
|
* whole memory system. Do not soften, shorten, or reword without an eval run.
|
|
99
99
|
*
|
|
100
|
-
* Ported VERBATIM from
|
|
100
|
+
* Ported VERBATIM from a reference implementation `extensions/memory-core/src/tools.ts:186`.
|
|
101
101
|
* The wiki/corpus clause is retained even though Phase 1 doesn't ship
|
|
102
|
-
* compiled-wiki supplements — keeping the string identical means
|
|
102
|
+
* compiled-wiki supplements — keeping the string identical means the standard
|
|
103
103
|
* eval corpora remain drop-in valid.
|
|
104
104
|
*/
|
|
105
105
|
export const MEMORY_SEARCH_DESCRIPTION =
|
|
@@ -111,7 +111,7 @@ export const MEMORY_SEARCH_DESCRIPTION =
|
|
|
111
111
|
'unavailable and should be surfaced to the user.';
|
|
112
112
|
|
|
113
113
|
/**
|
|
114
|
-
* Ported VERBATIM from
|
|
114
|
+
* Ported VERBATIM from a reference implementation `extensions/memory-core/src/tools.ts:322`.
|
|
115
115
|
*/
|
|
116
116
|
export const MEMORY_GET_DESCRIPTION =
|
|
117
117
|
'Safe snippet read from MEMORY.md or memory/*.md with optional from/lines; ' +
|
|
@@ -122,7 +122,7 @@ export const MEMORY_GET_DESCRIPTION =
|
|
|
122
122
|
* `memory_append` tool description.
|
|
123
123
|
*
|
|
124
124
|
* Phase 1 historically wrote to a single date-keyed file
|
|
125
|
-
* (`memory/YYYY-MM-DD.md`), ported verbatim from
|
|
125
|
+
* (`memory/YYYY-MM-DD.md`), ported verbatim from a reference implementation. That scheme
|
|
126
126
|
* is now replaced by an 8-path canonical whitelist — see
|
|
127
127
|
* {@link ./paths.MEMORY_ALL_PATHS}. The tool description no longer
|
|
128
128
|
* names a specific file; the flush-turn prompt renders the full rubric
|
|
@@ -137,7 +137,7 @@ export const MEMORY_APPEND_DESCRIPTION =
|
|
|
137
137
|
|
|
138
138
|
/**
|
|
139
139
|
* Reply token that signals the flush turn produced no user-visible output.
|
|
140
|
-
* Ported VERBATIM from
|
|
140
|
+
* Ported VERBATIM from a reference implementation `src/auto-reply/tokens.ts:4`.
|
|
141
141
|
*/
|
|
142
142
|
export const SILENT_REPLY_TOKEN = 'NO_REPLY';
|
|
143
143
|
|
package/src/memory/mmr.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Maximal Marginal Relevance (MMR) re-ranking — Phase 2.
|
|
3
3
|
*
|
|
4
|
-
* Ported from
|
|
4
|
+
* Ported from a reference implementation `extensions/memory-core/src/memory/mmr.ts` with
|
|
5
5
|
* minor adaptation for our `MemoryEntry` shape (content vs snippet, id vs
|
|
6
6
|
* path+startLine). Behavior is identical: normalize scores, iteratively
|
|
7
7
|
* pick the item that maximizes `λ * relevance - (1-λ) * max_similarity`
|
|
@@ -11,9 +11,9 @@
|
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
13
|
export interface MMRConfig {
|
|
14
|
-
/** Opt-in.
|
|
14
|
+
/** Opt-in. Default is false. */
|
|
15
15
|
enabled: boolean;
|
|
16
|
-
/** 0 = max diversity, 1 = max relevance.
|
|
16
|
+
/** 0 = max diversity, 1 = max relevance. Default 0.7. */
|
|
17
17
|
lambda: number;
|
|
18
18
|
}
|
|
19
19
|
|
package/src/memory/paths.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Recall tracking — Phase 2.
|
|
3
3
|
*
|
|
4
|
-
* Lightweight adaptation of
|
|
4
|
+
* Lightweight adaptation of an external recall-tracking module
|
|
5
5
|
* `extensions/memory-core/src/short-term-promotion.ts::recordShortTermRecalls`.
|
|
6
|
-
*
|
|
6
|
+
* The reference implementation stores recalls in a JSON file under `memory/.dreams/`; we store
|
|
7
7
|
* them in a Postgres table `agent_memory_recalls`. Schema captures what the
|
|
8
8
|
* future Phase 3 dreaming/promotion algorithm will need:
|
|
9
9
|
* - which memory row was surfaced (`memory_id`)
|
|
@@ -90,7 +90,7 @@ export class PgvectorRecallTracker implements RecallTracker {
|
|
|
90
90
|
const bucket = dayBucket(nowMs);
|
|
91
91
|
|
|
92
92
|
// [recall-tracking] debug: upsert one row per (agent, memory, query, day)
|
|
93
|
-
//
|
|
93
|
+
// The reference implementation dedupes per-day per-query so repeated searches don't inflate counts.
|
|
94
94
|
const values: string[] = [];
|
|
95
95
|
const args: unknown[] = [];
|
|
96
96
|
let i = 1;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Temporal decay — Phase 2.
|
|
3
3
|
*
|
|
4
|
-
* Ported from
|
|
4
|
+
* Ported from a reference implementation `extensions/memory-core/src/memory/temporal-decay.ts`.
|
|
5
5
|
* Ages dated memory files (`memory/YYYY-MM-DD.md`) using exponential decay
|
|
6
6
|
* `multiplier = exp(-ln(2) / halfLifeDays * ageInDays)`. At half-life, the
|
|
7
7
|
* score is exactly halved.
|
|
8
8
|
*
|
|
9
9
|
* Evergreen files (MEMORY.md, memory/topics.md, any non-dated file inside
|
|
10
10
|
* memory/) do NOT decay — they represent durable knowledge and should stay
|
|
11
|
-
* hot regardless of age. This mirrors
|
|
11
|
+
* hot regardless of age. This mirrors the standard `isEvergreenMemoryPath`.
|
|
12
12
|
*
|
|
13
13
|
* Since our pgvector rows carry `createdAt`, we don't need filesystem stat
|
|
14
14
|
* fallback — the row timestamp is authoritative for any file without a
|
package/src/memory/types.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Autonomous memory — core types.
|
|
3
3
|
*
|
|
4
|
-
* Ported from
|
|
4
|
+
* Ported from the reference implementation's memory-core pattern, adapted for Postgres + pgvector
|
|
5
5
|
* and shaped so a future graph-backend layer (Graphiti, Neo4j agent-memory, etc.)
|
|
6
6
|
* can be added alongside the vector store without changing the tool contracts.
|
|
7
7
|
*
|
|
@@ -79,7 +79,7 @@ export interface MemorySearchOptions {
|
|
|
79
79
|
minScore?: number;
|
|
80
80
|
/**
|
|
81
81
|
* Phase 2 toggles — when the backend supports them. Each is independently
|
|
82
|
-
* opt-in; all false =
|
|
82
|
+
* opt-in; all false = Phase 1 behavior.
|
|
83
83
|
*/
|
|
84
84
|
mmr?: { enabled?: boolean; lambda?: number };
|
|
85
85
|
temporalDecay?: { enabled?: boolean; halfLifeDays?: number };
|
|
@@ -156,7 +156,7 @@ export interface MemoryConfig {
|
|
|
156
156
|
search?: {
|
|
157
157
|
maxResults?: number;
|
|
158
158
|
maxInjectedChars?: number;
|
|
159
|
-
/** Phase 2 — enable MMR reranking (
|
|
159
|
+
/** Phase 2 — enable MMR reranking (defaults when true). */
|
|
160
160
|
mmr?: { enabled?: boolean; lambda?: number };
|
|
161
161
|
/** Phase 2 — enable temporal decay on dated memory files. */
|
|
162
162
|
temporalDecay?: { enabled?: boolean; halfLifeDays?: number };
|
|
@@ -413,7 +413,7 @@ describe('addBedrockCacheControl (Bedrock cache checkpoints)', () => {
|
|
|
413
413
|
});
|
|
414
414
|
|
|
415
415
|
it('skips system messages (cachePoint added inline by AgentContext.buildSystemRunnable)', () => {
|
|
416
|
-
/* Contract change (
|
|
416
|
+
/* Contract change (PR #128 alignment): system message
|
|
417
417
|
* cachePoint is now emitted inline in AgentContext.buildSystemRunnable.
|
|
418
418
|
* addBedrockCacheControl must therefore SKIP system messages so the
|
|
419
419
|
* 2-cachePoint per-request budget stays available for the conversation
|
|
@@ -148,7 +148,7 @@ describe('ensureThinkingBlockInMessages', () => {
|
|
|
148
148
|
// Bedrock reasoning models produce reasoning on the first AI response,
|
|
149
149
|
// then subsequent tool calls in the same chain have content: "" with no
|
|
150
150
|
// reasoning block. These should NOT be converted because the chain
|
|
151
|
-
// already has a thinking block
|
|
151
|
+
// already has a thinking block standard.
|
|
152
152
|
const messages = [
|
|
153
153
|
new HumanMessage({ content: 'show me something cool' }),
|
|
154
154
|
new AIMessage({
|
package/src/messages/format.ts
CHANGED
|
@@ -277,7 +277,7 @@ export const formatFromLangChain = (
|
|
|
277
277
|
/* DeepSeek reasoning roundtrip: when active, accumulate reasoning text
|
|
278
278
|
* from THINK/THINKING/REASONING blocks and attach to the next AI message
|
|
279
279
|
* as `additional_kwargs.reasoning_content` so it survives multi-turn
|
|
280
|
-
* replays through the OpenAI-compatible DeepSeek API.
|
|
280
|
+
* replays through the OpenAI-compatible DeepSeek API. PR #136. */
|
|
281
281
|
interface FormatAssistantMessageOptions {
|
|
282
282
|
preserveReasoningContent?: boolean;
|
|
283
283
|
}
|
|
@@ -791,7 +791,7 @@ function extractSkillName(args: unknown): string | undefined {
|
|
|
791
791
|
* When SkillTool is invoked, the body is injected as a HumanMessage into LangGraph state
|
|
792
792
|
* but NOT persisted to conversation history. On follow-up runs the skill body is lost.
|
|
793
793
|
* Pass `skills` to reconstruct the HumanMessage at the right position after each skill
|
|
794
|
-
* ToolMessage.
|
|
794
|
+
* ToolMessage. PRs #96 / #97.
|
|
795
795
|
* @returns - Object containing formatted messages and updated indexTokenCountMap if provided.
|
|
796
796
|
*/
|
|
797
797
|
export const formatAgentMessages = (
|
|
@@ -903,7 +903,7 @@ export const formatAgentMessages = (
|
|
|
903
903
|
if (discoveredTools.has(toolName)) {
|
|
904
904
|
/** Valid tool - keep it */
|
|
905
905
|
filteredContent.push(part);
|
|
906
|
-
// Skill body reconstruction (
|
|
906
|
+
// Skill body reconstruction (PRs #96/#97): when a
|
|
907
907
|
// SkillTool tool_call is present in this assistant turn, mark
|
|
908
908
|
// the skill name so we can reconstruct the body HumanMessage
|
|
909
909
|
// after the assistant turn has been pushed.
|
|
@@ -1015,7 +1015,7 @@ export const formatAgentMessages = (
|
|
|
1015
1015
|
|
|
1016
1016
|
// Capture index range BEFORE skill body injection so injected
|
|
1017
1017
|
// HumanMessages are excluded from the assistant's token distribution
|
|
1018
|
-
// (
|
|
1018
|
+
// (PR #97 fix).
|
|
1019
1019
|
const endMessageIndex = messages.length;
|
|
1020
1020
|
|
|
1021
1021
|
if (pendingSkillNames?.size) {
|
|
@@ -643,7 +643,7 @@ describe('formatAgentMessages', () => {
|
|
|
643
643
|
tool_call: {
|
|
644
644
|
id: 'commits_1',
|
|
645
645
|
name: 'list_commits_mcp_github',
|
|
646
|
-
args: '{"owner":"
|
|
646
|
+
args: '{"owner":"illuma-ai","repo":"agents"}',
|
|
647
647
|
output:
|
|
648
648
|
'[{"sha":"abc123","message":"feat: add deferred tools"},{"sha":"def456","message":"fix: tool loading"}]',
|
|
649
649
|
},
|
|
@@ -10,7 +10,7 @@ import { Providers, GraphEvents, Constants } from '@/common';
|
|
|
10
10
|
import { Run } from '@/run';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
* Repro for
|
|
13
|
+
* Repro for the reference consumer setup: event-driven tools via `toolDefinitions`
|
|
14
14
|
* + an ON_TOOL_EXECUTE handler that runs the tool. Self-spawn subagent must
|
|
15
15
|
* be able to drive the SAME tool pipeline.
|
|
16
16
|
*/
|
|
@@ -20,7 +20,7 @@ if (!apiKey) {
|
|
|
20
20
|
process.exit(1);
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
// Simulate
|
|
23
|
+
// Simulate consumer: tool definitions only, execution routed via event.
|
|
24
24
|
const calculatorDef: t.LCTool = {
|
|
25
25
|
name: 'calculator',
|
|
26
26
|
description: 'Evaluate a math expression. Use for any arithmetic.',
|
|
@@ -378,7 +378,7 @@ describe(`${capitalizeFirstLetter(provider)} Streaming Tests`, () => {
|
|
|
378
378
|
|
|
379
379
|
test(`${capitalizeFirstLetter(provider)}: follow-up after assistant message with only whitespace text content`, async () => {
|
|
380
380
|
/**
|
|
381
|
-
* Regression for
|
|
381
|
+
* Regression for discussion #12806.
|
|
382
382
|
*
|
|
383
383
|
* The Anthropic API has two distinct rejection rules (verified against
|
|
384
384
|
* the live API):
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Orphan tool message repair + sanitize coverage. Ported from
|
|
1
|
+
// Orphan tool message repair + sanitize coverage. Ported from the reference implementation's
|
|
2
2
|
// `prune.test.ts` "Tool Message Handling" + top-level `sanitizeOrphanToolBlocks`
|
|
3
3
|
// describes — kept in a dedicated file to keep the diff against illuma's
|
|
4
4
|
// existing prune.test.ts narrow.
|
|
@@ -69,9 +69,10 @@ const SUPPORTED_LANGUAGES = [
|
|
|
69
69
|
|
|
70
70
|
// Minimal schema for raw code execution. Only what the /exec endpoint needs.
|
|
71
71
|
// Higher-level workflows (versioning, edit, store, replay) are consumer
|
|
72
|
-
// concerns —
|
|
73
|
-
//
|
|
74
|
-
// tool narrow means every consumer gets a clean,
|
|
72
|
+
// concerns — downstream consumers may layer their own write/edit/execute
|
|
73
|
+
// schemas on top via wrapper utilities and content-store backed Zod
|
|
74
|
+
// schemas. Keeping this tool narrow means every consumer gets a clean,
|
|
75
|
+
// schema-stable primitive.
|
|
75
76
|
export const CodeExecutionToolSchema = {
|
|
76
77
|
type: 'object',
|
|
77
78
|
properties: {
|
package/src/tools/ToolNode.ts
CHANGED
|
@@ -37,7 +37,7 @@ import type { ResolvedArgsByCallId } from '@/tools/toolOutputReferences';
|
|
|
37
37
|
/**
|
|
38
38
|
* Per-call batch context for `runTool`. Bundles every optional batch-scoped
|
|
39
39
|
* value the method needs so the signature stays at three positional params
|
|
40
|
-
* even as new context fields are added.
|
|
40
|
+
* even as new context fields are added. (PR #117).
|
|
41
41
|
*/
|
|
42
42
|
type RunToolBatchContext = {
|
|
43
43
|
/** Position of this call within the parent ToolNode batch. */
|
|
@@ -125,7 +125,7 @@ export class ToolNode<T = any> extends RunnableCallable<T, T> {
|
|
|
125
125
|
private hookRegistry?: HookRegistry;
|
|
126
126
|
/**
|
|
127
127
|
* Tool output reference registry threaded down from Run / Graph
|
|
128
|
-
* (
|
|
128
|
+
* (PR #114). When set, dispatchToolEvents resolves
|
|
129
129
|
* `{{tool<i>turn<n>}}` placeholders in args before invoking each tool
|
|
130
130
|
* and stores successful outputs under their stable reference keys for
|
|
131
131
|
* subsequent calls in the same run to pipe through.
|
|
@@ -363,7 +363,7 @@ export class ToolNode<T = any> extends RunnableCallable<T, T> {
|
|
|
363
363
|
/**
|
|
364
364
|
* Runs a single tool call with error handling.
|
|
365
365
|
*
|
|
366
|
-
* @param batchContext Optional per-batch context (
|
|
366
|
+
* @param batchContext Optional per-batch context (PR #117).
|
|
367
367
|
* Threaded from `run()` for tool output reference annotation. The
|
|
368
368
|
* `batchScopeId` field carries an anonymous synthetic scope when the
|
|
369
369
|
* caller has no `run_id`, so concurrent batches don't collide on the
|
|
@@ -581,7 +581,7 @@ export class ToolNode<T = any> extends RunnableCallable<T, T> {
|
|
|
581
581
|
});
|
|
582
582
|
|
|
583
583
|
/**
|
|
584
|
-
* Tool output reference metadata (
|
|
584
|
+
* Tool output reference metadata (PR #117). Register the
|
|
585
585
|
* raw, untruncated content so future `{{...}}` substitutions deliver
|
|
586
586
|
* the full payload, and stamp `_refKey` / `_refScope` /
|
|
587
587
|
* `_unresolvedRefs` into `additional_kwargs` for the lazy
|
|
@@ -1195,7 +1195,7 @@ export class ToolNode<T = any> extends RunnableCallable<T, T> {
|
|
|
1195
1195
|
}
|
|
1196
1196
|
|
|
1197
1197
|
/**
|
|
1198
|
-
* Tool output reference resolution (
|
|
1198
|
+
* Tool output reference resolution (PR #114): walk each call's
|
|
1199
1199
|
* args and substitute `{{tool<i>turn<n>}}` placeholders with the stored
|
|
1200
1200
|
* raw output. Captured here BEFORE request shaping so the substituted
|
|
1201
1201
|
* args flow through the rest of the dispatch unchanged.
|
|
@@ -1380,7 +1380,7 @@ export class ToolNode<T = any> extends RunnableCallable<T, T> {
|
|
|
1380
1380
|
? result.content
|
|
1381
1381
|
: JSON.stringify(result.content);
|
|
1382
1382
|
/**
|
|
1383
|
-
* Tool output reference — lazy annotation (
|
|
1383
|
+
* Tool output reference — lazy annotation (PRs #114 + #117).
|
|
1384
1384
|
* Register the raw output under `tool<idx>turn<turn>` in the
|
|
1385
1385
|
* registry but leave `ToolMessage.content` clean. Stamp the ref
|
|
1386
1386
|
* metadata into `additional_kwargs` instead. The lazy
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Validates the execute_code tool exposes a minimal raw-execution schema —
|
|
5
5
|
* `{ lang, code, args }`. Higher-level workflows (versioning, code_id,
|
|
6
|
-
* old_str/new_str edits) are consumer concerns (e.g.
|
|
7
|
-
*
|
|
6
|
+
* old_str/new_str edits) are consumer concerns (e.g. consumer-side
|
|
7
|
+
* wrapper utilities) and must NOT appear in this schema.
|
|
8
8
|
*/
|
|
9
9
|
import {
|
|
10
10
|
CodeExecutionToolSchema,
|
|
@@ -37,7 +37,7 @@ describe('CodeExecutionToolSchema', () => {
|
|
|
37
37
|
});
|
|
38
38
|
|
|
39
39
|
it('does NOT expose consumer-workflow fields (code_id, old_str, new_str, replace_all)', () => {
|
|
40
|
-
// These live in
|
|
40
|
+
// These live in consumer-side wrapper schemas, not here.
|
|
41
41
|
const props = CodeExecutionToolSchema.properties as Record<string, unknown>;
|
|
42
42
|
expect(props.code_id).toBeUndefined();
|
|
43
43
|
expect(props.old_str).toBeUndefined();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `memory_append` — the reflection-phase-only write tool.
|
|
3
3
|
*
|
|
4
|
-
* New (not present in
|
|
4
|
+
* New (not present in verbatim). Reference implementations enforce append-only via
|
|
5
5
|
* `wrapToolMemoryFlushAppendOnlyWrite`; we combine the tool and the phase
|
|
6
6
|
* gate in one place because the agents library has a simpler graph state.
|
|
7
7
|
*
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* `memory_search` — the mandatory-recall tool.
|
|
3
3
|
*
|
|
4
|
-
* Port of
|
|
5
|
-
* `
|
|
6
|
-
* is verbatim "Mandatory recall step..." from
|
|
4
|
+
* Port of `createMemorySearchTool` at
|
|
5
|
+
* `reference`. The tool description
|
|
6
|
+
* is verbatim "Mandatory recall step..." from a reference implementation — this is the load-
|
|
7
7
|
* bearing line that turns "the agent may recall" into "the agent will recall".
|
|
8
8
|
*/
|
|
9
9
|
import { tool } from '@langchain/core/tools';
|
|
@@ -117,7 +117,7 @@ export function buildMemorySearchUnavailableResult(
|
|
|
117
117
|
|
|
118
118
|
/**
|
|
119
119
|
* Clamp a ranked result list to a total character budget.
|
|
120
|
-
* Ported from
|
|
120
|
+
* Ported from a reference implementation `tools.citations.ts::clampResultsByInjectedChars`.
|
|
121
121
|
*/
|
|
122
122
|
export function clampResultsByInjectedChars<T extends { content: string }>(
|
|
123
123
|
results: T[],
|
package/src/types/agent-cache.ts
CHANGED
|
@@ -9,13 +9,14 @@
|
|
|
9
9
|
* for the active provider; consumers decide what content to put in each
|
|
10
10
|
* block.
|
|
11
11
|
*
|
|
12
|
-
* Why this is generic rather than
|
|
12
|
+
* Why this is generic rather than tier-named
|
|
13
13
|
* ------------------------------------------------
|
|
14
14
|
* Earlier iterations exposed `platform_instructions` and `cache_ttl:
|
|
15
|
-
* { platform, agent }` — vocabulary borrowed from a
|
|
16
|
-
* platform
|
|
17
|
-
* the library and made it confusing for other consumers
|
|
18
|
-
* desktop apps, gateways) which have no notion of
|
|
15
|
+
* { platform, agent }` — vocabulary borrowed from a specific consumer's
|
|
16
|
+
* multi-tenant chat-platform mental model. That leaked one consumer's
|
|
17
|
+
* domain into the library and made it confusing for other consumers
|
|
18
|
+
* (CLI tools, desktop apps, gateways) which have no notion of
|
|
19
|
+
* "platforms" or "agents".
|
|
19
20
|
*
|
|
20
21
|
* The current shape lets every consumer define their own cache-tier
|
|
21
22
|
* organization without the library knowing or caring.
|
package/src/types/graph.ts
CHANGED
|
@@ -389,10 +389,11 @@ export type GraphEdge = {
|
|
|
389
389
|
/**
|
|
390
390
|
* EdgeType.HANDOFF — one-way routing: parent emits an `lc_transfer_to_*`
|
|
391
391
|
* tool call and exits, child takes over and responds directly to the
|
|
392
|
-
* user. Aligns with
|
|
392
|
+
* user. Aligns with the standard handoff semantics.
|
|
393
393
|
* EdgeType.DIRECT — fixed graph edges for automatic sequential / parallel
|
|
394
|
-
* transitions.
|
|
395
|
-
* parallel groups,
|
|
394
|
+
* transitions. Downstream consumers may layer additional wiring on top
|
|
395
|
+
* (fan-in with prompt, parallel groups, approval-gate nodes,
|
|
396
|
+
* excludeResults / agentMessages).
|
|
396
397
|
*/
|
|
397
398
|
edgeType?: import('@/common').EdgeType;
|
|
398
399
|
/**
|
|
@@ -617,7 +618,7 @@ export interface SummarizationConfig {
|
|
|
617
618
|
initialSummary?: string;
|
|
618
619
|
|
|
619
620
|
/**
|
|
620
|
-
*
|
|
621
|
+
* optional fields. When the host wants the summarization
|
|
621
622
|
* pass to run on a different LLM than the agent's own (e.g. a cheaper
|
|
622
623
|
* model for compaction), these provider/model overrides flow through to
|
|
623
624
|
* the summarize callback.
|
|
@@ -790,9 +791,9 @@ export interface AgentInputs {
|
|
|
790
791
|
*/
|
|
791
792
|
initialSummary?: { text: string; tokenCount: number };
|
|
792
793
|
/**
|
|
793
|
-
*
|
|
794
|
+
* opt-in for summarization. When false, the agent never
|
|
794
795
|
* invokes the summarize callback regardless of context utilization.
|
|
795
|
-
* Defaults to undefined (treated as enabled
|
|
796
|
+
* Defaults to undefined (treated as enabled by default to preserve prior
|
|
796
797
|
* behaviour); hosts that want strict opt-in semantics should set it
|
|
797
798
|
* explicitly.
|
|
798
799
|
*/
|
package/src/types/messages.ts
CHANGED
|
@@ -5,7 +5,7 @@ export type AnthropicMessage = Anthropic.MessageParam;
|
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Per-message ref metadata stamped onto a `ToolMessage` at execution time
|
|
8
|
-
* (
|
|
8
|
+
* (PR #117). Read by `annotateMessagesForLLM` to apply transient
|
|
9
9
|
* annotation to a copy of the message right before it goes on the wire to
|
|
10
10
|
* the provider. Never read after the run-scoped registry has been cleared.
|
|
11
11
|
*
|
package/src/types/run.ts
CHANGED
|
@@ -133,7 +133,7 @@ export type RunConfig = {
|
|
|
133
133
|
*/
|
|
134
134
|
hooks?: HookRegistry;
|
|
135
135
|
/**
|
|
136
|
-
* Tool output reference configuration (
|
|
136
|
+
* Tool output reference configuration (PRs #114 / #117).
|
|
137
137
|
* When `enabled` is true, the Run constructs a single
|
|
138
138
|
* ToolOutputReferenceRegistry and threads it to every ToolNode built by
|
|
139
139
|
* the graph so `{{tool<i>turn<n>}}` placeholders resolve across agents.
|
package/src/types/tools.ts
CHANGED
|
@@ -70,13 +70,13 @@ export type ToolNodeOptions = {
|
|
|
70
70
|
/**
|
|
71
71
|
* Maximum characters for a single tool result (head+tail truncation).
|
|
72
72
|
* When omitted, derived from the agent's `maxContextTokens` (30%
|
|
73
|
-
* heuristic), capped at HARD_MAX_TOOL_RESULT_CHARS.
|
|
74
|
-
*
|
|
75
|
-
* this option keeps the test surface portable.
|
|
73
|
+
* heuristic), capped at HARD_MAX_TOOL_RESULT_CHARS. —
|
|
74
|
+
* downstream consumers may drive truncation through other knobs;
|
|
75
|
+
* accepting this option keeps the test surface portable.
|
|
76
76
|
*/
|
|
77
77
|
maxToolResultChars?: number;
|
|
78
78
|
/**
|
|
79
|
-
* Run-scoped tool output reference configuration (
|
|
79
|
+
* Run-scoped tool output reference configuration (PR #114).
|
|
80
80
|
* When `enabled` is true, ToolNode registers successful outputs and
|
|
81
81
|
* substitutes `{{tool<i>turn<n>}}` placeholders found in string args.
|
|
82
82
|
* Ignored when `toolOutputRegistry` is also provided (the host-supplied
|
|
@@ -294,7 +294,7 @@ export type ToolExecuteResult = {
|
|
|
294
294
|
export type LCToolRegistry = Map<string, LCTool>;
|
|
295
295
|
|
|
296
296
|
/**
|
|
297
|
-
* Configuration for the tool output reference feature (
|
|
297
|
+
* Configuration for the tool output reference feature (PR #114).
|
|
298
298
|
*
|
|
299
299
|
* When `enabled: true`, ToolNode stores each successful tool output under
|
|
300
300
|
* a stable key `tool<idx>turn<turn>` and the LLM can pipe a previous output
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AgentContext.js","sourceRoot":"","sources":["AgentContext.ts"],"names":[],"mappings":"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"}
|