@openclaw/ai 2026.9.2 → 2026.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -2
- package/dist/anthropic-C4Qu4H0Z.mjs +377 -0
- package/dist/{anthropic-payload-policy-d46X2pR0.d.mts → anthropic-payload-policy-BZ8umAbk.d.mts} +16 -6
- package/dist/{anthropic-compaction-replay-DB2FGLQc.mjs → anthropic-stream-reducer-CILWF7JD.mjs} +931 -184
- package/dist/{api-registry-DWtPjzyn.d.mts → api-registry-ByUwIR0e.d.mts} +2 -2
- package/dist/assistant-output-tLt4H-iQ.mjs +16 -0
- package/dist/assistant-text-phase-C20rxWwP.mjs +55 -0
- package/dist/{azure-openai-responses-C5bZRfAP.mjs → azure-openai-responses-BAlqlKKc.mjs} +5 -5
- package/dist/{base64-CEFBpSkN.mjs → base64-D-su8YVo.mjs} +1 -27
- package/dist/{diagnostics-DfFyKeX_.mjs → diagnostics-QuErwCIl.mjs} +96 -21
- package/dist/diagnostics.d.mts +3 -1
- package/dist/diagnostics.mjs +3 -3
- package/dist/{event-stream-BhT5T1Ay.d.mts → event-stream-Bt5Y4Pav.d.mts} +11 -3
- package/dist/event-stream-C3WGFsum.d.mts +1 -0
- package/dist/{event-stream-BgDvQeum.mjs → event-stream-D8PARQfL.mjs} +45 -1
- package/dist/event-stream.d.mts +2 -2
- package/dist/event-stream.mjs +1 -1
- package/dist/{github-copilot-headers-NCJtz9i0.mjs → github-copilot-headers-B37TB3rB.mjs} +3 -10
- package/dist/github-copilot-request-facts-BTEBMeOv.mjs +16 -0
- package/dist/{google-4qeuE8iX.mjs → google-DPBAOaOW.mjs} +10 -10
- package/dist/google-messages-6JkpHrhJ.mjs +448 -0
- package/dist/google-shared-BvBeW9aq.mjs +185 -0
- package/dist/{google-vertex-O9BcnB6X.mjs → google-vertex-k-TMCAYD.mjs} +7 -6
- package/dist/{host-DjzGmdZ2.d.mts → host-4atIX-2V.d.mts} +5 -3
- package/dist/{host-CEvLw30U.mjs → host-B8YfDGd4.mjs} +181 -41
- package/dist/host-policy-Zcg_cNz8.mjs +37 -0
- package/dist/{index-FnHM2FcI.d.mts → index-DdD3qerf.d.mts} +4 -4
- package/dist/index.d.mts +7 -7
- package/dist/index.mjs +7 -6
- package/dist/internal/anthropic.d.mts +7 -7
- package/dist/internal/anthropic.mjs +4 -4
- package/dist/internal/google-model-family.d.mts +5 -0
- package/dist/internal/google-model-family.mjs +15 -0
- package/dist/internal/openai-responses-payload-policy.d.mts +3 -3
- package/dist/internal/openai-responses-payload-policy.mjs +3 -2
- package/dist/internal/openai.d.mts +8 -103
- package/dist/internal/openai.mjs +9 -10
- package/dist/internal/retry-after.d.mts +2 -4
- package/dist/internal/retry-after.mjs +57 -8
- package/dist/internal/runtime.d.mts +43 -7
- package/dist/internal/runtime.mjs +6 -7
- package/dist/internal/shared.d.mts +43 -3
- package/dist/internal/shared.mjs +5 -4
- package/dist/internal/tool-schema.d.mts +63 -0
- package/dist/internal/tool-schema.mjs +3 -0
- package/dist/{mistral-Tb6oalqH.mjs → mistral-CxUZ1jUb.mjs} +10 -37
- package/dist/model-transport-url-DKocrEsb.d.mts +28 -0
- package/dist/{openai-chatgpt-responses-yUXjPNfu.mjs → openai-chatgpt-responses-CgO6kZfo.mjs} +50 -41
- package/dist/{openai-completions-compat-CpjYUArk.d.mts → openai-completions-compat-eHgh5UPE.d.mts} +26 -4
- package/dist/{openai-completions-stream-BsrBe3Gg.mjs → openai-completions-stream-Da2vvl-S.mjs} +654 -453
- package/dist/openai-completions-yJuk7eis.mjs +187 -0
- package/dist/openai-prompt-cache-B4eYo2-I.d.mts +16 -0
- package/dist/openai-prompt-cache-Bds-n_9Q.mjs +220 -0
- package/dist/openai-provider-client-S2gCrM2Z.mjs +24 -0
- package/dist/{openai-responses-CCL41ALM.mjs → openai-responses-DaYwH05E.mjs} +14 -29
- package/dist/{openai-responses-compaction-window-BMVHFOtq.mjs → openai-responses-compaction-window-CIhBAkkq.mjs} +6 -246
- package/dist/{openai-responses-contracts-rF5DDRNS.d.mts → openai-responses-contracts-BjBAqAg_.d.mts} +5 -38
- package/dist/openai-responses-contracts-DDOHA62Y.mjs +245 -0
- package/dist/{openai-responses-prompt-observer-internal-D0bhBfgL.mjs → openai-responses-prompt-observer-internal-f8J7wpsk.mjs} +3 -3
- package/dist/{openai-responses-shared-Bmma_3Qc.mjs → openai-responses-shared-B8RdBPCv.mjs} +47 -118
- package/dist/openai-tool-projection-793cE3QX.d.mts +37 -0
- package/dist/{openai-tool-schema-_pTAJqKF.mjs → openai-tool-schema-CzjyYXun.mjs} +38 -556
- package/dist/openai-tool-schema-ynZBgqW-.d.mts +38 -0
- package/dist/openai-transport-params-9aPuV5YY.mjs +675 -0
- package/dist/positive-integer-41zhOdcV.mjs +8 -0
- package/dist/{provider-error-9TraxGvt.mjs → provider-error-BA-v_tKd.mjs} +70 -11
- package/dist/{provider-options-Bcc_p-TU.d.mts → provider-options-Ceqv1OKk.d.mts} +4 -39
- package/dist/{provider-replay-context-BuSUaAk5.mjs → provider-replay-context-CJ_YvcEW.mjs} +1 -1
- package/dist/{provider-transcript-transform-BaMbI1hr.mjs → provider-transcript-transform-V5YzU9zh.mjs} +1 -1
- package/dist/provider-transport-turn-state-D5EXOFL2.mjs +42 -0
- package/dist/provider-types-CVjKjsuq.d.mts +29 -0
- package/dist/provider-types.d.mts +6 -31
- package/dist/providers.d.mts +2 -2
- package/dist/providers.mjs +11 -11
- package/dist/{reasoning-tag-text-partitioner-DLCNXki6.mjs → reasoning-tag-text-partitioner-BcR5pztD.mjs} +19 -19
- package/dist/record-coerce-DwRYMj3t.mjs +32 -0
- package/dist/retry-after-CdCURCVg.d.mts +15 -0
- package/dist/session-affinity-Bcunsn4I.mjs +23 -0
- package/dist/{simple-options-BjHCCh4v.mjs → simple-options-BQbb4yQL.mjs} +24 -5
- package/dist/src-DDmEryvj.mjs +2 -0
- package/dist/{stream-first-event-timeout-DcNjoFQE.mjs → stream-first-event-timeout-2hfrquuz.mjs} +1 -1
- package/dist/string-coerce-fsri9iCu.mjs +34 -0
- package/dist/{string-normalization--fwJ4S2q.mjs → string-normalization-CmLIasuf.mjs} +1 -1
- package/dist/{tool-schema-json-projection-mJhXDcyz.mjs → tool-schema-json-projection-ClptDdAO.mjs} +2 -38
- package/dist/{transport-stream-shared-xnaqxmbP.d.mts → transport-stream-shared-DNvmoWnv.d.mts} +20 -36
- package/dist/{transport-stream-shared-CZqMhfIw.mjs → transport-stream-shared-zHll9BxO.mjs} +225 -13
- package/dist/transport-utils-zrYjICLZ.mjs +118 -0
- package/dist/transports.d.mts +137 -193
- package/dist/transports.mjs +204 -1334
- package/dist/types-DlfwzH3T.d.mts +1 -0
- package/dist/types-LFWwv0cF.mjs +8 -0
- package/dist/{types-CJ1-Ht7A.d.mts → types-Ntv5z2g2.d.mts} +74 -57
- package/dist/types.d.mts +6 -6
- package/dist/types.mjs +6 -5
- package/dist/{src-2qBGKg8O.mjs → usage-cost-BNWbbXav.mjs} +0 -1
- package/dist/utf16-slice-CvGodqok.mjs +29 -0
- package/dist/{validation-AKZBDGQd.d.mts → validation-B0t_G2H6.d.mts} +1 -1
- package/dist/{validation-CJZtym2g.mjs → validation-BDzVDnTs.mjs} +9 -1
- package/dist/validation.d.mts +1 -1
- package/dist/validation.mjs +1 -1
- package/package.json +13 -3
- package/dist/anthropic-BDdqdVLK.mjs +0 -886
- package/dist/event-stream-zctLx0yr.d.mts +0 -1
- package/dist/google-shared-CWeG8RIl.mjs +0 -636
- package/dist/google-thinking-level-C-V3tecN.mjs +0 -9
- package/dist/hash-CHgqbJmD.mjs +0 -16
- package/dist/json-parse-BuAJEbdW.mjs +0 -146
- package/dist/openai-completions-BIUV3RDT.mjs +0 -403
- package/dist/openai-prompt-cache-CGnVB74a.mjs +0 -21
- package/dist/openai-prompt-cache-CNoIfHYC.d.mts +0 -16
- package/dist/sanitize-unicode-D6xUvZaS.mjs +0 -83
- package/dist/transport-utils-7il795_9.mjs +0 -138
- package/dist/types-3Lnm-QSJ.d.mts +0 -1
- package/dist/types-BDdaOVi2.mjs +0 -6
- package/dist/utf16-slice-qz3nsy87.mjs +0 -84
package/dist/transports.d.mts
CHANGED
|
@@ -1,16 +1,21 @@
|
|
|
1
|
-
import "./index-
|
|
2
|
-
import {
|
|
3
|
-
import { n as ApiRegistry } from "./api-registry-
|
|
4
|
-
import { a as BaseOpenAIStreamOptions, c as OpenAIResponsesCompactionRejection,
|
|
5
|
-
import "./
|
|
6
|
-
import
|
|
7
|
-
import { a as
|
|
1
|
+
import "./index-DdD3qerf.mjs";
|
|
2
|
+
import { $ as ThinkingContent, B as ProviderReplayState, K as StopReason, M as OpenAICompletionsCompat, O as Model, X as TextContent, Y as StreamOptions, a as AssistantMessage, d as Context, l as CacheRetention, n as Api, nt as Tool, ot as Usage, q as StreamFn, rt as ToolCall, ut as ModelDataThinkingFormat } from "./types-Ntv5z2g2.mjs";
|
|
3
|
+
import { n as ApiRegistry } from "./api-registry-ByUwIR0e.mjs";
|
|
4
|
+
import { a as BaseOpenAIStreamOptions, c as OpenAIResponsesCompactionRejection, o as CodeModeToolSurfaceObservation, s as OpenAICompletionsOptions } from "./provider-options-Ceqv1OKk.mjs";
|
|
5
|
+
import { n as OpenAIToolProjection } from "./openai-tool-projection-793cE3QX.mjs";
|
|
6
|
+
import "./types-DlfwzH3T.mjs";
|
|
7
|
+
import { a as buildAnthropicSystemBlocks, c as logAnthropicContextEdits, d as resolveAnthropicEphemeralCacheControl, f as resolveAnthropicPayloadPolicy, i as applyAnthropicRequestCacheControl, l as resolveAnthropicCacheOptions, n as applyAnthropicEphemeralCacheControlMarkers, o as isAnthropicServerToolClearingEnabled, p as resolveAnthropicServerCompactionPlan, r as applyAnthropicPayloadPolicyToParams, s as isDirectAnthropicModel, t as applyAnthropicContextManagementToRequest, u as resolveAnthropicContextManagementBetaHeader } from "./anthropic-payload-policy-BZ8umAbk.mjs";
|
|
8
|
+
import { i as ReplayableResponseCompactionItem, n as OpenAIResponsesOptions, r as OpenAIResponsesReasoningReplayMetadata, s as OpenAIResponsesCompactionOutput } from "./openai-responses-contracts-BjBAqAg_.mjs";
|
|
8
9
|
import { i as resolveOpenAIResponsesServerCompactionPlan, n as resolveOpenAIResponsesCompactEndpointPlan, r as resolveOpenAIResponsesPayloadPolicy, t as applyOpenAIResponsesPayloadPolicy } from "./openai-responses-payload-policy-rLRPsSmB.mjs";
|
|
9
|
-
import { n as detectOpenAICompletionsCompat, r as
|
|
10
|
-
import {
|
|
10
|
+
import { a as resolveOpenAICompletionsCompat, i as isOpenAICodexResponsesModel, n as detectOpenAICompletionsCompat, o as resolveOpenAIPromptCacheKeySupport, r as isNativeOpenAIEndpoint, s as usesNativeOpenAICodexResponsesBackend, t as ResolvedOpenAICompletionsCompat } from "./openai-completions-compat-eHgh5UPE.mjs";
|
|
11
|
+
import { S as withProviderResponseHook, _ as parseTerminalToolCallArguments, a as coerceTransportToolCallArguments, b as transportAbortError, c as createWritableTransportEventStream, d as finalizeTransportStream, f as mergeTransportHeaders, g as notifyProviderStreamOpened, h as notifyProviderHttpResponse, i as assignTransportErrorDetails, l as failTransportStream, m as notifyProviderHttpMetadata, n as ProviderAcceptance, o as copyProviderAcceptanceObserver, p as mergeTransportMetadata, r as WritableTransportStream, s as createEmptyTransportUsage, t as IncompleteToolCallError, u as finalizeTerminalToolCallArguments, v as sanitizeNonEmptyTransportPayloadText, x as withProviderAcceptanceObserver, y as sanitizeTransportPayloadText } from "./transport-stream-shared-DNvmoWnv.mjs";
|
|
11
12
|
import { r as sortPromptCacheToolsByName } from "./prompt-cache-stability-Cwcjv_fx.mjs";
|
|
13
|
+
import { r as normalizeOpenAIStrictToolParameters } from "./openai-tool-schema-ynZBgqW-.mjs";
|
|
14
|
+
import { d as VideoContent, i as ProviderContext, s as ProviderModel } from "./provider-types-CVjKjsuq.mjs";
|
|
15
|
+
import { a as resolveModelSseDebugMode, i as resolveModelPayloadDebugMode, n as formatModelTransportDebugUrl, r as emitModelTransportDebug, t as formatModelTransportDebugBaseUrl } from "./model-transport-url-DKocrEsb.mjs";
|
|
12
16
|
import OpenAI from "openai";
|
|
13
|
-
import {
|
|
17
|
+
import { Part } from "@google/genai";
|
|
18
|
+
import "openai/resources/responses/responses.js";
|
|
14
19
|
import { ChatCompletionChunk } from "openai/resources/chat/completions.js";
|
|
15
20
|
//#region packages/ai/src/transports/anthropic-transport-stream.d.ts
|
|
16
21
|
/** Resolve the Anthropic Messages endpoint URL for the effective base URL. */
|
|
@@ -52,37 +57,18 @@ export declare function canonicalizeMaxTokensParam(params: {
|
|
|
52
57
|
sources: Array<Record<string, unknown> | undefined>;
|
|
53
58
|
}): void;
|
|
54
59
|
//#endregion
|
|
55
|
-
//#region packages/ai/src/transports/model-transport-debug.d.ts
|
|
56
|
-
type SubsystemLogger = {
|
|
57
|
-
info(message: string): void;
|
|
58
|
-
debug(message: string): void;
|
|
59
|
-
};
|
|
60
|
-
type ModelTransportDebugEnv = NodeJS.ProcessEnv;
|
|
61
|
-
/** Payload debug detail levels accepted by `OPENCLAW_DEBUG_MODEL_PAYLOAD`. */
|
|
62
|
-
type ModelPayloadDebugMode = "off" | "summary" | "tools" | "full-redacted";
|
|
63
|
-
/** SSE debug detail levels accepted by `OPENCLAW_DEBUG_SSE`. */
|
|
64
|
-
type ModelSseDebugMode = "off" | "events" | "peek";
|
|
65
|
-
/** Resolves model payload debug verbosity from `OPENCLAW_DEBUG_MODEL_PAYLOAD`. */
|
|
66
|
-
export declare function resolveModelPayloadDebugMode(env?: ModelTransportDebugEnv): ModelPayloadDebugMode;
|
|
67
|
-
/** Resolves SSE stream debug verbosity from `OPENCLAW_DEBUG_SSE`. */
|
|
68
|
-
export declare function resolveModelSseDebugMode(env?: ModelTransportDebugEnv): ModelSseDebugMode;
|
|
69
|
-
/** Emits model-fetch metadata at info level by default; other diagnostics require debug env. */
|
|
70
|
-
export declare function emitModelTransportDebug(log: SubsystemLogger, message: string): void;
|
|
71
|
-
//#endregion
|
|
72
|
-
//#region packages/ai/src/transports/model-transport-url.d.ts
|
|
73
|
-
/**
|
|
74
|
-
* Debug formatting helpers for model transport endpoints.
|
|
75
|
-
* Keeps logs useful without exposing credentials, request params, or fragments.
|
|
76
|
-
*/
|
|
77
|
-
/** Return a sanitized URL suitable for logs and diagnostics. */
|
|
78
|
-
export declare function formatModelTransportDebugUrl(rawUrl: string): string;
|
|
79
|
-
/** Format a configured base URL for debug output, or the implicit default. */
|
|
80
|
-
export declare function formatModelTransportDebugBaseUrl(rawUrl: string | undefined): string;
|
|
81
|
-
//#endregion
|
|
82
60
|
//#region packages/ai/src/transports/openai-compatible-conversation-turn.d.ts
|
|
83
61
|
/** Returns whether an OpenAI-compatible messages payload contains a usable turn. */
|
|
84
62
|
export declare function hasOpenAICompatibleConversationTurn(messages: unknown): boolean;
|
|
85
63
|
//#endregion
|
|
64
|
+
//#region packages/ai/src/transports/openai-completions-cache-control.d.ts
|
|
65
|
+
type CacheControl = {
|
|
66
|
+
type: "ephemeral";
|
|
67
|
+
ttl?: "1h" | "5m";
|
|
68
|
+
};
|
|
69
|
+
/** Shared Chat Completions policy; repeated wrapper application preserves existing checkpoints. */
|
|
70
|
+
export declare function applyCompletionsAnthropicCacheControl(payload: Record<string, unknown>, cacheControl?: CacheControl | null, cacheOptOutIndexes?: ReadonlySet<number>, markTools?: boolean, markMessages?: boolean): void;
|
|
71
|
+
//#endregion
|
|
86
72
|
//#region packages/ai/src/transports/openai-completions-string-content.d.ts
|
|
87
73
|
/** Flatten string-only text block content arrays into newline-joined strings. */
|
|
88
74
|
export declare function flattenCompletionMessagesToStringContent(messages: unknown[]): unknown[];
|
|
@@ -136,6 +122,7 @@ export type MutableAssistantOutput = Omit<AssistantMessage, "content" | "usage">
|
|
|
136
122
|
};
|
|
137
123
|
export declare function parseOpenAICompletionsUsage(rawUsage: NonNullable<ChatCompletionChunk["usage"]> & {
|
|
138
124
|
cost?: unknown;
|
|
125
|
+
cache_creation_input_tokens?: number;
|
|
139
126
|
prompt_cache_hit_tokens?: number;
|
|
140
127
|
prompt_tokens_details?: {
|
|
141
128
|
cache_creation_input_tokens?: number;
|
|
@@ -160,7 +147,25 @@ export declare function isOpenAICompletionsThinkingEnabled(effort: string): bool
|
|
|
160
147
|
export declare function readOpenAICompletionsContentDeltas(content: unknown, topLevelRefusal?: unknown, mirroredThinking?: readonly string[]): OpenAICompletionsContentDelta[];
|
|
161
148
|
//#endregion
|
|
162
149
|
//#region packages/ai/src/transports/openai-completions-params.d.ts
|
|
163
|
-
|
|
150
|
+
declare function convertTools(tools: NonNullable<Context["tools"]>, compat: ResolvedOpenAICompletionsCompat, model: OpenAIModeModel, mode: "direct" | "managed"): {
|
|
151
|
+
projection: OpenAIToolProjection;
|
|
152
|
+
tools: {
|
|
153
|
+
type: "function";
|
|
154
|
+
function: {
|
|
155
|
+
name: string;
|
|
156
|
+
description: string | undefined;
|
|
157
|
+
parameters: ReturnType<typeof normalizeOpenAIStrictToolParameters>;
|
|
158
|
+
strict?: boolean;
|
|
159
|
+
};
|
|
160
|
+
}[];
|
|
161
|
+
};
|
|
162
|
+
export declare function buildOpenAICompletionsParams(model: OpenAIModeModel, context: Context, options: OpenAICompletionsOptions | undefined): CompletionsRequest;
|
|
163
|
+
type CompletionsRequest = Record<string, unknown> & {
|
|
164
|
+
model: string;
|
|
165
|
+
messages: unknown[];
|
|
166
|
+
stream: true;
|
|
167
|
+
tools?: ReturnType<typeof convertTools>["tools"];
|
|
168
|
+
};
|
|
164
169
|
//#endregion
|
|
165
170
|
//#region packages/ai/src/transports/openai-completions-transport.d.ts
|
|
166
171
|
export declare function createOpenAICompletionsTransportStreamFn(): StreamFn;
|
|
@@ -186,115 +191,33 @@ export declare function resolveReplayableResponsesMessageId(params: {
|
|
|
186
191
|
}): string | undefined;
|
|
187
192
|
//#endregion
|
|
188
193
|
//#region packages/ai/src/transports/openai-responses-client.d.ts
|
|
189
|
-
declare function createOpenAIResponsesClient(model: Model, context: Context, apiKey: string, optionHeaders?: Record<string, string>, turnHeaders?: Record<string, string>, sessionId?: string, fetchOverride?: typeof globalThis.fetch): OpenAI;
|
|
190
194
|
export declare function createOpenAIResponsesTransportStreamFn(): StreamFn;
|
|
191
195
|
export declare function createAzureOpenAIResponsesTransportStreamFn(): StreamFn;
|
|
192
|
-
|
|
196
|
+
//#endregion
|
|
197
|
+
//#region packages/ai/src/transports/openai-responses-compact-request.d.ts
|
|
198
|
+
type OpenAIResponsesCompactEndpointResult = {
|
|
199
|
+
output: OpenAIResponsesCompactionOutput;
|
|
200
|
+
item: {
|
|
201
|
+
type: "compaction";
|
|
202
|
+
id?: string;
|
|
203
|
+
encrypted_content: string;
|
|
204
|
+
};
|
|
205
|
+
historyMode: "compacted-prefix" | "retained-users";
|
|
206
|
+
usage: Record<string, unknown> & {
|
|
207
|
+
input_tokens: number;
|
|
208
|
+
output_tokens: number;
|
|
209
|
+
};
|
|
210
|
+
model: Model;
|
|
211
|
+
replayMetadata: OpenAIResponsesReasoningReplayMetadata;
|
|
212
|
+
};
|
|
213
|
+
/** Run a compact-endpoint request through the session's prepared stream stack. */
|
|
214
|
+
export declare function requestPreparedOpenAIResponsesCompaction(streamFn: StreamFn, model: Model, context: Context, options: OpenAIResponsesOptions): Promise<OpenAIResponsesCompactEndpointResult>;
|
|
193
215
|
//#endregion
|
|
194
216
|
//#region packages/ai/src/transports/openai-responses-compaction-replay.d.ts
|
|
195
217
|
export declare function captureOpenAIResponsesCompaction(output: Pick<AssistantMessage, "providerReplay">, item: ReplayableResponseCompactionItem, boundary: number | "retained-users", model: Model, captureMetadata?: OpenAIResponsesReasoningReplayMetadata, compactedOutput?: OpenAIResponsesCompactionOutput): void;
|
|
196
|
-
type OpenAIResponsesReplayMode = "checkpoint" | "full-history";
|
|
197
218
|
export declare class CompactionReplayRefreshRequiredError extends Error {
|
|
198
219
|
constructor();
|
|
199
220
|
}
|
|
200
|
-
declare function buildOpenAIResponsesReasoningReplayMetadata(model: Model, options?: Pick<BaseOpenAIStreamOptions, "authProfileId" | "sessionId">): OpenAIResponsesReasoningReplayMetadata;
|
|
201
|
-
//#endregion
|
|
202
|
-
//#region packages/ai/src/transports/openai-responses-debug.d.ts
|
|
203
|
-
declare function summarizeResponsesTools(tools: unknown): string;
|
|
204
|
-
declare function stringifyRedactedPayload(value: unknown): string;
|
|
205
|
-
declare function stringifyRedactedEvent(value: unknown): string;
|
|
206
|
-
type ResponsesFailedNoDetailsObservation = {
|
|
207
|
-
event: "openai_responses_response_failed_without_details";
|
|
208
|
-
provider: string;
|
|
209
|
-
api: Api;
|
|
210
|
-
transportModel: string;
|
|
211
|
-
providerRuntimeFailureKind: "no_error_details";
|
|
212
|
-
responseId: string;
|
|
213
|
-
responseStatus: string;
|
|
214
|
-
responseModel: string;
|
|
215
|
-
responseObject: string;
|
|
216
|
-
metadataKeys: string[];
|
|
217
|
-
requestIdHashes: string[];
|
|
218
|
-
failureFieldsPreview: string;
|
|
219
|
-
responsePreview: string;
|
|
220
|
-
};
|
|
221
|
-
type ResponsesFailedEventSummary = {
|
|
222
|
-
message: string;
|
|
223
|
-
responseId?: string;
|
|
224
|
-
code?: string;
|
|
225
|
-
observation?: ResponsesFailedNoDetailsObservation;
|
|
226
|
-
};
|
|
227
|
-
declare function buildResponsesFailedNoDetailsObservation(event: Record<string, unknown>, model: Model, response?: Record<string, unknown> | undefined): ResponsesFailedNoDetailsObservation;
|
|
228
|
-
declare function summarizeResponsesFailedNoDetailsObservation(observation: ResponsesFailedNoDetailsObservation): string;
|
|
229
|
-
declare function normalizeResponsesFailedEvent(event: Record<string, unknown>, model: Model): ResponsesFailedEventSummary;
|
|
230
|
-
declare function summarizeResponsesPayload(params: unknown): string;
|
|
231
|
-
//#endregion
|
|
232
|
-
//#region packages/ai/src/transports/openai-responses-params-internal.d.ts
|
|
233
|
-
declare function sanitizeOpenAICodexResponsesParams<T extends Record<string, unknown>>(model: Model, params: T): T;
|
|
234
|
-
declare function buildOpenAIResponsesParams(model: Model, context: Context, options: OpenAIResponsesOptions | undefined, metadata?: Record<string, string>, replayMode?: OpenAIResponsesReplayMode): OpenAIResponsesRequestParams;
|
|
235
|
-
//#endregion
|
|
236
|
-
//#region packages/ai/src/transports/openai-responses-prompt-observer-internal.d.ts
|
|
237
|
-
type ResponsesPromptRequest = {
|
|
238
|
-
instructions?: unknown;
|
|
239
|
-
input?: unknown;
|
|
240
|
-
};
|
|
241
|
-
type ResponsesPromptMetadata = Pick<ResponsesPromptObservation, "egress" | "payloadVariant">;
|
|
242
|
-
declare function createResponsesPromptEgressObserver(options: object | undefined, assembledPrompt: string | undefined): ((request: ResponsesPromptRequest, metadata: ResponsesPromptMetadata) => void) | undefined;
|
|
243
|
-
//#endregion
|
|
244
|
-
//#region packages/ai/src/transports/openai-responses-replay-internal.d.ts
|
|
245
|
-
type ResponsesClientLike = ReturnType<typeof createOpenAIResponsesClient>;
|
|
246
|
-
declare function isInvalidEncryptedContentError(error: unknown): boolean;
|
|
247
|
-
type ResponsesEncryptedContentRequest = {
|
|
248
|
-
input?: ResponseInput;
|
|
249
|
-
};
|
|
250
|
-
type ResponsesEncryptedContentAttemptKind = "initial" | "reasoning-stripped" | "compaction-stripped" | "continuation-rejected";
|
|
251
|
-
type ResponsesEncryptedContentAttempt<TRequest extends ResponsesEncryptedContentRequest> = {
|
|
252
|
-
kind: ResponsesEncryptedContentAttemptKind;
|
|
253
|
-
request: TRequest;
|
|
254
|
-
rejectedCompaction?: OpenAIResponsesCompactionRejection;
|
|
255
|
-
};
|
|
256
|
-
declare function createResponsesStreamWithEncryptedContentRetry(params: {
|
|
257
|
-
client: ResponsesClientLike;
|
|
258
|
-
request: OpenAIResponsesRequestParams;
|
|
259
|
-
requestOptions: {
|
|
260
|
-
signal?: AbortSignal;
|
|
261
|
-
} | undefined;
|
|
262
|
-
model: Model;
|
|
263
|
-
observePrompt?: NonNullable<ReturnType<typeof createResponsesPromptEgressObserver>>;
|
|
264
|
-
initialAttemptKind?: ResponsesEncryptedContentAttemptKind;
|
|
265
|
-
initialRejectedCompaction?: OpenAIResponsesCompactionRejection;
|
|
266
|
-
onCompactionRejected?: (checkpoint: OpenAIResponsesCompactionRejection) => void;
|
|
267
|
-
canRetryStream?: () => boolean;
|
|
268
|
-
wrapStream?: (result: {
|
|
269
|
-
stream: AsyncIterable<unknown>;
|
|
270
|
-
response: Response;
|
|
271
|
-
attempt: ResponsesEncryptedContentAttempt<OpenAIResponsesRequestParams>;
|
|
272
|
-
}) => AsyncIterable<unknown>;
|
|
273
|
-
buildFullHistoryRequest?: () => OpenAIResponsesRequestParams | Promise<OpenAIResponsesRequestParams>;
|
|
274
|
-
}): Promise<{
|
|
275
|
-
stream: AsyncIterable<unknown>;
|
|
276
|
-
response: Response;
|
|
277
|
-
attempt: ResponsesEncryptedContentAttempt<OpenAIResponsesRequestParams>;
|
|
278
|
-
}>;
|
|
279
|
-
declare function resolveAzureOpenAIApiVersion(env?: NodeJS.ProcessEnv): string;
|
|
280
|
-
//#endregion
|
|
281
|
-
//#region packages/ai/src/transports/openai-responses-stream-terminal-internal.d.ts
|
|
282
|
-
type ResponsesEventSink = {
|
|
283
|
-
push(event: AssistantMessageEvent): void;
|
|
284
|
-
};
|
|
285
|
-
//#endregion
|
|
286
|
-
//#region packages/ai/src/transports/openai-responses-stream-types-internal.d.ts
|
|
287
|
-
type ResponsesStreamOptions = FirstStreamEventInternalOptions & {
|
|
288
|
-
asyncToolExecution?: boolean;
|
|
289
|
-
serviceTier?: ResponseCreateParamsStreaming["service_tier"];
|
|
290
|
-
resolveServiceTier?: (responseServiceTier: ResponseCreateParamsStreaming["service_tier"] | undefined, requestServiceTier: ResponseCreateParamsStreaming["service_tier"] | undefined) => ResponseCreateParamsStreaming["service_tier"] | undefined;
|
|
291
|
-
applyServiceTierPricing?: (usage: Usage, serviceTier: ResponseCreateParamsStreaming["service_tier"] | undefined) => void;
|
|
292
|
-
signal?: AbortSignal;
|
|
293
|
-
reasoningReplayMetadata?: OpenAIResponsesReasoningReplayMetadata;
|
|
294
|
-
};
|
|
295
|
-
//#endregion
|
|
296
|
-
//#region packages/ai/src/transports/openai-responses-stream-internal.d.ts
|
|
297
|
-
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>;
|
|
298
221
|
//#endregion
|
|
299
222
|
//#region packages/ai/src/transports/openai-transport-params.d.ts
|
|
300
223
|
export declare function readCodeModePayloadToolName(tool: unknown): string | undefined;
|
|
@@ -306,9 +229,7 @@ export declare function resolveOpenAIStrictToolFlagWithDiagnostics(projection: O
|
|
|
306
229
|
transport: "responses" | "completions";
|
|
307
230
|
model: OpenAIModeModel;
|
|
308
231
|
}): boolean | undefined;
|
|
309
|
-
export declare function
|
|
310
|
-
export declare function usesNativeOpenAICodexResponsesBackend(model: Model): boolean;
|
|
311
|
-
export declare function buildOpenAIClientHeaders(model: Model, context: Context, optionHeaders?: Record<string, string>, turnHeaders?: Record<string, string>, sessionId?: string): Record<string, string>;
|
|
232
|
+
export declare function buildOpenAIClientHeaders(model: Model, context: Context, optionHeaders?: Record<string, string>, turnHeaders?: Record<string, string>, sessionId?: string, cacheRetention?: CacheRetention): Record<string, string>;
|
|
312
233
|
export declare function buildOpenAISdkClientOptions(model: Model): {
|
|
313
234
|
timeout?: number;
|
|
314
235
|
maxRetries: 0;
|
|
@@ -338,7 +259,7 @@ export declare function getCompat(model: OpenAIModeModel): {
|
|
|
338
259
|
requiresAssistantAfterToolResult: boolean;
|
|
339
260
|
requiresThinkingAsText: boolean;
|
|
340
261
|
requiresReasoningContentOnAssistantMessages: boolean;
|
|
341
|
-
thinkingFormat:
|
|
262
|
+
thinkingFormat: ModelDataThinkingFormat;
|
|
342
263
|
zaiToolStream: boolean;
|
|
343
264
|
supportsStrictMode: boolean;
|
|
344
265
|
supportsJsonSchemaResponseFormat: boolean;
|
|
@@ -347,57 +268,9 @@ export declare function getCompat(model: OpenAIModeModel): {
|
|
|
347
268
|
sessionAffinity: "openai" | "openrouter" | "none";
|
|
348
269
|
visibleReasoningDetailTypes: string[];
|
|
349
270
|
requiresNonEmptyUserOrAssistantMessage: boolean;
|
|
271
|
+
configuredSupportsLongCacheRetention?: boolean;
|
|
350
272
|
};
|
|
351
273
|
//#endregion
|
|
352
|
-
//#region packages/ai/src/transports/openai-responses-compact-request.d.ts
|
|
353
|
-
type OpenAIResponsesCompactEndpointResult = {
|
|
354
|
-
output: OpenAIResponsesCompactionOutput;
|
|
355
|
-
item: {
|
|
356
|
-
type: "compaction";
|
|
357
|
-
id?: string;
|
|
358
|
-
encrypted_content: string;
|
|
359
|
-
};
|
|
360
|
-
historyMode: "compacted-prefix" | "retained-users";
|
|
361
|
-
usage: Record<string, unknown> & {
|
|
362
|
-
input_tokens: number;
|
|
363
|
-
output_tokens: number;
|
|
364
|
-
};
|
|
365
|
-
model: Model;
|
|
366
|
-
replayMetadata: OpenAIResponsesReasoningReplayMetadata;
|
|
367
|
-
};
|
|
368
|
-
/** Run a compact-endpoint request through the session's prepared stream stack. */
|
|
369
|
-
export declare function requestPreparedOpenAIResponsesCompaction(streamFn: StreamFn, model: Model, context: Context, options: OpenAIResponsesOptions): Promise<OpenAIResponsesCompactEndpointResult>;
|
|
370
|
-
//#endregion
|
|
371
|
-
//#region packages/ai/src/transports/openai-responses-transport.d.ts
|
|
372
|
-
declare const responsesTesting: {
|
|
373
|
-
getCompat: typeof getCompat;
|
|
374
|
-
assertCodeModeResponsesToolSurface: typeof assertCodeModeResponsesToolSurface;
|
|
375
|
-
buildOpenAIResponsesParams: typeof buildOpenAIResponsesParams;
|
|
376
|
-
buildOpenAIClientHeaders: typeof buildOpenAIClientHeaders;
|
|
377
|
-
buildOpenAISdkClientOptions: typeof buildOpenAISdkClientOptions;
|
|
378
|
-
buildOpenAISdkRequestOptions: typeof buildOpenAISdkRequestOptions;
|
|
379
|
-
createAzureOpenAIClient: typeof createAzureOpenAIClient;
|
|
380
|
-
createOpenAIResponsesClient: typeof createOpenAIResponsesClient;
|
|
381
|
-
enforceCodeModeResponsesToolSurface: typeof enforceCodeModeResponsesToolSurface;
|
|
382
|
-
sanitizeOpenAICodexResponsesParams: typeof sanitizeOpenAICodexResponsesParams;
|
|
383
|
-
processResponsesStream: typeof processResponsesStream;
|
|
384
|
-
formatModelTransportDebugBaseUrl: typeof formatModelTransportDebugBaseUrl;
|
|
385
|
-
buildResponsesFailedNoDetailsObservation: typeof buildResponsesFailedNoDetailsObservation;
|
|
386
|
-
buildOpenAIResponsesReasoningReplayMetadata: typeof buildOpenAIResponsesReasoningReplayMetadata;
|
|
387
|
-
isInvalidEncryptedContentError: typeof isInvalidEncryptedContentError;
|
|
388
|
-
normalizeResponsesFailedEvent: typeof normalizeResponsesFailedEvent;
|
|
389
|
-
createResponsesStreamWithEncryptedContentRetry: typeof createResponsesStreamWithEncryptedContentRetry;
|
|
390
|
-
resolveAzureOpenAIApiVersion: typeof resolveAzureOpenAIApiVersion;
|
|
391
|
-
summarizeResponsesFailedNoDetailsObservation: typeof summarizeResponsesFailedNoDetailsObservation;
|
|
392
|
-
summarizeResponsesPayload: typeof summarizeResponsesPayload;
|
|
393
|
-
summarizeResponsesTools: typeof summarizeResponsesTools;
|
|
394
|
-
stringifyRedactedEvent: typeof stringifyRedactedEvent;
|
|
395
|
-
stringifyRedactedPayload: typeof stringifyRedactedPayload;
|
|
396
|
-
};
|
|
397
|
-
declare global {
|
|
398
|
-
var openclawOpenAIResponsesTransportTestApi: typeof responsesTesting | undefined;
|
|
399
|
-
}
|
|
400
|
-
//#endregion
|
|
401
274
|
//#region packages/ai/src/transports/provider-compaction-replay.d.ts
|
|
402
275
|
type ReplayIdentity = {
|
|
403
276
|
sessionId?: string;
|
|
@@ -459,6 +332,8 @@ export declare function buildTransportAwareSimpleStreamFn(model: Model, ctx?: Pr
|
|
|
459
332
|
export declare function sanitizeResponsesImagePayload<T extends Record<string, unknown>>(params: T): T;
|
|
460
333
|
//#endregion
|
|
461
334
|
//#region packages/ai/src/transports/simple-completion-transport.d.ts
|
|
335
|
+
/** Standalone completions have no durable session, but may require routing identity. */
|
|
336
|
+
export declare function prepareHeadersForSimpleCompletion(model: Pick<Model, "baseUrl" | "headers">, options?: Pick<StreamOptions, "sessionId" | "headers">): Record<string, string> | undefined;
|
|
462
337
|
export declare function normalizeCodexResponsesBaseUrlForOpenAISdk(baseUrl?: string): string;
|
|
463
338
|
export declare function prepareModelForSimpleCompletion<TApi extends Api>(params: {
|
|
464
339
|
apiRegistry: ApiRegistry;
|
|
@@ -470,4 +345,73 @@ export declare function prepareModelForSimpleCompletion<TApi extends Api>(params
|
|
|
470
345
|
export declare const MALFORMED_STREAMING_FRAGMENT_ERROR_MESSAGE = "OpenClaw transport error: malformed_streaming_fragment";
|
|
471
346
|
export declare function isCodeModeModelVisibleToolName(name: string, visibleToolNames: ReadonlySet<string>): boolean;
|
|
472
347
|
//#endregion
|
|
473
|
-
|
|
348
|
+
//#region packages/ai/src/providers/google-stream.d.ts
|
|
349
|
+
type GoogleStreamChunk = {
|
|
350
|
+
responseId?: string;
|
|
351
|
+
modelVersion?: string;
|
|
352
|
+
promptFeedback?: {
|
|
353
|
+
blockReason?: string;
|
|
354
|
+
blockReasonMessage?: string;
|
|
355
|
+
};
|
|
356
|
+
candidates?: Array<{
|
|
357
|
+
content?: {
|
|
358
|
+
parts?: Array<{
|
|
359
|
+
text?: string;
|
|
360
|
+
thought?: boolean;
|
|
361
|
+
thoughtSignature?: string;
|
|
362
|
+
functionCall?: {
|
|
363
|
+
id?: string;
|
|
364
|
+
name?: string;
|
|
365
|
+
args?: Record<string, unknown>;
|
|
366
|
+
};
|
|
367
|
+
}>;
|
|
368
|
+
};
|
|
369
|
+
finishReason?: string;
|
|
370
|
+
finishMessage?: string;
|
|
371
|
+
}>;
|
|
372
|
+
usageMetadata?: {
|
|
373
|
+
promptTokenCount?: number;
|
|
374
|
+
cachedContentTokenCount?: number;
|
|
375
|
+
candidatesTokenCount?: number;
|
|
376
|
+
thoughtsTokenCount?: number;
|
|
377
|
+
toolUsePromptTokenCount?: number;
|
|
378
|
+
totalTokenCount?: number;
|
|
379
|
+
};
|
|
380
|
+
};
|
|
381
|
+
/** @internal Directly tested provider implementation detail. */
|
|
382
|
+
export declare function consumeGoogleGenerateContentStream(params: {
|
|
383
|
+
chunks: AsyncIterable<GoogleStreamChunk>;
|
|
384
|
+
model: Model;
|
|
385
|
+
output: AssistantMessage;
|
|
386
|
+
stream: WritableTransportStream;
|
|
387
|
+
signal?: AbortSignal;
|
|
388
|
+
nextToolCallId: (name: string | undefined) => string;
|
|
389
|
+
profile?: "sdk" | "managed";
|
|
390
|
+
normalizeModelId?: (id: string) => string;
|
|
391
|
+
resolveStopReason?: (reason: string) => StopReason;
|
|
392
|
+
}): Promise<void>;
|
|
393
|
+
//#endregion
|
|
394
|
+
//#region packages/ai/src/providers/google-messages.d.ts
|
|
395
|
+
type GoogleContentPart = Part & Record<string, unknown>;
|
|
396
|
+
type GoogleContent = {
|
|
397
|
+
role: string;
|
|
398
|
+
parts: GoogleContentPart[];
|
|
399
|
+
};
|
|
400
|
+
export declare function requiresGoogleToolCallId(modelId: string): boolean;
|
|
401
|
+
/** Project a prepared transcript; route repair and trusted video admission remain caller-owned. */
|
|
402
|
+
export declare function projectGoogleMessages(params: {
|
|
403
|
+
model: Pick<ProviderModel, "id" | "api" | "provider" | "input">;
|
|
404
|
+
messages: ProviderContext["messages"];
|
|
405
|
+
replay: "signed-parts" | "managed";
|
|
406
|
+
requiresToolCallSignature: boolean;
|
|
407
|
+
videoPart?: (video: VideoContent) => GoogleContentPart;
|
|
408
|
+
}): GoogleContent[];
|
|
409
|
+
/**
|
|
410
|
+
* Convert tools to Gemini function declarations format.
|
|
411
|
+
* @internal Directly tested provider implementation detail.
|
|
412
|
+
*/
|
|
413
|
+
export declare function convertGoogleTools(tools: Tool[]): {
|
|
414
|
+
functionDeclarations: Record<string, unknown>[];
|
|
415
|
+
}[] | undefined;
|
|
416
|
+
//#endregion
|
|
417
|
+
export { type GoogleStreamChunk, IncompleteToolCallError, type OpenAICompletionsOptions, type OpenAIResponsesCompactionRejection, ProviderAcceptance, ResolvedOpenAICompletionsCompat, WritableTransportStream, applyAnthropicContextManagementToRequest, applyAnthropicEphemeralCacheControlMarkers, applyAnthropicPayloadPolicyToParams, applyAnthropicRequestCacheControl, applyOpenAIResponsesPayloadPolicy, assignTransportErrorDetails, buildAnthropicSystemBlocks, coerceTransportToolCallArguments, copyProviderAcceptanceObserver, createEmptyTransportUsage, createWritableTransportEventStream, detectOpenAICompletionsCompat, emitModelTransportDebug, failTransportStream, finalizeTerminalToolCallArguments, finalizeTransportStream, formatModelTransportDebugBaseUrl, formatModelTransportDebugUrl, isAnthropicServerToolClearingEnabled, isDirectAnthropicModel, isNativeOpenAIEndpoint, isOpenAICodexResponsesModel, logAnthropicContextEdits, mergeTransportHeaders, mergeTransportMetadata, notifyProviderHttpMetadata, notifyProviderHttpResponse, notifyProviderStreamOpened, parseTerminalToolCallArguments, resolveAnthropicCacheOptions, resolveAnthropicContextManagementBetaHeader, resolveAnthropicEphemeralCacheControl, resolveAnthropicPayloadPolicy, resolveAnthropicServerCompactionPlan, resolveModelPayloadDebugMode, resolveModelSseDebugMode, resolveOpenAICompletionsCompat, resolveOpenAIPromptCacheKeySupport, resolveOpenAIResponsesCompactEndpointPlan, resolveOpenAIResponsesPayloadPolicy, resolveOpenAIResponsesServerCompactionPlan, sanitizeNonEmptyTransportPayloadText, sanitizeTransportPayloadText, sortPromptCacheToolsByName as sortTransportToolsByName, transportAbortError, usesNativeOpenAICodexResponsesBackend, withProviderAcceptanceObserver, withProviderResponseHook };
|