@openclaw/ai 2026.8.1-beta.2 → 2026.9.1-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/dist/{anthropic-SrGtwsJu.d.mts → anthropic-BECQCNdF.d.mts} +0 -2
  2. package/dist/{anthropic-B6dLpq5L.mjs → anthropic-DI4PZKKB.mjs} +46 -34
  3. package/dist/{anthropic-compaction-replay-8lJNKXOE.mjs → anthropic-compaction-replay-nhKaCXu6.mjs} +17 -22
  4. package/dist/{anthropic-payload-policy-CiEuQS72.d.mts → anthropic-payload-policy-B_0n0enE.d.mts} +3 -1
  5. package/dist/{api-registry-k3zTz0cV.d.mts → api-registry-CTd8NzcD.d.mts} +2 -1
  6. package/dist/{azure-openai-responses-mxIOtUnn.mjs → azure-openai-responses-D8dI0ekg.mjs} +3 -3
  7. package/dist/diagnostics.d.mts +0 -1
  8. package/dist/diagnostics.mjs +1 -1
  9. package/dist/event-stream-BKp4fOt_.d.mts +1 -0
  10. package/dist/{event-stream-BP6AWT8j.d.mts → event-stream-LiXePESD.d.mts} +1 -2
  11. package/dist/event-stream.d.mts +2 -1
  12. package/dist/{google-C7h2QzDX.mjs → google-Od-LLdVK.mjs} +3 -3
  13. package/dist/{google-shared-B0Qr9OR7.mjs → google-shared-Bgr9lFPw.mjs} +22 -8
  14. package/dist/{google-vertex-Bhc3TjDl.mjs → google-vertex-aerRSXc4.mjs} +4 -4
  15. package/dist/{host-DTqNc7ad.mjs → host-D51fmkH6.mjs} +40 -33
  16. package/dist/{host-vWgMMhiJ.d.mts → host-DsbPMFU6.d.mts} +7 -7
  17. package/dist/index-Qbej8io0.d.mts +3 -0
  18. package/dist/index.d.mts +8 -8
  19. package/dist/index.mjs +2 -3
  20. package/dist/internal/anthropic.d.mts +13 -6
  21. package/dist/internal/anthropic.mjs +4 -4
  22. package/dist/internal/openai-responses-payload-policy.d.mts +2 -2
  23. package/dist/internal/openai-responses-payload-policy.mjs +2 -2
  24. package/dist/internal/openai.d.mts +6 -6
  25. package/dist/internal/openai.mjs +10 -8
  26. package/dist/internal/runtime.d.mts +18 -5
  27. package/dist/internal/runtime.mjs +8 -7
  28. package/dist/internal/shared.d.mts +18 -4
  29. package/dist/internal/shared.mjs +4 -4
  30. package/dist/{json-parse-CDnesDM_.mjs → json-parse-BuAJEbdW.mjs} +18 -2
  31. package/dist/{headers-DdOQtGuU.mjs → llm-request-activity-BjtkplhG.mjs} +1 -9
  32. package/dist/{mistral-CEWoQI_g.mjs → mistral-EiHdymeb.mjs} +59 -49
  33. package/dist/{openai-chatgpt-responses-CrPmqERt.mjs → openai-chatgpt-responses-DHpF9o1e.mjs} +42 -17
  34. package/dist/{openai-completions-BPnt4Sml.mjs → openai-completions-EFPiUGfS.mjs} +60 -257
  35. package/dist/{openai-completions-compat-Dt3dcawL.d.mts → openai-completions-compat-BefmHT26.d.mts} +3 -3
  36. package/dist/openai-completions-stream-DUlGwRMz.mjs +1621 -0
  37. package/dist/{openai-responses-DhIKtOup.mjs → openai-responses-BogP8OjX.mjs} +6 -5
  38. package/dist/{openai-responses-contracts-XpZJxrRG.d.mts → openai-responses-contracts-Dvj_UtPy.d.mts} +3 -3
  39. package/dist/{openai-responses-contracts-CyfIkQi5.mjs → openai-responses-contracts-QUY12X0B.mjs} +6 -26
  40. package/dist/{openai-responses-payload-policy-BSs371VM.d.mts → openai-responses-payload-policy-CNGFT9zr.d.mts} +1 -0
  41. package/dist/{openai-responses-payload-policy-BDxV-W0c.mjs → openai-responses-payload-policy-D8EdimYe.mjs} +6 -8
  42. package/dist/{openai-responses-prompt-observer-internal-DgNTYnRY.mjs → openai-responses-prompt-observer-internal-Cd4hJG-S.mjs} +3 -3
  43. package/dist/{openai-responses-shared-DXIt3iY5.mjs → openai-responses-shared-DJThc6jW.mjs} +205 -1472
  44. package/dist/openai-stop-reason-Drnn_6Qj.mjs +28 -0
  45. package/dist/openai-tool-schema-ho-hIkQf.mjs +1695 -0
  46. package/dist/{provider-error-BUwEnjXq.mjs → provider-error-DDOs_Bz0.mjs} +20 -27
  47. package/dist/provider-options-AvldWZt8.mjs +21 -0
  48. package/dist/{provider-options-B96RdNpH.d.mts → provider-options-MdMBLzlU.d.mts} +15 -4
  49. package/dist/provider-transcript-transform-C01bQ5a3.mjs +32 -0
  50. package/dist/provider-types.d.mts +7 -5
  51. package/dist/providers.d.mts +1 -2
  52. package/dist/providers.mjs +9 -9
  53. package/dist/{reasoning-tag-text-partitioner-rnPwX2pg.mjs → reasoning-tag-text-partitioner-5ygO2rZc.mjs} +3 -0
  54. package/dist/{sanitize-unicode-BYqrYtC_.mjs → sanitize-unicode-DCkltN94.mjs} +1 -2
  55. package/dist/{simple-options-D58D5Kvw.mjs → simple-options-CFj7x3J4.mjs} +5 -4
  56. package/dist/{anthropic-JsNA5KCu.mjs → src-Bu3FiFAG.mjs} +1 -1
  57. package/dist/{streaming-byte-guard-BrbkbwUu.mjs → streaming-byte-guard-CC-HMn_u.mjs} +5 -6
  58. package/dist/string-normalization--fwJ4S2q.mjs +16 -0
  59. package/dist/{tool-schema-json-projection-q5d7QX5c.mjs → tool-schema-json-projection-qvTEs5Am.mjs} +17 -8
  60. package/dist/transport-stream-shared-ljShVIZB.mjs +342 -0
  61. package/dist/transport-stream-shared-rvaCyFYt.d.mts +138 -0
  62. package/dist/{transport-utils-DJqkxbhC.mjs → transport-utils-LJ1_rbi-.mjs} +8 -5
  63. package/dist/transports.d.mts +45 -106
  64. package/dist/transports.mjs +134 -1089
  65. package/dist/{types-BHNrPS1l.d.mts → types-DhLoJbFm.d.mts} +49 -17
  66. package/dist/types-GiAjXatj.d.mts +1 -0
  67. package/dist/types.d.mts +6 -5
  68. package/dist/types.mjs +1 -2
  69. package/dist/utf16-slice-qz3nsy87.mjs +84 -0
  70. package/dist/{validation-DT9SrFn3.d.mts → validation-Dk7q7NMN.d.mts} +1 -2
  71. package/dist/validation.d.mts +1 -1
  72. package/package.json +5 -5
  73. package/dist/index-BVVgDSdq.d.mts +0 -1
  74. package/dist/openai-stop-reason-BkFkqqK0.mjs +0 -563
  75. package/dist/openai-tool-projection-CY04OcvQ.mjs +0 -338
  76. package/dist/provider-transcript-transform-ePx-Bbfr.mjs +0 -155
  77. package/dist/record-coerce-DdXsgUd_.mjs +0 -23
  78. package/dist/src-D2H6yKkH.mjs +0 -2
  79. package/dist/stream-first-event-timeout-DvDeSucC.d.mts +0 -29
  80. package/dist/string-coerce-fsri9iCu.mjs +0 -34
  81. package/dist/types-BVVgDSdq.d.mts +0 -1
  82. package/dist/utf16-slice-CvGodqok.mjs +0 -29
@@ -1,18 +1,17 @@
1
- import { $ as Usage, B as StreamFn, E as Model, F as ProviderReplayState, O as OpenAICompletionsCompat, a as AssistantMessageEvent, i as AssistantMessage, n as Api, u as Context } from "./types-BHNrPS1l.mjs";
2
- import { t as AssistantMessageEventStream } from "./event-stream-BP6AWT8j.mjs";
3
- import { n as ApiRegistry } from "./api-registry-k3zTz0cV.mjs";
4
- import { a as OpenAICompletionsOptions, c as OpenAIToolProjection, i as BaseOpenAIStreamOptions, o as OpenAIResponsesCompactionRejection } from "./provider-options-B96RdNpH.mjs";
5
- import { a as resolveAnthropicPayloadPolicy, i as resolveAnthropicEphemeralCacheControl, n as applyAnthropicEphemeralCacheControlMarkers, o as resolveAnthropicServerCompactionPlan, r as applyAnthropicPayloadPolicyToParams, t as applyAnthropicCacheControlToMessages } from "./anthropic-payload-policy-CiEuQS72.mjs";
6
- import { a as ReplayableResponseCompactionItem, i as OpenAIResponsesRequestParams, n as OpenAIResponsesOptions, o as ResponsesPromptObservation, r as OpenAIResponsesReasoningReplayMetadata } from "./openai-responses-contracts-XpZJxrRG.mjs";
7
- import { i as resolveOpenAIResponsesServerCompactionPlan, n as resolveOpenAIResponsesCompactEndpointPlan, r as resolveOpenAIResponsesPayloadPolicy, t as applyOpenAIResponsesPayloadPolicy } from "./openai-responses-payload-policy-BSs371VM.mjs";
8
- import { n as detectOpenAICompletionsCompat, r as resolveOpenAICompletionsCompat, t as ResolvedOpenAICompletionsCompat } from "./openai-completions-compat-Dt3dcawL.mjs";
9
- import { n as FirstStreamEventInternalOptions } from "./stream-first-event-timeout-DvDeSucC.mjs";
1
+ import { D as Model, I as ProviderReplayState, V as StreamFn, W as TextContent, Z as ToolCall, a as AssistantMessage, d as Context, et as Usage, k as OpenAICompletionsCompat, n as Api, o as AssistantMessageEvent, q as ThinkingContent } from "./types-DhLoJbFm.mjs";
2
+ import "./index-Qbej8io0.mjs";
3
+ import { n as ApiRegistry } from "./api-registry-CTd8NzcD.mjs";
4
+ import { a as CodeModeToolSurfaceObservation, i as BaseOpenAIStreamOptions, o as OpenAICompletionsOptions, s as OpenAIResponsesCompactionRejection, u as OpenAIToolProjection } from "./provider-options-MdMBLzlU.mjs";
5
+ import "./types-GiAjXatj.mjs";
6
+ import { a as resolveAnthropicPayloadPolicy, i as resolveAnthropicEphemeralCacheControl, n as applyAnthropicEphemeralCacheControlMarkers, o as resolveAnthropicServerCompactionPlan, r as applyAnthropicPayloadPolicyToParams, t as applyAnthropicCacheControlToMessages } from "./anthropic-payload-policy-B_0n0enE.mjs";
7
+ import { a as ReplayableResponseCompactionItem, i as OpenAIResponsesRequestParams, n as OpenAIResponsesOptions, o as ResponsesPromptObservation, r as OpenAIResponsesReasoningReplayMetadata } from "./openai-responses-contracts-Dvj_UtPy.mjs";
8
+ import { i as resolveOpenAIResponsesServerCompactionPlan, n as resolveOpenAIResponsesCompactEndpointPlan, r as resolveOpenAIResponsesPayloadPolicy, t as applyOpenAIResponsesPayloadPolicy } from "./openai-responses-payload-policy-CNGFT9zr.mjs";
9
+ import { n as detectOpenAICompletionsCompat, r as resolveOpenAICompletionsCompat, t as ResolvedOpenAICompletionsCompat } from "./openai-completions-compat-BefmHT26.mjs";
10
+ import { C as FirstStreamEventInternalOptions, _ as sanitizeNonEmptyTransportPayloadText, a as copyProviderAcceptanceObserver, b as withProviderAcceptanceObserver, c as failTransportStream, d as mergeTransportHeaders, f as mergeTransportMetadata, g as parseTerminalToolCallArguments, h as notifyProviderStreamOpened, i as coerceTransportToolCallArguments, l as finalizeTerminalToolCallArguments, m as notifyProviderHttpResponse, n as WritableTransportStream, o as createEmptyTransportUsage, p as notifyProviderHttpMetadata, r as assignTransportErrorDetails, s as createWritableTransportEventStream, t as ProviderAcceptance, u as finalizeTransportStream, v as sanitizeTransportPayloadText, x as withProviderResponseHook, y as transportAbortError } from "./transport-stream-shared-rvaCyFYt.mjs";
10
11
  import { r as sortPromptCacheToolsByName } from "./prompt-cache-stability-Cwcjv_fx.mjs";
11
- import { t as ProviderErrorProjection } from "./provider-error-CzNw4BWX.mjs";
12
12
  import OpenAI from "openai";
13
13
  import { ResponseCreateParamsStreaming, ResponseInput } from "openai/resources/responses/responses.js";
14
14
  import { ChatCompletionChunk } from "openai/resources/chat/completions.js";
15
-
16
15
  //#region packages/ai/src/transports/anthropic-transport-stream.d.ts
17
16
  /** Resolve the Anthropic Messages endpoint URL for the effective base URL. */
18
17
  declare function resolveAnthropicMessagesUrl(baseUrl?: string): string;
@@ -97,6 +96,8 @@ declare const log: {
97
96
  info(message: string, data?: Record<string, unknown>): void;
98
97
  warn(message: string, data?: Record<string, unknown>): void;
99
98
  };
99
+ declare function resolveOpenAIClientBaseUrl(model: Pick<Model, "provider" | "baseUrl">, baseUrl?: string | undefined): string | undefined;
100
+ type OpenAICompletionsTextSource = "reasoning_detail" | "refusal";
100
101
  type OpenAICompletionsContentDelta = {
101
102
  kind: "thinking";
102
103
  signature?: string;
@@ -104,8 +105,15 @@ type OpenAICompletionsContentDelta = {
104
105
  } | {
105
106
  kind: "text";
106
107
  text: string;
107
- source?: "refusal";
108
+ source?: OpenAICompletionsTextSource;
108
109
  };
110
+ type OpenAICompletionsReasoningBatch = {
111
+ readonly deltas: readonly OpenAICompletionsContentDelta[];
112
+ readonly mirroredThinking: readonly string[];
113
+ readonly hasThinking: boolean;
114
+ readonly hasVisibleText: boolean;
115
+ };
116
+ declare function readOpenAICompletionsReasoningBatch(delta: Record<string, unknown>, visibleReasoningDetailTypes: ReadonlySet<string>): OpenAICompletionsReasoningBatch;
109
117
  type OpenAIModeCompatInput = Omit<OpenAICompletionsCompat, "thinkingFormat"> & {
110
118
  thinkingFormat?: string;
111
119
  requiresStringContent?: boolean;
@@ -117,28 +125,14 @@ type OpenAIModeCompatInput = Omit<OpenAICompletionsCompat, "thinkingFormat"> & {
117
125
  type OpenAIModeModel = Omit<Model, "compat"> & {
118
126
  compat?: OpenAIModeCompatInput | null;
119
127
  };
120
- type MutableAssistantOutput = {
121
- role: "assistant";
122
- content: Array<Record<string, unknown>>;
123
- api: Api;
124
- provider: string;
125
- model: string;
126
- usage: {
127
- input: number;
128
- output: number;
129
- cacheRead: number;
130
- cacheWrite: number;
128
+ type MutableToolCall = ToolCall & {
129
+ partialArgs?: string;
130
+ };
131
+ type MutableAssistantOutput = Omit<AssistantMessage, "content" | "usage"> & {
132
+ content: Array<TextContent | ThinkingContent | MutableToolCall>;
133
+ usage: Usage & {
131
134
  reasoningTokens?: number;
132
- totalTokens: number;
133
- cost: Usage["cost"];
134
135
  };
135
- stopReason: string;
136
- timestamp: number;
137
- responseId?: string;
138
- errorMessage?: string;
139
- errorCode?: string;
140
- errorType?: string;
141
- errorBody?: string;
142
136
  };
143
137
  declare function parseOpenAICompletionsUsage(rawUsage: NonNullable<ChatCompletionChunk["usage"]> & {
144
138
  cost?: unknown;
@@ -147,6 +141,7 @@ declare function parseOpenAICompletionsUsage(rawUsage: NonNullable<ChatCompletio
147
141
  includeReasoningTokens?: boolean;
148
142
  }): MutableAssistantOutput["usage"];
149
143
  declare function createOpenAIResponseHook(onResponse: BaseOpenAIStreamOptions["onResponse"], response: Response, model: Model): (() => void | Promise<void>) | undefined;
144
+ declare function createOpenAIProviderAcceptanceHook(options: Pick<BaseOpenAIStreamOptions, "onResponse" | "signal"> | undefined, response: Response, model: Model): () => Promise<void>;
150
145
  type ModelStreamCooperativeScheduler = {
151
146
  afterEvent: () => Promise<void>;
152
147
  };
@@ -194,7 +189,7 @@ declare function createAzureOpenAIResponsesTransportStreamFn(): StreamFn;
194
189
  declare function createAzureOpenAIClient(model: Model, context: Context, apiKey: string, optionHeaders?: Record<string, string>, turnHeaders?: Record<string, string>): OpenAI;
195
190
  //#endregion
196
191
  //#region packages/ai/src/transports/openai-responses-compaction-replay.d.ts
197
- declare function captureOpenAIResponsesCompaction(output: Pick<AssistantMessage, "providerReplay">, item: ReplayableResponseCompactionItem, replayIndex: number | undefined, model: Model, captureMetadata?: OpenAIResponsesReasoningReplayMetadata): void;
192
+ declare function captureOpenAIResponsesCompaction(output: Pick<AssistantMessage, "providerReplay">, item: ReplayableResponseCompactionItem, boundary: number | "retained-users", model: Model, captureMetadata?: OpenAIResponsesReasoningReplayMetadata): void;
198
193
  type OpenAIResponsesReplayMode = "checkpoint" | "full-history";
199
194
  declare function buildOpenAIResponsesReasoningReplayMetadata(model: Model, options?: Pick<BaseOpenAIStreamOptions, "authProfileId" | "sessionId">): OpenAIResponsesReasoningReplayMetadata;
200
195
  //#endregion
@@ -254,12 +249,20 @@ type ResponsesEncryptedContentAttempt<TRequest extends ResponsesEncryptedContent
254
249
  declare function createResponsesStreamWithEncryptedContentRetry(params: {
255
250
  client: ResponsesClientLike;
256
251
  request: OpenAIResponsesRequestParams;
257
- requestOptions: unknown;
252
+ requestOptions: {
253
+ signal?: AbortSignal;
254
+ } | undefined;
258
255
  model: Model;
259
256
  observePrompt?: NonNullable<ReturnType<typeof createResponsesPromptEgressObserver>>;
260
257
  initialAttemptKind?: ResponsesEncryptedContentAttemptKind;
261
258
  initialRejectedCompaction?: OpenAIResponsesCompactionRejection;
262
259
  onCompactionRejected?: (checkpoint: OpenAIResponsesCompactionRejection) => void;
260
+ canRetryStream?: () => boolean;
261
+ wrapStream?: (result: {
262
+ stream: AsyncIterable<unknown>;
263
+ response: Response;
264
+ attempt: ResponsesEncryptedContentAttempt<OpenAIResponsesRequestParams>;
265
+ }) => AsyncIterable<unknown>;
263
266
  buildFullHistoryRequest?: () => OpenAIResponsesRequestParams | Promise<OpenAIResponsesRequestParams>;
264
267
  }): Promise<{
265
268
  stream: AsyncIterable<unknown>;
@@ -273,7 +276,7 @@ type ResponsesEventSink = {
273
276
  push(event: AssistantMessageEvent): void;
274
277
  };
275
278
  //#endregion
276
- //#region packages/ai/src/transports/openai-responses-stream-internal.d.ts
279
+ //#region packages/ai/src/transports/openai-responses-stream-types-internal.d.ts
277
280
  type ResponsesStreamOptions = FirstStreamEventInternalOptions & {
278
281
  serviceTier?: ResponseCreateParamsStreaming["service_tier"];
279
282
  resolveServiceTier?: (responseServiceTier: ResponseCreateParamsStreaming["service_tier"] | undefined, requestServiceTier: ResponseCreateParamsStreaming["service_tier"] | undefined) => ResponseCreateParamsStreaming["service_tier"] | undefined;
@@ -281,13 +284,15 @@ type ResponsesStreamOptions = FirstStreamEventInternalOptions & {
281
284
  signal?: AbortSignal;
282
285
  reasoningReplayMetadata?: OpenAIResponsesReasoningReplayMetadata;
283
286
  };
287
+ //#endregion
288
+ //#region packages/ai/src/transports/openai-responses-stream-internal.d.ts
284
289
  declare function processResponsesStream<TApi extends Api>(openaiStream: AsyncIterable<unknown>, output: AssistantMessage, stream: ResponsesEventSink, model: Model<TApi>, options?: ResponsesStreamOptions): Promise<import("openai/resources/responses/responses.js").Response | undefined>;
285
290
  //#endregion
286
291
  //#region packages/ai/src/transports/openai-transport-params.d.ts
287
292
  declare function readCodeModePayloadToolName(tool: unknown): string | undefined;
288
- declare function filterCodeModePayloadTools(payload: unknown, visibleToolNames: ReadonlySet<string>, allowedHostedToolTypes?: ReadonlySet<string>): void;
293
+ declare function filterCodeModePayloadTools(payload: unknown, visibleToolNames: ReadonlySet<string>, allowedHostedToolTypes?: ReadonlySet<string>, observer?: (observation: CodeModeToolSurfaceObservation) => void): void;
289
294
  declare function resolveCodeModeResponsesVisibleToolNames(context: Pick<Context, "tools">): ReadonlySet<string>;
290
- declare function enforceCodeModeResponsesToolSurface(payload: unknown, visibleToolNames: ReadonlySet<string>, allowedHostedToolTypes?: ReadonlySet<string>): void;
295
+ declare function enforceCodeModeResponsesToolSurface(payload: unknown, visibleToolNames: ReadonlySet<string>, allowedHostedToolTypes?: ReadonlySet<string>, observer?: (observation: CodeModeToolSurfaceObservation) => void): void;
291
296
  declare function assertCodeModeResponsesToolSurface(payload: unknown, visibleToolNames: ReadonlySet<string>, allowedHostedToolTypes?: ReadonlySet<string>): void;
292
297
  declare function resolveOpenAIStrictToolFlagWithDiagnostics(projection: OpenAIToolProjection, strictSetting: boolean | null | undefined, context: {
293
298
  transport: "responses" | "completions";
@@ -343,6 +348,7 @@ type OpenAIResponsesCompactEndpointResult = {
343
348
  id?: string;
344
349
  encrypted_content: string;
345
350
  };
351
+ historyMode: "compacted-prefix" | "retained-users";
346
352
  usage: Record<string, unknown> & {
347
353
  input_tokens: number;
348
354
  output_tokens: number;
@@ -424,75 +430,8 @@ declare function prepareModelForSimpleCompletion<TApi extends Api>(params: {
424
430
  cfg?: unknown;
425
431
  }): Model;
426
432
  //#endregion
427
- //#region packages/ai/src/transports/transport-stream-shared.d.ts
428
- type ContextUsage = NonNullable<Usage["contextUsage"]>;
429
- type TransportUsage = {
430
- input: number;
431
- output: number;
432
- cacheRead: number;
433
- cacheWrite: number;
434
- contextUsage?: ContextUsage;
435
- totalTokens: number;
436
- cost: {
437
- input: number;
438
- output: number;
439
- cacheRead: number;
440
- cacheWrite: number;
441
- total: number;
442
- };
443
- };
444
- type WritableTransportStream = {
445
- push(event: unknown): void;
446
- end(): void;
447
- };
448
- type TransportOutputShape = Partial<Omit<ProviderErrorProjection, "stopReason">> & {
449
- stopReason: string;
450
- };
451
- declare function sanitizeTransportPayloadText(text: string): string;
452
- declare function sanitizeNonEmptyTransportPayloadText(text: string, fallback?: string): string;
453
- declare function coerceTransportToolCallArguments(argumentsValue: unknown): Record<string, unknown>;
454
- declare function mergeTransportHeaders(...headerSources: Array<Record<string, string> | undefined>): Record<string, string> | undefined;
455
- declare function mergeTransportMetadata<T extends Record<string, unknown>>(payload: T, metadata?: Record<string, string>): T;
456
- declare function createEmptyTransportUsage(): TransportUsage;
457
- declare function createWritableTransportEventStream(): {
458
- eventStream: AssistantMessageEventStream;
459
- stream: WritableTransportStream;
460
- };
461
- /**
462
- * Abort error to surface for an aborted `signal`.
463
- *
464
- * Rethrows the caller's abort reason only when it carries a `code`, so that code
465
- * survives into `errorCode` on the persisted assistant message and consumers can
466
- * recognize an abort's origin without matching error text. A default
467
- * `abort()` reason is an uncoded DOMException that carries nothing the synthetic
468
- * error does not, so it keeps the "Request was aborted" text every transport
469
- * already emits rather than churning it.
470
- */
471
- declare function transportAbortError(signal?: AbortSignal): Error;
472
- /** Run a provider-response hook before start/body consumption inside the first-event deadline. */
473
- declare function withProviderResponseHook<T = never>(params: {
474
- stream?: AsyncIterable<T>;
475
- signal: AbortSignal;
476
- abort: (reason: Error) => void;
477
- hook?: () => void | Promise<void>;
478
- onReady?: () => void;
479
- }): AsyncIterable<T>;
480
- declare function finalizeTransportStream(params: {
481
- stream: WritableTransportStream;
482
- output: TransportOutputShape;
483
- signal?: AbortSignal;
484
- }): void;
485
- /** @deprecated Use projectProviderError. v2026.7.2-beta.5 compatibility; remove after 2026.10. */
486
- declare function assignTransportErrorDetails(output: TransportOutputShape, error: unknown, signal?: AbortSignal): void;
487
- declare function failTransportStream(params: {
488
- stream: WritableTransportStream;
489
- output: TransportOutputShape;
490
- signal?: AbortSignal;
491
- error: unknown;
492
- cleanup?: () => void;
493
- }): void;
494
- //#endregion
495
433
  //#region packages/ai/src/transports/transport-utils.d.ts
434
+ declare const MALFORMED_STREAMING_FRAGMENT_ERROR_MESSAGE = "OpenClaw transport error: malformed_streaming_fragment";
496
435
  declare function isCodeModeModelVisibleToolName(name: string, visibleToolNames: ReadonlySet<string>): boolean;
497
436
  //#endregion
498
- export { GEMINI_THOUGHT_SIGNATURE_VALIDATOR_SKIP, MutableAssistantOutput, OpenAICompletionsContentDelta, type OpenAICompletionsOptions, OpenAIModeModel, type OpenAIResponsesCompactionRejection, ResolvedOpenAICompletionsCompat, WritableTransportStream, applyAnthropicCacheControlToMessages, applyAnthropicEphemeralCacheControlMarkers, applyAnthropicPayloadPolicyToParams, applyOpenAIResponsesPayloadPolicy, assertCodeModeResponsesToolSurface, assignTransportErrorDetails, buildOpenAIClientHeaders, buildOpenAICompletionsParams, buildOpenAISdkClientOptions, buildOpenAISdkRequestOptions, buildTransportAwareSimpleStreamFn, canonicalizeMaxTokensParam, captureOpenAIResponsesCompaction, coerceTransportToolCallArguments, createAnthropicMessagesTransportStreamFn, createAzureOpenAIResponsesTransportStreamFn, createBoundaryAwareStreamFnForModel, createDeepSeekTextFilter, createEmptyTransportUsage, createModelStreamCooperativeScheduler, createOpenAICompletionsTransportStreamFn, createOpenAIResponseHook, createOpenAIResponsesTransportStreamFn, createOpenClawTransportStreamFnForModel, createTransportAwareStreamFnForModel, createWritableTransportEventStream, detectOpenAICompletionsCompat, emitModelTransportDebug, enforceCodeModeResponsesToolSurface, failTransportStream, filterCodeModePayloadTools, finalizeTransportStream, flattenCompletionMessagesToStringContent, formatModelTransportDebugBaseUrl, formatModelTransportDebugUrl, getCompat, googleFlashSupportsMinimalThinking, hasOpenAICompatibleConversationTurn, isCodeModeModelVisibleToolName, isCompactionReplayCheckpoint, isOpenAICodexResponsesModel, isOpenAICompletionsThinkingEnabled, log, measureUtf8AppendBytes, mergeTransportHeaders, mergeTransportMetadata, normalizeCodexResponsesBaseUrlForOpenAISdk, parseJsonObjectPreservingUnsafeIntegers, parseJsonPreservingUnsafeIntegers, parseOpenAICompletionsUsage, prepareModelForSimpleCompletion, prepareTransportAwareSimpleModel, quoteUnsafeIntegerLiterals, readCodeModePayloadToolName, readOpenAICompletionsContentDeltas, replaceCompactionReplayOwnerContent, requestPreparedOpenAIResponsesCompaction, resolveAnthropicEphemeralCacheControl, resolveAnthropicMessagesUrl, resolveAnthropicPayloadPolicy, resolveAnthropicServerCompactionPlan, resolveCodeModeResponsesVisibleToolNames, resolveMaxTokensParam, resolveModelPayloadDebugMode, resolveModelSseDebugMode, resolveOpenAICompletionsCompat, resolveOpenAIReasoningEffortMap, resolveOpenAIResponsesCompactEndpointPlan, resolveOpenAIResponsesPayloadPolicy, resolveOpenAIResponsesServerCompactionPlan, resolveOpenAIStrictToolFlagWithDiagnostics, resolvePromptCacheKey, resolveReplayableResponsesMessageId, resolveTransportAwareSimpleApi, sanitizeNonEmptyTransportPayloadText, sanitizeResponsesImagePayload, sanitizeTransportPayloadText, sortPromptCacheToolsByName as sortTransportToolsByName, stripCompactionReplayCheckpoint, stripCompactionReplayCheckpointInPlace, stripCompletionMessagesToRoleContent, throwIfModelStreamAborted, transportAbortError, usesNativeOpenAICodexResponsesBackend, withProviderResponseHook };
437
+ export { GEMINI_THOUGHT_SIGNATURE_VALIDATOR_SKIP, MALFORMED_STREAMING_FRAGMENT_ERROR_MESSAGE, MutableAssistantOutput, OpenAICompletionsContentDelta, type OpenAICompletionsOptions, OpenAICompletionsTextSource, OpenAIModeModel, type OpenAIResponsesCompactionRejection, ProviderAcceptance, ResolvedOpenAICompletionsCompat, WritableTransportStream, applyAnthropicCacheControlToMessages, applyAnthropicEphemeralCacheControlMarkers, applyAnthropicPayloadPolicyToParams, applyOpenAIResponsesPayloadPolicy, assertCodeModeResponsesToolSurface, assignTransportErrorDetails, buildOpenAIClientHeaders, buildOpenAICompletionsParams, buildOpenAISdkClientOptions, buildOpenAISdkRequestOptions, buildTransportAwareSimpleStreamFn, canonicalizeMaxTokensParam, captureOpenAIResponsesCompaction, coerceTransportToolCallArguments, copyProviderAcceptanceObserver, createAnthropicMessagesTransportStreamFn, createAzureOpenAIResponsesTransportStreamFn, createBoundaryAwareStreamFnForModel, createDeepSeekTextFilter, createEmptyTransportUsage, createModelStreamCooperativeScheduler, createOpenAICompletionsTransportStreamFn, createOpenAIProviderAcceptanceHook, createOpenAIResponseHook, createOpenAIResponsesTransportStreamFn, createOpenClawTransportStreamFnForModel, createTransportAwareStreamFnForModel, createWritableTransportEventStream, detectOpenAICompletionsCompat, emitModelTransportDebug, enforceCodeModeResponsesToolSurface, failTransportStream, filterCodeModePayloadTools, finalizeTerminalToolCallArguments, finalizeTransportStream, flattenCompletionMessagesToStringContent, formatModelTransportDebugBaseUrl, formatModelTransportDebugUrl, getCompat, googleFlashSupportsMinimalThinking, hasOpenAICompatibleConversationTurn, isCodeModeModelVisibleToolName, isCompactionReplayCheckpoint, isOpenAICodexResponsesModel, isOpenAICompletionsThinkingEnabled, log, measureUtf8AppendBytes, mergeTransportHeaders, mergeTransportMetadata, normalizeCodexResponsesBaseUrlForOpenAISdk, notifyProviderHttpMetadata, notifyProviderHttpResponse, notifyProviderStreamOpened, parseJsonObjectPreservingUnsafeIntegers, parseJsonPreservingUnsafeIntegers, parseOpenAICompletionsUsage, parseTerminalToolCallArguments, prepareModelForSimpleCompletion, prepareTransportAwareSimpleModel, quoteUnsafeIntegerLiterals, readCodeModePayloadToolName, readOpenAICompletionsContentDeltas, readOpenAICompletionsReasoningBatch, replaceCompactionReplayOwnerContent, requestPreparedOpenAIResponsesCompaction, resolveAnthropicEphemeralCacheControl, resolveAnthropicMessagesUrl, resolveAnthropicPayloadPolicy, resolveAnthropicServerCompactionPlan, resolveCodeModeResponsesVisibleToolNames, resolveMaxTokensParam, resolveModelPayloadDebugMode, resolveModelSseDebugMode, resolveOpenAIClientBaseUrl, resolveOpenAICompletionsCompat, resolveOpenAIReasoningEffortMap, resolveOpenAIResponsesCompactEndpointPlan, resolveOpenAIResponsesPayloadPolicy, resolveOpenAIResponsesServerCompactionPlan, resolveOpenAIStrictToolFlagWithDiagnostics, resolvePromptCacheKey, resolveReplayableResponsesMessageId, resolveTransportAwareSimpleApi, sanitizeNonEmptyTransportPayloadText, sanitizeResponsesImagePayload, sanitizeTransportPayloadText, sortPromptCacheToolsByName as sortTransportToolsByName, stripCompactionReplayCheckpoint, stripCompactionReplayCheckpointInPlace, stripCompletionMessagesToRoleContent, throwIfModelStreamAborted, transportAbortError, usesNativeOpenAICodexResponsesBackend, withProviderAcceptanceObserver, withProviderResponseHook };