saros-proxy 0.10.1 → 0.10.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/README.md +12 -0
- package/dist/cli/opencode-config.js +3 -3
- package/dist/cli/opencode-config.js.map +1 -1
- package/dist/constants.d.ts +0 -1
- package/dist/constants.js +0 -160
- package/dist/constants.js.map +1 -1
- package/dist/models-catalog.d.ts +20 -0
- package/dist/models-catalog.js +55 -0
- package/dist/models-catalog.js.map +1 -0
- package/dist/models-fetcher.d.ts +2 -2
- package/dist/models-fetcher.js +4 -4
- package/dist/models-fetcher.js.map +1 -1
- package/dist/models-sync.d.ts +1 -1
- package/dist/models-sync.js +3 -3
- package/dist/models-sync.js.map +1 -1
- package/dist/proxy.js +23 -4
- package/dist/proxy.js.map +1 -1
- package/dist/token-usage.js +6 -3
- package/dist/token-usage.js.map +1 -1
- package/models.json +1440 -0
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -639,6 +639,17 @@ The model list written to each harness comes from the live provider catalogs (op
|
|
|
639
639
|
|
|
640
640
|
---
|
|
641
641
|
|
|
642
|
+
## What the proxy does *not* enforce
|
|
643
|
+
|
|
644
|
+
Two kinds of upstream quota are visible in the provider documentation but are **not** modelled by Saros, on purpose — the proxy rotates keys and reasons about keys, not about what a single model or plan allows:
|
|
645
|
+
|
|
646
|
+
- **Model-level free tiers (CommandCode).** `glyph-cluster:free` is capped at 100 requests/day, `beam:free` has no daily cap, and the `laguna-s-2.1-free` tiers cost no credits. Saros counts tokens per key (`token-usage.json`) and per model, but it does not refuse a request because a *model* reached its daily free quota — the upstream returns the error and the key's circuit breaker decides what happens next.
|
|
647
|
+
- **Plan windows (OpenCode Go).** The Go plan meters each model against `5-hour — 20% of the monthly limit`, `weekly — 50%` and `monthly — 100%`. Those windows belong to the subscription: `/zen/go/v1/usage` reports what was consumed, and Saros surfaces it, but the proxy does not predict window exhaustion or re-route on it.
|
|
648
|
+
|
|
649
|
+
Both are documented here so the behaviour is not mistaken for a bug. Requests through the alternate OpenAI/Anthropic surfaces (`/v1/responses`, `/v1/messages`) and through the decision endpoint (`/v1/systemone`) are forwarded and counted: streamed usage nested under `response.usage` and the `input_tokens`/`output_tokens` shape are booked like any other call.
|
|
650
|
+
|
|
651
|
+
---
|
|
652
|
+
|
|
642
653
|
## Troubleshooting
|
|
643
654
|
|
|
644
655
|
### Check proxy health
|
|
@@ -728,6 +739,7 @@ src/
|
|
|
728
739
|
providers/ — Multi-provider key abstraction (KeyProvider, adapters, identifyKey)
|
|
729
740
|
models-fetcher.ts — Upstream model list fetching + caching
|
|
730
741
|
models-sync.ts — Auto-sync models from upstream to opencode config
|
|
742
|
+
models-catalog.ts — Single source of truth: loads bundled models.json
|
|
731
743
|
cli/
|
|
732
744
|
setup.ts — Interactive setup wizard
|
|
733
745
|
daemon.ts — Background process management
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
import { constants, existsSync, readFileSync, writeFileSync, copyFileSync, mkdirSync } from 'node:fs';
|
|
8
8
|
import { dirname, join } from 'node:path';
|
|
9
9
|
import { homedir } from 'node:os';
|
|
10
|
-
import {
|
|
10
|
+
import { loadModelsCatalog } from '../models-catalog.js';
|
|
11
11
|
// ---------------------------------------------------------------------------
|
|
12
12
|
// JSONC support
|
|
13
13
|
// ---------------------------------------------------------------------------
|
|
@@ -119,8 +119,8 @@ export function loadModelsFromJson(configPath) {
|
|
|
119
119
|
// Fall through to bundled defaults
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
|
-
// Fallback: use bundled
|
|
123
|
-
return
|
|
122
|
+
// Fallback: use the bundled catalog
|
|
123
|
+
return loadModelsCatalog();
|
|
124
124
|
}
|
|
125
125
|
// ---------------------------------------------------------------------------
|
|
126
126
|
// Core update function
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencode-config.js","sourceRoot":"","sources":["../../src/cli/opencode-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACtG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"opencode-config.js","sourceRoot":"","sources":["../../src/cli/opencode-config.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -39,4 +39,3 @@ export declare const PROBE_LIVENESS_PROMPT = "Reply with the word 'pong' and not
|
|
|
39
39
|
export declare const PROBE_REASONING_PROMPT = "What is 2+2? Think step by step.";
|
|
40
40
|
export declare const PROBE_TOOL_CALLING_PROMPT = "What is the weather in Paris?";
|
|
41
41
|
export declare const DAEMON_SYNC_TIMEOUT_MS = 30000;
|
|
42
|
-
export declare const OPENCODE_MODELS: Record<string, unknown>;
|
package/dist/constants.js
CHANGED
|
@@ -51,164 +51,4 @@ export const PROBE_REASONING_PROMPT = 'What is 2+2? Think step by step.';
|
|
|
51
51
|
export const PROBE_TOOL_CALLING_PROMPT = 'What is the weather in Paris?';
|
|
52
52
|
// Daemon auto-sync timeout (how long to wait for upstream sync before exiting)
|
|
53
53
|
export const DAEMON_SYNC_TIMEOUT_MS = 30_000;
|
|
54
|
-
// OpenCode client model definitions for proxy provider configuration
|
|
55
|
-
// Source: https://opencode.ai/zen/go/v1/models (18 models as of 2026-06-06)
|
|
56
|
-
export const OPENCODE_MODELS = {
|
|
57
|
-
// GLM series (Z.AI/Zhipu - 202K context, 32K output, text-only)
|
|
58
|
-
// Blocklisted in OpenCode — no auto variants; reasoning via interleaved reasoning_content only
|
|
59
|
-
'glm-5': {
|
|
60
|
-
id: 'glm-5',
|
|
61
|
-
name: 'GLM-5',
|
|
62
|
-
tool_call: true,
|
|
63
|
-
reasoning: true,
|
|
64
|
-
limit: { context: 202752, output: 32768 },
|
|
65
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
66
|
-
},
|
|
67
|
-
'glm-5.1': {
|
|
68
|
-
id: 'glm-5.1',
|
|
69
|
-
name: 'GLM-5.1',
|
|
70
|
-
tool_call: true,
|
|
71
|
-
reasoning: true,
|
|
72
|
-
limit: { context: 202752, output: 32768 },
|
|
73
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
74
|
-
},
|
|
75
|
-
'glm-5.2': {
|
|
76
|
-
id: 'glm-5.2',
|
|
77
|
-
name: 'GLM-5.2',
|
|
78
|
-
tool_call: true,
|
|
79
|
-
reasoning: true,
|
|
80
|
-
limit: { context: 1000000, output: 131072 },
|
|
81
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
82
|
-
},
|
|
83
|
-
// Kimi series (Moonshot - 262K context, 65K output, multimodal)
|
|
84
|
-
// Blocklisted in OpenCode — no reasoning_effort support via opencode-go
|
|
85
|
-
'kimi-k2.5': {
|
|
86
|
-
id: 'kimi-k2.5',
|
|
87
|
-
name: 'Kimi K2.5',
|
|
88
|
-
tool_call: true,
|
|
89
|
-
reasoning: true,
|
|
90
|
-
limit: { context: 262144, output: 65536 },
|
|
91
|
-
modalities: { input: ['text', 'image', 'video'], output: ['text'] },
|
|
92
|
-
},
|
|
93
|
-
'kimi-k2.6': {
|
|
94
|
-
id: 'kimi-k2.6',
|
|
95
|
-
name: 'Kimi K2.6',
|
|
96
|
-
tool_call: true,
|
|
97
|
-
reasoning: true,
|
|
98
|
-
limit: { context: 262144, output: 65536 },
|
|
99
|
-
modalities: { input: ['text', 'image', 'video'], output: ['text'] },
|
|
100
|
-
},
|
|
101
|
-
// DeepSeek V4 series (1M context, 384K output, text-only)
|
|
102
|
-
// NOT blocklisted - OpenCode auto-generates low/medium/high/max variants
|
|
103
|
-
'deepseek-v4-pro': {
|
|
104
|
-
id: 'deepseek-v4-pro',
|
|
105
|
-
name: 'DeepSeek V4 Pro',
|
|
106
|
-
tool_call: true,
|
|
107
|
-
reasoning: true,
|
|
108
|
-
limit: { context: 1000000, output: 384000 },
|
|
109
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
110
|
-
},
|
|
111
|
-
'deepseek-v4-flash': {
|
|
112
|
-
id: 'deepseek-v4-flash',
|
|
113
|
-
name: 'DeepSeek V4 Flash',
|
|
114
|
-
tool_call: true,
|
|
115
|
-
reasoning: true,
|
|
116
|
-
limit: { context: 1000000, output: 384000 },
|
|
117
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
118
|
-
},
|
|
119
|
-
// MiMo series (Xiaomi - 1M context except V2 Omni 262K)
|
|
120
|
-
// NOT blocklisted - OpenCode auto-generates low/medium/high variants (reasoning_effort supported)
|
|
121
|
-
'mimo-v2.5': {
|
|
122
|
-
id: 'mimo-v2.5',
|
|
123
|
-
name: 'MiMo V2.5',
|
|
124
|
-
tool_call: true,
|
|
125
|
-
reasoning: true,
|
|
126
|
-
limit: { context: 1000000, output: 128000 },
|
|
127
|
-
modalities: { input: ['text', 'image', 'audio', 'video'], output: ['text'] },
|
|
128
|
-
},
|
|
129
|
-
'mimo-v2.5-pro': {
|
|
130
|
-
id: 'mimo-v2.5-pro',
|
|
131
|
-
name: 'MiMo V2.5 Pro',
|
|
132
|
-
tool_call: true,
|
|
133
|
-
reasoning: true,
|
|
134
|
-
limit: { context: 1048576, output: 128000 },
|
|
135
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
136
|
-
},
|
|
137
|
-
'mimo-v2-pro': {
|
|
138
|
-
id: 'mimo-v2-pro',
|
|
139
|
-
name: 'MiMo V2 Pro',
|
|
140
|
-
tool_call: true,
|
|
141
|
-
reasoning: true,
|
|
142
|
-
limit: { context: 1048576, output: 128000 },
|
|
143
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
144
|
-
},
|
|
145
|
-
'mimo-v2-omni': {
|
|
146
|
-
id: 'mimo-v2-omni',
|
|
147
|
-
name: 'MiMo V2 Omni',
|
|
148
|
-
tool_call: true,
|
|
149
|
-
reasoning: true,
|
|
150
|
-
limit: { context: 262144, output: 128000 },
|
|
151
|
-
modalities: { input: ['text', 'image', 'audio', 'pdf'], output: ['text'] },
|
|
152
|
-
},
|
|
153
|
-
// MiniMax series (Anthropic-compatible - 512K context for M3, 204K for M2.x)
|
|
154
|
-
// Blocklisted in OpenCode — no auto variants; uses Anthropic thinking blocks, not reasoning_effort
|
|
155
|
-
'minimax-m3': {
|
|
156
|
-
id: 'minimax-m3',
|
|
157
|
-
name: 'MiniMax M3',
|
|
158
|
-
tool_call: true,
|
|
159
|
-
reasoning: true,
|
|
160
|
-
limit: { context: 512000, output: 131072 },
|
|
161
|
-
modalities: { input: ['text', 'image', 'video'], output: ['text'] },
|
|
162
|
-
},
|
|
163
|
-
'minimax-m2.7': {
|
|
164
|
-
id: 'minimax-m2.7',
|
|
165
|
-
name: 'MiniMax M2.7',
|
|
166
|
-
tool_call: true,
|
|
167
|
-
reasoning: true,
|
|
168
|
-
limit: { context: 204800, output: 131072 },
|
|
169
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
170
|
-
},
|
|
171
|
-
'minimax-m2.5': {
|
|
172
|
-
id: 'minimax-m2.5',
|
|
173
|
-
name: 'MiniMax M2.5',
|
|
174
|
-
tool_call: true,
|
|
175
|
-
reasoning: true,
|
|
176
|
-
limit: { context: 204800, output: 65536 },
|
|
177
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
178
|
-
},
|
|
179
|
-
// Qwen series (Alibaba - Anthropic-compatible, 1M context except 3.5 Plus 262K)
|
|
180
|
-
// Blocklisted in OpenCode — no auto variants; uses Anthropic thinking blocks, not reasoning_effort
|
|
181
|
-
'qwen3.7-max': {
|
|
182
|
-
id: 'qwen3.7-max',
|
|
183
|
-
name: 'Qwen 3.7 Max',
|
|
184
|
-
tool_call: true,
|
|
185
|
-
reasoning: true,
|
|
186
|
-
limit: { context: 1000000, output: 65536 },
|
|
187
|
-
modalities: { input: ['text'], output: ['text'] },
|
|
188
|
-
},
|
|
189
|
-
'qwen3.7-plus': {
|
|
190
|
-
id: 'qwen3.7-plus',
|
|
191
|
-
name: 'Qwen 3.7 Plus',
|
|
192
|
-
tool_call: true,
|
|
193
|
-
reasoning: true,
|
|
194
|
-
limit: { context: 1000000, output: 65536 },
|
|
195
|
-
modalities: { input: ['text', 'image', 'video'], output: ['text'] },
|
|
196
|
-
},
|
|
197
|
-
'qwen3.6-plus': {
|
|
198
|
-
id: 'qwen3.6-plus',
|
|
199
|
-
name: 'Qwen 3.6 Plus',
|
|
200
|
-
tool_call: true,
|
|
201
|
-
reasoning: true,
|
|
202
|
-
limit: { context: 1000000, output: 65536 },
|
|
203
|
-
modalities: { input: ['text', 'image', 'video'], output: ['text'] },
|
|
204
|
-
},
|
|
205
|
-
'qwen3.5-plus': {
|
|
206
|
-
id: 'qwen3.5-plus',
|
|
207
|
-
name: 'Qwen 3.5 Plus',
|
|
208
|
-
tool_call: true,
|
|
209
|
-
reasoning: true,
|
|
210
|
-
limit: { context: 262144, output: 65536 },
|
|
211
|
-
modalities: { input: ['text', 'image', 'video'], output: ['text'] },
|
|
212
|
-
}
|
|
213
|
-
};
|
|
214
54
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AACjC,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC;AACxC,MAAM,CAAC,MAAM,mCAAmC,GAAG,MAAM,CAAC;AAC1D,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC;AACpC,oFAAoF;AACpF,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAC1D,sEAAsE;AACtE,oEAAoE;AACpE,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,4BAA4B,GAAG,4BAA4B,CAAC;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC9C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE5C,kEAAkE;AAClE,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,0CAA0C;AACtF,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,UAAU,GAAG,kBAAkB,CAAC;AAE7C,6DAA6D;AAC7D,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAElD,6DAA6D;AAC7D,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAElD,gCAAgC;AAChC,MAAM,CAAC,MAAM,cAAc,GAAG,6BAA6B,CAAC;AAC5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AAClE,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAC;AACpD,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO;IAC/C,YAAY,EAAE,MAAM,EAAE,mBAAmB;IACzC,aAAa,EAAE,mBAAmB;CAC1B,CAAC;AAEX,kCAAkC;AAClC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;AACpE,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAC/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,8CAA8C,CAAC;AACpF,MAAM,CAAC,MAAM,sBAAsB,GAAG,kCAAkC,CAAC;AACzE,MAAM,CAAC,MAAM,yBAAyB,GAAG,+BAA+B,CAAC;AAEzE,+EAA+E;AAC/E,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC;AACjC,MAAM,CAAC,MAAM,YAAY,GAAG,WAAW,CAAC;AACxC,MAAM,CAAC,MAAM,mCAAmC,GAAG,MAAM,CAAC;AAC1D,MAAM,CAAC,MAAM,0BAA0B,GAAG,MAAM,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,EAAE,CAAC;AACjC,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,CAAC;AACpC,oFAAoF;AACpF,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,qBAAqB,CAAC;AAC1D,sEAAsE;AACtE,oEAAoE;AACpE,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,4BAA4B,GAAG,4BAA4B,CAAC;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC9C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC;AAC7B,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC;AAClC,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAC/C,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAE5C,kEAAkE;AAClE,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,CAAC,0CAA0C;AACtF,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,UAAU,GAAG,kBAAkB,CAAC;AAE7C,6DAA6D;AAC7D,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAElD,6DAA6D;AAC7D,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAElD,gCAAgC;AAChC,MAAM,CAAC,MAAM,cAAc,GAAG,6BAA6B,CAAC;AAC5D,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AAClE,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAC;AACpD,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,OAAO;IAC/C,YAAY,EAAE,MAAM,EAAE,mBAAmB;IACzC,aAAa,EAAE,mBAAmB;CAC1B,CAAC;AAEX,kCAAkC;AAClC,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,SAAS;AACpE,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC;AAC/C,MAAM,CAAC,MAAM,qBAAqB,GAAG,8CAA8C,CAAC;AACpF,MAAM,CAAC,MAAM,sBAAsB,GAAG,kCAAkC,CAAC;AACzE,MAAM,CAAC,MAAM,yBAAyB,GAAG,+BAA+B,CAAC;AAEzE,+EAA+E;AAC/E,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* models-catalog.ts — Single source of truth for the bundled model catalog.
|
|
3
|
+
*
|
|
4
|
+
* `models.json` at the package root is the canonical definition. It is read
|
|
5
|
+
* from disk at runtime (not imported) because `rootDir` is `./src` while the
|
|
6
|
+
* file lives outside it. The same path is used by the daemon to seed
|
|
7
|
+
* `~/.config/saros/models.json`.
|
|
8
|
+
*
|
|
9
|
+
* A missing or malformed catalog degrades to an empty map (callers fall back
|
|
10
|
+
* to heuristics) and logs a single warning per path.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* Load the model catalog from disk, with in-memory caching.
|
|
14
|
+
*
|
|
15
|
+
* @param filePath — Catalog path (defaults to the bundled `models.json`)
|
|
16
|
+
* @returns The parsed catalog, or `{}` when the file is missing/invalid
|
|
17
|
+
*/
|
|
18
|
+
export declare function loadModelsCatalog(filePath?: string): Record<string, unknown>;
|
|
19
|
+
/** Clear the in-memory cache — test helper. */
|
|
20
|
+
export declare function resetModelsCatalogCache(): void;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* models-catalog.ts — Single source of truth for the bundled model catalog.
|
|
3
|
+
*
|
|
4
|
+
* `models.json` at the package root is the canonical definition. It is read
|
|
5
|
+
* from disk at runtime (not imported) because `rootDir` is `./src` while the
|
|
6
|
+
* file lives outside it. The same path is used by the daemon to seed
|
|
7
|
+
* `~/.config/saros/models.json`.
|
|
8
|
+
*
|
|
9
|
+
* A missing or malformed catalog degrades to an empty map (callers fall back
|
|
10
|
+
* to heuristics) and logs a single warning per path.
|
|
11
|
+
*/
|
|
12
|
+
import { readFileSync } from 'node:fs';
|
|
13
|
+
import { dirname, join, resolve } from 'node:path';
|
|
14
|
+
import { fileURLToPath } from 'node:url';
|
|
15
|
+
import { logger } from './logger.js';
|
|
16
|
+
/** Package root — works both from `src/` (tsx/vitest) and `dist/` (build). */
|
|
17
|
+
const PACKAGE_ROOT = resolve(dirname(fileURLToPath(import.meta.url)), '..');
|
|
18
|
+
/** Bundled catalog path: `<package root>/models.json`. */
|
|
19
|
+
const BUNDLED_MODELS_PATH = join(PACKAGE_ROOT, 'models.json');
|
|
20
|
+
/** Parsed catalogs, keyed by absolute path (parsed once per process). */
|
|
21
|
+
const cache = new Map();
|
|
22
|
+
/**
|
|
23
|
+
* Load the model catalog from disk, with in-memory caching.
|
|
24
|
+
*
|
|
25
|
+
* @param filePath — Catalog path (defaults to the bundled `models.json`)
|
|
26
|
+
* @returns The parsed catalog, or `{}` when the file is missing/invalid
|
|
27
|
+
*/
|
|
28
|
+
export function loadModelsCatalog(filePath = BUNDLED_MODELS_PATH) {
|
|
29
|
+
const cached = cache.get(filePath);
|
|
30
|
+
if (cached)
|
|
31
|
+
return cached;
|
|
32
|
+
const models = readCatalog(filePath);
|
|
33
|
+
cache.set(filePath, models);
|
|
34
|
+
return models;
|
|
35
|
+
}
|
|
36
|
+
/** Clear the in-memory cache — test helper. */
|
|
37
|
+
export function resetModelsCatalogCache() {
|
|
38
|
+
cache.clear();
|
|
39
|
+
}
|
|
40
|
+
/** Read and validate one catalog file. Never throws. */
|
|
41
|
+
function readCatalog(filePath) {
|
|
42
|
+
try {
|
|
43
|
+
const parsed = JSON.parse(readFileSync(filePath, 'utf-8'));
|
|
44
|
+
if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed)) {
|
|
45
|
+
logger.warn({ path: filePath }, 'models catalog is not a JSON object; using empty catalog');
|
|
46
|
+
return {};
|
|
47
|
+
}
|
|
48
|
+
return parsed;
|
|
49
|
+
}
|
|
50
|
+
catch (err) {
|
|
51
|
+
logger.warn({ err, path: filePath }, 'failed to load models catalog; using empty catalog');
|
|
52
|
+
return {};
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=models-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models-catalog.js","sourceRoot":"","sources":["../src/models-catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,8EAA8E;AAC9E,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAE5E,0DAA0D;AAC1D,MAAM,mBAAmB,GAAG,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;AAE9D,yEAAyE;AACzE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAmC,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAQ,GAAW,mBAAmB;IACtE,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAE1B,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACrC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC5B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,uBAAuB;IACrC,KAAK,CAAC,KAAK,EAAE,CAAC;AAChB,CAAC;AAED,wDAAwD;AACxD,SAAS,WAAW,CAAC,QAAgB;IACnC,IAAI,CAAC;QACH,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAEpE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3E,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,0DAA0D,CAAC,CAAC;YAC5F,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,MAAiC,CAAC;IAC3C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,oDAAoD,CAAC,CAAC;QAC3F,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
|
package/dist/models-fetcher.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Public API:
|
|
6
6
|
* fetchModelsFromUpstream(config) — raw fetch + validation
|
|
7
7
|
* getModelsList(config) — orchestrator with warm buffer & in-flight dedup
|
|
8
|
-
* buildFallbackResponse() — minimal fallback from
|
|
8
|
+
* buildFallbackResponse() — minimal fallback from the bundled catalog
|
|
9
9
|
* resetModelsFetcherState() — test helper to clear module-level state
|
|
10
10
|
*/
|
|
11
11
|
import type { ProxyConfig } from './config.js';
|
|
@@ -25,7 +25,7 @@ export declare function fetchModelsFromUpstream(config: ProxyConfig): Promise<{
|
|
|
25
25
|
data: unknown[];
|
|
26
26
|
} | null>;
|
|
27
27
|
/**
|
|
28
|
-
* Build a 200 JSON Response using the
|
|
28
|
+
* Build a 200 JSON Response using the bundled model catalog.
|
|
29
29
|
* Used when the upstream endpoint is unreachable.
|
|
30
30
|
*
|
|
31
31
|
* Each entry gets `{ id, object: 'model', created: <unix ts>, owned_by: 'saros' }`.
|
package/dist/models-fetcher.js
CHANGED
|
@@ -5,11 +5,11 @@
|
|
|
5
5
|
* Public API:
|
|
6
6
|
* fetchModelsFromUpstream(config) — raw fetch + validation
|
|
7
7
|
* getModelsList(config) — orchestrator with warm buffer & in-flight dedup
|
|
8
|
-
* buildFallbackResponse() — minimal fallback from
|
|
8
|
+
* buildFallbackResponse() — minimal fallback from the bundled catalog
|
|
9
9
|
* resetModelsFetcherState() — test helper to clear module-level state
|
|
10
10
|
*/
|
|
11
11
|
import { MODELS_FETCH_TIMEOUT_MS, MODELS_WARM_BUFFER_MS } from './constants.js';
|
|
12
|
-
import {
|
|
12
|
+
import { loadModelsCatalog } from './models-catalog.js';
|
|
13
13
|
// ---------------------------------------------------------------------------
|
|
14
14
|
// Module-level state (hidden from callers)
|
|
15
15
|
// ---------------------------------------------------------------------------
|
|
@@ -78,13 +78,13 @@ function buildResponse(data) {
|
|
|
78
78
|
});
|
|
79
79
|
}
|
|
80
80
|
/**
|
|
81
|
-
* Build a 200 JSON Response using the
|
|
81
|
+
* Build a 200 JSON Response using the bundled model catalog.
|
|
82
82
|
* Used when the upstream endpoint is unreachable.
|
|
83
83
|
*
|
|
84
84
|
* Each entry gets `{ id, object: 'model', created: <unix ts>, owned_by: 'saros' }`.
|
|
85
85
|
*/
|
|
86
86
|
export function buildFallbackResponse() {
|
|
87
|
-
const models =
|
|
87
|
+
const models = loadModelsCatalog();
|
|
88
88
|
const now = Math.floor(Date.now() / 1000);
|
|
89
89
|
const data = Object.keys(models).map((id) => ({
|
|
90
90
|
id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models-fetcher.js","sourceRoot":"","sources":["../src/models-fetcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"models-fetcher.js","sourceRoot":"","sources":["../src/models-fetcher.ts"],"names":[],"mappings":"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"}
|
package/dist/models-sync.d.ts
CHANGED
|
@@ -32,7 +32,7 @@ export declare function getMissingModels(current: string[], upstream: string[]):
|
|
|
32
32
|
*
|
|
33
33
|
* Priority (first match wins):
|
|
34
34
|
* 1. models.dev metadata (if provided and found for modelId)
|
|
35
|
-
* 2.
|
|
35
|
+
* 2. Bundled `models.json` catalog
|
|
36
36
|
* 3. Heuristic title-case of the ID with default limits
|
|
37
37
|
*
|
|
38
38
|
* @param modelId — The upstream model ID (e.g. "glm-5", "kimi-k2.7-code")
|
package/dist/models-sync.js
CHANGED
|
@@ -9,7 +9,7 @@ import { constants, existsSync, readFileSync, writeFileSync, copyFileSync } from
|
|
|
9
9
|
import { getDefaultOpencodeConfigPath, stripJsoncComments } from './cli/opencode-config.js';
|
|
10
10
|
import { getModelsList } from './models-fetcher.js';
|
|
11
11
|
import { MODELS_DEV_URL, MODELS_DEV_CACHE_TTL_MS, MODELS_DEV_TIMEOUT_MS, MODELS_DEV_PROVIDER_ID, MODELS_DEV_SAFE_FIELDS, } from './constants.js';
|
|
12
|
-
import {
|
|
12
|
+
import { loadModelsCatalog } from './models-catalog.js';
|
|
13
13
|
import { logger } from './logger.js';
|
|
14
14
|
// ---------------------------------------------------------------------------
|
|
15
15
|
// Title-case helper
|
|
@@ -137,7 +137,7 @@ function pickSafeFields(entry) {
|
|
|
137
137
|
*
|
|
138
138
|
* Priority (first match wins):
|
|
139
139
|
* 1. models.dev metadata (if provided and found for modelId)
|
|
140
|
-
* 2.
|
|
140
|
+
* 2. Bundled `models.json` catalog
|
|
141
141
|
* 3. Heuristic title-case of the ID with default limits
|
|
142
142
|
*
|
|
143
143
|
* @param modelId — The upstream model ID (e.g. "glm-5", "kimi-k2.7-code")
|
|
@@ -158,7 +158,7 @@ export function buildMinimalStub(modelId, modelsDevMetadata) {
|
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
// 2. models.json bundled definitions
|
|
161
|
-
const bundled =
|
|
161
|
+
const bundled = loadModelsCatalog();
|
|
162
162
|
const known = bundled[modelId];
|
|
163
163
|
if (known && typeof known === 'object' && !Array.isArray(known)) {
|
|
164
164
|
return { ...known, id: modelId };
|
package/dist/models-sync.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"models-sync.js","sourceRoot":"","sources":["../src/models-sync.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"models-sync.js","sourceRoot":"","sources":["../src/models-sync.ts"],"names":[],"mappings":"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"}
|
package/dist/proxy.js
CHANGED
|
@@ -581,6 +581,22 @@ async function handleStreamingRequest(opts) {
|
|
|
581
581
|
maxRetries: opts.maxRetries ?? MAX_RETRIES,
|
|
582
582
|
});
|
|
583
583
|
}
|
|
584
|
+
/**
|
|
585
|
+
* Pull token counts out of one SSE event. Chat completions carry `usage` at the
|
|
586
|
+
* top level; the OpenAI Responses schema nests it under `response.usage` on
|
|
587
|
+
* `response.completed`, so a top-level-only reader books zero for those streams.
|
|
588
|
+
*/
|
|
589
|
+
function extractEventUsage(parsed) {
|
|
590
|
+
if (parsed.usage)
|
|
591
|
+
return parsed.usage;
|
|
592
|
+
const response = parsed.response;
|
|
593
|
+
if (response && typeof response === 'object' && !Array.isArray(response)) {
|
|
594
|
+
const nested = response.usage;
|
|
595
|
+
if (nested)
|
|
596
|
+
return nested;
|
|
597
|
+
}
|
|
598
|
+
return null;
|
|
599
|
+
}
|
|
584
600
|
/**
|
|
585
601
|
* Wrap an upstream SSE stream with error detection.
|
|
586
602
|
* Parses SSE events properly to avoid false positives on
|
|
@@ -640,11 +656,14 @@ function wrapStreamWithErrorDetection(upstreamStream, state, requestId, keyLabel
|
|
|
640
656
|
return;
|
|
641
657
|
}
|
|
642
658
|
// Intermediate chunks send `usage: null`; the counts arrive on the
|
|
643
|
-
// finish chunk and/or the usage-only chunk (see bookUsage).
|
|
644
|
-
|
|
645
|
-
|
|
659
|
+
// finish chunk and/or the usage-only chunk (see bookUsage). The
|
|
660
|
+
// OpenAI Responses schema nests them under `response.usage` on the
|
|
661
|
+
// `response.completed` event instead of at the top level.
|
|
662
|
+
const eventUsage = extractEventUsage(parsed);
|
|
663
|
+
if (eventUsage) {
|
|
664
|
+
lastUsage = eventUsage;
|
|
646
665
|
if (Array.isArray(parsed.choices) && parsed.choices.length === 0) {
|
|
647
|
-
usageOnlyChunk =
|
|
666
|
+
usageOnlyChunk = eventUsage;
|
|
648
667
|
}
|
|
649
668
|
}
|
|
650
669
|
}
|