@linxiraos/pi-catalog 1.1.27 → 1.2.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/CHANGELOG.md +4 -17
- package/dist/types/compat/auth-ids.d.ts +2 -2
- package/dist/types/compat/judgment-questions.d.ts +7 -0
- package/dist/types/compat/prompt-cache-lookback.d.ts +7 -0
- package/dist/types/compat/provider-ids.d.ts +1 -1
- package/dist/types/compat/reasoning-carry.d.ts +21 -0
- package/dist/types/compat/request-size.d.ts +7 -0
- package/dist/types/compat/taxonomy.d.ts +0 -10
- package/dist/types/compat/types.d.ts +4 -0
- package/dist/types/discovery/antigravity.d.ts +13 -3
- package/dist/types/model-manager.d.ts +16 -0
- package/dist/types/provider-models/account-access.d.ts +11 -0
- package/dist/types/provider-models/google.d.ts +23 -1
- package/dist/types/provider-models/openai-compat.d.ts +19 -1
- package/dist/types/provider-models/special.d.ts +2 -0
- package/dist/types/types.d.ts +106 -20
- package/dist/types/wire/cloudflare-ai-gateway.d.ts +0 -10
- package/dist/types/wire/cloudflare.d.ts +10 -0
- package/dist/types/wire/factory-droid.d.ts +1 -1
- package/package.json +4 -4
- package/src/build.ts +39 -35
- package/src/compat/auth-ids.ts +4 -0
- package/src/compat/axes.ts +37 -3
- package/src/compat/cascade.ts +6 -1
- package/src/compat/judgment-questions.ts +12 -0
- package/src/compat/prompt-cache-lookback.ts +23 -0
- package/src/compat/provider-ids.d.ts +1 -1
- package/src/compat/provider-ids.ts +2 -0
- package/src/compat/reasoning-carry.ts +64 -0
- package/src/compat/request-size.ts +25 -0
- package/src/compat/resolve.ts +16 -2
- package/src/compat/rules/README.md +12 -2
- package/src/compat/rules/auth/_order.kdl +2 -2
- package/src/compat/rules/auth/cloudflare-workers-ai.kdl +9 -0
- package/src/compat/rules/auth/coralbricks.kdl +13 -0
- package/src/compat/rules/auth/minimax-code-cn.kdl +1 -1
- package/src/compat/rules/auth/minimax-code.kdl +1 -1
- package/src/compat/rules/auth/openai-codex.kdl +1 -1
- package/src/compat/rules/auth/stencil.kdl +1 -1
- package/src/compat/rules/classes/anthropic.kdl +87 -1
- package/src/compat/rules/classes/deepseek.kdl +6 -0
- package/src/compat/rules/classes/glm.kdl +16 -7
- package/src/compat/rules/classes/kimi.kdl +8 -0
- package/src/compat/rules/classes/minimax.kdl +31 -1
- package/src/compat/rules/classes/openai.kdl +5 -3
- package/src/compat/rules/classes/qwen.kdl +2 -1
- package/src/compat/rules/providers/abliteration.kdl +7 -0
- package/src/compat/rules/providers/anthropic.kdl +13 -0
- package/src/compat/rules/providers/apple.kdl +1 -0
- package/src/compat/rules/providers/cloudflare-workers-ai.kdl +34 -0
- package/src/compat/rules/providers/coralbricks.kdl +62 -0
- package/src/compat/rules/providers/cursor.kdl +22 -0
- package/src/compat/rules/providers/devin.kdl +2 -2
- package/src/compat/rules/providers/factory-droid.kdl +77 -13
- package/src/compat/rules/providers/github-copilot.kdl +29 -0
- package/src/compat/rules/providers/groq.kdl +21 -0
- package/src/compat/rules/providers/judgment-questions.kdl +53 -0
- package/src/compat/rules/providers/litellm.kdl +4 -1
- package/src/compat/rules/providers/minimax-code-cn.kdl +10 -5
- package/src/compat/rules/providers/minimax-code.kdl +10 -5
- package/src/compat/rules/providers/mistral.kdl +25 -1
- package/src/compat/rules/providers/moonshot.kdl +11 -0
- package/src/compat/rules/providers/openai-codex.kdl +17 -13
- package/src/compat/rules/providers/openai.kdl +22 -0
- package/src/compat/rules/providers/opencode-zen.kdl +20 -0
- package/src/compat/rules/providers/openrouter.kdl +6 -0
- package/src/compat/rules/providers/zhipu-coding-plan.kdl +10 -0
- package/src/compat/rules/runtime/behavior.kdl +7 -4
- package/src/compat/rules/taxonomy/_collapse.kdl +18 -0
- package/src/compat/rules.json +1 -1
- package/src/compat/taxonomy.d.ts +0 -10
- package/src/compat/taxonomy.ts +3 -3
- package/src/compat/types.d.ts +4 -0
- package/src/compat/types.ts +4 -0
- package/src/discovery/antigravity.d.ts +13 -3
- package/src/discovery/antigravity.ts +33 -17
- package/src/discovery/cursor.ts +2 -1
- package/src/discovery/devin.ts +20 -2
- package/src/model-cache.ts +113 -47
- package/src/model-manager.d.ts +16 -0
- package/src/model-manager.ts +107 -41
- package/src/model-tokenizer.ts +3 -0
- package/src/models.json +1 -1
- package/src/provider-models/account-access.d.ts +11 -0
- package/src/provider-models/account-access.ts +30 -0
- package/src/provider-models/cache-provider-id.ts +3 -2
- package/src/provider-models/descriptors.ts +4 -0
- package/src/provider-models/google.d.ts +23 -1
- package/src/provider-models/google.ts +70 -14
- package/src/provider-models/openai-compat.d.ts +19 -1
- package/src/provider-models/openai-compat.ts +215 -31
- package/src/provider-models/special.d.ts +2 -0
- package/src/provider-models/special.ts +15 -18
- package/src/types.d.ts +106 -20
- package/src/types.ts +149 -17
- package/src/wire/cloudflare-ai-gateway.d.ts +0 -10
- package/src/wire/cloudflare-ai-gateway.ts +0 -36
- package/src/wire/cloudflare.ts +40 -0
- package/src/wire/factory-droid.d.ts +1 -1
- package/src/wire/factory-droid.ts +1 -1
|
@@ -9,7 +9,13 @@
|
|
|
9
9
|
// are never undercounted; only Opus/Sonnet/Haiku revisions known to predate
|
|
10
10
|
// 4.7 take the standard tier. Separator-collapsed revisions parse as two
|
|
11
11
|
// digits (`claude-opus-45` is Opus 4.5 → 45), so 10–46 is standard too.
|
|
12
|
+
// Claude's prompt cache finds an earlier request's entry only within 20 block
|
|
13
|
+
// positions back from a breakpoint, counting the breakpoint; a run of
|
|
14
|
+
// consecutive tool_use or tool_result blocks is one position. Warm-cache
|
|
15
|
+
// tool-result pruning keeps its rewrites inside this window.
|
|
16
|
+
// https://platform.claude.com/docs/en/build-with-claude/prompt-caching
|
|
12
17
|
class "anthropic" {
|
|
18
|
+
prompt-cache-lookback 20
|
|
13
19
|
image-tokenization {
|
|
14
20
|
regime "anthropic-patch"
|
|
15
21
|
max-edge 2576
|
|
@@ -72,7 +78,7 @@ class "anthropic" {
|
|
|
72
78
|
thinking-prefix-binding #true
|
|
73
79
|
}
|
|
74
80
|
}
|
|
75
|
-
// Adaptive Claude (Opus 4.7+, Sonnet/Fable/Mythos 5+) rejects explicit
|
|
81
|
+
// Adaptive Claude (Opus 4.7+, Sonnet/Fable/Mythos 5+, Haiku 5.5+) rejects explicit
|
|
76
82
|
// sampling params (`temperature`, `top_p`, `top_k`) with a 400 on every
|
|
77
83
|
// serving host. The `<10` bound keeps whole-number revisions such as
|
|
78
84
|
// `claude-opus-45` (Opus 4.5) out of the range.
|
|
@@ -96,6 +102,22 @@ class "anthropic" {
|
|
|
96
102
|
supports-sampling-params #false
|
|
97
103
|
}
|
|
98
104
|
}
|
|
105
|
+
family "haiku" {
|
|
106
|
+
revision ">=5.5 <10" {
|
|
107
|
+
supports-sampling-params #false
|
|
108
|
+
}
|
|
109
|
+
// Haiku 5.5 bills every rate 5x for prompts over 100K. Derived from each
|
|
110
|
+
// host's list price so non-Anthropic hosts get the band too; the Claude
|
|
111
|
+
// API and Cursor pin absolute rates, and GitHub Copilot opts out because
|
|
112
|
+
// its long tier is the `-1m` sibling row.
|
|
113
|
+
// https://platform.claude.com/docs/en/models/haiku-5-5/overview#pricing
|
|
114
|
+
revision ">=5.5 <6" {
|
|
115
|
+
long-context-cost {
|
|
116
|
+
input-threshold 100000
|
|
117
|
+
multiplier 5.0
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
99
121
|
// On-demand compaction (compact-2026-09-04) works on the Claude API, Vertex,
|
|
100
122
|
// and Amazon Bedrock's `/anthropic` routes, not Bedrock Converse.
|
|
101
123
|
// Foundry / Claude Platform on AWS are first-party Anthropic routes whose
|
|
@@ -121,6 +143,11 @@ class "anthropic" {
|
|
|
121
143
|
supports-server-compaction #true
|
|
122
144
|
}
|
|
123
145
|
}
|
|
146
|
+
family "haiku" {
|
|
147
|
+
revision ">=5.5 <6" {
|
|
148
|
+
supports-server-compaction #true
|
|
149
|
+
}
|
|
150
|
+
}
|
|
124
151
|
models "claude-mythos-preview" {
|
|
125
152
|
supports-server-compaction #true
|
|
126
153
|
}
|
|
@@ -173,6 +200,15 @@ class "anthropic" {
|
|
|
173
200
|
thinking-prefix-binding #true
|
|
174
201
|
}
|
|
175
202
|
}
|
|
203
|
+
// Haiku 5.5 binds signed thinking to the exact preceding conversation like
|
|
204
|
+
// Sonnet 5.5. It accepts a forced `tool_choice` (the response just skips
|
|
205
|
+
// thinking), so it keeps forced tool selection.
|
|
206
|
+
// https://platform.claude.com/docs/en/models/haiku-5-5/migration-guide
|
|
207
|
+
family "haiku" {
|
|
208
|
+
revision ">=5.5 <6" {
|
|
209
|
+
thinking-prefix-binding #true
|
|
210
|
+
}
|
|
211
|
+
}
|
|
176
212
|
on "anthropic" "cloudflare-ai-gateway" "google-vertex" {
|
|
177
213
|
family "fable" {
|
|
178
214
|
revision ">=5" {
|
|
@@ -200,6 +236,13 @@ class "anthropic" {
|
|
|
200
236
|
supports-turn-scoped-system #true
|
|
201
237
|
}
|
|
202
238
|
}
|
|
239
|
+
family "haiku" {
|
|
240
|
+
revision ">=5.5 <6" {
|
|
241
|
+
supports-mid-conversation-system #true
|
|
242
|
+
supports-mid-conversation-tool-changes #true
|
|
243
|
+
supports-turn-scoped-system #true
|
|
244
|
+
}
|
|
245
|
+
}
|
|
203
246
|
family "opus" {
|
|
204
247
|
revision ">=4.8" {
|
|
205
248
|
supports-mid-conversation-system #true
|
|
@@ -230,6 +273,13 @@ class "anthropic" {
|
|
|
230
273
|
supports-per-message-effort #true
|
|
231
274
|
}
|
|
232
275
|
}
|
|
276
|
+
// Haiku 5.5 mirrors Sonnet 5.5; Vertex stays off until verified.
|
|
277
|
+
family "haiku" {
|
|
278
|
+
revision ">=5.5 <6" {
|
|
279
|
+
supports-thinking-binding-controls #true
|
|
280
|
+
supports-per-message-effort #true
|
|
281
|
+
}
|
|
282
|
+
}
|
|
233
283
|
family "opus" {
|
|
234
284
|
revision ">=5" {
|
|
235
285
|
supports-per-message-effort #true
|
|
@@ -257,6 +307,14 @@ class "anthropic" {
|
|
|
257
307
|
"google-vertex" "opencode-zen" "snowflake" "vercel-ai-gateway" {
|
|
258
308
|
family "haiku" {
|
|
259
309
|
thinking-mode "budget"
|
|
310
|
+
// Haiku 5.5 is the first adaptive Haiku: `budget_tokens` is a 400.
|
|
311
|
+
// An omitted `thinking` is adaptive, but unlike Sonnet/Opus 5.5 it
|
|
312
|
+
// accepts `disabled` at effort `high` or below, so Off is explicit.
|
|
313
|
+
// https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/prompting-claude-haiku-5-5#use-effort-to-control-thinking
|
|
314
|
+
revision ">=5.5 <6" {
|
|
315
|
+
thinking-mode "anthropic-adaptive"
|
|
316
|
+
disabled-thinking "disabled"
|
|
317
|
+
}
|
|
260
318
|
}
|
|
261
319
|
}
|
|
262
320
|
on "amazon-bedrock" "anthropic" "cloudflare-ai-gateway" "github-copilot" "gitlab-duo" \
|
|
@@ -365,6 +423,34 @@ class "anthropic" {
|
|
|
365
423
|
max-tokens 128000
|
|
366
424
|
}
|
|
367
425
|
}
|
|
426
|
+
// /v1/models reports neither reasoning, vision, pricing nor limits for
|
|
427
|
+
// Haiku 5.5, so a discovered row would materialize as a text-only,
|
|
428
|
+
// unpriced, non-reasoning model; pin the model card. Prompts over 100K
|
|
429
|
+
// input tokens bill the whole request at the long-context rates.
|
|
430
|
+
// https://platform.claude.com/docs/en/models/haiku-5-5/overview
|
|
431
|
+
family "haiku" {
|
|
432
|
+
revision ">=5.5 <6" {
|
|
433
|
+
thinking-upgrade-neutral #true
|
|
434
|
+
input-modalities "text" "image"
|
|
435
|
+
cost-patch {
|
|
436
|
+
input 0.1
|
|
437
|
+
output 0.5
|
|
438
|
+
cache-read 0.01
|
|
439
|
+
cache-write 0.125
|
|
440
|
+
}
|
|
441
|
+
long-context-cost {
|
|
442
|
+
input-threshold 100000
|
|
443
|
+
input 0.5
|
|
444
|
+
output 2.5
|
|
445
|
+
cache-read 0.05
|
|
446
|
+
cache-write 0.625
|
|
447
|
+
}
|
|
448
|
+
limits-patch {
|
|
449
|
+
context-window 1000000
|
|
450
|
+
max-tokens 128000
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
}
|
|
368
454
|
family "mythos" {
|
|
369
455
|
cost-patch {
|
|
370
456
|
input 10.0
|
|
@@ -98,4 +98,10 @@ class "deepseek" {
|
|
|
98
98
|
// providers alike. On hosts that parse it the healer sees no markup.
|
|
99
99
|
stream-markup-healing-pattern "dsml"
|
|
100
100
|
thinking-loop-guard "deepseek"
|
|
101
|
+
// V4 reasoning reaches omp as its plaintext trace on every host, and the
|
|
102
|
+
// revision pins the weights (flash 4.0 / 4.1, pro 4.0). Earlier lineages
|
|
103
|
+
// classify too coarsely to carry: `r1` also matches the R1 distills.
|
|
104
|
+
revision ">=4" {
|
|
105
|
+
portable-reasoning #true
|
|
106
|
+
}
|
|
101
107
|
}
|
|
@@ -65,7 +65,7 @@ class "glm" {
|
|
|
65
65
|
// GLM Coding Plan: the selectable 1M-context served ids; pin them so
|
|
66
66
|
// endpoint discovery or older bundled fallbacks cannot regress to 200k.
|
|
67
67
|
on "zai" "zhipu-coding-plan" {
|
|
68
|
-
models "glm-5.2" "glm-5.3" "glm-5.3-flash" {
|
|
68
|
+
models "glm-5.2" "glm-5.3" "glm-5.3-flash" "glm-5.3-flashx" {
|
|
69
69
|
limits-patch {
|
|
70
70
|
context-window 1000000
|
|
71
71
|
max-tokens 131072
|
|
@@ -84,10 +84,9 @@ class "glm" {
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
}
|
|
87
|
-
//
|
|
88
|
-
// reports as text-only.
|
|
87
|
+
// GLM-5.3 Flash and FlashX accept native image input on their coding routes.
|
|
89
88
|
on "zai" "zhipu-coding-plan" {
|
|
90
|
-
models "glm-5.3-flash" {
|
|
89
|
+
models "glm-5.3-flash" "glm-5.3-flashx" {
|
|
91
90
|
input-modalities "text" "image"
|
|
92
91
|
}
|
|
93
92
|
}
|
|
@@ -99,17 +98,27 @@ class "glm" {
|
|
|
99
98
|
thinking-efforts "minimal" "low" "medium" "high"
|
|
100
99
|
}
|
|
101
100
|
}
|
|
102
|
-
// GLM-5.3+ coding SKUs (base/air/turbo/flash
|
|
101
|
+
// GLM-5.3+ coding SKUs (base/air/turbo/flash/flashx) expose a uniform
|
|
103
102
|
// wire-exact low/high/max reasoning-effort ladder on every host, thinking
|
|
104
103
|
// can no longer be disabled, and the default effort is max.
|
|
105
104
|
// residue: taxonomy ranks cannot separate these ids from the vision (`…v`)
|
|
106
|
-
// and
|
|
105
|
+
// and preview shapes that keep host dialects; the explicit priority resolves
|
|
107
106
|
// the intentional overlap with census host-dialect residues such as
|
|
108
107
|
// baseten's `zai-org/GLM-5*`.
|
|
109
|
-
models "*glm-5.3" "*glm-5.3-air" "*glm-5.3-turbo" "*glm-5.3-flash" "*glm-5.3:*" \
|
|
108
|
+
models "*glm-5.3" "*glm-5.3-air" "*glm-5.3-turbo" "*glm-5.3-flash" "*glm-5.3-flashx" "*glm-5.3:*" \
|
|
110
109
|
"*glm-5.3-flash-uncensored" "*glm-5.3-free" "*glm-5.3-highspeed" "*glm-5.3-fast" "*glm-5.3-flash-lab" priority=10 {
|
|
111
110
|
thinking-default-level "max"
|
|
112
111
|
thinking-efforts "low" "high" "max"
|
|
113
112
|
thinking-requires-effort #true
|
|
114
113
|
}
|
|
114
|
+
// GLM 5+ reasoning reaches omp as its plaintext trace on every host, and
|
|
115
|
+
// family plus revision pin the weights (glm-5.2, glm-5.3-flash, ...). GLM 4
|
|
116
|
+
// classifies too coarsely to carry: 4.0 also matches glm-4.5v and glm-4.6v.
|
|
117
|
+
revision ">=5" {
|
|
118
|
+
portable-reasoning #true
|
|
119
|
+
// residue: fine-tuned weights that classify as the base GLM revision.
|
|
120
|
+
models "*-uncensored" "*-cybersecurity" {
|
|
121
|
+
portable-reasoning #false
|
|
122
|
+
}
|
|
123
|
+
}
|
|
115
124
|
}
|
|
@@ -123,4 +123,12 @@ class "kimi" {
|
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
|
+
// K3 reasoning reaches omp as its plaintext trace on every host, and K3 was
|
|
127
|
+
// trained to read all of its earlier reasoning back (preserved thinking).
|
|
128
|
+
// A recall probe showed the reasoning slot of moonshot, factory-droid,
|
|
129
|
+
// openrouter and devin reaches the model, so K3 reasoning moves between
|
|
130
|
+
// those hosts natively instead of as visible `<think>` text.
|
|
131
|
+
family "k3" {
|
|
132
|
+
portable-reasoning #true
|
|
133
|
+
}
|
|
126
134
|
}
|
|
@@ -51,7 +51,7 @@ class "minimax" {
|
|
|
51
51
|
thinking-efforts "minimal" "low" "medium" "high" "xhigh"
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
on "minimax" "minimax-cn" "vercel-ai-gateway" {
|
|
54
|
+
on "minimax" "minimax-cn" "minimax-code" "minimax-code-cn" "vercel-ai-gateway" {
|
|
55
55
|
thinking-mode "anthropic-adaptive"
|
|
56
56
|
family "m2" {
|
|
57
57
|
// Replaces the Anthropic-route MiniMax effort remap table.
|
|
@@ -71,6 +71,26 @@ class "minimax" {
|
|
|
71
71
|
thinking-efforts "low" "medium" "high"
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
|
+
// MiniMax-M3.1-Flash-Preview always thinks (`thinking.type: "disabled"` and
|
|
75
|
+
// effort `none` 400 with error 2013) and tunes depth through
|
|
76
|
+
// `output_config.effort` from `low` to `max` (the default when omitted).
|
|
77
|
+
// The identity map replaces the M3 family's adaptive-tag-only map so each
|
|
78
|
+
// level reaches the wire. Like the M2 family, thinking cannot be turned off:
|
|
79
|
+
// `thinking-requires-effort` hides the off level and clamps forced-off
|
|
80
|
+
// requests to the lowest effort instead of sending `disabled`.
|
|
81
|
+
on "minimax" "minimax-cn" "minimax-code" "minimax-code-cn" {
|
|
82
|
+
models "MiniMax-M3.1-Flash-Preview" {
|
|
83
|
+
thinking-requires-effort #true
|
|
84
|
+
thinking-efforts "low" "medium" "high" "xhigh" "max"
|
|
85
|
+
thinking-effort-map {
|
|
86
|
+
low "low"
|
|
87
|
+
medium "medium"
|
|
88
|
+
high "high"
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
// Token Plan rows ride the Anthropic route; these OpenAI-only wire axes
|
|
93
|
+
// serve the legacy lightning rows that stay on the OpenAI-compatible one.
|
|
74
94
|
on "minimax-code" "minimax-code-cn" {
|
|
75
95
|
supports-reasoning-effort #false
|
|
76
96
|
supports-store #false
|
|
@@ -78,4 +98,14 @@ class "minimax" {
|
|
|
78
98
|
on "minimax-code" "minimax-code-cn" "wafer-serverless" {
|
|
79
99
|
reasoning-content-field "reasoning_content"
|
|
80
100
|
}
|
|
101
|
+
// M3 reasoning reaches omp as its plaintext trace on every host, and
|
|
102
|
+
// MiniMax asks agents to pass all earlier reasoning back.
|
|
103
|
+
family "m3" {
|
|
104
|
+
portable-reasoning #true
|
|
105
|
+
// residue: M3.1 Flash Preview classifies as family m3 (no revision is
|
|
106
|
+
// extracted), but it is a different model.
|
|
107
|
+
models "*m3.1*" {
|
|
108
|
+
portable-reasoning #false
|
|
109
|
+
}
|
|
110
|
+
}
|
|
81
111
|
}
|
|
@@ -49,10 +49,12 @@ class "openai" {
|
|
|
49
49
|
delegation-bias "restrained"
|
|
50
50
|
supports-steering #true
|
|
51
51
|
}
|
|
52
|
-
// GPT-6
|
|
52
|
+
// The GPT-6 family changes reasoning effort mid-conversation through a
|
|
53
53
|
// `configuration_update` input item so the request-level effort (and the
|
|
54
|
-
// cached prompt prefix) stays put
|
|
55
|
-
|
|
54
|
+
// cached prompt prefix) stays put. OpenAI's reasoning guide ("Change
|
|
55
|
+
// reasoning mid-conversation") documents it for the family, and Codex's
|
|
56
|
+
// `/models` reports `supports_reasoning_effort_updates` on every GPT-6 SKU.
|
|
57
|
+
revision ">=6 <7" {
|
|
56
58
|
supports-configuration-update #true
|
|
57
59
|
}
|
|
58
60
|
// Codex SKUs: the advertised 400K figure includes the output budget; the
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// Model-lineage compat for "qwen"; regenerated from the frozen census using class taxonomy selectors.
|
|
2
2
|
|
|
3
3
|
class "qwen" {
|
|
4
|
-
|
|
4
|
+
// Groq owns its Qwen effort ladder in providers/groq.kdl.
|
|
5
|
+
on "aiand" "aimlapi" "alibaba-coding-plan" "amazon-bedrock" "coreweave" "huggingface" \
|
|
5
6
|
"kilo" "nanogpt" "novita" "nvidia" "ollama-cloud" "openrouter" "synthetic" \
|
|
6
7
|
"together" "venice" "wafer-serverless" "zenmux" {
|
|
7
8
|
thinking-efforts "minimal" "low" "medium" "high"
|
|
@@ -37,4 +37,11 @@ provider "abliteration" {
|
|
|
37
37
|
|
|
38
38
|
include-encrypted-reasoning #false
|
|
39
39
|
stream-idle-timeout-ms 0
|
|
40
|
+
// Abliterated weights classify as the GLM revision they derive from, but
|
|
41
|
+
// they are modified weights: their reasoning is not carried to or from GLM.
|
|
42
|
+
class "glm" {
|
|
43
|
+
revision ">=5" {
|
|
44
|
+
portable-reasoning #false
|
|
45
|
+
}
|
|
46
|
+
}
|
|
40
47
|
}
|
|
@@ -34,6 +34,12 @@ provider "anthropic" {
|
|
|
34
34
|
cost input=2 output=10 cache-read=0.2 cache-write=2.5
|
|
35
35
|
limits context=1000000 max-tokens=128000
|
|
36
36
|
}
|
|
37
|
+
model "claude-haiku-5-5" name="Claude Haiku 5.5" {
|
|
38
|
+
reasoning #true
|
|
39
|
+
input "text" "image"
|
|
40
|
+
cost input=0.1 output=0.5 cache-read=0.01 cache-write=0.125
|
|
41
|
+
limits context=1000000 max-tokens=128000
|
|
42
|
+
}
|
|
37
43
|
model "claude-fable-5" name="Claude Fable 5" {
|
|
38
44
|
reasoning #true
|
|
39
45
|
input "text" "image"
|
|
@@ -68,6 +74,13 @@ provider "anthropic" {
|
|
|
68
74
|
// combines this fact with a per-request effective-URL check, so it never
|
|
69
75
|
// authorizes a block on its own.
|
|
70
76
|
first-party-provider #true
|
|
77
|
+
// Messages requests cap at 32 MB. Reserve 8 MB for text, tools, and JSON
|
|
78
|
+
// framing when retaining inline base64 images in a long conversation.
|
|
79
|
+
// Applied only on the official endpoint; a custom baseUrl has its own limit.
|
|
80
|
+
// https://platform.claude.com/docs/en/api/overview#request-size-limits
|
|
81
|
+
on-api "anthropic-messages" {
|
|
82
|
+
inline-image-byte-budget 24000000
|
|
83
|
+
}
|
|
71
84
|
class "anthropic" {
|
|
72
85
|
revision ">=3.7 <4.6" {
|
|
73
86
|
thinking-efforts "minimal" "low" "medium" "high" "xhigh"
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// Cloudflare Workers AI decision models. Clef and Clef Flash answer typed
|
|
2
|
+
// questions over JSON state with the TypeSafe System One body
|
|
3
|
+
// (`{model, state, questions}`) at
|
|
4
|
+
// `POST /client/v4/accounts/{account_id}/ai/run/@cf/cloudflare/<model>`.
|
|
5
|
+
// `<account>` in the base URL is resolved per request from the stored login
|
|
6
|
+
// credential (else `CLOUDFLARE_ACCOUNT_ID`).
|
|
7
|
+
|
|
8
|
+
provider "cloudflare-workers-ai" {
|
|
9
|
+
default-model "@cf/cloudflare/clef"
|
|
10
|
+
env "CLOUDFLARE_API_TOKEN" "CLOUDFLARE_AUTH_TOKEN"
|
|
11
|
+
|
|
12
|
+
// developers.cloudflare.com/workers-ai/models/clef and /clef-flash: both
|
|
13
|
+
// take text and image input and bill input tokens only.
|
|
14
|
+
seed api="workers-ai-systemone" base-url="https://api.cloudflare.com/client/v4/accounts/<account>/ai/run" bundle="always" {
|
|
15
|
+
model "@cf/cloudflare/clef" name="Clef" {
|
|
16
|
+
reasoning #false
|
|
17
|
+
input "text" "image"
|
|
18
|
+
cost input=0.24 output=0 cache-read=0 cache-write=0
|
|
19
|
+
limits context=65536
|
|
20
|
+
supports-tools #false
|
|
21
|
+
}
|
|
22
|
+
model "@cf/cloudflare/clef-flash" name="Clef Flash" {
|
|
23
|
+
reasoning #false
|
|
24
|
+
input "text" "image"
|
|
25
|
+
cost input=0.038 output=0 cache-read=0 cache-write=0
|
|
26
|
+
limits context=24576
|
|
27
|
+
supports-tools #false
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
models "*" {
|
|
32
|
+
kind "judge"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
// CoralBricks inference gateway deployment contract
|
|
2
|
+
// (https://www.coralbricks.ai/docs.md; catalog snapshot 2026-10-08).
|
|
3
|
+
//
|
|
4
|
+
// Coral serves open-weight models behind an OpenAI-compatible wire at
|
|
5
|
+
// https://inference.coralbricks.ai/v1 with a single bearer API key. The
|
|
6
|
+
// key-protected `GET /v1/models` publishes each row's context window,
|
|
7
|
+
// per-million pricing, and capability flags, and Coral documents those
|
|
8
|
+
// flags as authoritative (unsupported content answers
|
|
9
|
+
// `400 unsupported_content_type` rather than being dropped), so live
|
|
10
|
+
// discovery is the deployment truth and same-id rows on other hosts must
|
|
11
|
+
// not backfill capabilities or limits into this provider's rows.
|
|
12
|
+
provider "coralbricks" {
|
|
13
|
+
default-model "glm-5.3-fast"
|
|
14
|
+
// Official docs authenticate via `CORAL_API_KEY`
|
|
15
|
+
// (https://www.coralbricks.ai/docs.md#authentication); `CORALBRICKS_API_KEY`
|
|
16
|
+
// is the alias the Coral pi provider extension shipped with, kept as a
|
|
17
|
+
// compatibility fallback in precedence order.
|
|
18
|
+
env "CORAL_API_KEY" "CORALBRICKS_API_KEY"
|
|
19
|
+
dynamic-models-authoritative #true
|
|
20
|
+
skip-cross-provider-reference-fills #true
|
|
21
|
+
discovery label="CoralBricks"
|
|
22
|
+
|
|
23
|
+
// Reviewed snapshot of the public catalog
|
|
24
|
+
// (https://www.coralbricks.ai/api/public/models). Coral retired GLM 5.3
|
|
25
|
+
// Flash on 2026-10-07 and renamed the remaining slugs (`glm-5.3-fast`,
|
|
26
|
+
// `deepseek-v4.1-flash-fast`). The public rows list input/output rates
|
|
27
|
+
// only; cache-write rates come from Coral's published pricing and cached
|
|
28
|
+
// reads are $0 on every model. `/v1/models` needs a key, so generation
|
|
29
|
+
// without credentials bundles these rows; successful runtime discovery
|
|
30
|
+
// replaces them.
|
|
31
|
+
seed api="openai-completions" base-url="https://inference.coralbricks.ai/v1" bundle="always" {
|
|
32
|
+
model "glm-5.3-fast" name="GLM 5.3" {
|
|
33
|
+
reasoning #true
|
|
34
|
+
input "text"
|
|
35
|
+
cost input=1.12 output=4.4 cache-read=0 cache-write=1.68
|
|
36
|
+
limits context=1048576 max-tokens=131072
|
|
37
|
+
}
|
|
38
|
+
model "deepseek-v4.1-flash-fast" name="DeepSeek V4.1 Flash" {
|
|
39
|
+
reasoning #true
|
|
40
|
+
input "text" "image"
|
|
41
|
+
cost input=0.3 output=1.2 cache-read=0 cache-write=0.09
|
|
42
|
+
limits context=1048576 max-tokens=131072
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// DeepSeek V4.1 Flash is the one CoralBricks SKU that advertises a genuine
|
|
47
|
+
// off value (`none` in its reasoning-effort vocabulary, per the reasoning
|
|
48
|
+
// table at https://www.coralbricks.ai/docs.md#reasoning), so a
|
|
49
|
+
// thinking-off request disables reasoning instead of clamping to the
|
|
50
|
+
// lowest effort like the GLM SKUs.
|
|
51
|
+
models "deepseek-v4.1-flash-fast" {
|
|
52
|
+
reasoning-disable-mode "none-effort"
|
|
53
|
+
}
|
|
54
|
+
// Gateway request dialect, matching Coral's plain Chat Completions
|
|
55
|
+
// surface ("unchanged from what your existing SDK expects"): output caps
|
|
56
|
+
// ride `max_tokens`, system prompts ride the `system` role, and no
|
|
57
|
+
// `store` field is sent. Coral accepts unknown fields, so acceptance is
|
|
58
|
+
// not evidence the semantics are honored (same call as charm-hyper).
|
|
59
|
+
supports-developer-role #false
|
|
60
|
+
supports-store #false
|
|
61
|
+
max-tokens-field "max_tokens"
|
|
62
|
+
}
|
|
@@ -36,6 +36,10 @@ provider "cursor" {
|
|
|
36
36
|
input-modalities "text" "image"
|
|
37
37
|
context-window-floor 1000000
|
|
38
38
|
}
|
|
39
|
+
// Cursor's agent protocol relays thinking opaquely, so it is not
|
|
40
|
+
// verified as K3's full trace: Cursor K3 turns are not carried to
|
|
41
|
+
// other K3 hosts (Cursor itself refuses foreign history).
|
|
42
|
+
portable-reasoning #false
|
|
39
43
|
}
|
|
40
44
|
family "k2.7-code" {
|
|
41
45
|
// Cursor advertised Kimi K2.7 Code Context window 262k.
|
|
@@ -167,6 +171,24 @@ provider "cursor" {
|
|
|
167
171
|
cache-write 12.5
|
|
168
172
|
}
|
|
169
173
|
}
|
|
174
|
+
// Claude Haiku 5.5: $0.10/$0.50, cache $0.01/$0.125. Requests above
|
|
175
|
+
// 100k input tokens bill every leg at 5x ($0.50/$2.50, cache
|
|
176
|
+
// $0.05/$0.625), on the 1M lane too.
|
|
177
|
+
models "claude-haiku-5-5" "claude-haiku-5-5-1m" {
|
|
178
|
+
cost-patch {
|
|
179
|
+
input 0.1
|
|
180
|
+
output 0.5
|
|
181
|
+
cache-read 0.01
|
|
182
|
+
cache-write 0.125
|
|
183
|
+
}
|
|
184
|
+
long-context-cost {
|
|
185
|
+
input-threshold 100000
|
|
186
|
+
input 0.5
|
|
187
|
+
output 2.5
|
|
188
|
+
cache-read 0.05
|
|
189
|
+
cache-write 0.625
|
|
190
|
+
}
|
|
191
|
+
}
|
|
170
192
|
// Claude 4.7 Opus: $5/$25, cache $0.50/$6.25. Up to 1M same rates.
|
|
171
193
|
models "claude-opus-4-7-high" "claude-opus-4-7-low" "claude-opus-4-7-max" "claude-opus-4-7-medium" "claude-opus-4-7-xhigh" {
|
|
172
194
|
cost-patch {
|
|
@@ -14,8 +14,8 @@ provider "devin" {
|
|
|
14
14
|
// bundle would misstate every other account's entitlements and leave zombie
|
|
15
15
|
// rows behind (see CREDENTIAL_SCOPED_PROVIDERS in generate-models.ts). Both
|
|
16
16
|
// SWE-1.6 lanes are verified live against `GetCliModelConfigs`; the
|
|
17
|
-
// seed's `default-model` (`swe-1-6`) must resolve synchronously at
|
|
18
|
-
//
|
|
17
|
+
// seed's `default-model` (`swe-1-6`) must resolve synchronously at boot;
|
|
18
|
+
// discovery then replaces the seed and the account default it marks wins. Field
|
|
19
19
|
// shape mirrors `devinModelSpec` so seeded and discovered rows are
|
|
20
20
|
// indistinguishable downstream.
|
|
21
21
|
seed api="devin-agent" base-url="https://server.codeium.com" bundle="always" {
|