@openclaw/ai 2026.8.1 → 2026.8.2

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 (65) hide show
  1. package/dist/{anthropic-Djj7L1rx.mjs → anthropic-DTGZ4VMY.mjs} +13 -11
  2. package/dist/{anthropic-compaction-replay-CY4tkD4V.mjs → anthropic-compaction-replay-CKCDrZJv.mjs} +6 -6
  3. package/dist/{anthropic-payload-policy-i_5_inWe.d.mts → anthropic-payload-policy-BTzmNC14.d.mts} +2 -2
  4. package/dist/{api-registry-C9-wZd_W.d.mts → api-registry-BbUHEKER.d.mts} +2 -2
  5. package/dist/{azure-openai-responses-Bj3czHNa.mjs → azure-openai-responses-BmqaDXM1.mjs} +5 -4
  6. package/dist/diagnostics.mjs +1 -1
  7. package/dist/{event-stream-UhnxHuqt.d.mts → event-stream-DcvAPSBe.d.mts} +1 -1
  8. package/dist/event-stream-pXT3FI6X.d.mts +1 -0
  9. package/dist/event-stream.d.mts +2 -2
  10. package/dist/{google-0Ca6TYbw.mjs → google-CqjVZMwo.mjs} +7 -5
  11. package/dist/{google-shared-DVfL9COU.mjs → google-shared-Bnqni5j3.mjs} +25 -23
  12. package/dist/{google-vertex-5dAMxprN.mjs → google-vertex-D_WREEJi.mjs} +7 -5
  13. package/dist/{host-D51fmkH6.mjs → host-BIaiBURL.mjs} +2 -2
  14. package/dist/{host-DoPJJ1KD.d.mts → host-DKFUAmCn.d.mts} +3 -3
  15. package/dist/{index-N3zr6__t.d.mts → index-CefaUGSS.d.mts} +11 -5
  16. package/dist/index.d.mts +7 -7
  17. package/dist/index.mjs +4 -4
  18. package/dist/internal/anthropic.d.mts +5 -5
  19. package/dist/internal/anthropic.mjs +4 -4
  20. package/dist/internal/openai-responses-payload-policy.d.mts +1 -1
  21. package/dist/internal/openai-responses-payload-policy.mjs +1 -1
  22. package/dist/internal/openai.d.mts +5 -5
  23. package/dist/internal/openai.mjs +8 -8
  24. package/dist/internal/runtime.d.mts +5 -5
  25. package/dist/internal/runtime.mjs +3 -3
  26. package/dist/internal/shared.d.mts +2 -2
  27. package/dist/internal/shared.mjs +3 -3
  28. package/dist/{mistral-BCnrI-kV.mjs → mistral-C24jVd6f.mjs} +18 -13
  29. package/dist/{openai-chatgpt-responses-CGBGWSqr.mjs → openai-chatgpt-responses-Czum0oXz.mjs} +16 -15
  30. package/dist/{openai-completions-BaTuwID7.mjs → openai-completions-BfFwac6f.mjs} +16 -13
  31. package/dist/{openai-completions-compat-DB7FFq7k.d.mts → openai-completions-compat-SZhi0Lf4.d.mts} +3 -3
  32. package/dist/{openai-completions-stream-Bpns6uNc.mjs → openai-completions-stream-DGOvau4J.mjs} +29 -26
  33. package/dist/{openai-responses-1GBcQujk.mjs → openai-responses-BAryVEJM.mjs} +9 -7
  34. package/dist/{openai-responses-compaction-window-DwydGZI8.mjs → openai-responses-compaction-window-DO7yV7az.mjs} +3 -3
  35. package/dist/{openai-responses-contracts-DgaR3t5T.d.mts → openai-responses-contracts-BthRXano.d.mts} +3 -3
  36. package/dist/{openai-responses-prompt-observer-internal-_nhGTn2b.mjs → openai-responses-prompt-observer-internal--R0kZLOZ.mjs} +3 -3
  37. package/dist/{openai-responses-shared-zPmKnhF5.mjs → openai-responses-shared-CxgdGBvm.mjs} +27 -26
  38. package/dist/{openai-tool-schema-Dgl4H2MU.mjs → openai-tool-schema-CSMh5e9O.mjs} +13 -11
  39. package/dist/{provider-error-jZP5NMTZ.mjs → provider-error-BI8kIViN.mjs} +11 -11
  40. package/dist/{provider-options-HvA_slFa.d.mts → provider-options-DJd_9euj.d.mts} +2 -2
  41. package/dist/{provider-transcript-transform-C01bQ5a3.mjs → provider-transcript-transform-WvJmFUAf.mjs} +1 -1
  42. package/dist/provider-types.d.mts +6 -6
  43. package/dist/providers.d.mts +1 -1
  44. package/dist/providers.mjs +9 -9
  45. package/dist/{reasoning-tag-text-partitioner-CwzKb0bA.mjs → reasoning-tag-text-partitioner-BsUX44Tq.mjs} +29 -19
  46. package/dist/{sanitize-unicode-DCkltN94.mjs → sanitize-unicode-S6binQG-.mjs} +2 -8
  47. package/dist/{simple-options-DKx86yX9.mjs → simple-options-rdOPzr7Z.mjs} +2 -2
  48. package/dist/{src-Bu3FiFAG.mjs → src-C8U7lkoa.mjs} +75 -2
  49. package/dist/{tool-schema-json-projection-qvTEs5Am.mjs → tool-schema-json-projection-BtZiml7r.mjs} +21 -31
  50. package/dist/{transport-stream-shared-NjwWNaRY.d.mts → transport-stream-shared-BbG7PThh.d.mts} +4 -4
  51. package/dist/{transport-stream-shared-CT5ycdzn.mjs → transport-stream-shared-D8nQWCUo.mjs} +2 -2
  52. package/dist/{transport-utils-BHx9z8Cl.mjs → transport-utils-CtuS1Upe.mjs} +2 -2
  53. package/dist/transports.d.mts +12 -9
  54. package/dist/transports.mjs +61 -50
  55. package/dist/{types-h38Azne1.d.mts → types-Beemor2E.d.mts} +20 -7
  56. package/dist/types-COdhCX0U.d.mts +1 -0
  57. package/dist/types.d.mts +6 -6
  58. package/dist/types.mjs +3 -3
  59. package/dist/{validation-C68lP2uy.d.mts → validation-CC6s7Smp.d.mts} +1 -1
  60. package/dist/{validation-B61OhAio.mjs → validation-CJZtym2g.mjs} +7 -5
  61. package/dist/validation.d.mts +1 -1
  62. package/dist/validation.mjs +1 -1
  63. package/package.json +2 -2
  64. package/dist/event-stream-C988TSLe.d.mts +0 -1
  65. package/dist/types-DtGu2d3C.d.mts +0 -1
@@ -1,27 +1,27 @@
1
- import { d as resolveClaudeSonnet5ModelIdentity, g as supportsClaudeNativeXhighEffort, p as supportsClaudeAdaptiveThinking, u as resolveClaudeOpus5ModelIdentity } from "./src-Bu3FiFAG.mjs";
1
+ import { g as supportsClaudeAdaptiveThinking, m as resolveClaudeSonnet5ModelIdentity, p as resolveClaudeOpus5ModelIdentity, y as supportsClaudeNativeXhighEffort } from "./src-C8U7lkoa.mjs";
2
2
  import { c as normalizeLowercaseStringOrEmpty, o as isRecord, s as hasNonEmptyString } from "./utf16-slice-qz3nsy87.mjs";
3
- import { r as calculateCost } from "./sanitize-unicode-DCkltN94.mjs";
4
- import { S as usesClaudeStreamingRefusalContract, _ as prepareClaudeNoPrefillRequestContext, a as describeToolResultMediaPlaceholder, c as extractToolResultText, d as isImageWithMediaPayload, f as ANTHROPIC_CLAUDE_CODE_BILLING_SYSTEM_BLOCK, g as mapAnthropicStopReason, h as defaultsClaudeAdaptiveThinking, m as applyClaudeRequestContract, n as getAiTransportHost, p as ANTHROPIC_CLAUDE_CODE_VERSION, r as resolveAiTransportHeaderSentinels, s as extractToolResultBlockText, v as requiresClaudeAdaptiveThinking, x as usesClaudeFable5MessagesContract, y as resolveAnthropicThinkingEffort } from "./host-D51fmkH6.mjs";
5
- import { i as stableStringify } from "./provider-error-jZP5NMTZ.mjs";
6
- import { n as toErrorObject, t as createResponsesPromptEgressObserver } from "./openai-responses-prompt-observer-internal-_nhGTn2b.mjs";
3
+ import { r as calculateCost } from "./sanitize-unicode-S6binQG-.mjs";
4
+ import { S as usesClaudeStreamingRefusalContract, _ as prepareClaudeNoPrefillRequestContext, a as describeToolResultMediaPlaceholder, c as extractToolResultText, d as isImageWithMediaPayload, f as ANTHROPIC_CLAUDE_CODE_BILLING_SYSTEM_BLOCK, g as mapAnthropicStopReason, h as defaultsClaudeAdaptiveThinking, m as applyClaudeRequestContract, n as getAiTransportHost, p as ANTHROPIC_CLAUDE_CODE_VERSION, r as resolveAiTransportHeaderSentinels, s as extractToolResultBlockText, v as requiresClaudeAdaptiveThinking, x as usesClaudeFable5MessagesContract, y as resolveAnthropicThinkingEffort } from "./host-BIaiBURL.mjs";
5
+ import { i as stableStringify } from "./provider-error-BI8kIViN.mjs";
6
+ import { n as toErrorObject, t as createResponsesPromptEgressObserver } from "./openai-responses-prompt-observer-internal--R0kZLOZ.mjs";
7
7
  import { a as asNonNegativeFiniteNumber } from "./base64-CEFBpSkN.mjs";
8
8
  import { n as uniqueStrings } from "./string-normalization--fwJ4S2q.mjs";
9
- import { A as applyAnthropicCacheControlToMessages, C as applyAnthropicFallbackBoundary, D as createAnthropicInlineImageBudget, E as applyAnthropicRefusal, F as resolveAnthropicServerCompactionPlan, I as isAnthropicOAuthApiKey, L as omitFoundryBearerCredentialHeaders, M as applyAnthropicPayloadPolicyToParams, N as resolveAnthropicEphemeralCacheControl, O as normalizeAnthropicInlineContent, P as resolveAnthropicPayloadPolicy, R as usesFoundryBearerAuth, T as resolveAnthropicFallbackServingModelCost, _ as toClaudeCodeToolName, a as suppressAnthropicCompaction, b as ANTHROPIC_SERVER_SIDE_FALLBACKS, f as normalizeAnthropicToolCallId, g as resolveOriginalAnthropicToolName, h as reconcileAnthropicToolChoice, i as resolveNewestAnthropicCompaction, j as applyAnthropicEphemeralCacheControlMarkers, k as resolveAnthropicImageMediaType, m as projectAnthropicTools, n as createCompactionCapture, o as applyAnthropicMessageDeltaUsage, p as normalizeAnthropicToolChoice, r as isAnthropicReplayRejection, s as applyAnthropicMessageStartUsage, t as buildAnthropicReplayPlan, v as ANTHROPIC_OMITTED_REASONING_TEXT, w as readAnthropicFallbackBoundary, x as ANTHROPIC_SERVER_SIDE_FALLBACK_BETA, y as findActiveAnthropicToolTurnAssistantIndex } from "./anthropic-compaction-replay-CY4tkD4V.mjs";
9
+ import { A as applyAnthropicCacheControlToMessages, C as applyAnthropicFallbackBoundary, D as createAnthropicInlineImageBudget, E as applyAnthropicRefusal, F as resolveAnthropicServerCompactionPlan, I as isAnthropicOAuthApiKey, L as omitFoundryBearerCredentialHeaders, M as applyAnthropicPayloadPolicyToParams, N as resolveAnthropicEphemeralCacheControl, O as normalizeAnthropicInlineContent, P as resolveAnthropicPayloadPolicy, R as usesFoundryBearerAuth, T as resolveAnthropicFallbackServingModelCost, _ as toClaudeCodeToolName, a as suppressAnthropicCompaction, b as ANTHROPIC_SERVER_SIDE_FALLBACKS, f as normalizeAnthropicToolCallId, g as resolveOriginalAnthropicToolName, h as reconcileAnthropicToolChoice, i as resolveNewestAnthropicCompaction, j as applyAnthropicEphemeralCacheControlMarkers, k as resolveAnthropicImageMediaType, m as projectAnthropicTools, n as createCompactionCapture, o as applyAnthropicMessageDeltaUsage, p as normalizeAnthropicToolChoice, r as isAnthropicReplayRejection, s as applyAnthropicMessageStartUsage, t as buildAnthropicReplayPlan, v as ANTHROPIC_OMITTED_REASONING_TEXT, w as readAnthropicFallbackBoundary, x as ANTHROPIC_SERVER_SIDE_FALLBACK_BETA, y as findActiveAnthropicToolTurnAssistantIndex } from "./anthropic-compaction-replay-CKCDrZJv.mjs";
10
10
  import { t as resolveCacheRetention } from "./cache-retention-0x979a5V.mjs";
11
- import { a as codeModeToolSurfaceObserver, d as stripSystemPromptCacheBoundary, m as sortPromptCacheToolsByName, o as reasoningTagTextPolicy, t as adjustMaxTokensForThinking } from "./simple-options-DKx86yX9.mjs";
12
- import { a as resolveProviderEndpoint, c as transformTransportMessages, i as resolveOpenAIStrictToolSetting, n as buildGuardedModelFetch } from "./tool-schema-json-projection-qvTEs5Am.mjs";
13
- import { a as isGoogleGemini3FlashModel, c as parseRetryAfterSeconds, f as resolveModelHeaderSentinels$1, i as isCodeModeModelVisibleToolName, l as readResponseTextSnippet, m as supportsModelTools, n as createAbortError$1, o as isGoogleGemini3ProModel, p as sha256Hex, r as estimateStringChars, t as MALFORMED_STREAMING_FRAGMENT_ERROR_MESSAGE, u as redactIdentifier } from "./transport-utils-BHx9z8Cl.mjs";
11
+ import { a as codeModeToolSurfaceObserver, d as stripSystemPromptCacheBoundary, m as sortPromptCacheToolsByName, o as reasoningTagTextPolicy, t as adjustMaxTokensForThinking } from "./simple-options-rdOPzr7Z.mjs";
12
+ import { a as resolveProviderEndpoint, c as transformTransportMessages, i as resolveOpenAIStrictToolSetting, n as buildGuardedModelFetch } from "./tool-schema-json-projection-BtZiml7r.mjs";
13
+ import { a as isGoogleGemini3FlashModel, c as parseRetryAfterSeconds, f as resolveModelHeaderSentinels$1, i as isCodeModeModelVisibleToolName, l as readResponseTextSnippet, m as supportsModelTools, n as createAbortError$1, o as isGoogleGemini3ProModel, p as sha256Hex, r as estimateStringChars, t as MALFORMED_STREAMING_FRAGMENT_ERROR_MESSAGE, u as redactIdentifier } from "./transport-utils-CtuS1Upe.mjs";
14
14
  import { n as getEnvApiKey } from "./env-api-keys-bktO00EJ.mjs";
15
- import { S as quoteUnsafeIntegerLiterals, _ as transportAbortError, a as createWritableTransportEventStream, b as parseJsonObjectPreservingUnsafeIntegers, c as finalizeTransportStream, d as notifyProviderHttpMetadata, f as notifyProviderHttpResponse, g as sanitizeTransportPayloadText, h as sanitizeNonEmptyTransportPayloadText, i as createEmptyTransportUsage, l as mergeTransportHeaders, m as parseTerminalToolCallArguments, n as coerceTransportToolCallArguments, o as failTransportStream, p as notifyProviderStreamOpened, r as copyProviderAcceptanceObserver, s as finalizeTerminalToolCallArguments, t as assignTransportErrorDetails, u as mergeTransportMetadata, v as withProviderAcceptanceObserver, x as parseJsonPreservingUnsafeIntegers, y as withProviderResponseHook } from "./transport-stream-shared-CT5ycdzn.mjs";
16
- import { C as createDeepSeekTextFilter, E as tagUnresolvedTextAsCommentary, S as shouldOmitOllamaCompatResponseFormat, T as tagPendingCommentaryText, _ as hasToolCallHistory, a as buildOpenAISdkClientOptions, b as resolveOpenAICompletionsCompat, c as filterCodeModePayloadTools, d as readCodeModePayloadToolName, f as resolveCodeModeResponsesVisibleToolNames, g as convertMessages, h as resolveOpenAIReasoningEffortMap, i as buildOpenAIClientHeaders, l as getCompat, m as usesNativeOpenAICodexResponsesBackend, n as shouldEmitOpenAICompletionsReasoning, o as buildOpenAISdkRequestOptions, p as resolveOpenAIStrictToolFlagWithDiagnostics, r as assertCodeModeResponsesToolSurface, s as enforceCodeModeResponsesToolSurface, t as processCompletionsStream, u as isOpenAICodexResponsesModel, v as finalizeOpenAICompletionsToolCalls, x as resolveOpenAICompletionsResponseFormat, y as detectOpenAICompletionsCompat } from "./openai-completions-stream-Bpns6uNc.mjs";
15
+ import { S as quoteUnsafeIntegerLiterals, _ as transportAbortError, a as createWritableTransportEventStream, b as parseJsonObjectPreservingUnsafeIntegers, c as finalizeTransportStream, d as notifyProviderHttpMetadata, f as notifyProviderHttpResponse, g as sanitizeTransportPayloadText, h as sanitizeNonEmptyTransportPayloadText, i as createEmptyTransportUsage, l as mergeTransportHeaders, m as parseTerminalToolCallArguments, n as coerceTransportToolCallArguments, o as failTransportStream, p as notifyProviderStreamOpened, r as copyProviderAcceptanceObserver, s as finalizeTerminalToolCallArguments, t as assignTransportErrorDetails, u as mergeTransportMetadata, v as withProviderAcceptanceObserver, x as parseJsonPreservingUnsafeIntegers, y as withProviderResponseHook } from "./transport-stream-shared-D8nQWCUo.mjs";
16
+ import { C as createDeepSeekTextFilter, E as tagUnresolvedTextAsCommentary, S as shouldOmitOllamaCompatResponseFormat, T as tagPendingCommentaryText, _ as hasToolCallHistory, a as buildOpenAISdkClientOptions, b as resolveOpenAICompletionsCompat, c as filterCodeModePayloadTools, d as readCodeModePayloadToolName, f as resolveCodeModeResponsesVisibleToolNames, g as convertMessages, h as resolveOpenAIReasoningEffortMap, i as buildOpenAIClientHeaders, l as getCompat, m as usesNativeOpenAICodexResponsesBackend, n as shouldEmitOpenAICompletionsReasoning, o as buildOpenAISdkRequestOptions, p as resolveOpenAIStrictToolFlagWithDiagnostics, r as assertCodeModeResponsesToolSurface, s as enforceCodeModeResponsesToolSurface, t as processCompletionsStream, u as isOpenAICodexResponsesModel, v as finalizeOpenAICompletionsToolCalls, x as resolveOpenAICompletionsResponseFormat, y as detectOpenAICompletionsCompat } from "./openai-completions-stream-DGOvau4J.mjs";
17
17
  import { t as createDeferredEventBuffer } from "./deferred-event-buffer-DAvyP7qA.mjs";
18
18
  import { r as parseStreamingJson, t as createToolArgumentPreviewSchedule } from "./json-parse-BuAJEbdW.mjs";
19
19
  import { t as notifyLlmRequestActivity } from "./llm-request-activity-BjtkplhG.mjs";
20
20
  import { t as googleFlashSupportsMinimalThinking } from "./google-thinking-level-C-V3tecN.mjs";
21
- import { B as buildResponsesInputMessage, C as summarizeResponsesTools, G as captureOpenAIResponsesCompaction, H as createOpenAIResponsesAssistantOutput, I as createResponsesStreamWithEncryptedContentRetry, J as resolveReplayableResponsesMessageId, K as resolveNewestOpenAIResponsesCompactionReplay, L as isInvalidEncryptedContentError, R as resolveAzureOpenAIApiVersion, S as summarizeResponsesPayload, U as CompactionReplayRefreshRequiredError, V as convertResponsesMessages, W as buildOpenAIResponsesReasoningReplayMetadata, X as resolveModelPayloadDebugMode, Y as emitModelTransportDebug, Z as resolveModelSseDebugMode, _ as safeDebugValue, b as summarizeOpenAITransportError, c as processResponsesStream, f as observeResponsesStream, g as normalizeResponsesFailedEvent, h as logResponsesFailedNoDetails, m as buildResponsesFailedNoDetailsObservation, n as applyResponsesServiceTierPricing, p as ResponsesStreamFailure, q as suppressOpenAIResponsesCompaction, v as stringifyRedactedEvent, x as summarizeResponsesFailedNoDetailsObservation, y as stringifyRedactedPayload, z as resolveNextResponsesEncryptedContentAttempt } from "./openai-responses-shared-zPmKnhF5.mjs";
22
- import { A as readOpenAICompletionsReasoningBatch, C as createOpenAIProviderAcceptanceHook, D as measureUtf8AppendBytes, E as log, M as resolvePromptCacheKey, N as throwIfModelStreamAborted, O as parseOpenAICompletionsUsage, S as createModelStreamCooperativeScheduler, T as isOpenAICompletionsThinkingEnabled, b as reconcileOpenAIResponsesToolChoice, j as resolveOpenAIClientBaseUrl, k as readOpenAICompletionsContentDeltas, r as normalizeOpenAIStrictToolParameters, v as projectOpenAITools, w as createOpenAIResponseHook, x as GEMINI_THOUGHT_SIGNATURE_VALIDATOR_SKIP, y as reconcileOpenAICompletionsToolChoice } from "./openai-tool-schema-Dgl4H2MU.mjs";
21
+ import { B as buildResponsesInputMessage, C as summarizeResponsesTools, G as captureOpenAIResponsesCompaction, H as createOpenAIResponsesAssistantOutput, I as createResponsesStreamWithEncryptedContentRetry, J as resolveReplayableResponsesMessageId, K as resolveNewestOpenAIResponsesCompactionReplay, L as isInvalidEncryptedContentError, R as resolveAzureOpenAIApiVersion, S as summarizeResponsesPayload, U as CompactionReplayRefreshRequiredError, V as convertResponsesMessages, W as buildOpenAIResponsesReasoningReplayMetadata, X as resolveModelPayloadDebugMode, Y as emitModelTransportDebug, Z as resolveModelSseDebugMode, _ as safeDebugValue, b as summarizeOpenAITransportError, c as processResponsesStream, f as observeResponsesStream, g as normalizeResponsesFailedEvent, h as logResponsesFailedNoDetails, m as buildResponsesFailedNoDetailsObservation, n as applyResponsesServiceTierPricing, p as ResponsesStreamFailure, q as suppressOpenAIResponsesCompaction, v as stringifyRedactedEvent, x as summarizeResponsesFailedNoDetailsObservation, y as stringifyRedactedPayload, z as resolveNextResponsesEncryptedContentAttempt } from "./openai-responses-shared-CxgdGBvm.mjs";
22
+ import { A as readOpenAICompletionsReasoningBatch, C as createOpenAIProviderAcceptanceHook, D as measureUtf8AppendBytes, E as log, M as resolvePromptCacheKey, N as throwIfModelStreamAborted, O as parseOpenAICompletionsUsage, S as createModelStreamCooperativeScheduler, T as isOpenAICompletionsThinkingEnabled, b as reconcileOpenAIResponsesToolChoice, j as resolveOpenAIClientBaseUrl, k as readOpenAICompletionsContentDeltas, r as normalizeOpenAIStrictToolParameters, v as projectOpenAITools, w as createOpenAIResponseHook, x as GEMINI_THOUGHT_SIGNATURE_VALIDATOR_SKIP, y as reconcileOpenAICompletionsToolChoice } from "./openai-tool-schema-CSMh5e9O.mjs";
23
23
  import { i as getFirstStreamEventTimeoutMs, r as getFirstStreamEventTimeoutHandler, t as createFirstStreamEventAbortController } from "./stream-first-event-timeout-DcNjoFQE.mjs";
24
- import { C as isOpenAIGpt54MiniModel, D as resolveOpenAIReasoningEffortForModel, E as normalizeOpenAIReasoningEffort, T as isOpenAIGpt56Model, _ as OpenAIResponsesWebSocketPostDispatchError, a as applyOpenAIResponsesPayloadPolicy, c as resolveOpenAIResponsesServerCompactionPlan, d as OPENAI_CODEX_RESPONSES_DEFAULT_INSTRUCTIONS, f as OPENAI_RESPONSES_APIS, i as sanitizeResponsesImagePayload, l as AZURE_RESPONSES_FIRST_EVENT_TIMEOUT_MS, n as isOpenAIResponsesCompactionOutput, o as resolveOpenAIResponsesCompactEndpointPlan, s as resolveOpenAIResponsesPayloadPolicy, t as createBoundedOpenAIResponsesCompactionFetch, v as OpenAIResponsesWebSocketPreDispatchError, w as isOpenAIGpt55Model, x as parseOpenAIResponsesWebSocketServerError, y as OpenAIResponsesWebSocketSafeRetryError } from "./openai-responses-compaction-window-DwydGZI8.mjs";
24
+ import { C as isOpenAIGpt54MiniModel, D as resolveOpenAIReasoningEffortForModel, E as normalizeOpenAIReasoningEffort, T as isOpenAIGpt56Model, _ as OpenAIResponsesWebSocketPostDispatchError, a as applyOpenAIResponsesPayloadPolicy, c as resolveOpenAIResponsesServerCompactionPlan, d as OPENAI_CODEX_RESPONSES_DEFAULT_INSTRUCTIONS, f as OPENAI_RESPONSES_APIS, i as sanitizeResponsesImagePayload, l as AZURE_RESPONSES_FIRST_EVENT_TIMEOUT_MS, n as isOpenAIResponsesCompactionOutput, o as resolveOpenAIResponsesCompactEndpointPlan, s as resolveOpenAIResponsesPayloadPolicy, t as createBoundedOpenAIResponsesCompactionFetch, v as OpenAIResponsesWebSocketPreDispatchError, w as isOpenAIGpt55Model, x as parseOpenAIResponsesWebSocketServerError, y as OpenAIResponsesWebSocketSafeRetryError } from "./openai-responses-compaction-window-DO7yV7az.mjs";
25
25
  import { i as resolveAzureDeploymentNameFromMap, t as isOpenAICompatibleAzureResponsesBaseUrl } from "./azure-openai-responses-client-compat-C7K7QfUE.mjs";
26
26
  import { n as registerSessionResourceCleanup } from "./session-resources-CkR4WWy1.mjs";
27
27
  import { randomUUID } from "node:crypto";
@@ -33,12 +33,12 @@ import { ResponsesWS } from "openai/resources/responses/ws.js";
33
33
  * Converts OpenClaw contexts/tools into Anthropic payloads, streams SSE events
34
34
  * back into runtime output blocks, and applies provider request policy.
35
35
  */
36
- const ANTHROPIC_MESSAGES_ERROR_BODY_MAX_BYTES = 8 * 1024;
36
+ const ANTHROPIC_MESSAGES_ERROR_BODY_MAX_BYTES = 8192;
37
37
  const ANTHROPIC_MESSAGES_ERROR_BODY_MAX_CHARS = 400;
38
38
  const ANTHROPIC_MESSAGES_ERROR_BODY_READ_IDLE_TIMEOUT_MS = 1e4;
39
39
  const ANTHROPIC_MESSAGES_DEFAULT_MAX_TOKENS = 4096;
40
40
  const ANTHROPIC_MESSAGES_FALLBACK_CONTEXT_DIVISOR = 4;
41
- const ANTHROPIC_MESSAGES_SSE_PENDING_BUFFER_MAX_CHARS = 16 * 1024 * 1024;
41
+ const ANTHROPIC_MESSAGES_SSE_PENDING_BUFFER_MAX_CHARS = 16777216;
42
42
  function resolveAnthropicRequestModelId(model) {
43
43
  if (isDirectAnthropicModel(model) && /^anthropic\//i.test(model.id)) return model.id.replace(/^anthropic\//i, "");
44
44
  return model.id;
@@ -574,18 +574,19 @@ async function buildAnthropicParams(model, context, isOAuthToken, options) {
574
574
  if (convertedTools.tools.length > 0) params.tools = convertedTools.tools;
575
575
  }
576
576
  if (mandatoryAdaptiveThinking || model.reasoning || supportsClaudeAdaptiveThinking(model)) {
577
- if (mandatoryAdaptiveThinking || options?.thinkingEnabled) if (supportsClaudeAdaptiveThinking(model)) {
578
- params.thinking = {
579
- type: "adaptive",
580
- display: options?.thinkingDisplay ?? "summarized"
577
+ if (mandatoryAdaptiveThinking || options?.thinkingEnabled) {
578
+ if (supportsClaudeAdaptiveThinking(model)) {
579
+ params.thinking = {
580
+ type: "adaptive",
581
+ display: options?.thinkingDisplay ?? "summarized"
582
+ };
583
+ const effort = options?.effort ?? (mandatoryAdaptiveThinking ? "high" : void 0);
584
+ if (effort) params.output_config = { effort };
585
+ } else params.thinking = {
586
+ type: "enabled",
587
+ budget_tokens: options?.thinkingBudgetTokens ?? 1024
581
588
  };
582
- const effort = options?.effort ?? (mandatoryAdaptiveThinking ? "high" : void 0);
583
- if (effort) params.output_config = { effort };
584
- } else params.thinking = {
585
- type: "enabled",
586
- budget_tokens: options?.thinkingBudgetTokens ?? 1024
587
- };
588
- else if (options?.thinkingEnabled === false) params.thinking = { type: "disabled" };
589
+ } else if (options?.thinkingEnabled === false) params.thinking = { type: "disabled" };
589
590
  }
590
591
  if (options?.metadata && typeof options.metadata.user_id === "string") params.metadata = { user_id: options.metadata.user_id };
591
592
  if (options?.toolChoice) {
@@ -982,16 +983,18 @@ function createAnthropicMessagesTransportStreamFn() {
982
983
  let appendedContent = false;
983
984
  if (!hasNativeAnthropicDelta && typeof delta?.content === "string" && delta.content.length > 0) {
984
985
  const text = sanitizeTransportPayloadText(delta.content);
985
- if (text.length > 0) if (block?.type === "text" && index !== void 0) {
986
- block.text += text;
987
- eventSink.push({
988
- type: "text_delta",
989
- contentIndex: index,
990
- delta: text,
991
- partial: output
992
- });
993
- appendedContent = true;
994
- } else appendedContent = appendReasoningContentTextDelta(event.index, text);
986
+ if (text.length > 0) {
987
+ if (block?.type === "text" && index !== void 0) {
988
+ block.text += text;
989
+ eventSink.push({
990
+ type: "text_delta",
991
+ contentIndex: index,
992
+ delta: text,
993
+ partial: output
994
+ });
995
+ appendedContent = true;
996
+ } else appendedContent = appendReasoningContentTextDelta(event.index, text);
997
+ }
995
998
  }
996
999
  if ((appendedThinking || appendedContent) && !hasNativeAnthropicDelta) continue;
997
1000
  }
@@ -1099,8 +1102,10 @@ function createAnthropicMessagesTransportStreamFn() {
1099
1102
  if (event.type === "message_delta") {
1100
1103
  const delta = event.delta;
1101
1104
  const usage = event.usage;
1102
- if (delta?.stop_reason) if (delta.stop_reason === "refusal") applyAnthropicRefusal(output, delta.stop_details, model.provider);
1103
- else output.stopReason = mapAnthropicStopReason(delta.stop_reason);
1105
+ if (delta?.stop_reason) {
1106
+ if (delta.stop_reason === "refusal") applyAnthropicRefusal(output, delta.stop_details, model.provider);
1107
+ else output.stopReason = mapAnthropicStopReason(delta.stop_reason);
1108
+ }
1104
1109
  applyAnthropicMessageDeltaUsage(output.usage, usage, messageStartPromptUsage);
1105
1110
  calculateCost(costModel, output.usage);
1106
1111
  if (output.stopReason === "toolUse" || output.content.some((block) => block.type === "toolCall")) tagPendingCommentaryText(output.content);
@@ -1590,10 +1595,11 @@ function convertTools(tools, compat, model) {
1590
1595
  function buildOpenAICompletionsParams(model, context, options) {
1591
1596
  const compat = getCompat(model);
1592
1597
  const compatDetection = detectOpenAICompletionsCompat(model);
1593
- let messages = convertMessages(model, context.systemPrompt ? {
1598
+ const completionsContext = context.systemPrompt ? {
1594
1599
  ...context,
1595
1600
  systemPrompt: stripSystemPromptCacheBoundary(context.systemPrompt)
1596
- } : context, compat);
1601
+ } : context;
1602
+ let messages = convertMessages(model, completionsContext, compat);
1597
1603
  applyCompletionsReplay(messages, context, model, compat);
1598
1604
  if (compat.strictMessageKeys) messages = stripCompletionMessagesToRoleContent(messages);
1599
1605
  const cacheRetention = resolveCacheRetention(options?.cacheRetention);
@@ -1654,8 +1660,10 @@ function buildOpenAICompletionsParams(model, context, options) {
1654
1660
  emitModelTransportDebug(log, `[completions] clamp_max_tokens provider=${model.provider} api=${model.api} model=${model.id} requested=${effectiveMaxTokens} output=${clampedMaxTokens} effectiveContext=${effectiveContextTokens} estimatedInput=${estimatedInputTokens}`);
1655
1661
  }
1656
1662
  }
1657
- if (clampedMaxTokens) if (compat.maxTokensField === "max_tokens") params.max_tokens = clampedMaxTokens;
1658
- else params.max_completion_tokens = clampedMaxTokens;
1663
+ if (clampedMaxTokens) {
1664
+ if (compat.maxTokensField === "max_tokens") params.max_tokens = clampedMaxTokens;
1665
+ else params.max_completion_tokens = clampedMaxTokens;
1666
+ }
1659
1667
  }
1660
1668
  const completionsReasoningEffort = resolveOpenAICompletionsReasoningEffort(options);
1661
1669
  const resolvedCompletionsReasoningEffort = completionsReasoningEffort ? resolveOpenAIReasoningEffortForModel({
@@ -1830,7 +1838,7 @@ function createOpenAICompletionsTransportStreamFn() {
1830
1838
  timeoutMs: options?.timeoutMs,
1831
1839
  maxRetries: options?.maxRetries
1832
1840
  })).withResponse();
1833
- await processCompletionsStream(withProviderResponseHook({
1841
+ const hookedResponseStream = withProviderResponseHook({
1834
1842
  stream: responseStream,
1835
1843
  signal: firstEventAbort.signal,
1836
1844
  abort: firstEventAbort.abort,
@@ -1839,7 +1847,8 @@ function createOpenAICompletionsTransportStreamFn() {
1839
1847
  type: "start",
1840
1848
  partial: output
1841
1849
  })
1842
- }), output, model, stream, {
1850
+ });
1851
+ await processCompletionsStream(hookedResponseStream, output, model, stream, {
1843
1852
  signal: options?.signal,
1844
1853
  emitReasoning,
1845
1854
  strictReasoningTags: reasoningTagTextPolicy.isStrict(options),
@@ -1907,7 +1916,7 @@ async function requestPreparedOpenAIResponsesCompaction(streamFn, model, context
1907
1916
  }
1908
1917
  //#endregion
1909
1918
  //#region packages/ai/src/transports/openai-responses-continuation.ts
1910
- const HTTP_CONTINUATION_IDLE_TTL_MS = 300 * 1e3;
1919
+ const HTTP_CONTINUATION_IDLE_TTL_MS = 3e5;
1911
1920
  const TURN_HEADERS = /* @__PURE__ */ new Set([
1912
1921
  "traceparent",
1913
1922
  "x-openclaw-turn-id",
@@ -2121,7 +2130,8 @@ function resolveOpenAIResponsesInstructions(model, context, usesInstructionsFiel
2121
2130
  function buildOpenAIResponsesCompactSystemMessage(model, instructions) {
2122
2131
  const compat = getCompat(model);
2123
2132
  const supportsDeveloperRole = typeof compat.supportsDeveloperRole === "boolean" ? compat.supportsDeveloperRole : void 0;
2124
- return buildResponsesInputMessage(model.reasoning && supportsDeveloperRole !== false ? "developer" : "system", [{
2133
+ const role = model.reasoning && supportsDeveloperRole !== false ? "developer" : "system";
2134
+ return buildResponsesInputMessage(role, [{
2125
2135
  type: "input_text",
2126
2136
  text: instructions
2127
2137
  }]);
@@ -2190,9 +2200,10 @@ function buildOpenAIResponsesParams(model, context, options, metadata, replayMod
2190
2200
  }
2191
2201
  if (model.reasoning) {
2192
2202
  if (options?.reasoningEffort || options?.reasoning || options?.reasoningSummary) {
2203
+ const requestedReasoningEffort = resolveOpenAIReasoningEffort(options);
2193
2204
  const resolvedReasoningEffort = resolveOpenAIReasoningEffortForModel({
2194
2205
  model,
2195
- effort: resolveOpenAIReasoningEffort(options)
2206
+ effort: requestedReasoningEffort
2196
2207
  });
2197
2208
  const reasoningEffort = resolvedReasoningEffort ? raiseMinimalReasoningForResponsesWebSearch({
2198
2209
  model,
@@ -2219,8 +2230,8 @@ function buildOpenAIResponsesParams(model, context, options, metadata, replayMod
2219
2230
  }
2220
2231
  //#endregion
2221
2232
  //#region packages/ai/src/transports/openai-responses-websocket.ts
2222
- const SESSION_WEBSOCKET_CACHE_TTL_MS = 300 * 1e3;
2223
- const SESSION_WEBSOCKET_MAX_AGE_MS = 3300 * 1e3;
2233
+ const SESSION_WEBSOCKET_CACHE_TTL_MS = 3e5;
2234
+ const SESSION_WEBSOCKET_MAX_AGE_MS = 33e5;
2224
2235
  const WEBSOCKET_OPEN_STATE = 1;
2225
2236
  const websocketSessionCache = /* @__PURE__ */ new Map();
2226
2237
  const degradedWebSocketConnections = /* @__PURE__ */ new Map();
@@ -255,6 +255,24 @@ interface Usage {
255
255
  totalOrigin?: "provider-billed";
256
256
  };
257
257
  }
258
+ /** Per-million-token rates for separately billed token buckets. */
259
+ type ModelCostRates = Pick<Usage["cost"], "input" | "output" | "cacheRead" | "cacheWrite">;
260
+ /** One whole-request tier on the cache-inclusive prompt-token axis. */
261
+ type PricingTier = ModelCostRates & {
262
+ /** Half-open prompt-token interval `[start, end)`. */
263
+ range: [number, number];
264
+ };
265
+ type RawPricingTier = ModelCostRates & {
266
+ /** `[start]` is an open-ended upper tier. */
267
+ range: [number, number] | [number];
268
+ };
269
+ /** Normalized pricing used by token accounting and usage summaries. */
270
+ type ModelCostConfig = ModelCostRates & {
271
+ tieredPricing?: PricingTier[];
272
+ };
273
+ type RawModelCostConfig = ModelCostRates & {
274
+ tieredPricing?: RawPricingTier[];
275
+ };
258
276
  /** Normalized assistant stop reasons across text providers. */
259
277
  type StopReason = "stop" | "length" | "toolUse" | "error" | "aborted";
260
278
  /** Stable error codes for provider outcomes that cannot be replayed safely. */
@@ -620,12 +638,7 @@ interface Model<TApi extends Api = Api> {
620
638
  */
621
639
  thinkingLevelMap?: ThinkingLevelMap;
622
640
  input: ("text" | "image")[];
623
- cost: {
624
- input: number;
625
- output: number;
626
- cacheRead: number;
627
- cacheWrite: number;
628
- };
641
+ cost: RawModelCostConfig;
629
642
  contextWindow?: number;
630
643
  /**
631
644
  * Optional effective runtime cap used for compaction/session budgeting.
@@ -661,4 +674,4 @@ type StreamFn = (model: Model, context: Context, options?: SimpleStreamOptions)
661
674
  type CompleteSimpleFn = (model: Model, context: Pick<Context, "systemPrompt" | "messages">, options?: SimpleStreamOptions) => Promise<AssistantMessage>;
662
675
  type ValidateToolArgumentsFn = (tool: Tool, toolCall: ToolCall) => unknown;
663
676
  //#endregion
664
- export { Transport as $, OpenAIResponsesCompat as A, StopReason as B, KnownImagesApi as C, Model as D, Message as E, ProviderImagesOptions as F, TextSignatureV1 as G, StreamFunction as H, ProviderReplayState as I, ThinkingLevel as J, ThinkingBudgets as K, ProviderResponse as L, PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE as M, PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE as N, ModelThinkingLevel as O, Provider as P, ToolResultMessage as Q, ProviderStreamOptions as R, KnownApi as S, MaybePromise as T, StreamOptions as U, StreamFn as V, TextContent as W, Tool as X, ThinkingLevelMap as Y, ToolCall as Z, ImagesModel as _, AssistantMessage as a, ImagesProvider as b, AssistantMessageEventStreamLike as c, Context as d, Usage as et, ImageContent as f, ImagesInputContent as g, ImagesFunction as h, AssistantImages as i, OpenRouterRouting as j, OpenAICompletionsCompat as k, CacheRetention as l, ImagesContext as m, Api as n, ValidateToolArgumentsFn as nt, AssistantMessageEvent as o, ImagesApi as p, ThinkingContent as q, AssistantDeliveryTtsFacts as r, VercelGatewayRouting as rt, AssistantMessageEventStreamContract as s, AnthropicMessagesCompat as t, UserMessage as tt, CompleteSimpleFn as u, ImagesOptions as v, KnownImagesProvider as w, ImagesStopReason as x, ImagesOutputContent as y, SimpleStreamOptions as z };
677
+ export { ThinkingLevel as $, ModelThinkingLevel as A, ProviderResponse as B, KnownImagesApi as C, Model as D, Message as E, PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE as F, StopReason as G, RawModelCostConfig as H, PricingTier as I, StreamOptions as J, StreamFn as K, Provider as L, OpenAIResponsesCompat as M, OpenRouterRouting as N, ModelCostConfig as O, PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE as P, ThinkingContent as Q, ProviderImagesOptions as R, KnownApi as S, MaybePromise as T, RawPricingTier as U, ProviderStreamOptions as V, SimpleStreamOptions as W, TextSignatureV1 as X, TextContent as Y, ThinkingBudgets as Z, ImagesModel as _, AssistantMessage as a, Usage as at, ImagesProvider as b, AssistantMessageEventStreamLike as c, VercelGatewayRouting as ct, Context as d, ThinkingLevelMap as et, ImageContent as f, ImagesInputContent as g, ImagesFunction as h, AssistantImages as i, Transport as it, OpenAICompletionsCompat as j, ModelCostRates as k, CacheRetention as l, ImagesContext as m, Api as n, ToolCall as nt, AssistantMessageEvent as o, UserMessage as ot, ImagesApi as p, StreamFunction as q, AssistantDeliveryTtsFacts as r, ToolResultMessage as rt, AssistantMessageEventStreamContract as s, ValidateToolArgumentsFn as st, AnthropicMessagesCompat as t, Tool as tt, CompleteSimpleFn as u, ImagesOptions as v, KnownImagesProvider as w, ImagesStopReason as x, ImagesOutputContent as y, ProviderReplayState as z };
@@ -0,0 +1 @@
1
+ import "./index-CefaUGSS.mjs";
package/dist/types.d.mts CHANGED
@@ -1,7 +1,7 @@
1
- import { _ as supportsClaudeNativeXhighEffort, a as requiresClaudeDefaultSampling, c as resolveClaudeModelIdentity, d as resolveClaudeOpus5ModelIdentity, f as resolveClaudeSonnet5ModelIdentity, g as supportsClaudeNativeMaxEffort, h as supportsClaudeFastMode, i as CLAUDE_SONNET_5_THINKING_PROFILE, l as resolveClaudeMythos5ModelIdentity, m as supportsClaudeAdaptiveThinking, n as CLAUDE_FABLE_5_THINKING_PROFILE, o as requiresClaudeMandatoryAdaptiveThinking, p as supportsClaude1MContext, r as CLAUDE_OPUS_5_THINKING_PROFILE, s as resolveClaudeFable5ModelIdentity, u as resolveClaudeNativeThinkingLevelMap } from "./index-N3zr6__t.mjs";
1
+ import { _ as supportsClaudeAdaptiveThinking, a as CLAUDE_FABLE_5_THINKING_PROFILE, b as supportsClaudeNativeXhighEffort, c as requiresClaudeDefaultSampling, d as resolveClaudeModelIdentity, f as resolveClaudeMythos5ModelIdentity, g as supportsClaude1MContext, h as resolveClaudeSonnet5ModelIdentity, i as normalizeResolvedPricing, l as requiresClaudeMandatoryAdaptiveThinking, m as resolveClaudeOpus5ModelIdentity, n as calculateUsageCost, o as CLAUDE_OPUS_5_THINKING_PROFILE, p as resolveClaudeNativeThinkingLevelMap, r as normalizeModelCostConfig, s as CLAUDE_SONNET_5_THINKING_PROFILE, u as resolveClaudeFable5ModelIdentity, v as supportsClaudeFastMode, y as supportsClaudeNativeMaxEffort } from "./index-CefaUGSS.mjs";
2
2
  import { a as extractDiagnosticError, i as createAssistantMessageDiagnostic, n as DiagnosticErrorInfo, o as formatThrownValue, r as appendAssistantMessageDiagnostic, t as AssistantMessageDiagnostic } from "./diagnostics-BaTA9eVl.mjs";
3
- import { $ as Transport, A as OpenAIResponsesCompat, B as StopReason, C as KnownImagesApi, D as Model, E as Message, F as ProviderImagesOptions, G as TextSignatureV1, H as StreamFunction, I as ProviderReplayState, J as ThinkingLevel, K as ThinkingBudgets, L as ProviderResponse, M as PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE, N as PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE, O as ModelThinkingLevel, P as Provider, Q as ToolResultMessage, R as ProviderStreamOptions, S as KnownApi, T as MaybePromise, U as StreamOptions, V as StreamFn, W as TextContent, X as Tool, Y as ThinkingLevelMap, Z as ToolCall, _ as ImagesModel, a as AssistantMessage, b as ImagesProvider, c as AssistantMessageEventStreamLike, d as Context, et as Usage, f as ImageContent, g as ImagesInputContent, h as ImagesFunction, i as AssistantImages, j as OpenRouterRouting, k as OpenAICompletionsCompat, l as CacheRetention, m as ImagesContext, n as Api, nt as ValidateToolArgumentsFn, o as AssistantMessageEvent, p as ImagesApi, q as ThinkingContent, r as AssistantDeliveryTtsFacts, rt as VercelGatewayRouting, s as AssistantMessageEventStreamContract, t as AnthropicMessagesCompat, tt as UserMessage, u as CompleteSimpleFn, v as ImagesOptions, w as KnownImagesProvider, x as ImagesStopReason, y as ImagesOutputContent, z as SimpleStreamOptions } from "./types-h38Azne1.mjs";
4
- import { n as EventStream, r as createAssistantMessageEventStream, t as AssistantMessageEventStream } from "./event-stream-UhnxHuqt.mjs";
5
- import { n as validateToolCall, t as validateToolArguments } from "./validation-C68lP2uy.mjs";
6
- import "./types-DtGu2d3C.mjs";
7
- export { AnthropicMessagesCompat, Api, AssistantDeliveryTtsFacts, AssistantImages, AssistantMessage, AssistantMessageDiagnostic, AssistantMessageEvent, AssistantMessageEventStream, AssistantMessageEventStreamContract, AssistantMessageEventStreamLike, CLAUDE_FABLE_5_THINKING_PROFILE, CLAUDE_OPUS_5_THINKING_PROFILE, CLAUDE_SONNET_5_THINKING_PROFILE, CacheRetention, CompleteSimpleFn, Context, DiagnosticErrorInfo, EventStream, ImageContent, ImagesApi, ImagesContext, ImagesFunction, ImagesInputContent, ImagesModel, ImagesOptions, ImagesOutputContent, ImagesProvider, ImagesStopReason, KnownApi, KnownImagesApi, KnownImagesProvider, MaybePromise, Message, Model, ModelThinkingLevel, OpenAICompletionsCompat, OpenAIResponsesCompat, OpenRouterRouting, PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE, PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE, Provider, ProviderImagesOptions, ProviderReplayState, ProviderResponse, ProviderStreamOptions, SimpleStreamOptions, StopReason, StreamFn, StreamFunction, StreamOptions, TextContent, TextSignatureV1, ThinkingBudgets, ThinkingContent, ThinkingLevel, ThinkingLevelMap, Tool, ToolCall, ToolResultMessage, Transport, Usage, UserMessage, ValidateToolArgumentsFn, VercelGatewayRouting, appendAssistantMessageDiagnostic, createAssistantMessageDiagnostic, createAssistantMessageEventStream, extractDiagnosticError, formatThrownValue, requiresClaudeDefaultSampling, requiresClaudeMandatoryAdaptiveThinking, resolveClaudeFable5ModelIdentity, resolveClaudeModelIdentity, resolveClaudeMythos5ModelIdentity, resolveClaudeNativeThinkingLevelMap, resolveClaudeOpus5ModelIdentity, resolveClaudeSonnet5ModelIdentity, supportsClaude1MContext, supportsClaudeAdaptiveThinking, supportsClaudeFastMode, supportsClaudeNativeMaxEffort, supportsClaudeNativeXhighEffort, validateToolArguments, validateToolCall };
3
+ import { $ as ThinkingLevel, A as ModelThinkingLevel, B as ProviderResponse, C as KnownImagesApi, D as Model, E as Message, F as PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE, G as StopReason, H as RawModelCostConfig, I as PricingTier, J as StreamOptions, K as StreamFn, L as Provider, M as OpenAIResponsesCompat, N as OpenRouterRouting, O as ModelCostConfig, P as PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE, Q as ThinkingContent, R as ProviderImagesOptions, S as KnownApi, T as MaybePromise, U as RawPricingTier, V as ProviderStreamOptions, W as SimpleStreamOptions, X as TextSignatureV1, Y as TextContent, Z as ThinkingBudgets, _ as ImagesModel, a as AssistantMessage, at as Usage, b as ImagesProvider, c as AssistantMessageEventStreamLike, ct as VercelGatewayRouting, d as Context, et as ThinkingLevelMap, f as ImageContent, g as ImagesInputContent, h as ImagesFunction, i as AssistantImages, it as Transport, j as OpenAICompletionsCompat, k as ModelCostRates, l as CacheRetention, m as ImagesContext, n as Api, nt as ToolCall, o as AssistantMessageEvent, ot as UserMessage, p as ImagesApi, q as StreamFunction, r as AssistantDeliveryTtsFacts, rt as ToolResultMessage, s as AssistantMessageEventStreamContract, st as ValidateToolArgumentsFn, t as AnthropicMessagesCompat, tt as Tool, u as CompleteSimpleFn, v as ImagesOptions, w as KnownImagesProvider, x as ImagesStopReason, y as ImagesOutputContent, z as ProviderReplayState } from "./types-Beemor2E.mjs";
4
+ import { n as EventStream, r as createAssistantMessageEventStream, t as AssistantMessageEventStream } from "./event-stream-DcvAPSBe.mjs";
5
+ import { n as validateToolCall, t as validateToolArguments } from "./validation-CC6s7Smp.mjs";
6
+ import "./types-COdhCX0U.mjs";
7
+ export { AnthropicMessagesCompat, Api, AssistantDeliveryTtsFacts, AssistantImages, AssistantMessage, AssistantMessageDiagnostic, AssistantMessageEvent, AssistantMessageEventStream, AssistantMessageEventStreamContract, AssistantMessageEventStreamLike, CLAUDE_FABLE_5_THINKING_PROFILE, CLAUDE_OPUS_5_THINKING_PROFILE, CLAUDE_SONNET_5_THINKING_PROFILE, CacheRetention, CompleteSimpleFn, Context, DiagnosticErrorInfo, EventStream, ImageContent, ImagesApi, ImagesContext, ImagesFunction, ImagesInputContent, ImagesModel, ImagesOptions, ImagesOutputContent, ImagesProvider, ImagesStopReason, KnownApi, KnownImagesApi, KnownImagesProvider, MaybePromise, Message, Model, ModelCostConfig, ModelCostRates, ModelThinkingLevel, OpenAICompletionsCompat, OpenAIResponsesCompat, OpenRouterRouting, PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE, PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE, PricingTier, Provider, ProviderImagesOptions, ProviderReplayState, ProviderResponse, ProviderStreamOptions, RawModelCostConfig, RawPricingTier, SimpleStreamOptions, StopReason, StreamFn, StreamFunction, StreamOptions, TextContent, TextSignatureV1, ThinkingBudgets, ThinkingContent, ThinkingLevel, ThinkingLevelMap, Tool, ToolCall, ToolResultMessage, Transport, Usage, UserMessage, ValidateToolArgumentsFn, VercelGatewayRouting, appendAssistantMessageDiagnostic, calculateUsageCost, createAssistantMessageDiagnostic, createAssistantMessageEventStream, extractDiagnosticError, formatThrownValue, normalizeModelCostConfig, normalizeResolvedPricing, requiresClaudeDefaultSampling, requiresClaudeMandatoryAdaptiveThinking, resolveClaudeFable5ModelIdentity, resolveClaudeModelIdentity, resolveClaudeMythos5ModelIdentity, resolveClaudeNativeThinkingLevelMap, resolveClaudeOpus5ModelIdentity, resolveClaudeSonnet5ModelIdentity, supportsClaude1MContext, supportsClaudeAdaptiveThinking, supportsClaudeFastMode, supportsClaudeNativeMaxEffort, supportsClaudeNativeXhighEffort, validateToolArguments, validateToolCall };
package/dist/types.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import { a as requiresClaudeMandatoryAdaptiveThinking, c as resolveClaudeMythos5ModelIdentity, d as resolveClaudeSonnet5ModelIdentity, f as supportsClaude1MContext, g as supportsClaudeNativeXhighEffort, h as supportsClaudeNativeMaxEffort, i as requiresClaudeDefaultSampling, l as resolveClaudeNativeThinkingLevelMap, m as supportsClaudeFastMode, n as CLAUDE_OPUS_5_THINKING_PROFILE, o as resolveClaudeFable5ModelIdentity, p as supportsClaudeAdaptiveThinking, r as CLAUDE_SONNET_5_THINKING_PROFILE, s as resolveClaudeModelIdentity, t as CLAUDE_FABLE_5_THINKING_PROFILE, u as resolveClaudeOpus5ModelIdentity } from "./src-Bu3FiFAG.mjs";
1
+ import { _ as supportsClaudeFastMode, a as CLAUDE_OPUS_5_THINKING_PROFILE, c as requiresClaudeMandatoryAdaptiveThinking, d as resolveClaudeMythos5ModelIdentity, f as resolveClaudeNativeThinkingLevelMap, g as supportsClaudeAdaptiveThinking, h as supportsClaude1MContext, i as CLAUDE_FABLE_5_THINKING_PROFILE, l as resolveClaudeFable5ModelIdentity, m as resolveClaudeSonnet5ModelIdentity, n as normalizeModelCostConfig, o as CLAUDE_SONNET_5_THINKING_PROFILE, p as resolveClaudeOpus5ModelIdentity, r as normalizeResolvedPricing, s as requiresClaudeDefaultSampling, t as calculateUsageCost, u as resolveClaudeModelIdentity, v as supportsClaudeNativeMaxEffort, y as supportsClaudeNativeXhighEffort } from "./src-C8U7lkoa.mjs";
2
2
  import { n as PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE, t as PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE } from "./types-BDdaOVi2.mjs";
3
3
  import { i as formatThrownValue, n as createAssistantMessageDiagnostic, r as extractDiagnosticError, t as appendAssistantMessageDiagnostic } from "./diagnostics-COpOtRwq.mjs";
4
4
  import { n as EventStream, r as createAssistantMessageEventStream, t as AssistantMessageEventStream } from "./event-stream-uSMZJ3FA.mjs";
5
- import { n as validateToolCall, t as validateToolArguments } from "./validation-B61OhAio.mjs";
6
- export { AssistantMessageEventStream, CLAUDE_FABLE_5_THINKING_PROFILE, CLAUDE_OPUS_5_THINKING_PROFILE, CLAUDE_SONNET_5_THINKING_PROFILE, EventStream, PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE, PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE, appendAssistantMessageDiagnostic, createAssistantMessageDiagnostic, createAssistantMessageEventStream, extractDiagnosticError, formatThrownValue, requiresClaudeDefaultSampling, requiresClaudeMandatoryAdaptiveThinking, resolveClaudeFable5ModelIdentity, resolveClaudeModelIdentity, resolveClaudeMythos5ModelIdentity, resolveClaudeNativeThinkingLevelMap, resolveClaudeOpus5ModelIdentity, resolveClaudeSonnet5ModelIdentity, supportsClaude1MContext, supportsClaudeAdaptiveThinking, supportsClaudeFastMode, supportsClaudeNativeMaxEffort, supportsClaudeNativeXhighEffort, validateToolArguments, validateToolCall };
5
+ import { n as validateToolCall, t as validateToolArguments } from "./validation-CJZtym2g.mjs";
6
+ export { AssistantMessageEventStream, CLAUDE_FABLE_5_THINKING_PROFILE, CLAUDE_OPUS_5_THINKING_PROFILE, CLAUDE_SONNET_5_THINKING_PROFILE, EventStream, PROVIDER_FAILURE_WITH_OUTPUT_ERROR_CODE, PROVIDER_POST_DISPATCH_AMBIGUITY_ERROR_CODE, appendAssistantMessageDiagnostic, calculateUsageCost, createAssistantMessageDiagnostic, createAssistantMessageEventStream, extractDiagnosticError, formatThrownValue, normalizeModelCostConfig, normalizeResolvedPricing, requiresClaudeDefaultSampling, requiresClaudeMandatoryAdaptiveThinking, resolveClaudeFable5ModelIdentity, resolveClaudeModelIdentity, resolveClaudeMythos5ModelIdentity, resolveClaudeNativeThinkingLevelMap, resolveClaudeOpus5ModelIdentity, resolveClaudeSonnet5ModelIdentity, supportsClaude1MContext, supportsClaudeAdaptiveThinking, supportsClaudeFastMode, supportsClaudeNativeMaxEffort, supportsClaudeNativeXhighEffort, validateToolArguments, validateToolCall };
@@ -1,4 +1,4 @@
1
- import { X as Tool, Z as ToolCall } from "./types-h38Azne1.mjs";
1
+ import { nt as ToolCall, tt as Tool } from "./types-Beemor2E.mjs";
2
2
  //#region packages/llm-core/src/validation.d.ts
3
3
  /** Finds the target tool and validates/coerces a model-emitted tool call. */
4
4
  declare function validateToolCall(tools: Tool[], toolCall: ToolCall): unknown;
@@ -2,7 +2,7 @@ import { Compile } from "typebox/compile";
2
2
  //#region packages/llm-core/src/validation.ts
3
3
  const validatorCache = /* @__PURE__ */ new WeakMap();
4
4
  /** Maximum string length accepted for schema-gated JSON coercion. */
5
- const MAX_JSON_COERCE_LENGTH = 64 * 1024;
5
+ const MAX_JSON_COERCE_LENGTH = 65536;
6
6
  function isObjectBackedRecord(value) {
7
7
  return typeof value === "object" && value !== null;
8
8
  }
@@ -181,10 +181,12 @@ function validateToolArguments(tool, toolCall) {
181
181
  validator.Convert(args);
182
182
  if (isJsonSchemaObject(tool.parameters)) {
183
183
  const coerced = coerceWithJsonSchema(args, tool.parameters);
184
- if (coerced !== args) if (isObjectBackedRecord(args) && isObjectBackedRecord(coerced)) {
185
- for (const key of Object.keys(args)) delete args[key];
186
- Object.assign(args, coerced);
187
- } else return validator.Check(coerced) ? coerced : args;
184
+ if (coerced !== args) {
185
+ if (isObjectBackedRecord(args) && isObjectBackedRecord(coerced)) {
186
+ for (const key of Object.keys(args)) delete args[key];
187
+ Object.assign(args, coerced);
188
+ } else return validator.Check(coerced) ? coerced : args;
189
+ }
188
190
  }
189
191
  if (validator.Check(args)) return args;
190
192
  const errors = validator.Errors(args).map((error) => ` - ${formatValidationPath(error)}: ${error.message}`).join("\n") || "Unknown validation error";
@@ -1,2 +1,2 @@
1
- import { n as validateToolCall, t as validateToolArguments } from "./validation-C68lP2uy.mjs";
1
+ import { n as validateToolCall, t as validateToolArguments } from "./validation-CC6s7Smp.mjs";
2
2
  export { validateToolArguments, validateToolCall };
@@ -1,2 +1,2 @@
1
- import { n as validateToolCall, t as validateToolArguments } from "./validation-B61OhAio.mjs";
1
+ import { n as validateToolCall, t as validateToolArguments } from "./validation-CJZtym2g.mjs";
2
2
  export { validateToolArguments, validateToolCall };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/ai",
3
- "version": "2026.8.1",
3
+ "version": "2026.8.2",
4
4
  "description": "Reusable model provider adapters and streaming runtime from OpenClaw",
5
5
  "keywords": [
6
6
  "ai",
@@ -108,7 +108,7 @@
108
108
  "@mistralai/mistralai": "2.6.4",
109
109
  "openai": "7.5.0",
110
110
  "partial-json": "0.1.7",
111
- "typebox": "1.3.16"
111
+ "typebox": "1.3.17"
112
112
  },
113
113
  "devDependencies": {
114
114
  "@openclaw/model-catalog-core": "0.0.0-private",
@@ -1 +0,0 @@
1
- import "./event-stream-UhnxHuqt.mjs";
@@ -1 +0,0 @@
1
- import "./index-N3zr6__t.mjs";