@compilr-dev/sdk 0.31.1 → 0.32.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/models/model-registry.js +19 -25
- package/dist/models/model-tiers.js +5 -2
- package/dist/models.js +2 -1
- package/package.json +2 -2
|
@@ -220,8 +220,8 @@ export const MODEL_REGISTRY = [
|
|
|
220
220
|
// OpenAI Models
|
|
221
221
|
// ---------------------------------------------------------------------------
|
|
222
222
|
{
|
|
223
|
-
id: 'gpt-
|
|
224
|
-
displayName: 'GPT-
|
|
223
|
+
id: 'gpt-6-astra',
|
|
224
|
+
displayName: 'GPT-6 Astra',
|
|
225
225
|
description: 'Most capable',
|
|
226
226
|
provider: 'openai',
|
|
227
227
|
supportsImages: true,
|
|
@@ -229,12 +229,12 @@ export const MODEL_REGISTRY = [
|
|
|
229
229
|
defaultTier: 'powerful',
|
|
230
230
|
thinkingFormat: 'none',
|
|
231
231
|
status: 'supported',
|
|
232
|
-
contextWindow:
|
|
233
|
-
notes: '
|
|
232
|
+
contextWindow: 1050000,
|
|
233
|
+
notes: 'Responses API only (tools + reasoning); max output 128,000; $10/$50 per MTok',
|
|
234
234
|
},
|
|
235
235
|
{
|
|
236
|
-
id: 'gpt-
|
|
237
|
-
displayName: 'GPT-
|
|
236
|
+
id: 'gpt-6-sol',
|
|
237
|
+
displayName: 'GPT-6 Sol',
|
|
238
238
|
description: 'Balanced (recommended)',
|
|
239
239
|
provider: 'openai',
|
|
240
240
|
supportsImages: true,
|
|
@@ -242,11 +242,12 @@ export const MODEL_REGISTRY = [
|
|
|
242
242
|
defaultTier: 'balanced',
|
|
243
243
|
thinkingFormat: 'none',
|
|
244
244
|
status: 'supported',
|
|
245
|
-
contextWindow:
|
|
245
|
+
contextWindow: 1050000,
|
|
246
|
+
notes: 'Coding and agentic work; max output 128,000; $2/$10 per MTok',
|
|
246
247
|
},
|
|
247
248
|
{
|
|
248
|
-
id: 'gpt-
|
|
249
|
-
displayName: 'GPT-
|
|
249
|
+
id: 'gpt-6-luna',
|
|
250
|
+
displayName: 'GPT-6 Luna',
|
|
250
251
|
description: 'Fast, low cost',
|
|
251
252
|
provider: 'openai',
|
|
252
253
|
supportsImages: true,
|
|
@@ -254,29 +255,20 @@ export const MODEL_REGISTRY = [
|
|
|
254
255
|
defaultTier: 'fast',
|
|
255
256
|
thinkingFormat: 'none',
|
|
256
257
|
status: 'supported',
|
|
257
|
-
contextWindow:
|
|
258
|
-
|
|
259
|
-
{
|
|
260
|
-
id: 'gpt-5-mini-2025-08-07',
|
|
261
|
-
displayName: 'GPT-5 Mini',
|
|
262
|
-
description: 'Balanced, latest generation',
|
|
263
|
-
provider: 'openai',
|
|
264
|
-
supportsImages: true,
|
|
265
|
-
supportsTools: true,
|
|
266
|
-
thinkingFormat: 'none',
|
|
267
|
-
status: 'supported',
|
|
268
|
-
contextWindow: 400000,
|
|
258
|
+
contextWindow: 1050000,
|
|
259
|
+
notes: 'High volume; max output 128,000; $0.10/$0.50 per MTok',
|
|
269
260
|
},
|
|
270
261
|
{
|
|
271
|
-
id: 'gpt-5
|
|
272
|
-
displayName: 'GPT-5
|
|
273
|
-
description: '
|
|
262
|
+
id: 'gpt-5.5',
|
|
263
|
+
displayName: 'GPT-5.5',
|
|
264
|
+
description: 'Previous generation',
|
|
274
265
|
provider: 'openai',
|
|
275
266
|
supportsImages: true,
|
|
276
267
|
supportsTools: true,
|
|
277
268
|
thinkingFormat: 'none',
|
|
278
269
|
status: 'supported',
|
|
279
270
|
contextWindow: 400000,
|
|
271
|
+
notes: 'Legacy — the last OpenAI generation that calls tools on Chat Completions',
|
|
280
272
|
},
|
|
281
273
|
// ---------------------------------------------------------------------------
|
|
282
274
|
// Ollama Models (Local)
|
|
@@ -605,7 +597,9 @@ export function modelSupportsImages(modelId) {
|
|
|
605
597
|
const id = modelId.toLowerCase();
|
|
606
598
|
if (id.includes('claude') || id.includes('gemini'))
|
|
607
599
|
return true;
|
|
608
|
-
|
|
600
|
+
// ⚠️ Generation-agnostic: a `gpt-\d` check dated to gpt-5 would answer FALSE for gpt-6 and
|
|
601
|
+
// silently disable image input on a model that has it (measured: gpt-6-sol read a PNG).
|
|
602
|
+
if (/gpt-4o|gpt-4-turbo|gpt-4\.1|gpt-[5-9]|gpt-\d{2}/.test(id))
|
|
609
603
|
return true;
|
|
610
604
|
return false;
|
|
611
605
|
}
|
|
@@ -68,10 +68,13 @@ export function getShortModelName(modelId) {
|
|
|
68
68
|
return 'Opus';
|
|
69
69
|
if (modelId.includes('claude-fable'))
|
|
70
70
|
return 'Fable';
|
|
71
|
-
|
|
72
|
-
return 'GPT-5';
|
|
71
|
+
// ⚠️ gpt-4o before the generic pattern, which would otherwise render it "GPT-4".
|
|
73
72
|
if (modelId.includes('gpt-4o'))
|
|
74
73
|
return 'GPT-4o';
|
|
74
|
+
// Generation-agnostic, so a future gpt-7 needs no edit here.
|
|
75
|
+
const gpt = /gpt-(\d+(?:\.\d+)?)/.exec(modelId);
|
|
76
|
+
if (gpt)
|
|
77
|
+
return `GPT-${gpt[1]}`;
|
|
75
78
|
if (modelId.includes('gemini-3'))
|
|
76
79
|
return 'Gemini 3';
|
|
77
80
|
if (modelId.includes('gemini-2.5'))
|
package/dist/models.js
CHANGED
|
@@ -31,7 +31,8 @@ export const DEFAULT_MODELS = (() => {
|
|
|
31
31
|
else {
|
|
32
32
|
// Fallback: first supported model for this provider, or a sensible default
|
|
33
33
|
const firstModel = MODEL_REGISTRY.find((m) => m.provider === provider && m.status === 'supported');
|
|
34
|
-
|
|
34
|
+
// Fallback only when the registry has no model at all for the provider; gpt-4o is gone.
|
|
35
|
+
result[provider] = firstModel?.id ?? 'gpt-6-sol';
|
|
35
36
|
}
|
|
36
37
|
}
|
|
37
38
|
return result;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@compilr-dev/sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.32.0",
|
|
4
4
|
"description": "Universal agent runtime for building AI-powered applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
"node": ">=20.0.0"
|
|
82
82
|
},
|
|
83
83
|
"dependencies": {
|
|
84
|
-
"@compilr-dev/agents": "^0.
|
|
84
|
+
"@compilr-dev/agents": "^0.7.0",
|
|
85
85
|
"@compilr-dev/logger": "^0.1.0",
|
|
86
86
|
"ajv": "^6.14.0",
|
|
87
87
|
"yaml": "^2.8.4"
|