@oh-my-pi/pi-catalog 18.4.4 → 18.4.6
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 +31 -0
- package/dist/types/compat/auth-ids.d.ts +2 -2
- package/dist/types/compat/axes.d.ts +3 -1
- package/dist/types/compat/factory-droid.d.ts +65 -0
- package/dist/types/compat/provider-ids.d.ts +1 -1
- package/dist/types/compat/resolve.d.ts +8 -2
- package/dist/types/compat/types.d.ts +26 -1
- package/dist/types/discovery/cursor-proto.d.ts +284 -0
- package/dist/types/discovery/cursor.d.ts +12 -6
- package/dist/types/discovery/factory-droid.d.ts +28 -0
- package/dist/types/discovery/index.d.ts +1 -0
- package/dist/types/discovery/protobuf.d.ts +3 -3
- package/dist/types/model-manager.d.ts +10 -0
- package/dist/types/models.d.ts +5 -1
- package/dist/types/provider-models/cache-provider-id.d.ts +2 -1
- package/dist/types/provider-models/descriptor-types.d.ts +2 -1
- package/dist/types/provider-models/openai-compat.d.ts +21 -0
- package/dist/types/provider-models/special.d.ts +2 -0
- package/dist/types/types.d.ts +100 -3
- package/dist/types/wire/cursor.d.ts +20 -0
- package/dist/types/wire/factory-droid.d.ts +45 -0
- package/package.json +4 -4
- package/src/build.ts +21 -0
- package/src/compat/auth-ids.ts +4 -0
- package/src/compat/axes.ts +113 -2
- package/src/compat/cascade.ts +8 -1
- package/src/compat/collapse.ts +3 -0
- package/src/compat/factory-droid.ts +170 -0
- package/src/compat/provider-ids.ts +2 -0
- package/src/compat/resolve.ts +47 -5
- package/src/compat/rules/README.md +18 -8
- package/src/compat/rules/auth/_order.kdl +2 -2
- package/src/compat/rules/auth/factory-droid.kdl +28 -0
- package/src/compat/rules/auth/helmcode.kdl +9 -0
- package/src/compat/rules/classes/anthropic.kdl +195 -80
- package/src/compat/rules/providers/commandcode.kdl +21 -5
- package/src/compat/rules/providers/cursor.kdl +29 -17
- package/src/compat/rules/providers/factory-droid.kdl +1166 -0
- package/src/compat/rules/providers/helmcode.kdl +120 -0
- package/src/compat/rules/runtime/behavior.kdl +65 -4
- package/src/compat/rules/taxonomy/_collapse.kdl +36 -14
- package/src/compat/rules.json +1 -1
- package/src/compat/types.ts +27 -1
- package/src/discovery/cursor-models.proto +261 -0
- package/src/discovery/cursor-proto.ts +471 -0
- package/src/discovery/cursor.ts +817 -88
- package/src/discovery/devin.ts +1 -3
- package/src/discovery/factory-droid.ts +296 -0
- package/src/discovery/index.ts +1 -0
- package/src/discovery/protobuf.ts +16 -7
- package/src/model-manager.ts +13 -0
- package/src/models.json +1 -1
- package/src/models.ts +13 -0
- package/src/provider-models/cache-provider-id.ts +37 -6
- package/src/provider-models/descriptor-types.ts +2 -1
- package/src/provider-models/descriptors.ts +4 -0
- package/src/provider-models/openai-compat.ts +83 -17
- package/src/provider-models/special.ts +26 -2
- package/src/types.ts +112 -1
- package/src/wire/cursor.ts +32 -0
- package/src/wire/factory-droid.ts +130 -0
|
@@ -5,8 +5,8 @@ login-order "openai-codex" "anthropic" "zai" "zai-coding-plan" "kimi-code" "open
|
|
|
5
5
|
"cursor" "devin" "google-antigravity" "google-gemini-cli" "openai-codex-device" "xai" "xai-oauth" \
|
|
6
6
|
"gitlab-duo" "gitlab-duo-agent" "alibaba-coding-plan" "alibaba-token-plan" "aiand" "abliteration" "zhipu-coding-plan" \
|
|
7
7
|
"umans" "qwen-portal" "sakana" "minimax-code" "minimax-code-cn" "xiaomi" "xiaomi-token-plan-sgp" \
|
|
8
|
-
"xiaomi-token-plan-ams" "xiaomi-token-plan-cn" "firepass" "cline-pass" "commandcode" "charm-hyper" "deepseek" "stepfun" "muse-code" "meta" "moonshot" \
|
|
9
|
-
"cerebras" "baseten" "fireworks" "together" "nvidia" "novita" "deepinfra" "huggingface" "perplexity" \
|
|
8
|
+
"xiaomi-token-plan-ams" "xiaomi-token-plan-cn" "firepass" "cline-pass" "factory-droid" "commandcode" "charm-hyper" "deepseek" "stepfun" "muse-code" "meta" "moonshot" \
|
|
9
|
+
"cerebras" "baseten" "helmcode" "fireworks" "together" "nvidia" "novita" "deepinfra" "huggingface" "perplexity" \
|
|
10
10
|
"qianfan" "venice" "siliconflow" "siliconflow-cn" "synthetic" "nanogpt" "wafer-serverless" "coreweave" \
|
|
11
11
|
"vercel-ai-gateway" "cloudflare-ai-gateway" "litellm" "kilo" "zenmux" "opencode-zen" "opencode-go" \
|
|
12
12
|
"yolo-auto" "tavily" "kagi" "exa" "parallel" "typesafe" "ollama" "ollama-cloud" "lm-studio" "llama.cpp" "vllm" \
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
auth "factory-droid" {
|
|
2
|
+
name "Factory Droid"
|
|
3
|
+
org-scoped-identity #true
|
|
4
|
+
// WorkOS public client: the access token authorizes the Factory LLM proxy.
|
|
5
|
+
login "device-code" {
|
|
6
|
+
client-id "client_01HNM792M5G5G1A2THWPXKFMXB"
|
|
7
|
+
device url="https://api.workos.com/user_management/authorize/device" timeout-ms=15000 {
|
|
8
|
+
headers { Accept "application/json" }
|
|
9
|
+
}
|
|
10
|
+
token url="https://api.workos.com/user_management/authenticate" timeout-ms=15000 {
|
|
11
|
+
headers { Accept "application/json" }
|
|
12
|
+
}
|
|
13
|
+
credential {
|
|
14
|
+
expires "jwt" skew-ms=0 fallback-ms=86400000
|
|
15
|
+
email "user.email" claim="email"
|
|
16
|
+
account-id "user.id" claim="sub"
|
|
17
|
+
// WorkOS organization_id is internal; only this claim can be used as X-Factory-Org-Id.
|
|
18
|
+
org-id claim="external_org_id"
|
|
19
|
+
}
|
|
20
|
+
after-exchange hook="factory-droid-region"
|
|
21
|
+
}
|
|
22
|
+
refresh {
|
|
23
|
+
token url="https://api.workos.com/user_management/authenticate" timeout-ms=15000 {
|
|
24
|
+
headers { Accept "application/json" }
|
|
25
|
+
}
|
|
26
|
+
after-refresh hook="factory-droid-region"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
auth "helmcode" {
|
|
2
|
+
name "Helmcode"
|
|
3
|
+
login "api-key" {
|
|
4
|
+
auth-url "https://cloud.helmcode.com"
|
|
5
|
+
instructions "Copy your API key from the Helmcode dashboard"
|
|
6
|
+
prompt "Paste your Helmcode API key" placeholder="sk-..."
|
|
7
|
+
validate "models-endpoint" label="Helmcode" url="https://api.helmcode.com/v1/models"
|
|
8
|
+
}
|
|
9
|
+
}
|
|
@@ -49,8 +49,9 @@ class "anthropic" {
|
|
|
49
49
|
// Opus 5.5 rejects forced tool selection the way Fable/Mythos do — a
|
|
50
50
|
// `tool_choice` of `tool` or `any` fails the request with 400
|
|
51
51
|
// `invalid_request_error`: `tool_choice: type "tool" and "any" are not
|
|
52
|
-
// supported for this model`.
|
|
53
|
-
// `
|
|
52
|
+
// supported for this model`. This holds on every route, including Bedrock
|
|
53
|
+
// Converse (`toolChoice: {any: {}}`). The transports downgrade the selector
|
|
54
|
+
// to `auto` so the tool stays offered instead of the turn dying.
|
|
54
55
|
//
|
|
55
56
|
// Upper-bounded on purpose: separator-collapsed ids parse their revision
|
|
56
57
|
// as a whole number (`claude-opus-45` is Opus 4.5, revision 45), so an
|
|
@@ -108,7 +109,6 @@ class "anthropic" {
|
|
|
108
109
|
supports-mid-conversation-tool-changes #true
|
|
109
110
|
supports-turn-scoped-system #true
|
|
110
111
|
supports-per-message-effort #true
|
|
111
|
-
supports-thinking-binding-controls #true
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
family "opus" {
|
|
@@ -122,6 +122,15 @@ class "anthropic" {
|
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
|
+
// Vertex rejects `thinking.block_binding` on Sonnet 5.5 with 400
|
|
126
|
+
// `thinking.adaptive.block_binding: Extra inputs are not permitted`.
|
|
127
|
+
on "anthropic" "cloudflare-ai-gateway" {
|
|
128
|
+
family "sonnet" {
|
|
129
|
+
revision ">=5.5" {
|
|
130
|
+
supports-thinking-binding-controls #true
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
125
134
|
on "aimlapi" "gitlab-duo" "kilo" "nanogpt" "venice" {
|
|
126
135
|
thinking-efforts "minimal" "low" "medium" "high" "xhigh"
|
|
127
136
|
}
|
|
@@ -273,27 +282,11 @@ class "anthropic" {
|
|
|
273
282
|
}
|
|
274
283
|
}
|
|
275
284
|
}
|
|
276
|
-
// AWS Bedrock Converse prompt-cache checkpoints, from the AWS model cards
|
|
277
|
-
// (docs.aws.amazon.com/bedrock/latest/userguide/model-cards.html); cache
|
|
278
|
-
// pricing is deliberately not used to infer these request shapes.
|
|
279
285
|
on "amazon-bedrock" {
|
|
286
|
+
// Model metadata applies to every Bedrock request adapter.
|
|
287
|
+
// Upstream metadata is stale for cache pricing and context.
|
|
280
288
|
family "opus" {
|
|
281
|
-
revision ">=4 <4.5" {
|
|
282
|
-
prompt-cache-mode "explicit"
|
|
283
|
-
prompt-cache-minimum-tokens 1024
|
|
284
|
-
prompt-cache-maximum-checkpoints 4
|
|
285
|
-
}
|
|
286
|
-
revision "=4.5" {
|
|
287
|
-
prompt-cache-mode "explicit"
|
|
288
|
-
prompt-cache-minimum-tokens 4096
|
|
289
|
-
prompt-cache-maximum-checkpoints 4
|
|
290
|
-
supports-long-prompt-cache-retention #true
|
|
291
|
-
}
|
|
292
289
|
revision "=4.6" {
|
|
293
|
-
prompt-cache-mode "explicit"
|
|
294
|
-
prompt-cache-minimum-tokens 4096
|
|
295
|
-
prompt-cache-maximum-checkpoints 4
|
|
296
|
-
// Upstream metadata is stale for cache pricing and context.
|
|
297
290
|
cost-patch {
|
|
298
291
|
cache-read 0.5
|
|
299
292
|
cache-write 6.25
|
|
@@ -303,74 +296,196 @@ class "anthropic" {
|
|
|
303
296
|
max-tokens 128000
|
|
304
297
|
}
|
|
305
298
|
}
|
|
306
|
-
revision ">=4.7 <5" {
|
|
307
|
-
prompt-cache-mode "explicit"
|
|
308
|
-
prompt-cache-minimum-tokens 4096
|
|
309
|
-
prompt-cache-maximum-checkpoints 4
|
|
310
|
-
supports-long-prompt-cache-retention #true
|
|
311
|
-
}
|
|
312
|
-
revision ">=5" {
|
|
313
|
-
prompt-cache-mode "explicit"
|
|
314
|
-
prompt-cache-minimum-tokens 512
|
|
315
|
-
prompt-cache-maximum-checkpoints 4
|
|
316
|
-
supports-long-prompt-cache-retention #true
|
|
317
|
-
}
|
|
318
299
|
}
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
300
|
+
// AWS Bedrock Converse prompt-cache checkpoints, from the AWS model cards
|
|
301
|
+
// (docs.aws.amazon.com/bedrock/latest/userguide/model-cards.html); cache
|
|
302
|
+
// pricing is deliberately not used to infer these request shapes. Keep the
|
|
303
|
+
// provider and adapter conjunctive so this policy stays on Converse.
|
|
304
|
+
on-api "bedrock-converse-stream" {
|
|
305
|
+
family "opus" {
|
|
306
|
+
revision ">=4 <4.5" {
|
|
307
|
+
prompt-cache-mode "explicit"
|
|
308
|
+
prompt-cache-minimum-tokens 1024
|
|
309
|
+
prompt-cache-maximum-checkpoints 4
|
|
310
|
+
prompt-cache {
|
|
311
|
+
short 300
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
revision "=4.5" {
|
|
315
|
+
prompt-cache-mode "explicit"
|
|
316
|
+
prompt-cache-minimum-tokens 4096
|
|
317
|
+
prompt-cache-maximum-checkpoints 4
|
|
318
|
+
prompt-cache {
|
|
319
|
+
short 300
|
|
320
|
+
long 3600
|
|
321
|
+
}
|
|
322
|
+
supports-long-prompt-cache-retention #true
|
|
323
|
+
}
|
|
324
|
+
revision "=4.6" {
|
|
325
|
+
prompt-cache-mode "explicit"
|
|
326
|
+
prompt-cache-minimum-tokens 4096
|
|
327
|
+
prompt-cache-maximum-checkpoints 4
|
|
328
|
+
prompt-cache {
|
|
329
|
+
short 300
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
revision ">=4.7 <5" {
|
|
333
|
+
prompt-cache-mode "explicit"
|
|
334
|
+
prompt-cache-minimum-tokens 4096
|
|
335
|
+
prompt-cache-maximum-checkpoints 4
|
|
336
|
+
supports-long-prompt-cache-retention #true
|
|
337
|
+
prompt-cache {
|
|
338
|
+
short 300
|
|
339
|
+
long 3600
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
revision ">=5" {
|
|
343
|
+
prompt-cache-mode "explicit"
|
|
344
|
+
prompt-cache-minimum-tokens 512
|
|
345
|
+
prompt-cache-maximum-checkpoints 4
|
|
346
|
+
supports-long-prompt-cache-retention #true
|
|
347
|
+
prompt-cache {
|
|
348
|
+
short 300
|
|
349
|
+
long 3600
|
|
350
|
+
}
|
|
351
|
+
}
|
|
326
352
|
}
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
353
|
+
family "sonnet" {
|
|
354
|
+
revision "=3.5" {
|
|
355
|
+
models "*3-5-sonnet-20241022-v2*" {
|
|
356
|
+
prompt-cache-mode "explicit"
|
|
357
|
+
prompt-cache-minimum-tokens 1024
|
|
358
|
+
prompt-cache-maximum-checkpoints 4
|
|
359
|
+
prompt-cache {
|
|
360
|
+
short 300
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
revision "=3.7" {
|
|
365
|
+
prompt-cache-mode "explicit"
|
|
366
|
+
prompt-cache-minimum-tokens 1024
|
|
367
|
+
prompt-cache-maximum-checkpoints 4
|
|
368
|
+
prompt-cache {
|
|
369
|
+
short 300
|
|
370
|
+
}
|
|
371
|
+
}
|
|
372
|
+
revision ">=4 <4.5" {
|
|
373
|
+
prompt-cache-mode "explicit"
|
|
374
|
+
prompt-cache-minimum-tokens 1024
|
|
375
|
+
prompt-cache-maximum-checkpoints 4
|
|
376
|
+
prompt-cache {
|
|
377
|
+
short 300
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
revision "=4.5" {
|
|
381
|
+
prompt-cache-mode "explicit"
|
|
382
|
+
prompt-cache-minimum-tokens 4096
|
|
383
|
+
prompt-cache-maximum-checkpoints 4
|
|
384
|
+
supports-long-prompt-cache-retention #true
|
|
385
|
+
prompt-cache {
|
|
386
|
+
short 300
|
|
387
|
+
long 3600
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
revision "=4.6" {
|
|
391
|
+
prompt-cache-mode "explicit"
|
|
392
|
+
prompt-cache-minimum-tokens 1024
|
|
393
|
+
prompt-cache-maximum-checkpoints 4
|
|
394
|
+
prompt-cache {
|
|
395
|
+
short 300
|
|
396
|
+
}
|
|
397
|
+
}
|
|
398
|
+
revision ">=5" {
|
|
399
|
+
prompt-cache-mode "explicit"
|
|
400
|
+
prompt-cache-minimum-tokens 4096
|
|
401
|
+
prompt-cache-maximum-checkpoints 4
|
|
402
|
+
supports-long-prompt-cache-retention #true
|
|
403
|
+
prompt-cache {
|
|
404
|
+
short 300
|
|
405
|
+
long 3600
|
|
406
|
+
}
|
|
407
|
+
}
|
|
331
408
|
}
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
409
|
+
family "haiku" {
|
|
410
|
+
revision "=3.5" {
|
|
411
|
+
prompt-cache-mode "explicit"
|
|
412
|
+
prompt-cache-minimum-tokens 2048
|
|
413
|
+
prompt-cache-maximum-checkpoints 4
|
|
414
|
+
prompt-cache {
|
|
415
|
+
short 300
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
revision ">=4.5" {
|
|
419
|
+
prompt-cache-mode "explicit"
|
|
420
|
+
prompt-cache-minimum-tokens 4096
|
|
421
|
+
prompt-cache-maximum-checkpoints 4
|
|
422
|
+
supports-long-prompt-cache-retention #true
|
|
423
|
+
prompt-cache {
|
|
424
|
+
short 300
|
|
425
|
+
long 3600
|
|
426
|
+
}
|
|
427
|
+
}
|
|
336
428
|
}
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
429
|
+
family "fable" {
|
|
430
|
+
revision ">=5" {
|
|
431
|
+
prompt-cache-mode "explicit"
|
|
432
|
+
prompt-cache-minimum-tokens 1024
|
|
433
|
+
prompt-cache-maximum-checkpoints 4
|
|
434
|
+
supports-long-prompt-cache-retention #true
|
|
435
|
+
prompt-cache {
|
|
436
|
+
short 300
|
|
437
|
+
long 3600
|
|
438
|
+
}
|
|
439
|
+
}
|
|
342
440
|
}
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
// Messages routes on Bedrock Runtime and Mantle use the Anthropic five-minute
|
|
444
|
+
// cache lifetime. Require both the AWS provider and Messages API: model IDs
|
|
445
|
+
// alone do not distinguish Bedrock from gateways or other API lanes.
|
|
446
|
+
on "amazon-bedrock" "bedrock-mantle" {
|
|
447
|
+
on-api "anthropic-messages" {
|
|
448
|
+
family "opus" {
|
|
449
|
+
revision ">=4.7" {
|
|
450
|
+
prompt-cache {
|
|
451
|
+
short 300
|
|
452
|
+
}
|
|
453
|
+
}
|
|
347
454
|
}
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
455
|
+
family "sonnet" {
|
|
456
|
+
revision ">=4.6" {
|
|
457
|
+
prompt-cache {
|
|
458
|
+
short 300
|
|
459
|
+
}
|
|
460
|
+
}
|
|
353
461
|
}
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
462
|
+
family "haiku" {
|
|
463
|
+
revision ">=4.5" {
|
|
464
|
+
prompt-cache {
|
|
465
|
+
short 300
|
|
466
|
+
}
|
|
467
|
+
}
|
|
360
468
|
}
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
469
|
+
family "fable" {
|
|
470
|
+
revision ">=5" {
|
|
471
|
+
prompt-cache {
|
|
472
|
+
short 300
|
|
473
|
+
}
|
|
474
|
+
}
|
|
366
475
|
}
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
476
|
+
family "mythos" {
|
|
477
|
+
// The Mythos Preview id has no numeric revision to select.
|
|
478
|
+
models "*mythos-preview*" {
|
|
479
|
+
prompt-cache {
|
|
480
|
+
short 300
|
|
481
|
+
}
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
revision ">=5" {
|
|
485
|
+
prompt-cache {
|
|
486
|
+
short 300
|
|
487
|
+
}
|
|
488
|
+
}
|
|
374
489
|
}
|
|
375
490
|
}
|
|
376
491
|
}
|
|
@@ -54,6 +54,24 @@ provider "commandcode" {
|
|
|
54
54
|
supports-eager-tool-input-streaming #false
|
|
55
55
|
supports-long-cache-retention #false
|
|
56
56
|
}
|
|
57
|
+
// Endpoint contract for every id `api-routes provider="commandcode"` sends to
|
|
58
|
+
// Responses. Responses accepts `reasoning.effort: "none"` while chat
|
|
59
|
+
// completions rejects it (low|medium|high|xhigh|max only), so thinking-off
|
|
60
|
+
// disables reasoning instead of clamping to the lowest effort. Ids without
|
|
61
|
+
// an effort ladder stay inert through provider-level
|
|
62
|
+
// `supports-reasoning-effort #false`. The Responses endpoint also rejects an
|
|
63
|
+
// object `tool_choice` (verified 2026-09-29), so named choices degrade to
|
|
64
|
+
// `"required"`.
|
|
65
|
+
on-api "openai-responses" {
|
|
66
|
+
reasoning-disable-mode "none-effort"
|
|
67
|
+
supports-named-tool-choice #false
|
|
68
|
+
}
|
|
69
|
+
// First-party OpenAI grants `none` only to the 5.6 generation
|
|
70
|
+
// (`providers/openai.kdl`); the gateway may forward `reasoning.effort`
|
|
71
|
+
// unchanged, so the other GPT ids keep the first-party lowest-effort off.
|
|
72
|
+
models "gpt-5.3-codex" "gpt-5.4" "gpt-5.4-mini" "gpt-5.5" "gpt-6-astra" "gpt-6-luna" "gpt-6-sol" {
|
|
73
|
+
reasoning-disable-mode "lowest-effort"
|
|
74
|
+
}
|
|
57
75
|
models "typesafe/jev" {
|
|
58
76
|
kind "judge"
|
|
59
77
|
}
|
|
@@ -154,15 +172,13 @@ provider "commandcode" {
|
|
|
154
172
|
max-tokens 65536
|
|
155
173
|
}
|
|
156
174
|
}
|
|
157
|
-
// Command Code's Responses endpoint
|
|
158
|
-
//
|
|
159
|
-
//
|
|
160
|
-
// degrade to `"required"`. Hosted web search still works with a string `tool_choice`.
|
|
175
|
+
// Command Code's Responses endpoint returns no bytes from `image_generation`
|
|
176
|
+
// (verified 2026-09-29), so the openai class's hosted-image and image-model
|
|
177
|
+
// grants do not apply. Hosted web search still works with a string `tool_choice`.
|
|
161
178
|
models "gpt-5.3-codex" "gpt-5.4" "gpt-5.4-mini" "gpt-5.5" "gpt-5.6-luna" "gpt-5.6-sol" \
|
|
162
179
|
"gpt-5.6-terra" "gpt-6-astra" "gpt-6-luna" "gpt-6-sol" {
|
|
163
180
|
hosted-image #false
|
|
164
181
|
image-model #false
|
|
165
|
-
supports-named-tool-choice #false
|
|
166
182
|
}
|
|
167
183
|
// ---------------------------------------------------------------------------
|
|
168
184
|
// This table prices every model id that GET /provider/v1/models serves.
|
|
@@ -8,6 +8,11 @@ provider "cursor" {
|
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
thinking-mode "effort"
|
|
11
|
+
// Cursor's default route selects a differently priced backing model per request.
|
|
12
|
+
models "default" {
|
|
13
|
+
pricing-status "variable"
|
|
14
|
+
}
|
|
15
|
+
|
|
11
16
|
class "anthropic" {
|
|
12
17
|
family "fable" {
|
|
13
18
|
requires-cursor-tool-schema-projection #true
|
|
@@ -211,9 +216,10 @@ provider "cursor" {
|
|
|
211
216
|
}
|
|
212
217
|
}
|
|
213
218
|
// Claude Opus 5 Fast: the docs name the fast wire ids but publish no
|
|
214
|
-
// fast
|
|
219
|
+
// fast rate. Discovery applies AvailableModels' declared fast multiplier
|
|
220
|
+
// (2x); the base card only seeds rows discovery left unpriced.
|
|
215
221
|
models "claude-opus-5-high-fast" "claude-opus-5-low-fast" "claude-opus-5-medium-fast" "claude-opus-5-thinking-max-fast" "claude-opus-5-thinking-xhigh-fast" {
|
|
216
|
-
cost-
|
|
222
|
+
cost-fallback {
|
|
217
223
|
input 5.0
|
|
218
224
|
output 25.0
|
|
219
225
|
cache-read 0.5
|
|
@@ -231,9 +237,10 @@ provider "cursor" {
|
|
|
231
237
|
}
|
|
232
238
|
}
|
|
233
239
|
// Claude Opus 5.5 Fast: the docs name the fast wire id but publish no
|
|
234
|
-
// fast
|
|
240
|
+
// fast rate. Discovery prices it from AvailableModels' declared fast
|
|
241
|
+
// multiplier; the base card only seeds rows discovery left unpriced.
|
|
235
242
|
models "claude-opus-5-5-fast" {
|
|
236
|
-
cost-
|
|
243
|
+
cost-fallback {
|
|
237
244
|
input 4.0
|
|
238
245
|
output 20.0
|
|
239
246
|
cache-read 0.2
|
|
@@ -267,8 +274,9 @@ provider "cursor" {
|
|
|
267
274
|
cache-write 0
|
|
268
275
|
}
|
|
269
276
|
}
|
|
270
|
-
// Grok 4.5: $2/$6, cache read $0.50, no write fee.
|
|
271
|
-
|
|
277
|
+
// Grok 4.5: $2/$6, cache read $0.50, no write fee. Legacy id plus the
|
|
278
|
+
// per-effort wire slugs AvailableModels serves.
|
|
279
|
+
models "cursor-grok-4.5" "cursor-grok-4.5-low" "cursor-grok-4.5-medium" "cursor-grok-4.5-high" {
|
|
272
280
|
cost-patch {
|
|
273
281
|
input 2.0
|
|
274
282
|
output 6.0
|
|
@@ -277,7 +285,7 @@ provider "cursor" {
|
|
|
277
285
|
}
|
|
278
286
|
}
|
|
279
287
|
// Grok 4.5 Fast: $4/$18, cache read $1.00. Output is 3x base per docs.
|
|
280
|
-
models "cursor-grok-4.5-fast" {
|
|
288
|
+
models "cursor-grok-4.5-fast" "cursor-grok-4.5-low-fast" "cursor-grok-4.5-medium-fast" "cursor-grok-4.5-high-fast" {
|
|
281
289
|
cost-patch {
|
|
282
290
|
input 4.0
|
|
283
291
|
output 18.0
|
|
@@ -285,8 +293,9 @@ provider "cursor" {
|
|
|
285
293
|
cache-write 0
|
|
286
294
|
}
|
|
287
295
|
}
|
|
288
|
-
// Grok 4.6: $2/$6, cache read $0.50, no write fee.
|
|
289
|
-
|
|
296
|
+
// Grok 4.6: $2/$6, cache read $0.50, no write fee. Legacy id plus the
|
|
297
|
+
// per-effort wire slugs AvailableModels serves.
|
|
298
|
+
models "cursor-grok-4.6" "cursor-grok-4.6-low" "cursor-grok-4.6-medium" "cursor-grok-4.6-high" "cursor-grok-4.6-xhigh" {
|
|
290
299
|
cost-patch {
|
|
291
300
|
input 2.0
|
|
292
301
|
output 6.0
|
|
@@ -295,7 +304,8 @@ provider "cursor" {
|
|
|
295
304
|
}
|
|
296
305
|
}
|
|
297
306
|
// Grok 4.6 Fast: $4/$12, cache read $1.00.
|
|
298
|
-
models "cursor-grok-4.6-fast"
|
|
307
|
+
models "cursor-grok-4.6-fast" "cursor-grok-4.6-low-fast" "cursor-grok-4.6-medium-fast" "cursor-grok-4.6-high-fast" \
|
|
308
|
+
"cursor-grok-4.6-xhigh-fast" {
|
|
299
309
|
cost-patch {
|
|
300
310
|
input 4.0
|
|
301
311
|
output 12.0
|
|
@@ -448,10 +458,10 @@ provider "cursor" {
|
|
|
448
458
|
cache-write 0
|
|
449
459
|
}
|
|
450
460
|
}
|
|
451
|
-
// GPT-5.2 Fast: the docs publish no fast
|
|
452
|
-
// the base
|
|
461
|
+
// GPT-5.2 Fast: the docs publish no fast rate. Discovery applies the
|
|
462
|
+
// declared fast multiplier; the base card only seeds unpriced rows.
|
|
453
463
|
models "gpt-5.2-fast" "gpt-5.2-high-fast" "gpt-5.2-low-fast" "gpt-5.2-xhigh-fast" {
|
|
454
|
-
cost-
|
|
464
|
+
cost-fallback {
|
|
455
465
|
input 1.75
|
|
456
466
|
output 14.0
|
|
457
467
|
cache-read 0.175
|
|
@@ -486,9 +496,10 @@ provider "cursor" {
|
|
|
486
496
|
cache-write 0
|
|
487
497
|
}
|
|
488
498
|
}
|
|
489
|
-
// GPT-5.3 Codex Fast: no fast
|
|
499
|
+
// GPT-5.3 Codex Fast: no fast rate published; discovery applies the
|
|
500
|
+
// declared multiplier, and the base card only seeds unpriced rows.
|
|
490
501
|
models "gpt-5.3-codex-fast" "gpt-5.3-codex-high-fast" "gpt-5.3-codex-low-fast" "gpt-5.3-codex-xhigh-fast" {
|
|
491
|
-
cost-
|
|
502
|
+
cost-fallback {
|
|
492
503
|
input 1.75
|
|
493
504
|
output 14.0
|
|
494
505
|
cache-read 0.175
|
|
@@ -543,9 +554,10 @@ provider "cursor" {
|
|
|
543
554
|
cache-write 0
|
|
544
555
|
}
|
|
545
556
|
}
|
|
546
|
-
// GPT-5.5 Fast:
|
|
557
|
+
// GPT-5.5 Fast: fast rates are unpublished; discovery applies the declared
|
|
558
|
+
// multiplier, and the base card only seeds unpriced rows.
|
|
547
559
|
models "gpt-5.5-fast" {
|
|
548
|
-
cost-
|
|
560
|
+
cost-fallback {
|
|
549
561
|
input 5.0
|
|
550
562
|
output 30.0
|
|
551
563
|
cache-read 0.5
|