@providerkit/core 0.5.1 → 0.7.0

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 CHANGED
@@ -60,6 +60,21 @@ try {
60
60
  }
61
61
  ```
62
62
 
63
+ ### Z.ai Coding Plan
64
+
65
+ `createZaiCodingProvider` uses the Coding Plan endpoint with Bearer authentication.
66
+ Pass your plan's key and a model it supports:
67
+
68
+ ```ts
69
+ import { createZaiCodingProvider } from "@providerkit/core";
70
+
71
+ const provider = createZaiCodingProvider({ apiKey, model: "glm-5.2" });
72
+ ```
73
+
74
+ It returns the same provider interface as the adapters above. The API root is
75
+ `https://api.z.ai/api/anthropic`; the adapter adds `/v1/messages`.
76
+ Usage reports tokens consumed, not the price of your subscription.
77
+
63
78
  **Full documentation lives at [providerkit.dev](https://providerkit.dev)** — it is the single
64
79
  source of truth for usage, and this README deliberately stays a front door so the two cannot
65
80
  drift.
package/dist/index.d.ts CHANGED
@@ -11,8 +11,11 @@ export * from "./tools.ts";
11
11
  export * from "./schema.ts";
12
12
  export * from "./context.ts";
13
13
  export * from "./capability.ts";
14
+ export * from "./presets.ts";
14
15
  export * from "./providers/anthropic.ts";
15
16
  export * from "./providers/openai.ts";
16
17
  export * from "./providers/responses.ts";
17
18
  export * from "./providers/gemini.ts";
19
+ export * from "./providers/zai.ts";
20
+ export * from "./providers/factory.ts";
18
21
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -11,8 +11,11 @@ export * from "./tools.js";
11
11
  export * from "./schema.js";
12
12
  export * from "./context.js";
13
13
  export * from "./capability.js";
14
+ export * from "./presets.js";
14
15
  export * from "./providers/anthropic.js";
15
16
  export * from "./providers/openai.js";
16
17
  export * from "./providers/responses.js";
17
18
  export * from "./providers/gemini.js";
19
+ export * from "./providers/zai.js";
20
+ export * from "./providers/factory.js";
18
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,249 @@
1
+ /**
2
+ * Provider presets — hand-curated, wire-level facts only.
3
+ *
4
+ * A preset is everything `createPresetProvider` needs to speak to one
5
+ * endpoint: which adapter shape it speaks, its API root, how the credential
6
+ * rides, and what it is called. Deliberately absent: prices (invariant 9 —
7
+ * they drift on a vendor's schedule and a wrong number in a library is a
8
+ * wrong number in everyone's ledger), icons, colors, marketing names, and
9
+ * sign-in flows (an `oauth` preset expects the CALLER to hand over an access
10
+ * token; acquiring one stays app-side).
11
+ *
12
+ * Sources: the coding-plan endpoints and auth quirks are measured
13
+ * (tabrunner's extension + this repo's adopters, 2026-09); the model lists
14
+ * are representative, not exhaustive — every adapter takes a per-call model,
15
+ * so a missing id costs nothing.
16
+ *
17
+ * Azure is deliberately ABSENT: its base URL is per-deployment
18
+ * (`https://<resource>.openai.azure.com`), so no static preset can carry it —
19
+ * point createOpenAIProvider's baseUrl at your resource instead.
20
+ */
21
+ export type PresetShape = "anthropic" | "openai" | "responses" | "gemini";
22
+ /**
23
+ * How the credential reaches the endpoint.
24
+ * - `key`: the vendor's native key header (Anthropic reads `x-api-key`,
25
+ * Gemini `x-goog-api-key`); the OpenAI shapes have only Bearer, so they
26
+ * never use this.
27
+ * - `bearer`: `Authorization: Bearer` — the OpenAI shapes' only mode, and the
28
+ * coding-plan gateways' mode on the Anthropic wire (measured: Z.ai's coding
29
+ * endpoint ignores `x-api-key` and reads Bearer).
30
+ * - `oauth`: same wire as `bearer`, but the token is a short-lived access
31
+ * token from a sign-in flow the caller owns. The preset may carry the beta
32
+ * headers that switch the endpoint into OAuth mode.
33
+ */
34
+ export type PresetAuth = "key" | "bearer" | "oauth";
35
+ export interface ProviderPreset {
36
+ /** Adapter wire format. */
37
+ shape: PresetShape;
38
+ /** API root — the adapter appends its own path (/v1/chat/completions,
39
+ * /v1/messages, …), so this must NOT carry the version. */
40
+ baseUrl: string;
41
+ auth: PresetAuth;
42
+ /** Fallback when the caller passes no model. */
43
+ defaultModel?: string;
44
+ /** Representative model ids. */
45
+ models?: string[];
46
+ /** Static protocol headers the endpoint requires (e.g. OAuth beta flags).
47
+ * Per-request headers (request ids, account ids) are the caller's. */
48
+ headers?: Record<string, string>;
49
+ /** True when the endpoint hard-400s image parts (measured on DeepSeek). */
50
+ textOnly?: boolean;
51
+ /** Anthropic-shape dialect: say "no thinking" with an explicit
52
+ * `thinking: { type: "disabled" }` marker when effort is none. For
53
+ * endpoints where an ABSENT field means the model's default — thinking ON
54
+ * for reasoning-mandatory models (measured on Z.ai's coding endpoint:
55
+ * omit → thinking block; disabled → none). Native Anthropic defaults to
56
+ * off when the field is absent and must stay unset. */
57
+ explicitNone?: boolean;
58
+ }
59
+ export declare const PROVIDER_PRESETS: {
60
+ readonly anthropic: {
61
+ readonly shape: "anthropic";
62
+ readonly baseUrl: "https://api.anthropic.com";
63
+ readonly auth: "key";
64
+ readonly defaultModel: "claude-sonnet-4-6";
65
+ readonly models: ["claude-sonnet-4-6", "claude-opus-5", "claude-fable-5-1"];
66
+ };
67
+ readonly openai: {
68
+ readonly shape: "openai";
69
+ readonly baseUrl: "https://api.openai.com";
70
+ readonly auth: "key";
71
+ readonly defaultModel: "gpt-5.6-sol";
72
+ readonly models: ["gpt-5.6-sol", "gpt-5-pro", "gpt-5-nano"];
73
+ };
74
+ readonly google: {
75
+ readonly shape: "gemini";
76
+ readonly baseUrl: "https://generativelanguage.googleapis.com";
77
+ readonly auth: "key";
78
+ readonly defaultModel: "gemini-3.1-pro";
79
+ readonly models: ["gemini-3.1-pro", "gemini-2.5-flash"];
80
+ };
81
+ /** Gemini behind its OpenAI-compatible route — the drop-in for codebases
82
+ * that only speak the openai shape. */
83
+ readonly "google-openai": {
84
+ readonly shape: "openai";
85
+ readonly baseUrl: "https://generativelanguage.googleapis.com/v1beta/openai";
86
+ readonly auth: "key";
87
+ readonly defaultModel: "gemini-3.1-pro";
88
+ readonly models: ["gemini-3.1-pro", "gemini-2.5-flash"];
89
+ };
90
+ readonly deepseek: {
91
+ readonly shape: "openai";
92
+ readonly baseUrl: "https://api.deepseek.com";
93
+ readonly auth: "key";
94
+ readonly defaultModel: "deepseek-v4-flash";
95
+ readonly models: ["deepseek-v4-flash", "deepseek-v4-pro", "deepseek-flash"];
96
+ readonly textOnly: true;
97
+ };
98
+ readonly openrouter: {
99
+ readonly shape: "openai";
100
+ readonly baseUrl: "https://openrouter.ai/api";
101
+ readonly auth: "key";
102
+ readonly defaultModel: "deepseek/deepseek-v4.1-flash";
103
+ readonly models: ["deepseek/deepseek-v4.1-flash", "z-ai/glm-5.3-flash", "qwen/qwen3.7-max"];
104
+ };
105
+ readonly groq: {
106
+ readonly shape: "openai";
107
+ readonly baseUrl: "https://api.groq.com/openai/v1";
108
+ readonly auth: "key";
109
+ readonly defaultModel: "llama-3.3-70b-versatile";
110
+ readonly models: ["llama-3.3-70b-versatile", "qwen/qwen3.8-27b"];
111
+ };
112
+ readonly mistral: {
113
+ readonly shape: "openai";
114
+ readonly baseUrl: "https://api.mistral.ai/v1";
115
+ readonly auth: "key";
116
+ readonly defaultModel: "devstral-2512";
117
+ readonly models: ["devstral-2512", "magistral-small", "mistral-small-2506"];
118
+ };
119
+ readonly xai: {
120
+ readonly shape: "openai";
121
+ readonly baseUrl: "https://api.x.ai/v1";
122
+ readonly auth: "key";
123
+ readonly defaultModel: "grok-4.5";
124
+ readonly models: ["grok-4.5", "grok-4.3", "grok-4.20-0309-reasoning"];
125
+ };
126
+ readonly together: {
127
+ readonly shape: "openai";
128
+ readonly baseUrl: "https://api.together.xyz/v1";
129
+ readonly auth: "key";
130
+ readonly defaultModel: "deepseek-ai/DeepSeek-V3";
131
+ };
132
+ readonly fireworks: {
133
+ readonly shape: "openai";
134
+ readonly baseUrl: "https://api.fireworks.ai/inference/v1";
135
+ readonly auth: "key";
136
+ };
137
+ readonly cerebras: {
138
+ readonly shape: "openai";
139
+ readonly baseUrl: "https://api.cerebras.ai/v1";
140
+ readonly auth: "key";
141
+ readonly defaultModel: "gpt-oss-120b";
142
+ readonly models: ["gpt-oss-120b", "qwen-3.8-27b"];
143
+ };
144
+ readonly moonshot: {
145
+ readonly shape: "openai";
146
+ readonly baseUrl: "https://api.moonshot.ai/v1";
147
+ readonly auth: "key";
148
+ readonly defaultModel: "kimi-k2.7-code";
149
+ readonly models: ["kimi-k2.7-code", "kimi-k2.7-code-highspeed", "kimi-k3"];
150
+ };
151
+ readonly zhipu: {
152
+ readonly shape: "openai";
153
+ readonly baseUrl: "https://api.z.ai/api/paas/v4";
154
+ readonly auth: "key";
155
+ readonly defaultModel: "glm-5.3-flash";
156
+ readonly models: ["glm-5.3-flash", "glm-5.2", "glm-4.7"];
157
+ };
158
+ readonly minimax: {
159
+ readonly shape: "anthropic";
160
+ readonly baseUrl: "https://api.minimax.io/anthropic";
161
+ readonly auth: "key";
162
+ readonly defaultModel: "MiniMax-M2.5";
163
+ readonly models: ["MiniMax-M3", "MiniMax-M2.5", "MiniMax-M2.1"];
164
+ };
165
+ readonly zai: {
166
+ readonly shape: "anthropic";
167
+ readonly baseUrl: "https://api.z.ai/api/anthropic";
168
+ readonly auth: "bearer";
169
+ readonly defaultModel: "glm-5.3-flash";
170
+ readonly models: ["glm-5.3-flash", "glm-5.3-highspeed", "glm-5.2", "glm-5-turbo"];
171
+ readonly explicitNone: true;
172
+ };
173
+ readonly kimi: {
174
+ readonly shape: "anthropic";
175
+ readonly baseUrl: "https://api.kimi.ai/coding";
176
+ readonly auth: "bearer";
177
+ readonly defaultModel: "kimi-for-coding";
178
+ readonly models: ["kimi-for-coding", "kimi-for-coding-highspeed", "k3"];
179
+ };
180
+ /** Alibaba's dashscope coding plan — OpenAI-compatible per its registry. */
181
+ readonly "alibaba-coding-plan": {
182
+ readonly shape: "openai";
183
+ readonly baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1";
184
+ readonly auth: "bearer";
185
+ readonly defaultModel: "qwen3.7-max";
186
+ readonly models: ["qwen3.7-max", "qwen3-coder-next", "glm-4.7"];
187
+ };
188
+ /** QwenCloud's token plan — Anthropic wire (measured by tabrunner). */
189
+ readonly qwen: {
190
+ readonly shape: "anthropic";
191
+ readonly baseUrl: "https://token-plan.ap-southeast-1.maas.aliyuncs.com/apps/anthropic";
192
+ readonly auth: "bearer";
193
+ readonly defaultModel: "qwen3.8-max";
194
+ readonly models: ["qwen3.8-max", "qwen3.6-flash"];
195
+ };
196
+ readonly ollama: {
197
+ readonly shape: "openai";
198
+ readonly baseUrl: "http://localhost:11434/v1";
199
+ readonly auth: "bearer";
200
+ };
201
+ readonly lmstudio: {
202
+ readonly shape: "openai";
203
+ readonly baseUrl: "http://127.0.0.1:1234/v1";
204
+ readonly auth: "bearer";
205
+ };
206
+ readonly vllm: {
207
+ readonly shape: "openai";
208
+ readonly baseUrl: "http://localhost:8000/v1";
209
+ readonly auth: "bearer";
210
+ };
211
+ readonly claude: {
212
+ readonly shape: "anthropic";
213
+ readonly baseUrl: "https://api.anthropic.com";
214
+ readonly auth: "oauth";
215
+ readonly defaultModel: "claude-sonnet-4-6";
216
+ readonly models: ["claude-sonnet-4-6", "claude-opus-5"];
217
+ readonly headers: {
218
+ readonly "anthropic-beta": "claude-code-20250219,oauth-2025-04-20";
219
+ };
220
+ };
221
+ /** The Codex backend behind a ChatGPT sign-in — Responses wire, no public
222
+ * model list, so these ids are the list. */
223
+ readonly chatgpt: {
224
+ readonly shape: "responses";
225
+ readonly baseUrl: "https://chatgpt.com/backend-api/codex";
226
+ readonly auth: "oauth";
227
+ readonly defaultModel: "gpt-5.3-codex";
228
+ readonly models: ["gpt-5.3-codex", "gpt-5.5", "gpt-5.4-mini"];
229
+ };
230
+ /** Kimi's coding endpoint reached with a subscription token instead of a
231
+ * key — Kimi bills the two separately. */
232
+ readonly "kimi-plan": {
233
+ readonly shape: "anthropic";
234
+ readonly baseUrl: "https://api.kimi.ai/coding";
235
+ readonly auth: "oauth";
236
+ readonly defaultModel: "kimi-for-coding";
237
+ };
238
+ readonly "github-copilot": {
239
+ readonly shape: "openai";
240
+ readonly baseUrl: "https://api.githubcopilot.com";
241
+ readonly auth: "oauth";
242
+ readonly defaultModel: "gpt-5.6-sol";
243
+ readonly models: ["gpt-5.6-sol", "claude-opus-5", "claude-opus-4.8", "kimi-k2.7-code"];
244
+ };
245
+ };
246
+ export type ProviderPresetId = keyof typeof PROVIDER_PRESETS;
247
+ /** Every valid preset id — the factory's unknown-id error lists these. */
248
+ export declare const PRESET_IDS: ProviderPresetId[];
249
+ //# sourceMappingURL=presets.d.ts.map
@@ -0,0 +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;gEAC4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,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;;;;;4DAKwD;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;IAyB3B;4CACwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuGxC,4EAA4E;;;;;;;;IAQ5E,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqCvE;iDAC6C;;;;;;;;IAQ7C;+CAC2C;;;;;;;;;;;;;;CAcM,CAAC;AAEpD,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,gBAAgB,CAAC;AAE7D,0EAA0E;AAC1E,eAAO,MAAM,UAAU,EAAoC,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,199 @@
1
+ export const PROVIDER_PRESETS = {
2
+ // ── Keyed, native shapes ────────────────────────────────────────────────
3
+ anthropic: {
4
+ shape: "anthropic",
5
+ baseUrl: "https://api.anthropic.com",
6
+ auth: "key",
7
+ defaultModel: "claude-sonnet-4-6",
8
+ models: ["claude-sonnet-4-6", "claude-opus-5", "claude-fable-5-1"],
9
+ },
10
+ openai: {
11
+ shape: "openai",
12
+ baseUrl: "https://api.openai.com",
13
+ auth: "key",
14
+ defaultModel: "gpt-5.6-sol",
15
+ models: ["gpt-5.6-sol", "gpt-5-pro", "gpt-5-nano"],
16
+ },
17
+ google: {
18
+ // Native Generative Language REST — the adapter authenticates with
19
+ // `x-goog-api-key` (NOT Bearer) and fixes its own /v1… paths.
20
+ shape: "gemini",
21
+ baseUrl: "https://generativelanguage.googleapis.com",
22
+ auth: "key",
23
+ defaultModel: "gemini-3.1-pro",
24
+ models: ["gemini-3.1-pro", "gemini-2.5-flash"],
25
+ },
26
+ /** Gemini behind its OpenAI-compatible route — the drop-in for codebases
27
+ * that only speak the openai shape. */
28
+ "google-openai": {
29
+ shape: "openai",
30
+ baseUrl: "https://generativelanguage.googleapis.com/v1beta/openai",
31
+ auth: "key",
32
+ defaultModel: "gemini-3.1-pro",
33
+ models: ["gemini-3.1-pro", "gemini-2.5-flash"],
34
+ },
35
+ deepseek: {
36
+ shape: "openai",
37
+ baseUrl: "https://api.deepseek.com",
38
+ auth: "key",
39
+ defaultModel: "deepseek-v4-flash",
40
+ models: ["deepseek-v4-flash", "deepseek-v4-pro", "deepseek-flash"],
41
+ // Text-only API — an image part in the body is a hard 400 (measured).
42
+ textOnly: true,
43
+ },
44
+ openrouter: {
45
+ shape: "openai",
46
+ baseUrl: "https://openrouter.ai/api",
47
+ auth: "key",
48
+ defaultModel: "deepseek/deepseek-v4.1-flash",
49
+ models: ["deepseek/deepseek-v4.1-flash", "z-ai/glm-5.3-flash", "qwen/qwen3.7-max"],
50
+ },
51
+ groq: {
52
+ shape: "openai",
53
+ baseUrl: "https://api.groq.com/openai/v1",
54
+ auth: "key",
55
+ defaultModel: "llama-3.3-70b-versatile",
56
+ models: ["llama-3.3-70b-versatile", "qwen/qwen3.8-27b"],
57
+ },
58
+ mistral: {
59
+ shape: "openai",
60
+ baseUrl: "https://api.mistral.ai/v1",
61
+ auth: "key",
62
+ defaultModel: "devstral-2512",
63
+ models: ["devstral-2512", "magistral-small", "mistral-small-2506"],
64
+ },
65
+ xai: {
66
+ shape: "openai",
67
+ baseUrl: "https://api.x.ai/v1",
68
+ auth: "key",
69
+ defaultModel: "grok-4.5",
70
+ models: ["grok-4.5", "grok-4.3", "grok-4.20-0309-reasoning"],
71
+ },
72
+ together: {
73
+ shape: "openai",
74
+ baseUrl: "https://api.together.xyz/v1",
75
+ auth: "key",
76
+ defaultModel: "deepseek-ai/DeepSeek-V3",
77
+ },
78
+ fireworks: {
79
+ shape: "openai",
80
+ baseUrl: "https://api.fireworks.ai/inference/v1",
81
+ auth: "key",
82
+ },
83
+ cerebras: {
84
+ shape: "openai",
85
+ baseUrl: "https://api.cerebras.ai/v1",
86
+ auth: "key",
87
+ defaultModel: "gpt-oss-120b",
88
+ models: ["gpt-oss-120b", "qwen-3.8-27b"],
89
+ },
90
+ moonshot: {
91
+ shape: "openai",
92
+ baseUrl: "https://api.moonshot.ai/v1",
93
+ auth: "key",
94
+ defaultModel: "kimi-k2.7-code",
95
+ models: ["kimi-k2.7-code", "kimi-k2.7-code-highspeed", "kimi-k3"],
96
+ },
97
+ zhipu: {
98
+ shape: "openai",
99
+ baseUrl: "https://api.z.ai/api/paas/v4",
100
+ auth: "key",
101
+ defaultModel: "glm-5.3-flash",
102
+ models: ["glm-5.3-flash", "glm-5.2", "glm-4.7"],
103
+ },
104
+ minimax: {
105
+ shape: "anthropic",
106
+ baseUrl: "https://api.minimax.io/anthropic",
107
+ auth: "key",
108
+ defaultModel: "MiniMax-M2.5",
109
+ models: ["MiniMax-M3", "MiniMax-M2.5", "MiniMax-M2.1"],
110
+ },
111
+ // ── Coding plans — Anthropic wire + Bearer (measured family trait) ─────
112
+ zai: {
113
+ shape: "anthropic",
114
+ baseUrl: "https://api.z.ai/api/anthropic",
115
+ auth: "bearer",
116
+ defaultModel: "glm-5.3-flash",
117
+ models: ["glm-5.3-flash", "glm-5.3-highspeed", "glm-5.2", "glm-5-turbo"],
118
+ // Model ids are BARE here — the gateway-prefixed spelling
119
+ // (`z-ai/glm-5.3-flash`) answers 400 [1211] Unknown Model.
120
+ explicitNone: true,
121
+ },
122
+ kimi: {
123
+ shape: "anthropic",
124
+ baseUrl: "https://api.kimi.ai/coding",
125
+ auth: "bearer",
126
+ defaultModel: "kimi-for-coding",
127
+ models: ["kimi-for-coding", "kimi-for-coding-highspeed", "k3"],
128
+ },
129
+ /** Alibaba's dashscope coding plan — OpenAI-compatible per its registry. */
130
+ "alibaba-coding-plan": {
131
+ shape: "openai",
132
+ baseUrl: "https://coding-intl.dashscope.aliyuncs.com/v1",
133
+ auth: "bearer",
134
+ defaultModel: "qwen3.7-max",
135
+ models: ["qwen3.7-max", "qwen3-coder-next", "glm-4.7"],
136
+ },
137
+ /** QwenCloud's token plan — Anthropic wire (measured by tabrunner). */
138
+ qwen: {
139
+ shape: "anthropic",
140
+ baseUrl: "https://token-plan.ap-southeast-1.maas.aliyuncs.com/apps/anthropic",
141
+ auth: "bearer",
142
+ defaultModel: "qwen3.8-max",
143
+ models: ["qwen3.8-max", "qwen3.6-flash"],
144
+ },
145
+ // ── Local runtimes ──────────────────────────────────────────────────────
146
+ ollama: {
147
+ shape: "openai",
148
+ baseUrl: "http://localhost:11434/v1",
149
+ auth: "bearer",
150
+ },
151
+ lmstudio: {
152
+ shape: "openai",
153
+ baseUrl: "http://127.0.0.1:1234/v1",
154
+ auth: "bearer",
155
+ },
156
+ vllm: {
157
+ shape: "openai",
158
+ baseUrl: "http://localhost:8000/v1",
159
+ auth: "bearer",
160
+ },
161
+ // ── OAuth — the caller owns the sign-in flow and hands over the token ───
162
+ claude: {
163
+ shape: "anthropic",
164
+ baseUrl: "https://api.anthropic.com",
165
+ auth: "oauth",
166
+ defaultModel: "claude-sonnet-4-6",
167
+ models: ["claude-sonnet-4-6", "claude-opus-5"],
168
+ // The beta flag is what switches the API into OAuth-token mode (measured
169
+ // by tabrunner's Claude plan sign-in).
170
+ headers: { "anthropic-beta": "claude-code-20250219,oauth-2025-04-20" },
171
+ },
172
+ /** The Codex backend behind a ChatGPT sign-in — Responses wire, no public
173
+ * model list, so these ids are the list. */
174
+ chatgpt: {
175
+ shape: "responses",
176
+ baseUrl: "https://chatgpt.com/backend-api/codex",
177
+ auth: "oauth",
178
+ defaultModel: "gpt-5.3-codex",
179
+ models: ["gpt-5.3-codex", "gpt-5.5", "gpt-5.4-mini"],
180
+ },
181
+ /** Kimi's coding endpoint reached with a subscription token instead of a
182
+ * key — Kimi bills the two separately. */
183
+ "kimi-plan": {
184
+ shape: "anthropic",
185
+ baseUrl: "https://api.kimi.ai/coding",
186
+ auth: "oauth",
187
+ defaultModel: "kimi-for-coding",
188
+ },
189
+ "github-copilot": {
190
+ shape: "openai",
191
+ baseUrl: "https://api.githubcopilot.com",
192
+ auth: "oauth",
193
+ defaultModel: "gpt-5.6-sol",
194
+ models: ["gpt-5.6-sol", "claude-opus-5", "claude-opus-4.8", "kimi-k2.7-code"],
195
+ },
196
+ };
197
+ /** Every valid preset id — the factory's unknown-id error lists these. */
198
+ export const PRESET_IDS = Object.keys(PROVIDER_PRESETS);
199
+ //# sourceMappingURL=presets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,15 @@ export interface AnthropicConfig {
21
21
  /** Send the key as a Bearer instead of `x-api-key` — what a subscription
22
22
  * access token needs. */
23
23
  bearer?: boolean;
24
+ /** Say "no thinking" with an explicit `thinking: { type: "disabled" }` when
25
+ * effort resolves to none, instead of omitting the field. For endpoints
26
+ * where an absent field means the MODEL's default, not off — Z.ai's coding
27
+ * endpoint reads silence as thinking ON for reasoning-mandatory models like
28
+ * GLM 5.3 Flash (measured 2026-09-13: omit → thinking block; disabled →
29
+ * none), and it accepts the marker natively. Native Anthropic has no such
30
+ * marker and defaults to off when the field is absent, so leave this unset
31
+ * there. */
32
+ explicitNone?: boolean;
24
33
  }
25
34
  export declare function toAnthropicMessages(messages: readonly ChatMessage[]): {
26
35
  system?: unknown[];
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,WAAW,EAEX,MAAM,EAEN,QAAQ,EAIT,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd;wCACoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;uEAEmE;IACnE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB;wEACoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;8BAC0B;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAsFD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG;IACrE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IACnB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB,CAqDA;AAyBD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,GAAG,QAAQ,CAwJzE"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,WAAW,EAEX,MAAM,EAEN,QAAQ,EAIT,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd;wCACoC;IACpC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;uEAEmE;IACnE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB;wEACoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC;8BAC0B;IAC1B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;;;iBAOa;IACb,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAsFD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG;IACrE,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC;IACnB,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB,CAqDA;AA2BD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,GAAG,QAAQ,CAuKzE"}
@@ -184,11 +184,16 @@ export function createAnthropicProvider(config) {
184
184
  delete request.temperature;
185
185
  delete request.top_p;
186
186
  }
187
+ else if (config.explicitNone) {
188
+ // The one dialect where silence means the model default — which is ON
189
+ // for a reasoning-mandatory model — so "none" has to be said out loud.
190
+ request.thinking = { type: "disabled" };
191
+ }
187
192
  // Anthropic reports cache reads and writes as fields of their OWN,
188
193
  // EXCLUDED from `input_tokens` — where the OpenAI shapes report a cached
189
194
  // subset already inside the prompt count. Reconciling here is what keeps
190
195
  // one usage record meaningful across both, and a cost figure honest.
191
- let inputTokens = 0;
196
+ let freshInputTokens = 0;
192
197
  let cachedInputTokens = 0;
193
198
  let cacheWriteTokens = 0;
194
199
  let outputTokens = 0;
@@ -226,7 +231,7 @@ export function createAnthropicProvider(config) {
226
231
  const usage = event.message?.usage;
227
232
  cachedInputTokens = usage?.cache_read_input_tokens ?? 0;
228
233
  cacheWriteTokens = usage?.cache_creation_input_tokens ?? 0;
229
- inputTokens = (usage?.input_tokens ?? 0) + cachedInputTokens + cacheWriteTokens;
234
+ freshInputTokens = usage?.input_tokens ?? 0;
230
235
  break;
231
236
  }
232
237
  case "content_block_start": {
@@ -264,6 +269,12 @@ export function createAnthropicProvider(config) {
264
269
  toolCall = null;
265
270
  break;
266
271
  case "message_delta": {
272
+ // Z.ai starts with zero input usage and reports the real totals here.
273
+ // These are cumulative counters, not increments. Native Anthropic
274
+ // usually sends only output_tokens here, so absent fields retain theirs.
275
+ freshInputTokens = event.usage?.input_tokens ?? freshInputTokens;
276
+ cachedInputTokens = event.usage?.cache_read_input_tokens ?? cachedInputTokens;
277
+ cacheWriteTokens = event.usage?.cache_creation_input_tokens ?? cacheWriteTokens;
267
278
  outputTokens = event.usage?.output_tokens ?? outputTokens;
268
279
  const finishReason = mapStopReason(event.delta?.stop_reason);
269
280
  if (finishReason)
@@ -273,7 +284,12 @@ export function createAnthropicProvider(config) {
273
284
  case "message_stop":
274
285
  yield {
275
286
  type: "usage",
276
- usage: { inputTokens, cachedInputTokens, cacheWriteTokens, outputTokens },
287
+ usage: {
288
+ inputTokens: freshInputTokens + cachedInputTokens + cacheWriteTokens,
289
+ cachedInputTokens,
290
+ cacheWriteTokens,
291
+ outputTokens,
292
+ },
277
293
  };
278
294
  break;
279
295
  }
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}