@ggui-ai/protocol 0.13.0 → 0.15.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/dist/envelope-adapters.d.ts +1 -14
- package/dist/envelope-adapters.d.ts.map +1 -1
- package/dist/envelope-adapters.js +17 -1
- package/dist/envelopes/render-refusal.d.ts +49 -0
- package/dist/envelopes/render-refusal.d.ts.map +1 -0
- package/dist/envelopes/render-refusal.js +12 -0
- package/dist/gadgets/resolve-app-gadgets.d.ts +1 -1
- package/dist/gadgets/stdlib-gadgets.d.ts +2 -2
- package/dist/gadgets/stdlib-gadgets.js +1 -1
- package/dist/index.d.ts +67 -60
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/integrations/mcp-apps.d.ts +4 -10
- package/dist/integrations/mcp-apps.d.ts.map +1 -1
- package/dist/schemas/app-theme.d.ts +5 -0
- package/dist/schemas/app-theme.d.ts.map +1 -1
- package/dist/schemas/app-theme.js +23 -0
- package/dist/schemas/blueprint.d.ts +2 -2
- package/dist/schemas/data-contract.d.ts +12 -30
- package/dist/schemas/data-contract.d.ts.map +1 -1
- package/dist/schemas/data-contract.js +6 -27
- package/dist/schemas/interface-context.d.ts +44 -0
- package/dist/schemas/interface-context.d.ts.map +1 -0
- package/dist/schemas/interface-context.js +22 -0
- package/dist/schemas/invoke.d.ts +1 -1
- package/dist/schemas/invoke.js +1 -1
- package/dist/schemas/mcp.d.ts +636 -69
- package/dist/schemas/mcp.d.ts.map +1 -1
- package/dist/schemas/mcp.js +554 -47
- package/dist/schemas/public-env-key.d.ts +26 -0
- package/dist/schemas/public-env-key.d.ts.map +1 -0
- package/dist/schemas/public-env-key.js +25 -0
- package/dist/schemas/render-input-envelope.d.ts +20 -0
- package/dist/schemas/render-input-envelope.d.ts.map +1 -0
- package/dist/schemas/render-input-envelope.js +56 -0
- package/dist/schemas/runtime-telemetry-limits.d.ts +11 -0
- package/dist/schemas/runtime-telemetry-limits.d.ts.map +1 -0
- package/dist/schemas/runtime-telemetry-limits.js +10 -0
- package/dist/transport/websocket.d.ts +5 -5
- package/dist/types/auth.d.ts +1 -1
- package/dist/types/contract-inference.d.ts +1 -1
- package/dist/types/events.d.ts +1 -1
- package/dist/types/ggui-session-event.d.ts +4 -5
- package/dist/types/ggui-session-event.d.ts.map +1 -1
- package/dist/types/ggui-session-event.js +0 -37
- package/dist/types/host-context.d.ts +18 -17
- package/dist/types/host-context.d.ts.map +1 -1
- package/dist/types/host-context.js +7 -0
- package/dist/types/interface-context.d.ts +1 -1
- package/dist/types/invoke.d.ts +1 -1
- package/dist/types/lifecycle.d.ts +1 -1
- package/dist/types/live-channel.d.ts +2 -2
- package/dist/types/llm-route.d.ts +2 -2
- package/dist/types/llm-route.d.ts.map +1 -1
- package/dist/types/llm-route.js +11 -3
- package/dist/types/llm.d.ts +397 -7
- package/dist/types/llm.d.ts.map +1 -1
- package/dist/types/llm.js +111 -10
- package/dist/types/mcp.d.ts +31 -111
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/mcp.js +7 -0
- package/dist/types/readonly.d.ts +11 -0
- package/dist/types/readonly.d.ts.map +1 -0
- package/dist/types/readonly.js +1 -0
- package/dist/types/refusal-codes.d.ts +340 -0
- package/dist/types/refusal-codes.d.ts.map +1 -0
- package/dist/types/refusal-codes.js +346 -0
- package/dist/types/render.d.ts +9 -8
- package/dist/types/render.d.ts.map +1 -1
- package/dist/types/ui-generator.d.ts +1 -1
- package/dist/validation/ajv-runtime.d.ts +2 -2
- package/dist/validation/contract-validator.d.ts +6 -6
- package/dist/validation/cross-references.d.ts +2 -2
- package/dist/validation/hygiene-rules.d.ts +1 -1
- package/dist/validation/name-invariants.d.ts +2 -2
- package/dist/validation/reserved-channels.d.ts +1 -1
- package/dist/validation/schema-compat-invariants.d.ts +2 -2
- package/dist/validation/schema-meta-validation.d.ts +1 -1
- package/dist/version.d.ts +201 -5
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +200 -4
- package/dist/wire.d.ts +45 -0
- package/dist/wire.d.ts.map +1 -0
- package/dist/wire.js +44 -0
- package/package.json +13 -3
package/dist/types/llm.d.ts
CHANGED
|
@@ -25,8 +25,10 @@
|
|
|
25
25
|
* `LLMProvider` (capital)) were deleted in the slice #43 close-out —
|
|
26
26
|
* routing went through `parseAnyLlmRoute` + typed dispatch.
|
|
27
27
|
*
|
|
28
|
-
* Pricing last verified: 2026-
|
|
29
|
-
*
|
|
28
|
+
* Pricing last verified: 2026-09-02 — Anthropic 5-family + Haiku 4.5 (and the
|
|
29
|
+
* new Fable 5.1 row) against platform.claude.com, quoted on ggui#706; the
|
|
30
|
+
* Anthropic 4.x legacy rows and the Google/OpenAI rows keep their 2026-08-04
|
|
31
|
+
* re-vendor verification (not re-checked on 2026-09-02 — no source quoted).
|
|
30
32
|
* Sources:
|
|
31
33
|
* https://docs.anthropic.com/en/docs/about-claude/pricing
|
|
32
34
|
* https://developers.openai.com/api/docs/pricing/
|
|
@@ -45,13 +47,35 @@
|
|
|
45
47
|
* slice.
|
|
46
48
|
*/
|
|
47
49
|
import type { LlmProvider } from "./llm-route.js";
|
|
48
|
-
export type ModelId = "anthropic/claude-fable-5" | "anthropic/claude-opus-5" | "anthropic/claude-sonnet-5" | "anthropic/claude-haiku-4-5" | "anthropic/claude-opus-4-7" | "anthropic/claude-sonnet-4-6" | "anthropic/claude-opus-4-6" | "gemini/gemini-3.7-flash" | "gemini/gemini-3.6-flash" | "gemini/gemini-3.5-flash" | "gemini/gemini-3.5-flash-lite" | "gemini/gemini-3.1-flash-lite" | "gemini/gemini-3-flash-preview" | "gemini/gemini-3.1-pro-preview" | "openai/gpt-5.6-sol" | "openai/gpt-5.6-terra" | "openai/gpt-5.6-luna" | "openai/gpt-5.3-codex" | "openai/gpt-5.4" | "openai/gpt-5.4-mini" | "openai/gpt-5.4-nano";
|
|
49
50
|
export type ModelTier = "fast" | "balanced" | "premium";
|
|
50
|
-
|
|
51
|
-
|
|
51
|
+
/**
|
|
52
|
+
* Registry state of a row (ggui#707). `legacy` = still available and
|
|
53
|
+
* routable, no longer the current generation (Anthropic's deprecations
|
|
54
|
+
* page lists it Active with no retirement date); a retired model is
|
|
55
|
+
* DELETED from the registry, never marked. Required on every row so a
|
|
56
|
+
* consumer branches on a discriminant, never on an optional flag.
|
|
57
|
+
*/
|
|
58
|
+
export type ModelState = "active" | "legacy";
|
|
59
|
+
/** Every registry fact except the id, which the key supplies. */
|
|
60
|
+
export interface ModelConfigBase {
|
|
52
61
|
provider: LlmProvider;
|
|
53
62
|
displayName: string;
|
|
54
63
|
tier: ModelTier;
|
|
64
|
+
/** See {@link ModelState}. */
|
|
65
|
+
state: ModelState;
|
|
66
|
+
/**
|
|
67
|
+
* Member of the curated "current lineup" a picker shows up front
|
|
68
|
+
* (ggui#707 / #711: Fable 5.1 · Opus 5 · Sonnet 5 · Haiku 4.5 as the
|
|
69
|
+
* pool default). A registry fact, never a console array. Required so
|
|
70
|
+
* a new row cannot silently fall out of both groups.
|
|
71
|
+
*/
|
|
72
|
+
lineup: boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Earliest date the vendor's deprecation page guarantees the model is
|
|
75
|
+
* still available (ISO date; the page's "≥ date" floor). Present only
|
|
76
|
+
* when quoted from the vendor (ggui#706).
|
|
77
|
+
*/
|
|
78
|
+
retireNotBefore?: string;
|
|
55
79
|
costs: {
|
|
56
80
|
inputPer1M: number;
|
|
57
81
|
outputPer1M: number;
|
|
@@ -73,9 +97,375 @@ export interface ModelConfig {
|
|
|
73
97
|
supportsCaching?: boolean;
|
|
74
98
|
supportsThinking?: boolean;
|
|
75
99
|
}
|
|
76
|
-
|
|
100
|
+
declare const MODEL_ROWS: {
|
|
101
|
+
readonly "anthropic/claude-fable-5-1": {
|
|
102
|
+
readonly id: "anthropic/claude-fable-5-1";
|
|
103
|
+
readonly provider: "anthropic";
|
|
104
|
+
readonly displayName: "Claude Fable 5.1";
|
|
105
|
+
readonly tier: "premium";
|
|
106
|
+
readonly state: "active";
|
|
107
|
+
readonly lineup: true;
|
|
108
|
+
readonly retireNotBefore: "2027-09-01";
|
|
109
|
+
readonly costs: {
|
|
110
|
+
readonly inputPer1M: 10;
|
|
111
|
+
readonly outputPer1M: 50;
|
|
112
|
+
readonly cacheWritePer1M: 12.5;
|
|
113
|
+
readonly cacheReadPer1M: 0.25;
|
|
114
|
+
};
|
|
115
|
+
readonly maxTokens: 1000000;
|
|
116
|
+
readonly supportsTools: true;
|
|
117
|
+
};
|
|
118
|
+
readonly "anthropic/claude-fable-5": {
|
|
119
|
+
readonly id: "anthropic/claude-fable-5";
|
|
120
|
+
readonly provider: "anthropic";
|
|
121
|
+
readonly displayName: "Claude Fable 5";
|
|
122
|
+
readonly tier: "premium";
|
|
123
|
+
readonly state: "legacy";
|
|
124
|
+
readonly lineup: false;
|
|
125
|
+
readonly retireNotBefore: "2027-06-09";
|
|
126
|
+
readonly costs: {
|
|
127
|
+
readonly inputPer1M: 10;
|
|
128
|
+
readonly outputPer1M: 50;
|
|
129
|
+
readonly cacheWritePer1M: 12.5;
|
|
130
|
+
readonly cacheReadPer1M: 1;
|
|
131
|
+
};
|
|
132
|
+
readonly maxTokens: 1000000;
|
|
133
|
+
readonly supportsTools: true;
|
|
134
|
+
};
|
|
135
|
+
readonly "anthropic/claude-opus-5": {
|
|
136
|
+
readonly id: "anthropic/claude-opus-5";
|
|
137
|
+
readonly provider: "anthropic";
|
|
138
|
+
readonly displayName: "Claude Opus 5";
|
|
139
|
+
readonly tier: "premium";
|
|
140
|
+
readonly state: "active";
|
|
141
|
+
readonly lineup: true;
|
|
142
|
+
readonly retireNotBefore: "2027-07-24";
|
|
143
|
+
readonly costs: {
|
|
144
|
+
readonly inputPer1M: 5;
|
|
145
|
+
readonly outputPer1M: 25;
|
|
146
|
+
readonly cacheWritePer1M: 6.25;
|
|
147
|
+
readonly cacheReadPer1M: 0.5;
|
|
148
|
+
};
|
|
149
|
+
readonly maxTokens: 1000000;
|
|
150
|
+
readonly supportsTools: true;
|
|
151
|
+
};
|
|
152
|
+
readonly "anthropic/claude-sonnet-5": {
|
|
153
|
+
readonly id: "anthropic/claude-sonnet-5";
|
|
154
|
+
readonly provider: "anthropic";
|
|
155
|
+
readonly displayName: "Claude Sonnet 5";
|
|
156
|
+
readonly tier: "balanced";
|
|
157
|
+
readonly state: "active";
|
|
158
|
+
readonly lineup: true;
|
|
159
|
+
readonly retireNotBefore: "2027-06-30";
|
|
160
|
+
readonly costs: {
|
|
161
|
+
readonly inputPer1M: 2;
|
|
162
|
+
readonly outputPer1M: 10;
|
|
163
|
+
readonly cacheWritePer1M: 2.5;
|
|
164
|
+
readonly cacheReadPer1M: 0.2;
|
|
165
|
+
};
|
|
166
|
+
readonly maxTokens: 1000000;
|
|
167
|
+
readonly supportsTools: true;
|
|
168
|
+
};
|
|
169
|
+
readonly "anthropic/claude-haiku-4-5": {
|
|
170
|
+
readonly id: "anthropic/claude-haiku-4-5";
|
|
171
|
+
readonly provider: "anthropic";
|
|
172
|
+
readonly displayName: "Claude Haiku 4.5";
|
|
173
|
+
readonly tier: "fast";
|
|
174
|
+
readonly state: "active";
|
|
175
|
+
readonly lineup: true;
|
|
176
|
+
readonly retireNotBefore: "2026-10-15";
|
|
177
|
+
readonly costs: {
|
|
178
|
+
readonly inputPer1M: 1;
|
|
179
|
+
readonly outputPer1M: 5;
|
|
180
|
+
readonly cacheWritePer1M: 1.25;
|
|
181
|
+
readonly cacheReadPer1M: 0.1;
|
|
182
|
+
};
|
|
183
|
+
readonly maxTokens: 200000;
|
|
184
|
+
readonly supportsTools: true;
|
|
185
|
+
};
|
|
186
|
+
readonly "anthropic/claude-sonnet-4-6": {
|
|
187
|
+
readonly id: "anthropic/claude-sonnet-4-6";
|
|
188
|
+
readonly provider: "anthropic";
|
|
189
|
+
readonly displayName: "Claude Sonnet 4.6";
|
|
190
|
+
readonly tier: "balanced";
|
|
191
|
+
readonly state: "legacy";
|
|
192
|
+
readonly lineup: false;
|
|
193
|
+
readonly costs: {
|
|
194
|
+
readonly inputPer1M: 3;
|
|
195
|
+
readonly outputPer1M: 15;
|
|
196
|
+
readonly cacheWritePer1M: 3.75;
|
|
197
|
+
readonly cacheReadPer1M: 0.3;
|
|
198
|
+
};
|
|
199
|
+
readonly maxTokens: 200000;
|
|
200
|
+
readonly supportsTools: true;
|
|
201
|
+
};
|
|
202
|
+
readonly "anthropic/claude-opus-4-7": {
|
|
203
|
+
readonly id: "anthropic/claude-opus-4-7";
|
|
204
|
+
readonly provider: "anthropic";
|
|
205
|
+
readonly displayName: "Claude Opus 4.7";
|
|
206
|
+
readonly tier: "premium";
|
|
207
|
+
readonly state: "legacy";
|
|
208
|
+
readonly lineup: false;
|
|
209
|
+
readonly costs: {
|
|
210
|
+
readonly inputPer1M: 5;
|
|
211
|
+
readonly outputPer1M: 25;
|
|
212
|
+
readonly cacheWritePer1M: 6.25;
|
|
213
|
+
readonly cacheReadPer1M: 0.5;
|
|
214
|
+
};
|
|
215
|
+
readonly maxTokens: 1000000;
|
|
216
|
+
readonly supportsTools: true;
|
|
217
|
+
};
|
|
218
|
+
readonly "anthropic/claude-opus-4-6": {
|
|
219
|
+
readonly id: "anthropic/claude-opus-4-6";
|
|
220
|
+
readonly provider: "anthropic";
|
|
221
|
+
readonly displayName: "Claude Opus 4.6";
|
|
222
|
+
readonly tier: "premium";
|
|
223
|
+
readonly state: "legacy";
|
|
224
|
+
readonly lineup: false;
|
|
225
|
+
readonly costs: {
|
|
226
|
+
readonly inputPer1M: 5;
|
|
227
|
+
readonly outputPer1M: 25;
|
|
228
|
+
readonly cacheWritePer1M: 6.25;
|
|
229
|
+
readonly cacheReadPer1M: 0.5;
|
|
230
|
+
};
|
|
231
|
+
readonly maxTokens: 1000000;
|
|
232
|
+
readonly supportsTools: true;
|
|
233
|
+
};
|
|
234
|
+
readonly "gemini/gemini-3.7-flash": {
|
|
235
|
+
readonly id: "gemini/gemini-3.7-flash";
|
|
236
|
+
readonly provider: "google";
|
|
237
|
+
readonly displayName: "Gemini 3.7 Flash";
|
|
238
|
+
readonly tier: "balanced";
|
|
239
|
+
readonly state: "active";
|
|
240
|
+
readonly lineup: false;
|
|
241
|
+
readonly costs: {
|
|
242
|
+
readonly inputPer1M: 0.75;
|
|
243
|
+
readonly outputPer1M: 3.75;
|
|
244
|
+
readonly cacheReadPer1M: 0.075;
|
|
245
|
+
};
|
|
246
|
+
readonly maxTokens: 1048576;
|
|
247
|
+
readonly supportsTools: true;
|
|
248
|
+
readonly supportsCaching: true;
|
|
249
|
+
};
|
|
250
|
+
readonly "gemini/gemini-3.6-flash": {
|
|
251
|
+
readonly id: "gemini/gemini-3.6-flash";
|
|
252
|
+
readonly provider: "google";
|
|
253
|
+
readonly displayName: "Gemini 3.6 Flash";
|
|
254
|
+
readonly tier: "fast";
|
|
255
|
+
readonly state: "active";
|
|
256
|
+
readonly lineup: false;
|
|
257
|
+
readonly costs: {
|
|
258
|
+
readonly inputPer1M: 0.75;
|
|
259
|
+
readonly outputPer1M: 3.75;
|
|
260
|
+
readonly cacheReadPer1M: 0.075;
|
|
261
|
+
};
|
|
262
|
+
readonly maxTokens: 1048576;
|
|
263
|
+
readonly supportsTools: true;
|
|
264
|
+
readonly supportsCaching: true;
|
|
265
|
+
};
|
|
266
|
+
readonly "gemini/gemini-3.5-flash": {
|
|
267
|
+
readonly id: "gemini/gemini-3.5-flash";
|
|
268
|
+
readonly provider: "google";
|
|
269
|
+
readonly displayName: "Gemini 3.5 Flash";
|
|
270
|
+
readonly tier: "fast";
|
|
271
|
+
readonly state: "active";
|
|
272
|
+
readonly lineup: false;
|
|
273
|
+
readonly costs: {
|
|
274
|
+
readonly inputPer1M: 1.5;
|
|
275
|
+
readonly outputPer1M: 9;
|
|
276
|
+
};
|
|
277
|
+
readonly maxTokens: 1048576;
|
|
278
|
+
readonly supportsTools: true;
|
|
279
|
+
readonly supportsCaching: true;
|
|
280
|
+
};
|
|
281
|
+
readonly "gemini/gemini-3.5-flash-lite": {
|
|
282
|
+
readonly id: "gemini/gemini-3.5-flash-lite";
|
|
283
|
+
readonly provider: "google";
|
|
284
|
+
readonly displayName: "Gemini 3.5 Flash Lite";
|
|
285
|
+
readonly tier: "fast";
|
|
286
|
+
readonly state: "active";
|
|
287
|
+
readonly lineup: false;
|
|
288
|
+
readonly costs: {
|
|
289
|
+
readonly inputPer1M: 0.3;
|
|
290
|
+
readonly outputPer1M: 2.5;
|
|
291
|
+
readonly cacheReadPer1M: 0.03;
|
|
292
|
+
};
|
|
293
|
+
readonly maxTokens: 1048576;
|
|
294
|
+
readonly supportsTools: true;
|
|
295
|
+
readonly supportsCaching: true;
|
|
296
|
+
};
|
|
297
|
+
readonly "gemini/gemini-3.1-flash-lite": {
|
|
298
|
+
readonly id: "gemini/gemini-3.1-flash-lite";
|
|
299
|
+
readonly provider: "google";
|
|
300
|
+
readonly displayName: "Gemini 3.1 Flash Lite";
|
|
301
|
+
readonly tier: "fast";
|
|
302
|
+
readonly state: "active";
|
|
303
|
+
readonly lineup: false;
|
|
304
|
+
readonly costs: {
|
|
305
|
+
readonly inputPer1M: 0.25;
|
|
306
|
+
readonly outputPer1M: 1.5;
|
|
307
|
+
};
|
|
308
|
+
readonly maxTokens: 1000000;
|
|
309
|
+
readonly supportsTools: true;
|
|
310
|
+
};
|
|
311
|
+
readonly "gemini/gemini-3-flash-preview": {
|
|
312
|
+
readonly id: "gemini/gemini-3-flash-preview";
|
|
313
|
+
readonly provider: "google";
|
|
314
|
+
readonly displayName: "Gemini 3 Flash";
|
|
315
|
+
readonly tier: "fast";
|
|
316
|
+
readonly state: "active";
|
|
317
|
+
readonly lineup: false;
|
|
318
|
+
readonly costs: {
|
|
319
|
+
readonly inputPer1M: 0.5;
|
|
320
|
+
readonly outputPer1M: 3;
|
|
321
|
+
};
|
|
322
|
+
readonly maxTokens: 1000000;
|
|
323
|
+
readonly supportsTools: true;
|
|
324
|
+
};
|
|
325
|
+
readonly "gemini/gemini-3.1-pro-preview": {
|
|
326
|
+
readonly id: "gemini/gemini-3.1-pro-preview";
|
|
327
|
+
readonly provider: "google";
|
|
328
|
+
readonly displayName: "Gemini 3.1 Pro";
|
|
329
|
+
readonly tier: "balanced";
|
|
330
|
+
readonly state: "active";
|
|
331
|
+
readonly lineup: false;
|
|
332
|
+
readonly costs: {
|
|
333
|
+
readonly inputPer1M: 2;
|
|
334
|
+
readonly outputPer1M: 12;
|
|
335
|
+
};
|
|
336
|
+
readonly maxTokens: 1000000;
|
|
337
|
+
readonly supportsTools: true;
|
|
338
|
+
};
|
|
339
|
+
readonly "openai/gpt-5.6-sol": {
|
|
340
|
+
readonly id: "openai/gpt-5.6-sol";
|
|
341
|
+
readonly provider: "openai";
|
|
342
|
+
readonly displayName: "GPT-5.6 Sol";
|
|
343
|
+
readonly tier: "premium";
|
|
344
|
+
readonly state: "active";
|
|
345
|
+
readonly lineup: false;
|
|
346
|
+
readonly costs: {
|
|
347
|
+
readonly inputPer1M: 4;
|
|
348
|
+
readonly outputPer1M: 20;
|
|
349
|
+
readonly cacheWritePer1M: 5;
|
|
350
|
+
readonly cacheReadPer1M: 0.4;
|
|
351
|
+
};
|
|
352
|
+
readonly maxTokens: 1050000;
|
|
353
|
+
readonly supportsTools: true;
|
|
354
|
+
};
|
|
355
|
+
readonly "openai/gpt-5.6-terra": {
|
|
356
|
+
readonly id: "openai/gpt-5.6-terra";
|
|
357
|
+
readonly provider: "openai";
|
|
358
|
+
readonly displayName: "GPT-5.6 Terra";
|
|
359
|
+
readonly tier: "balanced";
|
|
360
|
+
readonly state: "active";
|
|
361
|
+
readonly lineup: false;
|
|
362
|
+
readonly costs: {
|
|
363
|
+
readonly inputPer1M: 2;
|
|
364
|
+
readonly outputPer1M: 12;
|
|
365
|
+
readonly cacheReadPer1M: 0.2;
|
|
366
|
+
};
|
|
367
|
+
readonly maxTokens: 1050000;
|
|
368
|
+
readonly supportsTools: true;
|
|
369
|
+
};
|
|
370
|
+
readonly "openai/gpt-5.6-luna": {
|
|
371
|
+
readonly id: "openai/gpt-5.6-luna";
|
|
372
|
+
readonly provider: "openai";
|
|
373
|
+
readonly displayName: "GPT-5.6 Luna";
|
|
374
|
+
readonly tier: "fast";
|
|
375
|
+
readonly state: "active";
|
|
376
|
+
readonly lineup: false;
|
|
377
|
+
readonly costs: {
|
|
378
|
+
readonly inputPer1M: 0.2;
|
|
379
|
+
readonly outputPer1M: 1.2;
|
|
380
|
+
readonly cacheReadPer1M: 0.02;
|
|
381
|
+
};
|
|
382
|
+
readonly maxTokens: 1050000;
|
|
383
|
+
readonly supportsTools: true;
|
|
384
|
+
};
|
|
385
|
+
readonly "openai/gpt-5.3-codex": {
|
|
386
|
+
readonly id: "openai/gpt-5.3-codex";
|
|
387
|
+
readonly provider: "openai";
|
|
388
|
+
readonly displayName: "GPT-5.3 Codex";
|
|
389
|
+
readonly tier: "balanced";
|
|
390
|
+
readonly state: "active";
|
|
391
|
+
readonly lineup: false;
|
|
392
|
+
readonly costs: {
|
|
393
|
+
readonly inputPer1M: 1.75;
|
|
394
|
+
readonly outputPer1M: 14;
|
|
395
|
+
};
|
|
396
|
+
readonly maxTokens: 200000;
|
|
397
|
+
readonly supportsTools: true;
|
|
398
|
+
};
|
|
399
|
+
readonly "openai/gpt-5.4": {
|
|
400
|
+
readonly id: "openai/gpt-5.4";
|
|
401
|
+
readonly provider: "openai";
|
|
402
|
+
readonly displayName: "GPT-5.4";
|
|
403
|
+
readonly tier: "premium";
|
|
404
|
+
readonly state: "active";
|
|
405
|
+
readonly lineup: false;
|
|
406
|
+
readonly costs: {
|
|
407
|
+
readonly inputPer1M: 2.5;
|
|
408
|
+
readonly outputPer1M: 15;
|
|
409
|
+
};
|
|
410
|
+
readonly maxTokens: 1050000;
|
|
411
|
+
readonly supportsTools: true;
|
|
412
|
+
};
|
|
413
|
+
readonly "openai/gpt-5.4-mini": {
|
|
414
|
+
readonly id: "openai/gpt-5.4-mini";
|
|
415
|
+
readonly provider: "openai";
|
|
416
|
+
readonly displayName: "GPT-5.4 Mini";
|
|
417
|
+
readonly tier: "fast";
|
|
418
|
+
readonly state: "active";
|
|
419
|
+
readonly lineup: false;
|
|
420
|
+
readonly costs: {
|
|
421
|
+
readonly inputPer1M: 0.75;
|
|
422
|
+
readonly outputPer1M: 4.5;
|
|
423
|
+
};
|
|
424
|
+
readonly maxTokens: 400000;
|
|
425
|
+
readonly supportsTools: true;
|
|
426
|
+
};
|
|
427
|
+
readonly "openai/gpt-5.4-nano": {
|
|
428
|
+
readonly id: "openai/gpt-5.4-nano";
|
|
429
|
+
readonly provider: "openai";
|
|
430
|
+
readonly displayName: "GPT-5.4 Nano";
|
|
431
|
+
readonly tier: "fast";
|
|
432
|
+
readonly state: "active";
|
|
433
|
+
readonly lineup: false;
|
|
434
|
+
readonly costs: {
|
|
435
|
+
readonly inputPer1M: 0.2;
|
|
436
|
+
readonly outputPer1M: 1.25;
|
|
437
|
+
};
|
|
438
|
+
readonly maxTokens: 400000;
|
|
439
|
+
readonly supportsTools: true;
|
|
440
|
+
};
|
|
441
|
+
};
|
|
442
|
+
/** A model id = a registry key. Derived; never a second list. */
|
|
443
|
+
export type ModelId = keyof typeof MODEL_ROWS;
|
|
444
|
+
/** A registry row, as consumers read it. */
|
|
445
|
+
export interface ModelConfig extends ModelConfigBase {
|
|
446
|
+
id: ModelId;
|
|
447
|
+
}
|
|
448
|
+
/**
|
|
449
|
+
* The registry consumers read. Typed by the normalized {@link ModelConfig}
|
|
450
|
+
* (not the literal row types) so `MODEL_REGISTRY[id]` for any `ModelId`
|
|
451
|
+
* exposes every optional field as `T | undefined` rather than a union in
|
|
452
|
+
* which some rows lack the property. The literal rows above still derive
|
|
453
|
+
* {@link ModelId} and enforce `id === key`.
|
|
454
|
+
*/
|
|
455
|
+
export declare const MODEL_REGISTRY: Readonly<Record<ModelId, ModelConfig>>;
|
|
456
|
+
/**
|
|
457
|
+
* The curated "current lineup" — derived once from the rows' `lineup`
|
|
458
|
+
* fact, in registry order. Pickers render this up front and put the
|
|
459
|
+
* rest of the ACTIVE registry (legacy rows inside, marked) behind a
|
|
460
|
+
* "see all models" door (ggui#707 / #711).
|
|
461
|
+
*/
|
|
462
|
+
export declare const MODEL_LINEUP: readonly ModelId[];
|
|
463
|
+
/** Whether `id` is in {@link MODEL_LINEUP}. */
|
|
464
|
+
export declare function isLineupModel(id: ModelId): boolean;
|
|
77
465
|
/**
|
|
78
|
-
* Default model for generation
|
|
466
|
+
* Default model for generation. Stays Haiku 4.5 until the founder rules
|
|
467
|
+
* ggui#706 decision 1 (Fable 5.1 is 10× the per-render cost).
|
|
79
468
|
*/
|
|
80
469
|
export declare const DEFAULT_MODEL: ModelId;
|
|
470
|
+
export {};
|
|
81
471
|
//# sourceMappingURL=llm.d.ts.map
|
package/dist/types/llm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../../src/types/llm.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"llm.d.ts","sourceRoot":"","sources":["../../src/types/llm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAMlD,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;AAExD;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE7C,iEAAiE;AACjE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,WAAW,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,8BAA8B;IAC9B,KAAK,EAAE,UAAU,CAAC;IAClB;;;;;OAKG;IACH,MAAM,EAAE,OAAO,CAAC;IAChB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE;QACL,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB;;;;WAIG;QACH,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB;;;;WAIG;QACH,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAkBD,QAAA,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8Ud,CAAC;AAEH,iEAAiE;AACjE,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,UAAU,CAAC;AAE9C,4CAA4C;AAC5C,MAAM,WAAW,WAAY,SAAQ,eAAe;IAClD,EAAE,EAAE,OAAO,CAAC;CACb;AAED;;;;;;GAMG;AACH,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAc,CAAC;AAEjF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,SAAS,OAAO,EAEA,CAAC;AAE5C,+CAA+C;AAC/C,wBAAgB,aAAa,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAElD;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,OAAsC,CAAC"}
|