@librechat/agents 3.6.11 → 3.6.13

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.
Files changed (50) hide show
  1. package/dist/cjs/agents/AgentContext.cjs +4 -0
  2. package/dist/cjs/agents/AgentContext.cjs.map +1 -1
  3. package/dist/cjs/graphs/Graph.cjs +45 -116
  4. package/dist/cjs/graphs/Graph.cjs.map +1 -1
  5. package/dist/cjs/llm/contextPressureMeter.cjs +212 -0
  6. package/dist/cjs/llm/contextPressureMeter.cjs.map +1 -0
  7. package/dist/cjs/llm/invoke.cjs +46 -75
  8. package/dist/cjs/llm/invoke.cjs.map +1 -1
  9. package/dist/cjs/llm/prepareProviderRequest.cjs +108 -0
  10. package/dist/cjs/llm/prepareProviderRequest.cjs.map +1 -0
  11. package/dist/cjs/llm/tokenCounterCacheCompatibility.cjs +14 -0
  12. package/dist/cjs/llm/tokenCounterCacheCompatibility.cjs.map +1 -0
  13. package/dist/cjs/main.cjs +4 -0
  14. package/dist/cjs/messages/content.cjs +5 -4
  15. package/dist/cjs/messages/content.cjs.map +1 -1
  16. package/dist/cjs/utils/tokens.cjs +3 -2
  17. package/dist/cjs/utils/tokens.cjs.map +1 -1
  18. package/dist/esm/agents/AgentContext.mjs +4 -0
  19. package/dist/esm/agents/AgentContext.mjs.map +1 -1
  20. package/dist/esm/graphs/Graph.mjs +48 -119
  21. package/dist/esm/graphs/Graph.mjs.map +1 -1
  22. package/dist/esm/llm/contextPressureMeter.mjs +211 -0
  23. package/dist/esm/llm/contextPressureMeter.mjs.map +1 -0
  24. package/dist/esm/llm/invoke.mjs +48 -75
  25. package/dist/esm/llm/invoke.mjs.map +1 -1
  26. package/dist/esm/llm/prepareProviderRequest.mjs +105 -0
  27. package/dist/esm/llm/prepareProviderRequest.mjs.map +1 -0
  28. package/dist/esm/llm/tokenCounterCacheCompatibility.mjs +13 -0
  29. package/dist/esm/llm/tokenCounterCacheCompatibility.mjs.map +1 -0
  30. package/dist/esm/main.mjs +3 -1
  31. package/dist/esm/messages/content.mjs +5 -4
  32. package/dist/esm/messages/content.mjs.map +1 -1
  33. package/dist/esm/utils/tokens.mjs +3 -2
  34. package/dist/esm/utils/tokens.mjs.map +1 -1
  35. package/dist/types/agents/AgentContext.d.ts +3 -0
  36. package/dist/types/index.d.ts +3 -0
  37. package/dist/types/llm/contextPressureMeter.d.ts +36 -0
  38. package/dist/types/llm/invoke.d.ts +31 -33
  39. package/dist/types/llm/prepareProviderRequest.d.ts +55 -0
  40. package/dist/types/llm/tokenCounterCacheCompatibility.d.ts +7 -0
  41. package/package.json +2 -1
  42. package/src/agents/AgentContext.ts +9 -0
  43. package/src/graphs/Graph.ts +70 -276
  44. package/src/index.ts +9 -0
  45. package/src/llm/contextPressureMeter.ts +449 -0
  46. package/src/llm/invoke.ts +136 -296
  47. package/src/llm/prepareProviderRequest.ts +357 -0
  48. package/src/llm/tokenCounterCacheCompatibility.ts +22 -0
  49. package/src/messages/content.ts +3 -3
  50. package/src/utils/tokens.ts +3 -2
package/dist/esm/main.mjs CHANGED
@@ -3,6 +3,7 @@ import { CODE_EXECUTION_TOOLS, Callback, CommonEvents, Constants, ContentTypes,
3
3
  import "./common/index.mjs";
4
4
  import { composeAbortSignals, isPresent, parseBooleanEnv, unescapeObject } from "./utils/misc.mjs";
5
5
  import { HARD_MAX_TOOL_RESULT_CHARS, HARD_MAX_TOTAL_TOOL_OUTPUT_SIZE, calculateMaxToolResultChars, calculateMaxTotalToolOutputSize, truncateToolInput, truncateToolResultContent } from "./utils/truncation.mjs";
6
+ import { markTokenCounterCacheCompatible } from "./llm/tokenCounterCacheCompatibility.mjs";
6
7
  import { IMAGE_TOKEN_SAFETY_MARGIN, TokenEncoderManager, UnsafeTokenMeasurementError, apportionTokenCounts, createTokenCounter, encodingForModel, estimateAnthropicImageTokens, estimateDocumentBlockTokens, estimateImageBlockTokens, estimateOpenAIImageTokens, estimateTimedMediaBlockTokens, extractImageDimensions, getTokenCountForMessage, hasUnsafeStructuredSerialization } from "./utils/tokens.mjs";
7
8
  import { PROVIDER_MESSAGE_PROVENANCE_LIMITS, PROVIDER_MESSAGE_PROVENANCE_VERSION, appendProviderMessageProvenance, getProviderMessageProvenance, getProviderSourceMessageIds, hasBijectiveProviderContentPartMapping, inspectProviderMessageProvenance, inspectProviderSourceMessageIds, setInvalidProviderMessageProvenance, setProviderMessageProvenance, stampSyntheticProviderMessage } from "./messages/provenance.mjs";
8
9
  import { DEFAULT_PROMPT_CACHE_TTL, addBedrockCacheControl, addBedrockTailCacheControl, addCacheControl, addCacheControlToStablePrefixMessages, addTailCacheControl, buildAnthropicCacheControl, buildBedrockCachePoint, cloneMessage, resolveBedrockPromptCacheTtl, resolvePromptCacheTtl, stripAnthropicCacheControl, stripBedrockCacheControl, supportsBedrockToolCache } from "./messages/cache.mjs";
@@ -36,6 +37,7 @@ import { RunnableCallable, sleep } from "./utils/run.mjs";
36
37
  import { isZodSchema, toJsonSchema } from "./utils/schema.mjs";
37
38
  import { extractErrorMessage, getContextOverflowInfo, isContextOverflowError, isLikelyContextOverflowError } from "./utils/errors.mjs";
38
39
  import "./utils/index.mjs";
40
+ import { prepareProviderRequest } from "./llm/prepareProviderRequest.mjs";
39
41
  import { DEFAULT_STREAM_DELAY, computeAdaptivePieceSize, resolveStreamDelay, smoothStream } from "./llm/stream/smoother.mjs";
40
42
  import { CustomChatMistralAI } from "./llm/mistral/index.mjs";
41
43
  import { CustomOpenAIClient } from "./llm/openai/index.mjs";
@@ -113,4 +115,4 @@ import { Runnable, RunnableLambda, RunnableSequence } from "./langchain/runnable
113
115
  import { DynamicStructuredTool, StructuredTool, Tool, tool } from "./langchain/tools.mjs";
114
116
  import "./langchain/index.mjs";
115
117
  import { BaseCheckpointSaver, Command, INTERRUPT, MemorySaver, interrupt, isInterrupted } from "@langchain/langgraph";
116
- export { ACTIVITY_LABEL_RUN_NAME, ACTIVITY_PHASE_LABEL_RUN_NAME, ACTIVITY_PHASE_RUN_NAME, AGENT_MODEL_CALL_RUN_NAME, AIMessage, AIMessageChunk, ANTHROPIC_TOOL_TOKEN_MULTIPLIER, ASK_USER_QUESTION_ID_PATTERN, AgentSession, BASH_SHELL_GUIDANCE, BaseCheckpointSaver, BaseMessage, BaseMessageChunk, BashExecutionToolDefinition, BashExecutionToolDescription, BashExecutionToolName, BashExecutionToolSchema, BashProgrammaticToolCallingDefinition, BashProgrammaticToolCallingDescription, BashProgrammaticToolCallingName, BashProgrammaticToolCallingSchema, BashToolOutputReferencesGuide, CALIBRATION_RATIO_MAX, CALIBRATION_RATIO_MIN, CLOUDFLARE_BASH_CODING_TOOL_NAMES, CLOUDFLARE_CODING_TOOL_NAMES, CODE_API_AUTHORIZATION_ERROR_MESSAGE, CODE_API_EXECUTION_FAILED_ERROR_MESSAGE, CODE_API_EXPECTED_PROFILE_HEADER, CODE_API_INVALID_REQUEST_ERROR_MESSAGE, CODE_API_RATE_LIMITED_ERROR_MESSAGE, CODE_API_UNAVAILABLE_ERROR_MESSAGE, CODE_ARTIFACT_PATH_GUIDANCE, CODE_EXECUTION_TOOLS, Calculator, CalculatorSchema, CalculatorToolDefinition, CalculatorToolDescription, CalculatorToolName, Callback, ChatModelStreamHandler, ChatOpenRouter, CloudflareBashExecutionToolDescription, CloudflareCodeExecutionToolDescription, CodeApiRequestError, CodeExecutionToolDefinition, CodeExecutionToolDescription, CodeExecutionToolName, CodeExecutionToolSchema, Command, CommonEvents, CompileCheckToolName, Constants, ContentTypes, CustomChatMistralAI, CustomOpenAIClient, DATE_RANGE, DEFAULT_CONTEXT_PRUNING_SETTINGS, DEFAULT_COUNTRY_DESCRIPTION, DEFAULT_HOOK_TIMEOUT_MS, DEFAULT_MAX_SEALS, DEFAULT_MAX_TOOL_CALL_ARG_BYTES, DEFAULT_PROMPT_CACHE_TTL, DEFAULT_QUERY_DESCRIPTION, DEFAULT_RECURSION_LIMIT, DEFAULT_RESERVE_RATIO, DEFAULT_RETAIN_RECENT_TURNS, DEFAULT_STREAM_DELAY, DEFAULT_SUBAGENT_DESCRIPTION, DEFAULT_TOOL_TOKEN_MULTIPLIER, DynamicStructuredTool, EnvVar, FAILED_EXECUTION_FILE_REMINDER, FakeChatModel, Graph, GraphEvents, GraphNodeActions, GraphNodeKeys, HARD_MAX_TOOL_RESULT_CHARS, HARD_MAX_TOTAL_TOOL_OUTPUT_SIZE, HOOK_EVENTS, HOOK_INJECTED_MESSAGES_CAPABLE, HOOK_PREEMPT_BOUNDARY_CAPABLE, HandlerRegistry, HookRegistry, HumanMessage, IMAGE_TOKEN_SAFETY_MARGIN, INTENT_ARG, INTENT_DESCRIPTION, INTENT_LABEL_MARKER, INTENT_PROPERTY, INTERRUPT, InMemorySubagentTaskStore, JsonlSessionStore, LLMStreamHandler, LOCAL_CODING_BUNDLE_NAMES, LOCAL_CODING_TOOL_NAMES, LOCAL_SPAWN_TIMEOUT_MS, LocalBashExecutionToolDescription, LocalCodeExecutionToolDescription, LocalEditFileToolName, LocalEditFileToolSchema, LocalFileCheckpointerImpl, LocalGlobSearchToolName, LocalGlobSearchToolSchema, LocalGrepSearchToolName, LocalGrepSearchToolSchema, LocalListDirectoryToolName, LocalListDirectoryToolSchema, LocalReadFileToolSchema, LocalWriteFileToolName, LocalWriteFileToolSchema, MAX_ASK_USER_QUESTIONS, MAX_CACHE_SIZE, MAX_PATTERN_LENGTH, MULTI_AGENT_GRAPH_RUN_NAME, MemorySaver, ModelEndHandler, MultiAgentGraph, OPENAI_RESPONSES_ACTIVE_REASONING_ID_KEY, OPENAI_RESPONSES_REPLAY_POSITIONS_KEY, ORIGINAL_CONTENT_MAX_CHARS, PREDECESSOR_HANDOFF_CUE, PREEMPT_BOUNDARY_HOOK_TIMEOUT_MS, PROVIDER_MESSAGE_PROVENANCE_LIMITS, PROVIDER_MESSAGE_PROVENANCE_VERSION, ProgrammaticToolCallingDefinition, ProgrammaticToolCallingDescription, ProgrammaticToolCallingName, ProgrammaticToolCallingSchema, PromptTemplate, Providers, REASONING_LABEL_RUN_NAME, REMOVE_ALL_MESSAGES, REPLY_PRIMER_TOKENS, ReadFileToolDefinition, ReadFileToolDescription, ReadFileToolName, ReadFileToolSchema, Run, Runnable, RunnableCallable, RunnableLambda, RunnableSequence, SDK_STREAM_DISPATCH, STANDARD_GRAPH_RUN_NAME, STATEFUL_BASH_NOTE, STATEFUL_ENV_NOTE, SessionManager, SkillToolDefinition, SkillToolDescription, SkillToolName, SkillToolSchema, StandardGraph, StatefulBashExecutionToolDescription, StatefulCodeExecutionToolDescription, StepTypes, StreamLimitExceededError, StructuredTool, SubagentExecutor, SubagentToolDefinition, SubagentToolDescription, SubagentToolName, SubagentToolSchema, SystemMessage, TMP_SCRATCH_OUTPUT_REMINDER, TOOL_APPROVAL_EXECUTION_SCOPE_CONFIG_KEY, TestChatStreamHandler, TestLLMStreamHandler, TitleMethod, TokenEncoderManager, Tool, ToolCallTypes, ToolEndHandler, ToolMessage, ToolNode, ToolSearchToolDefinition, ToolSearchToolDescription, ToolSearchToolName, ToolSearchToolSchema, UnsafeTokenMeasurementError, WebSearchToolDefinition, WebSearchToolDescription, WebSearchToolName, WebSearchToolSchema, _createBashProgramForTests, _resetLocalEngineWarningsForTests, _resetRipgrepCacheForTests, _resetSyntaxCheckProbeCacheForTests, _resetUnrecognizedTriggerWarnings, addBedrockCacheControl, addBedrockTailCacheControl, addCacheControl, addCacheControlToStablePrefixMessages, addCodeApiExecutionProfileHeader, addTailCacheControl, appendCodeSessionFileSummary, appendFailedExecutionFileReminder, appendPredecessorHandoffCue, appendProviderMessageProvenance, appendTmpScratchReminder, applyContextPruning, applyEdit, applyOutcome, applyPreToolUseHooksForBridge, apportionTokenCounts, askUserQuestion, askUserQuestions, attemptInvoke, bashAstFindingsToErrors, buildAnthropicCacheControl, buildBashExecutionToolDescription, buildBashExecutionToolSchema, buildBedrockCachePoint, buildChildInputs, buildCodeApiEndpoint, buildCodeApiExecutionErrorMessage, buildCodeApiHttpErrorMessage, buildCodeExecutionToolDescription, buildCodeExecutionToolSchema, buildSandboxRuntimeConfig, buildSubagentToolParams, calculateMaxToolCallInputChars, calculateMaxToolResultChars, calculateMaxTotalToolOutputSize, calculateTotalTokens, canSealPreempt, checkValidNumber, clampCalibrationRatio, classifyAttachment, clientExecTimeoutMs, clientFsTimeoutMs, cloneMessage, coalesceAdjacentUserTurns, compactSyntheticProviderContextMessage, composeAbortSignals, composeEventHandlers, computeAdaptivePieceSize, convertInjectedMessages, convertMessagesToContent, countNestedGroups, countrySchema, createAgentSession, createBashExecutionTool, createBashProgrammaticToolCallingSchema, createBashProgrammaticToolCallingTool, createCloudflareBashExecutionTool, createCloudflareBashProgrammaticToolCallingTool, createCloudflareBridgeRuntime, createCloudflareCodeExecutionTool, createCloudflareCodingToolBundle, createCloudflareCodingTools, createCloudflareExecutionTool, createCloudflareLocalExecutionConfig, createCloudflareProgrammaticToolCallingTool, createCloudflareWorkspaceFS, createCodeExecutionTool, createCompileCheckTool, createCompileCheckToolDefinition, createContentAggregator, createFakeStreamingLLM, createGraph, createHandlers, createLocalBashExecutionTool, createLocalBashProgrammaticToolCallingTool, createLocalCodeExecutionTool, createLocalCodingToolBundle, createLocalCodingToolDefinitions, createLocalCodingToolRegistry, createLocalCodingTools, createLocalEditFileTool, createLocalFileCheckpointer, createLocalGlobSearchTool, createLocalGrepSearchTool, createLocalListDirectoryTool, createLocalProgrammaticToolCallingTool, createLocalReadFileTool, createLocalWriteFileTool, createMetadataAggregator, createProgrammaticToolCallingSchema, createProgrammaticToolCallingTool, createPruneMessages, createRemoveAllMessage, createRunHandlers, createSchemaOnlyTool, createSchemaOnlyTools, createSearchTool, createSubagentToolDefinition, createTokenCounter, createToolErrorOwnership, createToolPolicyHook, createToolSearch, createWorkspacePolicyHook, dateSchema, decodeFile, defaultOmitOptions, deserializeMessage, dispatchesChatModelStream, emptyOutputMessage, encodeFile, encodingForModel, enforceOriginalContentCap, ensureThinkingBlockInMessages, escapeRegexSpecialChars, estimateAnthropicImageTokens, estimateDocumentBlockTokens, estimateImageBlockTokens, estimateOpenAIImageTokens, estimateTimedMediaBlockTokens, execWithClientTimeout, executeCloudflareBash, executeCloudflareCode, executeHooks, executeLocalBash, executeLocalBashWithArgs, executeLocalCode, executeParallelSearches, executeTools, extractErrorMessage, extractImageDimensions, extractMcpServerName, extractTextFromContent, extractToolDiscoveries, extractUsedBashToolNames, extractUsedToolNames, fetchSessionFiles, filterBashToolsByUsage, filterGraphSubagentResult, filterSubagentResult, filterToolsByUsage, findLastIndex, foldToolBlocksForToollessAgent, formatAgentMessages, formatAnthropicArtifactContent, formatAnthropicMessage, formatArtifactPayload, formatCloudflareOutput, formatCompletedResponse, formatContentStrings, formatFromLangChain, formatLangChainMessages, formatMediaMessage, formatMessage, formatServerListing, formatSkillCatalog, getAssistantTextPhase, getAvailableMcpServers, getBaseToolName, getBufferString, getChatModelClass, getChunkContent, getCloudflareWorkspaceRoot, getCodeBaseURL, getContextOverflowInfo, getConverseOverrideMessage, getDeferredToolsListing, getLocalCwd, getLocalSessionId, getMaxOutputTokensKey, getMessageCreationContentMetadata, getMessageId, getMessagesWithinTokenLimit, getProviderMessageProvenance, getProviderSourceMessageIds, getReadRoots, getSpawn, getTokenCountForMessage, getWorkspaceFS, getWorkspaceRoots, getWriteRoots, handleServerToolResult, handleToolCallChunks, handleToolCalls, hasBijectiveProviderContentPartMapping, hasNestedQuantifier, hasNestedQuantifiers, hasToolSearchInCurrentTurn, hasUnsafeStructuredSerialization, imageAttachmentContent, imagesSchema, initializeModel, inspectProviderMessageProvenance, inspectProviderSourceMessageIds, interrupt, isAIMessage, isAnthropicLike, isAskUserQuestionsInterrupt, isBaseMessage, isContextOverflowError, isDangerousPattern, isFromAnyMcpServer, isFromMcpServer, isGoogleLike, isGraphSubagentConfig, isIntentLabelProperty, isInterrupted, isLegacyConvertible, isLikelyContextOverflowError, isOpenAILike, isPresent, isProgrammaticRunnerAutoBound, isProgrammaticRunnerResolvedDirectly, isSyntheticProviderContextMessage, isThinkingEnabled, isToolMessage, isZodSchema, joinKeys, labelContentByAgent, locateEdit, makeIsDeferred, makeRequest, mapChatMessagesToStoredMessages, mapStoredMessagesToChatMessages, maskConsumedToolResults, matchesQuery, messagesStateReducer, modifyDeltaProperties, newsSchema, normalizeBashToolResultsForReplay, normalizeCodeApiRequestError, normalizeServerFilter, normalizeSubagentConfigEntries, normalizeSubagentConfigs, normalizeToBashIdentifier, normalizeToPythonIdentifier, outcomeFieldsFromResult, parseBooleanEnv, partitionAndMarkAnthropicToolCache, performLocalSearch, preFlightTruncateToolCallInputs, preFlightTruncateToolResults, projectAgentContextUsage, projectAnthropicArtifactContent, projectArtifactPayload, projectCacheControlledToolOutputsToText, projectComputerCallOutputsToText, projectOpenAIChatToolMessageContent, projectOpenAIResponsesToolMessageContent, projectOpenAIToolMessageContent, projectOpenRouterToolMessageContent, projectSingleTextToolOutputsToText, projectStructuredToolOutputsToText, projectToolCallInputs, projectToolStreamContentForProvider, querySchema, readIntent, readOutcomeFields, removePredecessorHandoffCue, repairOrphanedToolMessages, resetIfNotEmpty, resolveBedrockPromptCacheTtl, resolveCloudflareSandbox, resolveCodeApiAuthHeaders, resolveContextPruningSettings, resolveFetchProxyAgent, resolveLocalExecutionConfig, resolveLocalExecutionTools, resolveLocalImplementationNames, resolveLocalToolRegistry, resolveLocalToolsForBinding, resolvePromptCacheTtl, resolveSearchOutcome, resolveStreamDelay, resolveStreamLimits, resolveSubagentConfigEntries, resolveSubagentConfigs, resolveToolOutcome, resolveWorkspacePath, resolveWorkspacePathSafe, runBashAstChecks, runPostEditSyntaxCheck, sanitizeOrphanToolBlocks, sanitizeRegex, selectRuntimeSessionHint, serializeMessage, serializeToolCallInput, setInvalidProviderMessageProvenance, setProviderMessageProvenance, shellQuote, shiftIndexTokenCountMap, shouldBypassProxy, shouldTriggerSummarization, sleep, smoothStream, spawnLocalProcess, splitAssistantTextContentByPhase, splitAtRecencyBoundary, stampSyntheticProviderMessage, strictAlternationProviders, stripAnthropicCacheControl, stripBedrockCacheControl, stripCodeSessionFileSummary, stripIntent, summarizeEvent, supportsBedrockToolCache, syncBudgetDerivedFields, toJsonSchema, tool, toolResultTypes, toolsCondition, truncateLocalOutput, truncateToolInput, truncateToolResultContent, tryFallbackProviders, unescapeObject, unwrapToolResponse, validateBashCommand, validateCloudflareBashCommand, videosSchema, withClientTimeout, withIntent, withMessageRole, withoutIntent };
118
+ export { ACTIVITY_LABEL_RUN_NAME, ACTIVITY_PHASE_LABEL_RUN_NAME, ACTIVITY_PHASE_RUN_NAME, AGENT_MODEL_CALL_RUN_NAME, AIMessage, AIMessageChunk, ANTHROPIC_TOOL_TOKEN_MULTIPLIER, ASK_USER_QUESTION_ID_PATTERN, AgentSession, BASH_SHELL_GUIDANCE, BaseCheckpointSaver, BaseMessage, BaseMessageChunk, BashExecutionToolDefinition, BashExecutionToolDescription, BashExecutionToolName, BashExecutionToolSchema, BashProgrammaticToolCallingDefinition, BashProgrammaticToolCallingDescription, BashProgrammaticToolCallingName, BashProgrammaticToolCallingSchema, BashToolOutputReferencesGuide, CALIBRATION_RATIO_MAX, CALIBRATION_RATIO_MIN, CLOUDFLARE_BASH_CODING_TOOL_NAMES, CLOUDFLARE_CODING_TOOL_NAMES, CODE_API_AUTHORIZATION_ERROR_MESSAGE, CODE_API_EXECUTION_FAILED_ERROR_MESSAGE, CODE_API_EXPECTED_PROFILE_HEADER, CODE_API_INVALID_REQUEST_ERROR_MESSAGE, CODE_API_RATE_LIMITED_ERROR_MESSAGE, CODE_API_UNAVAILABLE_ERROR_MESSAGE, CODE_ARTIFACT_PATH_GUIDANCE, CODE_EXECUTION_TOOLS, Calculator, CalculatorSchema, CalculatorToolDefinition, CalculatorToolDescription, CalculatorToolName, Callback, ChatModelStreamHandler, ChatOpenRouter, CloudflareBashExecutionToolDescription, CloudflareCodeExecutionToolDescription, CodeApiRequestError, CodeExecutionToolDefinition, CodeExecutionToolDescription, CodeExecutionToolName, CodeExecutionToolSchema, Command, CommonEvents, CompileCheckToolName, Constants, ContentTypes, CustomChatMistralAI, CustomOpenAIClient, DATE_RANGE, DEFAULT_CONTEXT_PRUNING_SETTINGS, DEFAULT_COUNTRY_DESCRIPTION, DEFAULT_HOOK_TIMEOUT_MS, DEFAULT_MAX_SEALS, DEFAULT_MAX_TOOL_CALL_ARG_BYTES, DEFAULT_PROMPT_CACHE_TTL, DEFAULT_QUERY_DESCRIPTION, DEFAULT_RECURSION_LIMIT, DEFAULT_RESERVE_RATIO, DEFAULT_RETAIN_RECENT_TURNS, DEFAULT_STREAM_DELAY, DEFAULT_SUBAGENT_DESCRIPTION, DEFAULT_TOOL_TOKEN_MULTIPLIER, DynamicStructuredTool, EnvVar, FAILED_EXECUTION_FILE_REMINDER, FakeChatModel, Graph, GraphEvents, GraphNodeActions, GraphNodeKeys, HARD_MAX_TOOL_RESULT_CHARS, HARD_MAX_TOTAL_TOOL_OUTPUT_SIZE, HOOK_EVENTS, HOOK_INJECTED_MESSAGES_CAPABLE, HOOK_PREEMPT_BOUNDARY_CAPABLE, HandlerRegistry, HookRegistry, HumanMessage, IMAGE_TOKEN_SAFETY_MARGIN, INTENT_ARG, INTENT_DESCRIPTION, INTENT_LABEL_MARKER, INTENT_PROPERTY, INTERRUPT, InMemorySubagentTaskStore, JsonlSessionStore, LLMStreamHandler, LOCAL_CODING_BUNDLE_NAMES, LOCAL_CODING_TOOL_NAMES, LOCAL_SPAWN_TIMEOUT_MS, LocalBashExecutionToolDescription, LocalCodeExecutionToolDescription, LocalEditFileToolName, LocalEditFileToolSchema, LocalFileCheckpointerImpl, LocalGlobSearchToolName, LocalGlobSearchToolSchema, LocalGrepSearchToolName, LocalGrepSearchToolSchema, LocalListDirectoryToolName, LocalListDirectoryToolSchema, LocalReadFileToolSchema, LocalWriteFileToolName, LocalWriteFileToolSchema, MAX_ASK_USER_QUESTIONS, MAX_CACHE_SIZE, MAX_PATTERN_LENGTH, MULTI_AGENT_GRAPH_RUN_NAME, MemorySaver, ModelEndHandler, MultiAgentGraph, OPENAI_RESPONSES_ACTIVE_REASONING_ID_KEY, OPENAI_RESPONSES_REPLAY_POSITIONS_KEY, ORIGINAL_CONTENT_MAX_CHARS, PREDECESSOR_HANDOFF_CUE, PREEMPT_BOUNDARY_HOOK_TIMEOUT_MS, PROVIDER_MESSAGE_PROVENANCE_LIMITS, PROVIDER_MESSAGE_PROVENANCE_VERSION, ProgrammaticToolCallingDefinition, ProgrammaticToolCallingDescription, ProgrammaticToolCallingName, ProgrammaticToolCallingSchema, PromptTemplate, Providers, REASONING_LABEL_RUN_NAME, REMOVE_ALL_MESSAGES, REPLY_PRIMER_TOKENS, ReadFileToolDefinition, ReadFileToolDescription, ReadFileToolName, ReadFileToolSchema, Run, Runnable, RunnableCallable, RunnableLambda, RunnableSequence, SDK_STREAM_DISPATCH, STANDARD_GRAPH_RUN_NAME, STATEFUL_BASH_NOTE, STATEFUL_ENV_NOTE, SessionManager, SkillToolDefinition, SkillToolDescription, SkillToolName, SkillToolSchema, StandardGraph, StatefulBashExecutionToolDescription, StatefulCodeExecutionToolDescription, StepTypes, StreamLimitExceededError, StructuredTool, SubagentExecutor, SubagentToolDefinition, SubagentToolDescription, SubagentToolName, SubagentToolSchema, SystemMessage, TMP_SCRATCH_OUTPUT_REMINDER, TOOL_APPROVAL_EXECUTION_SCOPE_CONFIG_KEY, TestChatStreamHandler, TestLLMStreamHandler, TitleMethod, TokenEncoderManager, Tool, ToolCallTypes, ToolEndHandler, ToolMessage, ToolNode, ToolSearchToolDefinition, ToolSearchToolDescription, ToolSearchToolName, ToolSearchToolSchema, UnsafeTokenMeasurementError, WebSearchToolDefinition, WebSearchToolDescription, WebSearchToolName, WebSearchToolSchema, _createBashProgramForTests, _resetLocalEngineWarningsForTests, _resetRipgrepCacheForTests, _resetSyntaxCheckProbeCacheForTests, _resetUnrecognizedTriggerWarnings, addBedrockCacheControl, addBedrockTailCacheControl, addCacheControl, addCacheControlToStablePrefixMessages, addCodeApiExecutionProfileHeader, addTailCacheControl, appendCodeSessionFileSummary, appendFailedExecutionFileReminder, appendPredecessorHandoffCue, appendProviderMessageProvenance, appendTmpScratchReminder, applyContextPruning, applyEdit, applyOutcome, applyPreToolUseHooksForBridge, apportionTokenCounts, askUserQuestion, askUserQuestions, attemptInvoke, bashAstFindingsToErrors, buildAnthropicCacheControl, buildBashExecutionToolDescription, buildBashExecutionToolSchema, buildBedrockCachePoint, buildChildInputs, buildCodeApiEndpoint, buildCodeApiExecutionErrorMessage, buildCodeApiHttpErrorMessage, buildCodeExecutionToolDescription, buildCodeExecutionToolSchema, buildSandboxRuntimeConfig, buildSubagentToolParams, calculateMaxToolCallInputChars, calculateMaxToolResultChars, calculateMaxTotalToolOutputSize, calculateTotalTokens, canSealPreempt, checkValidNumber, clampCalibrationRatio, classifyAttachment, clientExecTimeoutMs, clientFsTimeoutMs, cloneMessage, coalesceAdjacentUserTurns, compactSyntheticProviderContextMessage, composeAbortSignals, composeEventHandlers, computeAdaptivePieceSize, convertInjectedMessages, convertMessagesToContent, countNestedGroups, countrySchema, createAgentSession, createBashExecutionTool, createBashProgrammaticToolCallingSchema, createBashProgrammaticToolCallingTool, createCloudflareBashExecutionTool, createCloudflareBashProgrammaticToolCallingTool, createCloudflareBridgeRuntime, createCloudflareCodeExecutionTool, createCloudflareCodingToolBundle, createCloudflareCodingTools, createCloudflareExecutionTool, createCloudflareLocalExecutionConfig, createCloudflareProgrammaticToolCallingTool, createCloudflareWorkspaceFS, createCodeExecutionTool, createCompileCheckTool, createCompileCheckToolDefinition, createContentAggregator, createFakeStreamingLLM, createGraph, createHandlers, createLocalBashExecutionTool, createLocalBashProgrammaticToolCallingTool, createLocalCodeExecutionTool, createLocalCodingToolBundle, createLocalCodingToolDefinitions, createLocalCodingToolRegistry, createLocalCodingTools, createLocalEditFileTool, createLocalFileCheckpointer, createLocalGlobSearchTool, createLocalGrepSearchTool, createLocalListDirectoryTool, createLocalProgrammaticToolCallingTool, createLocalReadFileTool, createLocalWriteFileTool, createMetadataAggregator, createProgrammaticToolCallingSchema, createProgrammaticToolCallingTool, createPruneMessages, createRemoveAllMessage, createRunHandlers, createSchemaOnlyTool, createSchemaOnlyTools, createSearchTool, createSubagentToolDefinition, createTokenCounter, createToolErrorOwnership, createToolPolicyHook, createToolSearch, createWorkspacePolicyHook, dateSchema, decodeFile, defaultOmitOptions, deserializeMessage, dispatchesChatModelStream, emptyOutputMessage, encodeFile, encodingForModel, enforceOriginalContentCap, ensureThinkingBlockInMessages, escapeRegexSpecialChars, estimateAnthropicImageTokens, estimateDocumentBlockTokens, estimateImageBlockTokens, estimateOpenAIImageTokens, estimateTimedMediaBlockTokens, execWithClientTimeout, executeCloudflareBash, executeCloudflareCode, executeHooks, executeLocalBash, executeLocalBashWithArgs, executeLocalCode, executeParallelSearches, executeTools, extractErrorMessage, extractImageDimensions, extractMcpServerName, extractTextFromContent, extractToolDiscoveries, extractUsedBashToolNames, extractUsedToolNames, fetchSessionFiles, filterBashToolsByUsage, filterGraphSubagentResult, filterSubagentResult, filterToolsByUsage, findLastIndex, foldToolBlocksForToollessAgent, formatAgentMessages, formatAnthropicArtifactContent, formatAnthropicMessage, formatArtifactPayload, formatCloudflareOutput, formatCompletedResponse, formatContentStrings, formatFromLangChain, formatLangChainMessages, formatMediaMessage, formatMessage, formatServerListing, formatSkillCatalog, getAssistantTextPhase, getAvailableMcpServers, getBaseToolName, getBufferString, getChatModelClass, getChunkContent, getCloudflareWorkspaceRoot, getCodeBaseURL, getContextOverflowInfo, getConverseOverrideMessage, getDeferredToolsListing, getLocalCwd, getLocalSessionId, getMaxOutputTokensKey, getMessageCreationContentMetadata, getMessageId, getMessagesWithinTokenLimit, getProviderMessageProvenance, getProviderSourceMessageIds, getReadRoots, getSpawn, getTokenCountForMessage, getWorkspaceFS, getWorkspaceRoots, getWriteRoots, handleServerToolResult, handleToolCallChunks, handleToolCalls, hasBijectiveProviderContentPartMapping, hasNestedQuantifier, hasNestedQuantifiers, hasToolSearchInCurrentTurn, hasUnsafeStructuredSerialization, imageAttachmentContent, imagesSchema, initializeModel, inspectProviderMessageProvenance, inspectProviderSourceMessageIds, interrupt, isAIMessage, isAnthropicLike, isAskUserQuestionsInterrupt, isBaseMessage, isContextOverflowError, isDangerousPattern, isFromAnyMcpServer, isFromMcpServer, isGoogleLike, isGraphSubagentConfig, isIntentLabelProperty, isInterrupted, isLegacyConvertible, isLikelyContextOverflowError, isOpenAILike, isPresent, isProgrammaticRunnerAutoBound, isProgrammaticRunnerResolvedDirectly, isSyntheticProviderContextMessage, isThinkingEnabled, isToolMessage, isZodSchema, joinKeys, labelContentByAgent, locateEdit, makeIsDeferred, makeRequest, mapChatMessagesToStoredMessages, mapStoredMessagesToChatMessages, markTokenCounterCacheCompatible, maskConsumedToolResults, matchesQuery, messagesStateReducer, modifyDeltaProperties, newsSchema, normalizeBashToolResultsForReplay, normalizeCodeApiRequestError, normalizeServerFilter, normalizeSubagentConfigEntries, normalizeSubagentConfigs, normalizeToBashIdentifier, normalizeToPythonIdentifier, outcomeFieldsFromResult, parseBooleanEnv, partitionAndMarkAnthropicToolCache, performLocalSearch, preFlightTruncateToolCallInputs, preFlightTruncateToolResults, prepareProviderRequest, projectAgentContextUsage, projectAnthropicArtifactContent, projectArtifactPayload, projectCacheControlledToolOutputsToText, projectComputerCallOutputsToText, projectOpenAIChatToolMessageContent, projectOpenAIResponsesToolMessageContent, projectOpenAIToolMessageContent, projectOpenRouterToolMessageContent, projectSingleTextToolOutputsToText, projectStructuredToolOutputsToText, projectToolCallInputs, projectToolStreamContentForProvider, querySchema, readIntent, readOutcomeFields, removePredecessorHandoffCue, repairOrphanedToolMessages, resetIfNotEmpty, resolveBedrockPromptCacheTtl, resolveCloudflareSandbox, resolveCodeApiAuthHeaders, resolveContextPruningSettings, resolveFetchProxyAgent, resolveLocalExecutionConfig, resolveLocalExecutionTools, resolveLocalImplementationNames, resolveLocalToolRegistry, resolveLocalToolsForBinding, resolvePromptCacheTtl, resolveSearchOutcome, resolveStreamDelay, resolveStreamLimits, resolveSubagentConfigEntries, resolveSubagentConfigs, resolveToolOutcome, resolveWorkspacePath, resolveWorkspacePathSafe, runBashAstChecks, runPostEditSyntaxCheck, sanitizeOrphanToolBlocks, sanitizeRegex, selectRuntimeSessionHint, serializeMessage, serializeToolCallInput, setInvalidProviderMessageProvenance, setProviderMessageProvenance, shellQuote, shiftIndexTokenCountMap, shouldBypassProxy, shouldTriggerSummarization, sleep, smoothStream, spawnLocalProcess, splitAssistantTextContentByPhase, splitAtRecencyBoundary, stampSyntheticProviderMessage, strictAlternationProviders, stripAnthropicCacheControl, stripBedrockCacheControl, stripCodeSessionFileSummary, stripIntent, summarizeEvent, supportsBedrockToolCache, syncBudgetDerivedFields, toJsonSchema, tool, toolResultTypes, toolsCondition, truncateLocalOutput, truncateToolInput, truncateToolResultContent, tryFallbackProviders, unescapeObject, unwrapToolResponse, validateBashCommand, validateCloudflareBashCommand, videosSchema, withClientTimeout, withIntent, withMessageRole, withoutIntent };
@@ -1,5 +1,6 @@
1
1
  import "../common/enum.mjs";
2
2
  import "../common/index.mjs";
3
+ import { cloneMessage } from "./cache.mjs";
3
4
  //#region src/messages/content.ts
4
5
  const isLegacyConvertible = (message) => {
5
6
  const messageType = message.getType();
@@ -14,11 +15,11 @@ const formatContentStrings = (payload) => {
14
15
  result.push(message);
15
16
  continue;
16
17
  }
17
- message.content = message.content.reduce((acc, curr) => {
18
- if (curr.type === "text") return `${acc}${curr["text"] || ""}\n`;
18
+ const content = message.content.reduce((acc, curr) => {
19
+ if (curr.type === "text") return `${acc}${curr["text"] ?? ""}\n`;
19
20
  return acc;
20
- }, "").trim();
21
- result.push(message);
21
+ }, "");
22
+ result.push(cloneMessage(message, content.trim()));
22
23
  }
23
24
  return result;
24
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"content.mjs","names":[],"sources":["../../../src/messages/content.ts"],"mappings":";;;AAUA,MAAa,uBAAuB,YAAkC;CACpE,MAAM,cAAc,QAAQ,QAAQ;CAGpC,IAAI,EADF,gBAAgB,WAAW,gBAAgB,QAAQ,gBAAgB,WAEnE,OAAO;CAET,IAAI,CAAC,MAAM,QAAQ,QAAQ,OAAO,GAChC,OAAO;CAET,OAAO,QAAQ,QAAQ,OAAO,UAAU,MAAM,SAAA,MAA0B;AAC1E;AAOA,MAAa,wBACX,YACuB;CAEvB,MAAM,SAA6B,CAAC;CAEpC,KAAK,MAAM,WAAW,SAAS;EAC7B,IAAI,CAAC,oBAAoB,OAAO,GAAG;GACjC,OAAO,KAAK,OAAO;GACnB;EACF;EAWA,QAAQ,UARO,QAAQ,QACA,QAAQ,KAAK,SAAS;GAC3C,IAAI,KAAK,SAAA,QACP,OAAO,GAAG,MAAM,KAAA,WAA2B,GAAG;GAEhD,OAAO;EACT,GAAG,EAEqB,CAAC,CAAC,KAAK;EAC/B,OAAO,KAAK,OAAO;CACrB;CAEA,OAAO;AACT"}
1
+ {"version":3,"file":"content.mjs","names":[],"sources":["../../../src/messages/content.ts"],"mappings":";;;;AAWA,MAAa,uBAAuB,YAAkC;CACpE,MAAM,cAAc,QAAQ,QAAQ;CAGpC,IAAI,EADF,gBAAgB,WAAW,gBAAgB,QAAQ,gBAAgB,WAEnE,OAAO;CAET,IAAI,CAAC,MAAM,QAAQ,QAAQ,OAAO,GAChC,OAAO;CAET,OAAO,QAAQ,QAAQ,OAAO,UAAU,MAAM,SAAA,MAA0B;AAC1E;AAOA,MAAa,wBACX,YACuB;CAEvB,MAAM,SAA6B,CAAC;CAEpC,KAAK,MAAM,WAAW,SAAS;EAC7B,IAAI,CAAC,oBAAoB,OAAO,GAAG;GACjC,OAAO,KAAK,OAAO;GACnB;EACF;EAIA,MAAM,UADS,QAAQ,QACA,QAAQ,KAAK,SAAS;GAC3C,IAAI,KAAK,SAAA,QACP,OAAO,GAAG,MAAM,KAAA,WAA2B,GAAG;GAEhD,OAAO;EACT,GAAG,EAAE;EAEL,OAAO,KAAK,aAAa,SAAS,QAAQ,KAAK,CAAC,CAAC;CACnD;CAEA,OAAO;AACT"}
@@ -1,5 +1,6 @@
1
1
  import "../common/enum.mjs";
2
2
  import { isAtomicToolContentBlock, isComputerCallOutputContent, serializeStructuredValueBounded } from "./toolContent.mjs";
3
+ import { markTokenCounterCacheCompatible } from "../llm/tokenCounterCacheCompatibility.mjs";
3
4
  import { Tokenizer } from "ai-tokenizer";
4
5
  import { isProxy } from "node:util/types";
5
6
  //#region src/utils/tokens.ts
@@ -569,10 +570,10 @@ const createTokenCounter = async (encoding = "o200k_base") => {
569
570
  const tok = await getTokenizer(encoding);
570
571
  const countTokens = (text) => tok.count(text);
571
572
  const isClaude = encoding === "claude";
572
- return (message) => {
573
+ return markTokenCounterCacheCompatible((message) => {
573
574
  const count = getTokenCountForMessage(message, countTokens, encoding);
574
575
  return ensureSafeTokenMeasurement(isClaude ? Math.ceil(count * CLAUDE_TOKEN_CORRECTION) : count, "message");
575
- };
576
+ });
576
577
  };
577
578
  const TokenEncoderManager = {
578
579
  async initialize() {},
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.mjs","names":[],"sources":["../../../src/utils/tokens.ts"],"mappings":"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"}
1
+ {"version":3,"file":"tokens.mjs","names":[],"sources":["../../../src/utils/tokens.ts"],"mappings":"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"}
@@ -2,6 +2,7 @@ import { SystemMessage } from '@langchain/core/messages';
2
2
  import type { UsageMetadata, BaseMessage } from '@langchain/core/messages';
3
3
  import type { RunnableConfig, Runnable } from '@langchain/core/runnables';
4
4
  import type * as t from '@/types';
5
+ import type { ExactTokenCountCache } from '@/llm/contextPressureMeter';
5
6
  import { createPruneMessages } from '@/messages';
6
7
  import { ContentTypes, Providers } from '@/common';
7
8
  /**
@@ -56,6 +57,8 @@ export declare class AgentContext {
56
57
  pruneMessages?: ReturnType<typeof createPruneMessages>;
57
58
  /** Token counter function for this agent */
58
59
  tokenCounter?: t.TokenCounter;
60
+ /** Exact stable-message counts reused by request-scoped context-pressure meters. */
61
+ readonly contextPressureTokenCounts?: ExactTokenCountCache;
59
62
  /** Token count for the system message (instructions text). */
60
63
  systemMessageTokens: number;
61
64
  /** Token count for instruction text emitted outside the system message. */
@@ -38,6 +38,7 @@ export * from './langchain';
38
38
  */
39
39
  export { Command, INTERRUPT, interrupt, MemorySaver, BaseCheckpointSaver, isInterrupted, } from '@langchain/langgraph';
40
40
  export type { Interrupt } from '@langchain/langgraph';
41
+ export { markTokenCounterCacheCompatible } from './llm/tokenCounterCacheCompatibility';
41
42
  export { CustomOpenAIClient } from './llm/openai';
42
43
  export { ChatOpenRouter } from './llm/openrouter';
43
44
  export type { OpenRouterReasoning, OpenRouterReasoningEffort, ChatOpenRouterCallOptions, } from './llm/openrouter';
@@ -48,6 +49,8 @@ export type { SmoothItem, SmoothPiece } from './llm/stream/smoother';
48
49
  export { FakeChatModel, createFakeStreamingLLM } from './llm/fake';
49
50
  export { initializeModel } from './llm/init';
50
51
  export { attemptInvoke, tryFallbackProviders } from './llm/invoke';
52
+ export { prepareProviderRequest } from './llm/prepareProviderRequest';
53
+ export type { PreparedProviderRequest, PrepareProviderRequestParams, ProviderMessageProjectionMode, ProviderPayloadMeasurement, ProviderRequestContext, } from './llm/prepareProviderRequest';
51
54
  export { canSealPreempt } from './llm/preempt';
52
55
  export { isThinkingEnabled, getMaxOutputTokensKey } from './llm/request';
53
56
  export { DEFAULT_MAX_TOOL_CALL_ARG_BYTES, StreamLimitExceededError, resolveStreamLimits, } from './llm/streamLimits';
@@ -0,0 +1,36 @@
1
+ import type { BaseMessage } from '@langchain/core/messages';
2
+ import type { ProviderPayloadMeasurement } from '@/llm/prepareProviderRequest';
3
+ import type * as t from '@/types';
4
+ interface ContextPressureUsage {
5
+ contextBudget?: number;
6
+ effectiveInstructionTokens?: number;
7
+ remainingContextTokens?: number;
8
+ calibrationRatio?: number;
9
+ }
10
+ interface ContextPressureMeterParams {
11
+ tokenCounter?: t.TokenCounter;
12
+ tokenCountCache?: ExactTokenCountCache;
13
+ sourceMessages: BaseMessage[];
14
+ retainedMessages: BaseMessage[];
15
+ indexTokenCountMap: Record<string, number | undefined>;
16
+ contextUsage?: ContextPressureUsage | null;
17
+ instructionTokens: number;
18
+ calibrationRatio: number;
19
+ }
20
+ interface ProviderPayloadMeasureOptions {
21
+ contextBudget?: number;
22
+ forceRawRecount?: boolean;
23
+ }
24
+ export interface ContextPressureMeter {
25
+ trackProjection(before: BaseMessage[], after: BaseMessage[]): BaseMessage[];
26
+ trackClone(source: BaseMessage, clone: BaseMessage): void;
27
+ measure(messages: BaseMessage[], options?: ProviderPayloadMeasureOptions): ProviderPayloadMeasurement;
28
+ }
29
+ export interface ExactTokenCountCache {
30
+ count(message: BaseMessage): number;
31
+ }
32
+ /** Reuses exact counts only while every token-relevant stable field matches. */
33
+ export declare function createExactTokenCountCache(tokenCounter: t.TokenCounter): ExactTokenCountCache;
34
+ /** Measures repeated provider projections while tokenizing each message object once. */
35
+ export declare function createContextPressureMeter({ tokenCounter, tokenCountCache, sourceMessages, retainedMessages, indexTokenCountMap, contextUsage, instructionTokens, calibrationRatio, }: ContextPressureMeterParams): ContextPressureMeter;
36
+ export {};
@@ -2,18 +2,21 @@ import { AIMessageChunk } from '@langchain/core/messages';
2
2
  import type { RunnableConfig } from '@langchain/core/runnables';
3
3
  import type { BaseMessage } from '@langchain/core/messages';
4
4
  import type { ToolOutputReferenceRegistry } from '@/tools/toolOutputReferences';
5
+ import type { PreparedProviderRequest } from '@/llm/prepareProviderRequest';
5
6
  import type { StreamLimitState } from '@/llm/streamLimits';
6
7
  import type { ContextOverflowContext } from '@/utils/errors';
7
8
  import type * as t from '@/types';
8
9
  import { ChatModelStreamHandler } from '@/stream';
9
10
  import { Providers } from '@/common';
11
+ export { projectMessagesForProvider, resolveServingModelId, usesNativeOpenAIResponses, } from '@/llm/prepareProviderRequest';
12
+ export type { PreparedProviderRequest, PrepareProviderRequestParams, ProviderMessageProjectionMode, ProviderPayloadMeasurement, ProviderRequestContext, } from '@/llm/prepareProviderRequest';
10
13
  /**
11
14
  * Context passed to `attemptInvoke`. Matches the subset of Graph that
12
15
  * `ChatModelStreamHandler.handle` needs *plus* the explicit
13
- * `getOrCreateToolOutputRegistry()` accessor that `attemptInvoke`
14
- * itself calls to pull the run-scoped tool-output registry off the
15
- * graph and project each relevant ToolMessage into a transient
16
- * annotated copy before the provider call.
16
+ * `getOrCreateToolOutputRegistry()` accessor used while preparing a
17
+ * provider request. Raw callers prepare inside `attemptInvoke`; Graph
18
+ * callers prepare before final payload measurement and pass the exact
19
+ * artifact through.
17
20
  *
18
21
  * The intersection is intentional: `Parameters<...>[3]` resolves
19
22
  * indirectly through the stream handler's signature (which returns
@@ -46,26 +49,6 @@ export type InvokeContext = NonNullable<Parameters<ChatModelStreamHandler['handl
46
49
  * limits key each model attempt separately.
47
50
  */
48
51
  export type OnChunk = (chunk: AIMessageChunk, metadata?: Record<string, unknown>) => void | Promise<void>;
49
- export declare function usesNativeOpenAIResponses(model: t.ChatModel, provider: Providers, callOptions?: unknown): boolean;
50
- /**
51
- * Produces the exact provider-facing message representation before a model
52
- * adapter serializes it. This is shared by invocation and Graph's final budget
53
- * guard so structured tool output cannot grow after the payload was measured.
54
- */
55
- export declare function projectMessagesForProvider({ model, messages, provider, maxToolResultChars, callOptions, }: {
56
- model: t.ChatModel;
57
- messages: BaseMessage[];
58
- provider: Providers;
59
- maxToolResultChars?: number;
60
- callOptions?: unknown;
61
- }): BaseMessage[];
62
- /**
63
- * The serving model's id, read through the same wrapper stack
64
- * `collectModelCallbackSources` walks — `bindTools` returns a
65
- * `RunnableBinding` and a system runnable pipes a `RunnableSequence`, and
66
- * neither exposes the chat model's `model` at the top level.
67
- */
68
- export declare function resolveServingModelId(model: unknown): string | undefined;
69
52
  /**
70
53
  * Invokes a chat model with the given messages, handling both streaming and
71
54
  * non-streaming paths.
@@ -75,10 +58,7 @@ export declare function resolveServingModelId(model: unknown): string | undefine
75
58
  * Pass an `onChunk` callback to override this with custom chunk processing
76
59
  * (e.g. summarization delta events).
77
60
  */
78
- interface AttemptInvokeParams {
79
- model: t.ChatModel;
80
- messages: BaseMessage[];
81
- provider: Providers;
61
+ interface AttemptInvokeCommonParams {
82
62
  context?: InvokeContext;
83
63
  onChunk?: OnChunk;
84
64
  /** Accounting owner for callers that deliberately pass no `context`
@@ -86,6 +66,17 @@ interface AttemptInvokeParams {
86
66
  * for charge claims. */
87
67
  streamLimitState?: StreamLimitState;
88
68
  }
69
+ type AttemptInvokeParams = AttemptInvokeCommonParams & ({
70
+ request: PreparedProviderRequest;
71
+ model?: never;
72
+ messages?: never;
73
+ provider?: never;
74
+ } | {
75
+ request?: never;
76
+ model: t.ChatModel;
77
+ messages: BaseMessage[];
78
+ provider: Providers;
79
+ });
89
80
  /**
90
81
  * One model attempt. Stamps the attempt identity into callback metadata
91
82
  * (see the generation-key notes in `streamLimits.ts`), leases the attempt's
@@ -122,7 +113,7 @@ export declare function getFallbackOverflowCandidates(error: unknown): FallbackO
122
113
  * behind a later unrelated error would surface a dead end instead. Ordinary
123
114
  * failures still throw last-error-wins.
124
115
  */
125
- export declare function tryFallbackProviders({ fallbacks, tools, messages, config, primaryError, context, onChunk, streamLimitState, overflowContext, prepareProviderMessages, }: {
116
+ export declare function tryFallbackProviders({ fallbacks, tools, messages, config, primaryError, context, onChunk, streamLimitState, overflowContext, prepareProviderRequest: prepareFallbackRequest, prepareProviderMessages, }: {
126
117
  fallbacks: t.FallbackConfig[];
127
118
  tools?: t.GraphTools;
128
119
  messages: BaseMessage[];
@@ -141,10 +132,18 @@ export declare function tryFallbackProviders({ fallbacks, tools, messages, confi
141
132
  */
142
133
  overflowContext?: ContextOverflowContext;
143
134
  /**
144
- * Optional final payload guard used by Graph. It receives the initialized,
145
- * tool-bound fallback model so Responses-vs-Chat projection is exact before
146
- * the fallback request is measured and sent.
135
+ * Optional exact-payload preparation used by Graph. The returned request is
136
+ * measured and sent without another provider projection.
147
137
  */
138
+ prepareProviderRequest?: (input: {
139
+ model: t.ChatModel;
140
+ messages: BaseMessage[];
141
+ provider: Providers;
142
+ clientOptions?: t.ClientOptions;
143
+ maxContextTokens?: number;
144
+ config?: RunnableConfig;
145
+ }) => PreparedProviderRequest | Promise<PreparedProviderRequest>;
146
+ /** @deprecated Return a `PreparedProviderRequest` instead. */
148
147
  prepareProviderMessages?: (input: {
149
148
  model: t.ChatModel;
150
149
  messages: BaseMessage[];
@@ -154,4 +153,3 @@ export declare function tryFallbackProviders({ fallbacks, tools, messages, confi
154
153
  config?: RunnableConfig;
155
154
  }) => BaseMessage[] | Promise<BaseMessage[]>;
156
155
  }): Promise<Partial<t.BaseGraphState> | undefined>;
157
- export {};
@@ -0,0 +1,55 @@
1
+ import type { RunnableConfig } from '@langchain/core/runnables';
2
+ import type { BaseMessage } from '@langchain/core/messages';
3
+ import type { ToolOutputReferenceRegistry } from '@/tools/toolOutputReferences';
4
+ import type * as t from '@/types';
5
+ import { Providers } from '@/common';
6
+ declare const preparedProviderRequestBrand: unique symbol;
7
+ export type ProviderMessageProjectionMode = 'chat-messages' | 'openai-responses';
8
+ export interface ProviderPayloadMeasurement {
9
+ readonly fits: boolean;
10
+ readonly projectedMessageTokens?: number;
11
+ readonly availableMessageTokens?: number;
12
+ readonly contextBudget?: number;
13
+ readonly effectiveInstructionTokens?: number;
14
+ }
15
+ export interface PreparedProviderRequest {
16
+ readonly model: t.ChatModel;
17
+ readonly modelId?: string;
18
+ readonly provider: Providers;
19
+ readonly projectionMode: ProviderMessageProjectionMode;
20
+ readonly messages: BaseMessage[];
21
+ readonly measurement?: ProviderPayloadMeasurement;
22
+ readonly [preparedProviderRequestBrand]: true;
23
+ }
24
+ export interface ProviderRequestContext {
25
+ getOrCreateToolOutputRegistry?(): ToolOutputReferenceRegistry | undefined;
26
+ isRunProducedMessage?(message: BaseMessage): boolean;
27
+ }
28
+ export interface PrepareProviderRequestParams {
29
+ model: t.ChatModel;
30
+ messages: BaseMessage[];
31
+ provider: Providers;
32
+ context?: ProviderRequestContext;
33
+ config?: RunnableConfig;
34
+ maxToolResultChars?: number;
35
+ measure?: (messages: BaseMessage[]) => ProviderPayloadMeasurement;
36
+ }
37
+ export declare function usesNativeOpenAIResponses(model: t.ChatModel, provider: Providers, callOptions?: unknown): boolean;
38
+ interface ProjectMessagesForProviderParams {
39
+ model: t.ChatModel;
40
+ messages: BaseMessage[];
41
+ provider: Providers;
42
+ maxToolResultChars?: number;
43
+ callOptions?: unknown;
44
+ }
45
+ /** Produces the provider-facing representation before adapter serialization. */
46
+ export declare function projectMessagesForProvider(params: ProjectMessagesForProviderParams): BaseMessage[];
47
+ /** Reads the serving model id through LangChain binding/sequence wrappers. */
48
+ export declare function resolveServingModelId(model: unknown): string | undefined;
49
+ /**
50
+ * Finalizes one provider request and measures the exact message array that
51
+ * will be passed to LangChain. Source messages remain untouched.
52
+ */
53
+ export declare function prepareProviderRequest({ model, messages, provider, context, config, maxToolResultChars, measure, }: PrepareProviderRequestParams): PreparedProviderRequest;
54
+ export declare function assertPreparedProviderRequestFor(request: PreparedProviderRequest, model: t.ChatModel, provider: Providers, config?: RunnableConfig): void;
55
+ export {};
@@ -0,0 +1,7 @@
1
+ import type { BaseMessage } from '@langchain/core/messages';
2
+ /**
3
+ * Opts a deterministic counter into stable-message count reuse. The counter
4
+ * must depend only on the message surface consumed by `getTokenCountForMessage`.
5
+ */
6
+ export declare function markTokenCounterCacheCompatible<TCounter extends (message: BaseMessage) => number>(tokenCounter: TCounter): TCounter;
7
+ export declare function isTokenCounterCacheCompatible(tokenCounter: (message: BaseMessage) => number): boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@librechat/agents",
3
- "version": "3.6.11",
3
+ "version": "3.6.13",
4
4
  "reova": {
5
5
  "enabled": true,
6
6
  "endpoint": "https://telemetry.reo.dev/data"
@@ -153,6 +153,7 @@
153
153
  "search": "node -r dotenv/config --loader ./tsconfig-paths-bootstrap.mjs --experimental-specifier-resolution=node ./src/scripts/search.ts --provider 'bedrock' --name 'Jo' --location 'New York, NY'",
154
154
  "tool_search": "node -r dotenv/config --loader ./tsconfig-paths-bootstrap.mjs --experimental-specifier-resolution=node ./src/scripts/tool_search.ts",
155
155
  "bench:cache": "node --loader ./tsconfig-paths-bootstrap.mjs --experimental-specifier-resolution=node ./src/scripts/bench-prompt-cache.ts",
156
+ "bench:context-pressure": "node --loader ./tsconfig-paths-bootstrap.mjs --experimental-specifier-resolution=node ./src/scripts/bench-context-pressure-cache.ts",
156
157
  "probe:overflow": "node -r dotenv/config --loader ./tsconfig-paths-bootstrap.mjs --experimental-specifier-resolution=node ./src/scripts/context-overflow-probe.ts",
157
158
  "subagent": "node -r dotenv/config --loader ./tsconfig-paths-bootstrap.mjs --experimental-specifier-resolution=node ./src/scripts/multi-agent-subagent.ts",
158
159
  "subagent:events": "node -r dotenv/config --loader ./tsconfig-paths-bootstrap.mjs --experimental-specifier-resolution=node ./src/scripts/subagent-event-driven-debug.ts",
@@ -8,6 +8,7 @@ import type {
8
8
  } from '@langchain/core/messages';
9
9
  import type { RunnableConfig, Runnable } from '@langchain/core/runnables';
10
10
  import type * as t from '@/types';
11
+ import type { ExactTokenCountCache } from '@/llm/contextPressureMeter';
11
12
  import {
12
13
  addTailCacheControl,
13
14
  addCacheControlToStablePrefixMessages,
@@ -51,6 +52,8 @@ import {
51
52
  import { createSchemaOnlyTools } from '@/tools/schema';
52
53
  import { apportionTokenCounts } from '@/utils/tokens';
53
54
  import { isThinkingEnabled } from '@/llm/request';
55
+ import { createExactTokenCountCache } from '@/llm/contextPressureMeter';
56
+ import { isTokenCounterCacheCompatible } from '@/llm/tokenCounterCacheCompatibility';
54
57
  import { toJsonSchema } from '@/utils/schema';
55
58
 
56
59
  type AgentSystemTextBlock = {
@@ -235,6 +238,8 @@ export class AgentContext {
235
238
  pruneMessages?: ReturnType<typeof createPruneMessages>;
236
239
  /** Token counter function for this agent */
237
240
  tokenCounter?: t.TokenCounter;
241
+ /** Exact stable-message counts reused by request-scoped context-pressure meters. */
242
+ readonly contextPressureTokenCounts?: ExactTokenCountCache;
238
243
  /** Token count for the system message (instructions text). */
239
244
  systemMessageTokens: number = 0;
240
245
  /** Token count for instruction text emitted outside the system message. */
@@ -460,6 +465,10 @@ export class AgentContext {
460
465
  this.maxContextTokens = maxContextTokens;
461
466
  this.streamBuffer = streamBuffer;
462
467
  this.tokenCounter = tokenCounter;
468
+ this.contextPressureTokenCounts =
469
+ tokenCounter != null && isTokenCounterCacheCompatible(tokenCounter)
470
+ ? createExactTokenCountCache(tokenCounter)
471
+ : undefined;
463
472
  this.tools = tools;
464
473
  this.toolMap = toolMap;
465
474
  this.toolRegistry = resolveLocalToolRegistry({