@oh-my-pi/pi-catalog 18.13.0 → 18.13.2
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 +13 -0
- package/dist/types/provider-models/openai-compat.d.ts +11 -3
- package/package.json +4 -4
- package/src/compat/rules/providers/kimi-code.kdl +16 -0
- package/src/compat/rules/providers/moonshot.kdl +25 -0
- package/src/compat/rules/providers/openai-codex.kdl +13 -0
- package/src/compat/rules/providers/openai.kdl +4 -3
- package/src/compat/rules/runtime/behavior.kdl +8 -2
- package/src/compat/rules/taxonomy/kimi.kdl +7 -0
- package/src/compat/rules.json +1 -1
- package/src/models.json +1 -1
- package/src/provider-models/openai-compat.ts +87 -28
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [18.13.2] - 2026-10-27
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added LM Studio decision models to discovery: models LM Studio reports as `type: "decision"` are listed as `judge` models served over its `/v1/decisions` endpoint, alongside its chat models ([#17169](https://github.com/can1357/oh-my-pi/pull/17169) by [@richiestanaway](https://github.com/richiestanaway))
|
|
10
|
+
|
|
11
|
+
## [18.13.1] - 2026-10-27
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- Added GPT-6.1 Terra: `openai/gpt-6.1-terra` ships bundled ($1/$5, $0.05 cached, >272K long-context tier, 1.05M window), and Codex-discovered `gpt-6.1-terra`/`-wm` get API-equivalent pricing, the 922K extended-context maximum, and routing to Plus-or-higher accounts.
|
|
16
|
+
- Added Kimi K3.1 Pro and K3.1 Pro Highspeed support on Kimi Code (`k3.1-pro`, `k3.1-pro-highspeed`) and the Moonshot API (`kimi-k3.1-pro`, `kimi-k3.1-pro-highspeed`): official pricing ($2/$10 and $4/$20 per MTok), a 131K output cap, and K3's reasoning and wire contract ([#16901](https://github.com/can1357/oh-my-pi/pull/16901) by [@eggpeat](https://github.com/eggpeat))
|
|
17
|
+
|
|
5
18
|
## [18.13.0] - 2026-10-26
|
|
6
19
|
|
|
7
20
|
### Breaking Changes
|
|
@@ -377,24 +377,32 @@ export declare const KIMI_CODE_DEFAULT_MAX_TOKENS = 32000;
|
|
|
377
377
|
export declare function kimiCodeMaxTokens(modelId: string, fallback?: number): number;
|
|
378
378
|
export declare function kimiCodeMaxTokens(modelId: string, fallback: number | null): number | null;
|
|
379
379
|
export declare function kimiCodeModelManagerOptions(config?: KimiCodeModelManagerConfig): ModelManagerOptions<"openai-completions">;
|
|
380
|
-
/** Native LM Studio metadata keyed by model id from `/api/v0/models`. */
|
|
380
|
+
/** Native LM Studio metadata keyed by model id from `/api/v0/models` and `/api/v1/models`. */
|
|
381
381
|
export interface LmStudioNativeModelMetadata {
|
|
382
382
|
input: ("text" | "image")[];
|
|
383
383
|
contextWindow?: number;
|
|
384
|
+
/**
|
|
385
|
+
* LM Studio reports a decision model (`type: "decision"`): it answers typed
|
|
386
|
+
* questions on `/v1/decisions` and rejects chat completions.
|
|
387
|
+
*/
|
|
388
|
+
decision?: true;
|
|
384
389
|
}
|
|
385
390
|
/** Options for LM Studio's optional native metadata probe. */
|
|
386
391
|
export interface LmStudioNativeModelMetadataOptions {
|
|
387
392
|
headers?: Record<string, string>;
|
|
388
393
|
signal?: AbortSignal;
|
|
389
394
|
}
|
|
390
|
-
/**
|
|
395
|
+
/**
|
|
396
|
+
* Fetches LM Studio native model metadata used to mark VLM models as
|
|
397
|
+
* image-capable and decision models as judges.
|
|
398
|
+
*/
|
|
391
399
|
export declare function fetchLmStudioNativeModelMetadata(baseUrl: string, fetchImpl?: FetchImpl, options?: LmStudioNativeModelMetadataOptions): Promise<Map<string, LmStudioNativeModelMetadata> | null>;
|
|
392
400
|
export interface LmStudioModelManagerConfig {
|
|
393
401
|
apiKey?: string;
|
|
394
402
|
baseUrl?: string;
|
|
395
403
|
fetch?: FetchImpl;
|
|
396
404
|
}
|
|
397
|
-
export declare function lmStudioModelManagerOptions(config?: LmStudioModelManagerConfig): ModelManagerOptions<
|
|
405
|
+
export declare function lmStudioModelManagerOptions(config?: LmStudioModelManagerConfig): ModelManagerOptions<Api>;
|
|
398
406
|
export interface SyntheticModelManagerConfig {
|
|
399
407
|
apiKey?: string;
|
|
400
408
|
baseUrl?: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oh-my-pi/pi-catalog",
|
|
3
|
-
"version": "18.13.
|
|
3
|
+
"version": "18.13.2",
|
|
4
4
|
"description": "Model catalog for omp: bundled model database, provider discovery descriptors, model identity, classification, and equivalence",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -93,12 +93,12 @@
|
|
|
93
93
|
"gen:proto": "bun scripts/generate-protocols.ts"
|
|
94
94
|
},
|
|
95
95
|
"dependencies": {
|
|
96
|
-
"@oh-my-pi/omptype": "18.13.
|
|
97
|
-
"@oh-my-pi/pi-utils": "18.13.
|
|
96
|
+
"@oh-my-pi/omptype": "18.13.2",
|
|
97
|
+
"@oh-my-pi/pi-utils": "18.13.2"
|
|
98
98
|
},
|
|
99
99
|
"devDependencies": {
|
|
100
100
|
"@bgotink/kdl": "0.4.0",
|
|
101
|
-
"@oh-my-pi/pi-ai": "18.13.
|
|
101
|
+
"@oh-my-pi/pi-ai": "18.13.2",
|
|
102
102
|
"@types/bun": "^1.3.14"
|
|
103
103
|
},
|
|
104
104
|
"engines": {
|
|
@@ -55,6 +55,22 @@ provider "kimi-code" {
|
|
|
55
55
|
cache-write 3.0
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
+
models "k3.1-pro" {
|
|
59
|
+
cost-fallback {
|
|
60
|
+
input 2.0
|
|
61
|
+
output 10.0
|
|
62
|
+
cache-read 0.2
|
|
63
|
+
cache-write 2.0
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
models "k3.1-pro-highspeed" {
|
|
67
|
+
cost-fallback {
|
|
68
|
+
input 4.0
|
|
69
|
+
output 20.0
|
|
70
|
+
cache-read 0.2
|
|
71
|
+
cache-write 4.0
|
|
72
|
+
}
|
|
73
|
+
}
|
|
58
74
|
models "kimi-for-coding" {
|
|
59
75
|
cost-fallback {
|
|
60
76
|
input 0.95
|
|
@@ -14,6 +14,12 @@ provider "moonshot" {
|
|
|
14
14
|
thinking-format "zai"
|
|
15
15
|
family "k3" {
|
|
16
16
|
thinking-format "openai"
|
|
17
|
+
// K3 and K3.1 Pro default `max_completion_tokens` to 131072 and
|
|
18
|
+
// accept up to the whole 1M window; the shared catalog reports that
|
|
19
|
+
// ceiling as the output limit, leaving no room for input. Pin the
|
|
20
|
+
// documented default, as `model-limits` does for /models rows.
|
|
21
|
+
// https://platform.kimi.ai/docs/guide/kimi-k3-1-pro-quickstart
|
|
22
|
+
max-tokens-ceiling 131072
|
|
17
23
|
}
|
|
18
24
|
thinking-mode "effort"
|
|
19
25
|
}
|
|
@@ -44,6 +50,25 @@ provider "moonshot" {
|
|
|
44
50
|
cache-write 3.0
|
|
45
51
|
}
|
|
46
52
|
}
|
|
53
|
+
// Official K3.1 Pro rates. The discovery mapper seeds K3 list pricing on
|
|
54
|
+
// every $0 K3-family row, so these must patch rather than fall back.
|
|
55
|
+
// https://platform.kimi.ai/docs/pricing/chat
|
|
56
|
+
models "kimi-k3.1-pro" {
|
|
57
|
+
cost-patch {
|
|
58
|
+
input 2.0
|
|
59
|
+
output 10.0
|
|
60
|
+
cache-read 0.2
|
|
61
|
+
cache-write 2.0
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
models "kimi-k3.1-pro-highspeed" {
|
|
65
|
+
cost-patch {
|
|
66
|
+
input 4.0
|
|
67
|
+
output 20.0
|
|
68
|
+
cache-read 0.2
|
|
69
|
+
cache-write 4.0
|
|
70
|
+
}
|
|
71
|
+
}
|
|
47
72
|
// The /models roster carries no modality metadata for the named vision/vl
|
|
48
73
|
// SKUs; the bounded id token is the census signal.
|
|
49
74
|
models token="vision" {
|
|
@@ -140,6 +140,19 @@ provider "openai-codex" {
|
|
|
140
140
|
ultrafast 8
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
|
+
// GPT-6.1 Terra lists at half GPT-6.1 Sol: $1/$5 with $0.05 cached input
|
|
144
|
+
// (OpenAI API docs, 2026-10-26). OpenAI documents 922K max input (1.05M
|
|
145
|
+
// total); the curated maximum applies only with extended context on, and a
|
|
146
|
+
// higher live maximum still wins. Codex ships no Ultrafast tier for it.
|
|
147
|
+
models "gpt-6.1-terra" "gpt-6.1-terra-wm" {
|
|
148
|
+
cost-patch {
|
|
149
|
+
input 1.0
|
|
150
|
+
output 5.0
|
|
151
|
+
cache-read 0.05
|
|
152
|
+
cache-write 0
|
|
153
|
+
}
|
|
154
|
+
max-context-window 922000
|
|
155
|
+
}
|
|
143
156
|
models "gpt-6-luna" "gpt-6-luna-wm" {
|
|
144
157
|
cost-patch {
|
|
145
158
|
input 0.1
|
|
@@ -204,9 +204,10 @@ provider "openai" {
|
|
|
204
204
|
cache-write 25.0
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
|
-
// GPT-6 Sol
|
|
208
|
-
// Derive the tier from each API card so upstream price
|
|
209
|
-
|
|
207
|
+
// GPT-6 Sol, GPT-6 Luna, and GPT-6.1 Terra use the same >272K whole-request
|
|
208
|
+
// multipliers as Astra. Derive the tier from each API card so upstream price
|
|
209
|
+
// changes carry through.
|
|
210
|
+
models "gpt-6-sol" "gpt-6-luna" "gpt-6.1-terra" {
|
|
210
211
|
long-context-cost {
|
|
211
212
|
input-threshold 272000
|
|
212
213
|
multiplier 2.0
|
|
@@ -114,11 +114,14 @@ behavior {
|
|
|
114
114
|
"aster-07-15" "gpt-image-2.5-sunburst" "gpt-image-2.5-flare" "gemini-3-pro-image-preview"
|
|
115
115
|
}
|
|
116
116
|
// Subscription eligibility for model-aware Codex credential routing.
|
|
117
|
+
// GPT-6.1 Terra launched for Plus, Pro, Enterprise, and Edu, not Free/Go
|
|
118
|
+
// (https://openai.com/index/introducing-gpt-6-1-terra/, 2026-10-26).
|
|
117
119
|
plan-requirement provider="openai-codex" {
|
|
118
120
|
tier "pro" substring="-spark"
|
|
119
121
|
tier "paid" exact="gpt-5.6" exact="gpt-5.6-sol" exact="gpt-5.6-sol-pro" \
|
|
120
122
|
exact="gpt-5.6-luna" exact="gpt-5.6-luna-pro" glob="*/gpt-5.6" glob="*/gpt-5.6-sol" \
|
|
121
|
-
glob="*/gpt-5.6-sol-pro" glob="*/gpt-5.6-luna" glob="*/gpt-5.6-luna-pro"
|
|
123
|
+
glob="*/gpt-5.6-sol-pro" glob="*/gpt-5.6-luna" glob="*/gpt-5.6-luna-pro" \
|
|
124
|
+
glob="gpt-6.1-terra*" glob="*/gpt-6.1-terra*"
|
|
122
125
|
}
|
|
123
126
|
|
|
124
127
|
// Z.AI and Zhipu emit timezone-naive account-reset wall clocks in Beijing
|
|
@@ -335,11 +338,14 @@ behavior {
|
|
|
335
338
|
}
|
|
336
339
|
// Kimi Code's /coding/v1/models envelope carries no output-limit field;
|
|
337
340
|
// these are the documented per-family caps (models.dev `kimi-for-coding`
|
|
338
|
-
// and `moonshotai` kimi-k3 entries, #6711
|
|
341
|
+
// and `moonshotai` kimi-k3 entries, #6711; K3.1 Pro's documented
|
|
342
|
+
// `max_completion_tokens` default). Legacy K2 rows keep their
|
|
339
343
|
// discovery-reported values.
|
|
340
344
|
model-limits provider="kimi-code" {
|
|
341
345
|
limits "k3" max-tokens=131072
|
|
342
346
|
limits "k3-256k" max-tokens=131072
|
|
347
|
+
limits "k3.1-pro" max-tokens=131072
|
|
348
|
+
limits "k3.1-pro-highspeed" max-tokens=131072
|
|
343
349
|
limits "kimi-for-coding" max-tokens=32768
|
|
344
350
|
limits "kimi-for-coding-highspeed" max-tokens=32768
|
|
345
351
|
}
|
|
@@ -19,6 +19,13 @@ class "kimi" {
|
|
|
19
19
|
family "k3" glob="k3"
|
|
20
20
|
family "k3" glob="k3-256k"
|
|
21
21
|
|
|
22
|
+
// K3.1 Pro is a post-trained K3 with K3's full request contract (Moonshot
|
|
23
|
+
// documents identical parameter constraints), so it keeps family `k3` and
|
|
24
|
+
// inherits every K3 lineage rule. The revision gives it its own weights
|
|
25
|
+
// identity, so K3 reasoning never replays natively into K3.1 Pro. Kimi
|
|
26
|
+
// Code's bare `k3.1-pro*` ids reach no class matcher without these.
|
|
27
|
+
override id="kimi-k3-1-pro" glob="*k3.1-pro" class="kimi" family="k3" revision="3.1" rationale="K3.1 Pro is a post-trained K3 sharing K3's parameter contract" provenance="https://platform.kimi.ai/docs/api/models-overview"
|
|
28
|
+
override id="kimi-k3-1-pro-highspeed" glob="*k3.1-pro-highspeed" class="kimi" family="k3" revision="3.1" rationale="K3.1 Pro Highspeed serves K3.1 Pro faster with identical parameter constraints" provenance="https://platform.kimi.ai/docs/api/models-overview"
|
|
22
29
|
override id="kilo-kimi-k2-thinking-product" provider="kilo" model="kimi-k2-thinking" logical="moonshotai/kimi-k2-thinking" class="kimi" rationale="Oracle exposes this independently priced product rather than an effort route" provenance="fixtures/llm-oracle/catalog/models.normalized.json"
|
|
23
30
|
override id="openrouter-kimi-k2-thinking-product" provider="openrouter" model="kimi-k2-thinking" logical="moonshotai/kimi-k2-thinking" class="kimi" rationale="Oracle exposes this independently priced product rather than an effort route" provenance="fixtures/llm-oracle/catalog/models.normalized.json"
|
|
24
31
|
override id="vercel-kimi-k2-thinking-product" provider="vercel-ai-gateway" model="kimi-k2-thinking" logical="moonshotai/kimi-k2-thinking" class="kimi" rationale="Oracle exposes this independently priced product rather than an effort route" provenance="fixtures/llm-oracle/catalog/models.normalized.json"
|