@providerkit/core 0.13.2 → 0.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -0
- package/dist/fallback.d.ts +8 -2
- package/dist/fallback.d.ts.map +1 -1
- package/dist/fallback.js +17 -8
- package/dist/fallback.js.map +1 -1
- package/dist/presets.d.ts +30 -0
- package/dist/presets.d.ts.map +1 -1
- package/dist/presets.js +28 -0
- package/dist/presets.js.map +1 -1
- package/dist/providers/factory.d.ts +4 -0
- package/dist/providers/factory.d.ts.map +1 -1
- package/dist/providers/factory.js +15 -2
- package/dist/providers/factory.js.map +1 -1
- package/dist/providers/openai.d.ts +4 -0
- package/dist/providers/openai.d.ts.map +1 -1
- package/dist/providers/openai.js +4 -0
- package/dist/providers/openai.js.map +1 -1
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +1 -1
- package/src/fallback.ts +24 -8
- package/src/presets.ts +35 -0
- package/src/providers/factory.ts +25 -2
- package/src/providers/openai.ts +8 -0
- package/src/types.ts +6 -0
package/README.md
CHANGED
|
@@ -75,6 +75,27 @@ It returns the same provider interface as the adapters above. The API root is
|
|
|
75
75
|
`https://api.z.ai/api/anthropic`; the adapter adds `/v1/messages`.
|
|
76
76
|
Usage reports tokens consumed, not the price of your subscription.
|
|
77
77
|
|
|
78
|
+
### OpenCode Go
|
|
79
|
+
|
|
80
|
+
One key, several models, and each model has its own monthly limit. The preset
|
|
81
|
+
switches to the next model when one runs out:
|
|
82
|
+
|
|
83
|
+
```ts
|
|
84
|
+
import { createPresetProvider } from "@providerkit/core";
|
|
85
|
+
|
|
86
|
+
const provider = createPresetProvider("opencode-go", { apiKey });
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
By default it tries `mimo-v2.6-flash`, then `mimo-v2.5`, `glm-5.3-flash`,
|
|
90
|
+
`qwen3.8-flash` and `longcat-2.0`. Pass `models: [...]` to set your own order, and
|
|
91
|
+
`fallbacks` to add another provider after the last model. Pass
|
|
92
|
+
`watchdog: { idleMs: 60_000 }` to time each model separately, so a model that opens a
|
|
93
|
+
connection and then goes silent rotates too. Do not wrap the returned pool with
|
|
94
|
+
`withWatchdog`: that timeout cancels the whole chain. Go refuses a call without a session
|
|
95
|
+
id, so pass `sessionId` with each call (the conversation or job id). A call without one
|
|
96
|
+
uses a random id the provider keeps for its whole life. Keep one provider alive across
|
|
97
|
+
calls, so it remembers which models are spent.
|
|
98
|
+
|
|
78
99
|
**Full documentation lives at [providerkit.dev](https://providerkit.dev)** — it is the single
|
|
79
100
|
source of truth for usage, and this README deliberately stays a front door so the two cannot
|
|
80
101
|
drift.
|
package/dist/fallback.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { ProviderError, type ErrorKind } from "./errors.ts";
|
|
|
2
2
|
import type { RateLimitWindow } from "./rate-limit.ts";
|
|
3
3
|
import type { ProviderPresetId } from "./presets.ts";
|
|
4
4
|
import type { Provider } from "./types.ts";
|
|
5
|
+
import { type WatchdogOptions } from "./watchdog.ts";
|
|
5
6
|
import { type PresetProviderConfig } from "./providers/factory.ts";
|
|
6
7
|
/** Retry intervals when the server supplies no deadline, not estimates of when
|
|
7
8
|
* it will recover. A server deadline always wins over these defaults. */
|
|
@@ -35,12 +36,17 @@ export interface ProviderFallbackConfig {
|
|
|
35
36
|
/** Secondary and tertiary providers to try if this provider fails/exhausts:
|
|
36
37
|
* hand-built `Provider`s, preset-id `FallbackSpec`s, or both. */
|
|
37
38
|
fallbacks?: readonly FallbackCandidate[];
|
|
39
|
+
/** Watch every candidate separately. A silent candidate then times out and
|
|
40
|
+
* rotates; wrapping the completed pool would abort the whole chain instead.
|
|
41
|
+
* Fallback specs inherit this unless they set their own watchdog. */
|
|
42
|
+
watchdog?: WatchdogOptions;
|
|
38
43
|
/** Custom cooldown or telemetry options for the fallback pool. */
|
|
39
44
|
fallbackOptions?: FallbackOptions<Provider>;
|
|
40
45
|
}
|
|
41
46
|
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
47
|
+
* Apply the watchdog before composing the pool: its timeout belongs to one
|
|
48
|
+
* candidate, while `createStream(..., { signal })` remains the caller's cancel
|
|
49
|
+
* for the whole chain. The distinction is what lets silence rotate safely.
|
|
44
50
|
*/
|
|
45
51
|
export declare function withConfiguredFallbacks(primary: Provider, config?: ProviderFallbackConfig): Provider;
|
|
46
52
|
/** The whole chain is unavailable. Fail promptly instead of holding a request
|
package/dist/fallback.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../src/fallback.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,aAAa,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,YAAY,CAAC;AAC1D,OAAO,EAAwB,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEzF;0EAC0E;AAC1E,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAUhF,CAAC;AAEL,MAAM,WAAW,eAAe,CAAC,CAAC;IAChC;oEACgE;IAChE,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IACvD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE;QAClB,SAAS,EAAE,CAAC,CAAC;QACb,KAAK,EAAE,OAAO,CAAC;QACf,IAAI,EAAE,SAAS,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,eAAe,CAAC;KAC1B,KAAK,IAAI,CAAC;IACX,8CAA8C;IAC9C,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAa,SAAQ,oBAAoB;IACxD,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../src/fallback.ts"],"names":[],"mappings":"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"}
|
package/dist/fallback.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { classify, parseRetryAfterMs, ProviderError } from "./errors.js";
|
|
2
|
+
import { withWatchdog } from "./watchdog.js";
|
|
2
3
|
import { createPresetProvider } from "./providers/factory.js";
|
|
3
4
|
/** Retry intervals when the server supplies no deadline, not estimates of when
|
|
4
5
|
* it will recover. A server deadline always wins over these defaults. */
|
|
@@ -12,21 +13,29 @@ export const DEFAULT_FALLBACK_COOLDOWNS = Object.freeze({
|
|
|
12
13
|
entitlement: 3_600_000,
|
|
13
14
|
model: 3_600_000,
|
|
14
15
|
});
|
|
15
|
-
function resolveFallback(candidate) {
|
|
16
|
+
function resolveFallback(candidate, inheritedWatchdog) {
|
|
16
17
|
if (typeof candidate === "object" && candidate !== null && "createStream" in candidate) {
|
|
17
|
-
return candidate;
|
|
18
|
+
return inheritedWatchdog ? withWatchdog(candidate, inheritedWatchdog) : candidate;
|
|
18
19
|
}
|
|
19
|
-
const { preset, ...config } = candidate;
|
|
20
|
-
return createPresetProvider(preset,
|
|
20
|
+
const { preset, watchdog = inheritedWatchdog, ...config } = candidate;
|
|
21
|
+
return createPresetProvider(preset, {
|
|
22
|
+
...config,
|
|
23
|
+
...(watchdog ? { watchdog } : {}),
|
|
24
|
+
});
|
|
21
25
|
}
|
|
22
26
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
27
|
+
* Apply the watchdog before composing the pool: its timeout belongs to one
|
|
28
|
+
* candidate, while `createStream(..., { signal })` remains the caller's cancel
|
|
29
|
+
* for the whole chain. The distinction is what lets silence rotate safely.
|
|
25
30
|
*/
|
|
26
31
|
export function withConfiguredFallbacks(primary, config) {
|
|
32
|
+
const watchedPrimary = config?.watchdog ? withWatchdog(primary, config.watchdog) : primary;
|
|
27
33
|
if (!config?.fallbacks || config.fallbacks.length === 0)
|
|
28
|
-
return
|
|
29
|
-
return withFallbackProviders([
|
|
34
|
+
return watchedPrimary;
|
|
35
|
+
return withFallbackProviders([
|
|
36
|
+
watchedPrimary,
|
|
37
|
+
...config.fallbacks.map((candidate) => resolveFallback(candidate, config.watchdog)),
|
|
38
|
+
], config.fallbackOptions);
|
|
30
39
|
}
|
|
31
40
|
/** The whole chain is unavailable. Fail promptly instead of holding a request
|
|
32
41
|
* open for hours. `retryAtMs` names its next opportunity, not a sleep to cap. */
|
package/dist/fallback.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fallback.js","sourceRoot":"","sources":["../src/fallback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,aAAa,EAAkB,MAAM,aAAa,CAAC;AAIzF,OAAO,EAAE,oBAAoB,EAA6B,MAAM,wBAAwB,CAAC;AAEzF;0EAC0E;AAC1E,MAAM,CAAC,MAAM,0BAA0B,GACrC,MAAM,CAAC,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,MAAM;IACf,OAAO,EAAE,MAAM;IACf,QAAQ,EAAE,MAAM;IAChB,IAAI,EAAE,SAAS;IACf,WAAW,EAAE,SAAS;IACtB,KAAK,EAAE,SAAS;CACjB,CAAC,CAAC;AA6BL,SAAS,eAAe,
|
|
1
|
+
{"version":3,"file":"fallback.js","sourceRoot":"","sources":["../src/fallback.ts"],"names":[],"mappings":"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"}
|
package/dist/presets.d.ts
CHANGED
|
@@ -62,6 +62,13 @@ export interface ProviderPreset {
|
|
|
62
62
|
* it, so a model that reasons past the adapter's default ends the turn with
|
|
63
63
|
* neither text nor a tool call. */
|
|
64
64
|
maxTokens?: number;
|
|
65
|
+
/** Header that carries `StreamOptions.sessionId`, for gateways that route
|
|
66
|
+
* and cache per conversation — and refuse a call without it (OpenCode Go:
|
|
67
|
+
* `MissingSessionID`, measured 2026-09-27). */
|
|
68
|
+
sessionHeader?: string;
|
|
69
|
+
/** Default model chain when the caller names neither `model` nor `models`:
|
|
70
|
+
* the first answers, the rest take over (same key) when it fails. */
|
|
71
|
+
rotation?: readonly string[];
|
|
65
72
|
}
|
|
66
73
|
export declare const PROVIDER_PRESETS: {
|
|
67
74
|
readonly anthropic: {
|
|
@@ -290,6 +297,29 @@ export declare const PROVIDER_PRESETS: {
|
|
|
290
297
|
readonly defaultModel: "glm-5.3-flash";
|
|
291
298
|
readonly models: ["glm-5.3-flash", "glm-5.3", "glm-5.2"];
|
|
292
299
|
};
|
|
300
|
+
/**
|
|
301
|
+
* OpenCode Go — one $10/month key across many open models, each with its own
|
|
302
|
+
* monthly dollar limit (5h = 20%, week = 50%). Chain several models as
|
|
303
|
+
* `fallbacks` so a spent one hands over to the next.
|
|
304
|
+
*
|
|
305
|
+
* Measured 2026-09-27 on /chat/completions: a call without
|
|
306
|
+
* `x-opencode-session` is refused. `mimo-v2.6-flash` passes plain text,
|
|
307
|
+
* `reasoning_effort: "none"`, tool calls and json_schema; `glm-5.3-flash`
|
|
308
|
+
* 400s on a tool without a description and on a `thinking` field.
|
|
309
|
+
*
|
|
310
|
+
* This preset speaks chat completions only. Go serves GPT/Grok/Muse Spark on
|
|
311
|
+
* /responses and some Qwen/MiniMax ids on Anthropic /messages — those ids
|
|
312
|
+
* fail here.
|
|
313
|
+
*/
|
|
314
|
+
readonly "opencode-go": {
|
|
315
|
+
readonly shape: "openai";
|
|
316
|
+
readonly baseUrl: "https://opencode.ai/zen/go/v1";
|
|
317
|
+
readonly auth: "bearer";
|
|
318
|
+
readonly defaultModel: "mimo-v2.6-flash";
|
|
319
|
+
readonly models: ["mimo-v2.6-flash", "mimo-v2.5", "glm-5.3-flash", "qwen3.8-flash", "longcat-2.0"];
|
|
320
|
+
readonly sessionHeader: "x-opencode-session";
|
|
321
|
+
readonly rotation: readonly ["mimo-v2.6-flash", "mimo-v2.5", "glm-5.3-flash", "qwen3.8-flash", "longcat-2.0"];
|
|
322
|
+
};
|
|
293
323
|
readonly kimi: {
|
|
294
324
|
readonly shape: "anthropic";
|
|
295
325
|
readonly baseUrl: "https://api.kimi.ai/coding";
|
package/dist/presets.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE1E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB;6FACyF;IACzF,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;2EACuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;6CAMyC;IACzC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;wCAEoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE1E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB;6FACyF;IACzF,OAAO,EAAE,MAAM,CAAC;IAChB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,UAAU,CAAC;IACjB,gDAAgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gCAAgC;IAChC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB;2EACuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;6CAMyC;IACzC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;wCAEoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;oDAEgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;0EACsE;IACtE,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC9B;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;IAyB3B;4CACwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiOxC;;;;;;;;;;;;;OAaG;;;;;;;;;;;;;;;;;;;;;;;;IA6BH,4EAA4E;;;;;;;;IAQ5E,uEAAuE;;;;;;;;IAQvE,2DAA2D;;;;;;;;IAQ3D,uEAAuE;;;;;;;;IAQvE,kDAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqClD;iDAC6C;;;;;;;;IAQ7C;+CAC2C;;;;;;;;;;;;;;CAcM,CAAC;AAEpD,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,gBAAgB,CAAC;AAE7D,0EAA0E;AAC1E,eAAO,MAAM,UAAU,EAAoC,gBAAgB,EAAE,CAAC"}
|
package/dist/presets.js
CHANGED
|
@@ -247,6 +247,34 @@ export const PROVIDER_PRESETS = {
|
|
|
247
247
|
defaultModel: "glm-5.3-flash",
|
|
248
248
|
models: ["glm-5.3-flash", "glm-5.3", "glm-5.2"],
|
|
249
249
|
},
|
|
250
|
+
/**
|
|
251
|
+
* OpenCode Go — one $10/month key across many open models, each with its own
|
|
252
|
+
* monthly dollar limit (5h = 20%, week = 50%). Chain several models as
|
|
253
|
+
* `fallbacks` so a spent one hands over to the next.
|
|
254
|
+
*
|
|
255
|
+
* Measured 2026-09-27 on /chat/completions: a call without
|
|
256
|
+
* `x-opencode-session` is refused. `mimo-v2.6-flash` passes plain text,
|
|
257
|
+
* `reasoning_effort: "none"`, tool calls and json_schema; `glm-5.3-flash`
|
|
258
|
+
* 400s on a tool without a description and on a `thinking` field.
|
|
259
|
+
*
|
|
260
|
+
* This preset speaks chat completions only. Go serves GPT/Grok/Muse Spark on
|
|
261
|
+
* /responses and some Qwen/MiniMax ids on Anthropic /messages — those ids
|
|
262
|
+
* fail here.
|
|
263
|
+
*/
|
|
264
|
+
"opencode-go": {
|
|
265
|
+
shape: "openai",
|
|
266
|
+
baseUrl: "https://opencode.ai/zen/go/v1",
|
|
267
|
+
auth: "bearer",
|
|
268
|
+
defaultModel: "mimo-v2.6-flash",
|
|
269
|
+
models: ["mimo-v2.6-flash", "mimo-v2.5", "glm-5.3-flash", "qwen3.8-flash", "longcat-2.0"],
|
|
270
|
+
sessionHeader: "x-opencode-session",
|
|
271
|
+
// Cheapest first, each with its own monthly limit ($60, qwen3.8-flash $30).
|
|
272
|
+
// All five passed plain text, a described tool call and json_schema on
|
|
273
|
+
// 2026-09-27; longcat-2.0 ignores reasoning "none", so it goes last.
|
|
274
|
+
// DeepSeek is left out: on Go it needs the workspace's Global regions
|
|
275
|
+
// privacy setting, and answers 500 without it.
|
|
276
|
+
rotation: ["mimo-v2.6-flash", "mimo-v2.5", "glm-5.3-flash", "qwen3.8-flash", "longcat-2.0"],
|
|
277
|
+
},
|
|
250
278
|
kimi: {
|
|
251
279
|
shape: "anthropic",
|
|
252
280
|
baseUrl: "https://api.kimi.ai/coding",
|
package/dist/presets.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,10 @@ export interface PresetProviderConfig extends ProviderFallbackConfig {
|
|
|
8
8
|
/** Which model to run. Absent = the preset's `defaultModel`; a preset
|
|
9
9
|
* without either throws rather than sending a request nobody chose. */
|
|
10
10
|
model?: string;
|
|
11
|
+
/** A model chain on this one endpoint and key: the first answers, the rest
|
|
12
|
+
* take over in order when it fails (quota, rate, outage). Wins over `model`
|
|
13
|
+
* and the preset's `rotation`; `fallbacks` still run after the chain. */
|
|
14
|
+
models?: readonly string[];
|
|
11
15
|
effort?: Effort;
|
|
12
16
|
/** Output ceiling. The Anthropic shape requires one; adapters default it. */
|
|
13
17
|
maxTokens?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/providers/factory.ts"],"names":[],"mappings":"AAgBA,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAA2B,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEtF,MAAM,WAAW,oBAAqB,SAAQ,sBAAsB;IAClE;qEACiE;IACjE,MAAM,EAAE,MAAM,CAAC;IACf;4EACwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;4CACwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;uDAGmD;IACnD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/providers/factory.ts"],"names":[],"mappings":"AAgBA,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAA2B,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEtF,MAAM,WAAW,oBAAqB,SAAQ,sBAAsB;IAClE;qEACiE;IACjE,MAAM,EAAE,MAAM,CAAC;IACf;4EACwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;8EAE0E;IAC1E,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;4CACwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;uDAGmD;IACnD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,gBAAgB,EAAE,MAAM,EAAE,oBAAoB,GAAG,QAAQ,CAqGjG"}
|
|
@@ -23,13 +23,25 @@ export function createPresetProvider(id, config) {
|
|
|
23
23
|
throw new Error(`[providerkit] Unknown provider preset "${id}". Valid ids: ${PRESET_IDS.join(", ")}`);
|
|
24
24
|
}
|
|
25
25
|
const preset = PROVIDER_PRESETS[id];
|
|
26
|
-
const
|
|
26
|
+
const chain = config.models?.length ? config.models : config.model ? undefined : preset.rotation;
|
|
27
|
+
if (chain && chain.length > 1) {
|
|
28
|
+
const { models: _models, fallbacks = [], ...single } = config;
|
|
29
|
+
return createPresetProvider(id, {
|
|
30
|
+
...single,
|
|
31
|
+
model: chain[0],
|
|
32
|
+
fallbacks: [
|
|
33
|
+
...chain.slice(1).map((model) => ({ ...single, preset: id, model })),
|
|
34
|
+
...fallbacks,
|
|
35
|
+
],
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
const model = chain?.[0] ?? config.model ?? preset.defaultModel;
|
|
27
39
|
if (!model) {
|
|
28
40
|
throw new Error(`[providerkit] Preset "${id}" has no defaultModel — pass a model.`);
|
|
29
41
|
}
|
|
30
42
|
const headers = { ...preset.headers, ...config.headers };
|
|
31
43
|
const maxTokens = config.maxTokens ?? preset.maxTokens;
|
|
32
|
-
const { fallbacks: _fallbacks, fallbackOptions: _fallbackOptions, ...baseConfig } = config;
|
|
44
|
+
const { fallbacks: _fallbacks, fallbackOptions: _fallbackOptions, watchdog: _watchdog, models: _models, ...baseConfig } = config;
|
|
33
45
|
let provider;
|
|
34
46
|
switch (preset.shape) {
|
|
35
47
|
case "anthropic":
|
|
@@ -63,6 +75,7 @@ export function createPresetProvider(id, config) {
|
|
|
63
75
|
...(preset.path ? { path: preset.path } : {}),
|
|
64
76
|
headers,
|
|
65
77
|
...(config.providerOrder ? { providerOrder: config.providerOrder } : {}),
|
|
78
|
+
...(preset.sessionHeader ? { sessionHeader: preset.sessionHeader } : {}),
|
|
66
79
|
fetchImpl: config.fetchImpl,
|
|
67
80
|
});
|
|
68
81
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/providers/factory.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,EAAE;AACF,qEAAqE;AACrE,uEAAuE;AACvE,2EAA2E;AAC3E,yEAAyE;AACzE,0EAA0E;AAC1E,mCAAmC;AACnC,EAAE;AACF,sEAAsE;AACtE,2EAA2E;AAC3E,yEAAyE;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EACL,UAAU,EACV,gBAAgB,GAGjB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,uBAAuB,EAA+B,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/providers/factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -79,6 +79,10 @@ export interface OpenAIConfig extends ProviderFallbackConfig {
|
|
|
79
79
|
* when hitting openrouter.ai and providerOrder is not passed. Defaults to true.
|
|
80
80
|
*/
|
|
81
81
|
pinHost?: boolean;
|
|
82
|
+
/** Header that carries `StreamOptions.sessionId`. When set and a call has
|
|
83
|
+
* no sessionId, the provider's own per-instance id rides instead, so the
|
|
84
|
+
* gateway never sees a call without one. */
|
|
85
|
+
sessionHeader?: string;
|
|
82
86
|
}
|
|
83
87
|
export declare function openRouterHostFor(baseUrl: string, model: string): string | undefined;
|
|
84
88
|
/** The spellings of "think this hard" across the dialects that share this
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,WAAW,EAEX,MAAM,EAEN,aAAa,EACb,QAAQ,EAIT,MAAM,aAAa,CAAC;AAGrB,OAAO,EAA2B,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEtF,MAAM,WAAW,YAAa,SAAQ,sBAAsB;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;+CAE2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;iFAC6E;IAC7E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC/B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EACV,WAAW,EAEX,MAAM,EAEN,aAAa,EACb,QAAQ,EAIT,MAAM,aAAa,CAAC;AAGrB,OAAO,EAA2B,KAAK,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAEtF,MAAM,WAAW,YAAa,SAAQ,sBAAsB;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,iEAAiE;IACjE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;+CAE2C;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;iFAC6E;IAC7E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC/B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;iDAE6C;IAC7C,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAuCD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAMpF;AAED;4EAC4E;AAC5E,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,YAAY,GAAG,UAAU,GAAG,KAAK,CAAC;AA4CzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAoCzB;AAmCD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,EAAE,QAAQ,SAAW,GAAG,OAAO,EAAE,CAyDjG;AA2CD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE;QAAE,uBAAuB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;CAC7D,GAAG,MAAM,GAAG,SAAS,CAKrB;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,QAAQ,CA0NnE"}
|
package/dist/providers/openai.js
CHANGED
|
@@ -304,6 +304,7 @@ export function createOpenAIProvider(config) {
|
|
|
304
304
|
// `usage.cost` is its field in its unit. Another gateway that sends a
|
|
305
305
|
// `cost` has not said what it means.
|
|
306
306
|
const reportsCost = isOpenRouter(baseUrl);
|
|
307
|
+
const instanceSessionId = config.sessionHeader ? crypto.randomUUID() : undefined;
|
|
307
308
|
const provider = {
|
|
308
309
|
id,
|
|
309
310
|
model: config.model,
|
|
@@ -412,6 +413,9 @@ export function createOpenAIProvider(config) {
|
|
|
412
413
|
headers: {
|
|
413
414
|
authorization: `Bearer ${config.apiKey}`,
|
|
414
415
|
...attributionHeaders(config, config.headers),
|
|
416
|
+
...(config.sessionHeader
|
|
417
|
+
? { [config.sessionHeader]: opts.sessionId ?? instanceSessionId }
|
|
418
|
+
: {}),
|
|
415
419
|
...config.headers,
|
|
416
420
|
},
|
|
417
421
|
body: request,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../src/providers/openai.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -248,6 +248,12 @@ export interface StreamOptions {
|
|
|
248
248
|
* asks the same model both ways. See {@link JsonWithTools}.
|
|
249
249
|
*/
|
|
250
250
|
jsonWithTools?: JsonWithTools;
|
|
251
|
+
/**
|
|
252
|
+
* Stable id for the conversation or job this call belongs to. Sent only to
|
|
253
|
+
* endpoints whose preset names a `sessionHeader` (OpenCode Go routes and
|
|
254
|
+
* caches by it); every other endpoint ignores it.
|
|
255
|
+
*/
|
|
256
|
+
sessionId?: string;
|
|
251
257
|
}
|
|
252
258
|
export interface Provider {
|
|
253
259
|
readonly id: string;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/fallback.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { classify, parseRetryAfterMs, ProviderError, type ErrorKind } from "./er
|
|
|
2
2
|
import type { RateLimitWindow } from "./rate-limit.ts";
|
|
3
3
|
import type { ProviderPresetId } from "./presets.ts";
|
|
4
4
|
import type { Provider, ProviderChunk } from "./types.ts";
|
|
5
|
+
import { withWatchdog, type WatchdogOptions } from "./watchdog.ts";
|
|
5
6
|
import { createPresetProvider, type PresetProviderConfig } from "./providers/factory.ts";
|
|
6
7
|
|
|
7
8
|
/** Retry intervals when the server supplies no deadline, not estimates of when
|
|
@@ -45,12 +46,18 @@ export interface FallbackSpec extends PresetProviderConfig {
|
|
|
45
46
|
|
|
46
47
|
export type FallbackCandidate = Provider | FallbackSpec;
|
|
47
48
|
|
|
48
|
-
function resolveFallback(
|
|
49
|
+
function resolveFallback(
|
|
50
|
+
candidate: FallbackCandidate,
|
|
51
|
+
inheritedWatchdog?: WatchdogOptions,
|
|
52
|
+
): Provider {
|
|
49
53
|
if (typeof candidate === "object" && candidate !== null && "createStream" in candidate) {
|
|
50
|
-
return candidate;
|
|
54
|
+
return inheritedWatchdog ? withWatchdog(candidate, inheritedWatchdog) : candidate;
|
|
51
55
|
}
|
|
52
|
-
const { preset, ...config } = candidate;
|
|
53
|
-
return createPresetProvider(preset,
|
|
56
|
+
const { preset, watchdog = inheritedWatchdog, ...config } = candidate;
|
|
57
|
+
return createPresetProvider(preset, {
|
|
58
|
+
...config,
|
|
59
|
+
...(watchdog ? { watchdog } : {}),
|
|
60
|
+
});
|
|
54
61
|
}
|
|
55
62
|
|
|
56
63
|
/** Standard options that any provider config can accept to configure fallbacks inline. */
|
|
@@ -58,21 +65,30 @@ export interface ProviderFallbackConfig {
|
|
|
58
65
|
/** Secondary and tertiary providers to try if this provider fails/exhausts:
|
|
59
66
|
* hand-built `Provider`s, preset-id `FallbackSpec`s, or both. */
|
|
60
67
|
fallbacks?: readonly FallbackCandidate[];
|
|
68
|
+
/** Watch every candidate separately. A silent candidate then times out and
|
|
69
|
+
* rotates; wrapping the completed pool would abort the whole chain instead.
|
|
70
|
+
* Fallback specs inherit this unless they set their own watchdog. */
|
|
71
|
+
watchdog?: WatchdogOptions;
|
|
61
72
|
/** Custom cooldown or telemetry options for the fallback pool. */
|
|
62
73
|
fallbackOptions?: FallbackOptions<Provider>;
|
|
63
74
|
}
|
|
64
75
|
|
|
65
76
|
/**
|
|
66
|
-
*
|
|
67
|
-
*
|
|
77
|
+
* Apply the watchdog before composing the pool: its timeout belongs to one
|
|
78
|
+
* candidate, while `createStream(..., { signal })` remains the caller's cancel
|
|
79
|
+
* for the whole chain. The distinction is what lets silence rotate safely.
|
|
68
80
|
*/
|
|
69
81
|
export function withConfiguredFallbacks(
|
|
70
82
|
primary: Provider,
|
|
71
83
|
config?: ProviderFallbackConfig,
|
|
72
84
|
): Provider {
|
|
73
|
-
|
|
85
|
+
const watchedPrimary = config?.watchdog ? withWatchdog(primary, config.watchdog) : primary;
|
|
86
|
+
if (!config?.fallbacks || config.fallbacks.length === 0) return watchedPrimary;
|
|
74
87
|
return withFallbackProviders(
|
|
75
|
-
[
|
|
88
|
+
[
|
|
89
|
+
watchedPrimary,
|
|
90
|
+
...config.fallbacks.map((candidate) => resolveFallback(candidate, config.watchdog)),
|
|
91
|
+
],
|
|
76
92
|
config.fallbackOptions,
|
|
77
93
|
);
|
|
78
94
|
}
|
package/src/presets.ts
CHANGED
|
@@ -64,6 +64,13 @@ export interface ProviderPreset {
|
|
|
64
64
|
* it, so a model that reasons past the adapter's default ends the turn with
|
|
65
65
|
* neither text nor a tool call. */
|
|
66
66
|
maxTokens?: number;
|
|
67
|
+
/** Header that carries `StreamOptions.sessionId`, for gateways that route
|
|
68
|
+
* and cache per conversation — and refuse a call without it (OpenCode Go:
|
|
69
|
+
* `MissingSessionID`, measured 2026-09-27). */
|
|
70
|
+
sessionHeader?: string;
|
|
71
|
+
/** Default model chain when the caller names neither `model` nor `models`:
|
|
72
|
+
* the first answers, the rest take over (same key) when it fails. */
|
|
73
|
+
rotation?: readonly string[];
|
|
67
74
|
}
|
|
68
75
|
|
|
69
76
|
export const PROVIDER_PRESETS = {
|
|
@@ -317,6 +324,34 @@ export const PROVIDER_PRESETS = {
|
|
|
317
324
|
defaultModel: "glm-5.3-flash",
|
|
318
325
|
models: ["glm-5.3-flash", "glm-5.3", "glm-5.2"],
|
|
319
326
|
},
|
|
327
|
+
/**
|
|
328
|
+
* OpenCode Go — one $10/month key across many open models, each with its own
|
|
329
|
+
* monthly dollar limit (5h = 20%, week = 50%). Chain several models as
|
|
330
|
+
* `fallbacks` so a spent one hands over to the next.
|
|
331
|
+
*
|
|
332
|
+
* Measured 2026-09-27 on /chat/completions: a call without
|
|
333
|
+
* `x-opencode-session` is refused. `mimo-v2.6-flash` passes plain text,
|
|
334
|
+
* `reasoning_effort: "none"`, tool calls and json_schema; `glm-5.3-flash`
|
|
335
|
+
* 400s on a tool without a description and on a `thinking` field.
|
|
336
|
+
*
|
|
337
|
+
* This preset speaks chat completions only. Go serves GPT/Grok/Muse Spark on
|
|
338
|
+
* /responses and some Qwen/MiniMax ids on Anthropic /messages — those ids
|
|
339
|
+
* fail here.
|
|
340
|
+
*/
|
|
341
|
+
"opencode-go": {
|
|
342
|
+
shape: "openai",
|
|
343
|
+
baseUrl: "https://opencode.ai/zen/go/v1",
|
|
344
|
+
auth: "bearer",
|
|
345
|
+
defaultModel: "mimo-v2.6-flash",
|
|
346
|
+
models: ["mimo-v2.6-flash", "mimo-v2.5", "glm-5.3-flash", "qwen3.8-flash", "longcat-2.0"],
|
|
347
|
+
sessionHeader: "x-opencode-session",
|
|
348
|
+
// Cheapest first, each with its own monthly limit ($60, qwen3.8-flash $30).
|
|
349
|
+
// All five passed plain text, a described tool call and json_schema on
|
|
350
|
+
// 2026-09-27; longcat-2.0 ignores reasoning "none", so it goes last.
|
|
351
|
+
// DeepSeek is left out: on Go it needs the workspace's Global regions
|
|
352
|
+
// privacy setting, and answers 500 without it.
|
|
353
|
+
rotation: ["mimo-v2.6-flash", "mimo-v2.5", "glm-5.3-flash", "qwen3.8-flash", "longcat-2.0"],
|
|
354
|
+
},
|
|
320
355
|
kimi: {
|
|
321
356
|
shape: "anthropic",
|
|
322
357
|
baseUrl: "https://api.kimi.ai/coding",
|
package/src/providers/factory.ts
CHANGED
|
@@ -30,6 +30,10 @@ export interface PresetProviderConfig extends ProviderFallbackConfig {
|
|
|
30
30
|
/** Which model to run. Absent = the preset's `defaultModel`; a preset
|
|
31
31
|
* without either throws rather than sending a request nobody chose. */
|
|
32
32
|
model?: string;
|
|
33
|
+
/** A model chain on this one endpoint and key: the first answers, the rest
|
|
34
|
+
* take over in order when it fails (quota, rate, outage). Wins over `model`
|
|
35
|
+
* and the preset's `rotation`; `fallbacks` still run after the chain. */
|
|
36
|
+
models?: readonly string[];
|
|
33
37
|
effort?: Effort;
|
|
34
38
|
/** Output ceiling. The Anthropic shape requires one; adapters default it. */
|
|
35
39
|
maxTokens?: number;
|
|
@@ -65,14 +69,32 @@ export function createPresetProvider(id: ProviderPresetId, config: PresetProvide
|
|
|
65
69
|
);
|
|
66
70
|
}
|
|
67
71
|
const preset: ProviderPreset = PROVIDER_PRESETS[id];
|
|
68
|
-
const
|
|
72
|
+
const chain = config.models?.length ? config.models : config.model ? undefined : preset.rotation;
|
|
73
|
+
if (chain && chain.length > 1) {
|
|
74
|
+
const { models: _models, fallbacks = [], ...single } = config;
|
|
75
|
+
return createPresetProvider(id, {
|
|
76
|
+
...single,
|
|
77
|
+
model: chain[0],
|
|
78
|
+
fallbacks: [
|
|
79
|
+
...chain.slice(1).map((model) => ({ ...single, preset: id, model })),
|
|
80
|
+
...fallbacks,
|
|
81
|
+
],
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
const model = chain?.[0] ?? config.model ?? preset.defaultModel;
|
|
69
85
|
if (!model) {
|
|
70
86
|
throw new Error(`[providerkit] Preset "${id}" has no defaultModel — pass a model.`);
|
|
71
87
|
}
|
|
72
88
|
const headers = { ...preset.headers, ...config.headers };
|
|
73
89
|
const maxTokens = config.maxTokens ?? preset.maxTokens;
|
|
74
90
|
|
|
75
|
-
const {
|
|
91
|
+
const {
|
|
92
|
+
fallbacks: _fallbacks,
|
|
93
|
+
fallbackOptions: _fallbackOptions,
|
|
94
|
+
watchdog: _watchdog,
|
|
95
|
+
models: _models,
|
|
96
|
+
...baseConfig
|
|
97
|
+
} = config;
|
|
76
98
|
|
|
77
99
|
let provider: Provider;
|
|
78
100
|
switch (preset.shape) {
|
|
@@ -107,6 +129,7 @@ export function createPresetProvider(id: ProviderPresetId, config: PresetProvide
|
|
|
107
129
|
...(preset.path ? { path: preset.path } : {}),
|
|
108
130
|
headers,
|
|
109
131
|
...(config.providerOrder ? { providerOrder: config.providerOrder } : {}),
|
|
132
|
+
...(preset.sessionHeader ? { sessionHeader: preset.sessionHeader } : {}),
|
|
110
133
|
fetchImpl: config.fetchImpl,
|
|
111
134
|
});
|
|
112
135
|
break;
|
package/src/providers/openai.ts
CHANGED
|
@@ -100,6 +100,10 @@ export interface OpenAIConfig extends ProviderFallbackConfig {
|
|
|
100
100
|
* when hitting openrouter.ai and providerOrder is not passed. Defaults to true.
|
|
101
101
|
*/
|
|
102
102
|
pinHost?: boolean;
|
|
103
|
+
/** Header that carries `StreamOptions.sessionId`. When set and a call has
|
|
104
|
+
* no sessionId, the provider's own per-instance id rides instead, so the
|
|
105
|
+
* gateway never sees a call without one. */
|
|
106
|
+
sessionHeader?: string;
|
|
103
107
|
}
|
|
104
108
|
|
|
105
109
|
const DEFAULT_BASE_URL = "https://api.openai.com";
|
|
@@ -445,6 +449,7 @@ export function createOpenAIProvider(config: OpenAIConfig): Provider {
|
|
|
445
449
|
// `usage.cost` is its field in its unit. Another gateway that sends a
|
|
446
450
|
// `cost` has not said what it means.
|
|
447
451
|
const reportsCost = isOpenRouter(baseUrl);
|
|
452
|
+
const instanceSessionId = config.sessionHeader ? crypto.randomUUID() : undefined;
|
|
448
453
|
|
|
449
454
|
const provider: Provider = {
|
|
450
455
|
id,
|
|
@@ -561,6 +566,9 @@ export function createOpenAIProvider(config: OpenAIConfig): Provider {
|
|
|
561
566
|
headers: {
|
|
562
567
|
authorization: `Bearer ${config.apiKey}`,
|
|
563
568
|
...attributionHeaders(config, config.headers),
|
|
569
|
+
...(config.sessionHeader
|
|
570
|
+
? { [config.sessionHeader]: opts.sessionId ?? instanceSessionId }
|
|
571
|
+
: {}),
|
|
564
572
|
...config.headers,
|
|
565
573
|
},
|
|
566
574
|
body: request,
|
package/src/types.ts
CHANGED
|
@@ -357,6 +357,12 @@ export interface StreamOptions {
|
|
|
357
357
|
* asks the same model both ways. See {@link JsonWithTools}.
|
|
358
358
|
*/
|
|
359
359
|
jsonWithTools?: JsonWithTools;
|
|
360
|
+
/**
|
|
361
|
+
* Stable id for the conversation or job this call belongs to. Sent only to
|
|
362
|
+
* endpoints whose preset names a `sessionHeader` (OpenCode Go routes and
|
|
363
|
+
* caches by it); every other endpoint ignores it.
|
|
364
|
+
*/
|
|
365
|
+
sessionId?: string;
|
|
360
366
|
}
|
|
361
367
|
|
|
362
368
|
export interface Provider {
|