@yanlinglabs/winter-provider-catalog 0.0.34 → 0.0.35

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  # `@yanlinglabs/winter-provider-catalog`
2
2
 
3
- Winter's provider and model catalog as inert, validated DATA: 218 provider rows and 1293 model rows
3
+ Winter's provider and model catalog as inert, validated DATA: 218 provider rows and 1296 model rows
4
4
  with their endpoints, auth kinds, pricing evidence, admission tier and provenance, plus the validator
5
5
  and the vocabularies the JSON Schema restates.
6
6
 
package/dist/index.js CHANGED
@@ -18332,9 +18332,7 @@ var catalog_default = {
18332
18332
  providerId: "anthropic",
18333
18333
  upstreamId: "claude-sonnet-5",
18334
18334
  displayName: "Claude Sonnet 5",
18335
- aliases: [
18336
- "sonnet"
18337
- ],
18335
+ aliases: [],
18338
18336
  endpoints: [
18339
18337
  "chat"
18340
18338
  ],
@@ -18512,6 +18510,237 @@ var catalog_default = {
18512
18510
  canonicalModelId: "claude-sonnet-5",
18513
18511
  modelFamily: "claude"
18514
18512
  },
18513
+ {
18514
+ key: "anthropic/claude-sonnet-5-5",
18515
+ providerId: "anthropic",
18516
+ upstreamId: "claude-sonnet-5-5",
18517
+ displayName: "Claude Sonnet 5.5",
18518
+ aliases: [
18519
+ "sonnet"
18520
+ ],
18521
+ endpoints: [
18522
+ "chat"
18523
+ ],
18524
+ contextWindow: {
18525
+ value: 1e6,
18526
+ source: "official-doc",
18527
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 context window 1M (1000000) tokens.",
18528
+ confidence: "declared",
18529
+ observedAt: "2026-09-29T00:00:00Z"
18530
+ },
18531
+ maxOutputTokens: {
18532
+ value: 128000,
18533
+ source: "official-doc",
18534
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 synchronous Messages max output 128K (128000) tokens; 300K only on the Message Batches API with the output-300k-2026-03-24 beta.",
18535
+ confidence: "declared",
18536
+ observedAt: "2026-09-29T00:00:00Z"
18537
+ },
18538
+ inputModalities: {
18539
+ value: [
18540
+ "text",
18541
+ "image"
18542
+ ],
18543
+ source: "official-doc",
18544
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 input → output: text and images → text.",
18545
+ confidence: "declared",
18546
+ observedAt: "2026-09-29T00:00:00Z"
18547
+ },
18548
+ outputModalities: {
18549
+ value: [
18550
+ "text"
18551
+ ],
18552
+ source: "official-doc",
18553
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 input → output: text and images → text.",
18554
+ confidence: "declared",
18555
+ observedAt: "2026-09-29T00:00:00Z"
18556
+ },
18557
+ toolCalling: {
18558
+ value: "native",
18559
+ source: "official-doc",
18560
+ sourceRef: 'https://platform.claude.com/docs/en/about-claude/models/overview — "All current models support text and image input, text output, multilingual capabilities, vision, and tool use"; Claude Sonnet 5.5 is in the current lineup.',
18561
+ confidence: "declared",
18562
+ observedAt: "2026-09-29T00:00:00Z"
18563
+ },
18564
+ nativeTools: {
18565
+ value: true,
18566
+ source: "official-doc",
18567
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — Feature support: Claude Sonnet 5.5 supports "server-side and client-side tools".',
18568
+ confidence: "declared",
18569
+ observedAt: "2026-09-29T00:00:00Z"
18570
+ },
18571
+ parallelTools: {
18572
+ value: true,
18573
+ source: "official-doc",
18574
+ sourceRef: "https://platform.claude.com/docs/en/build-with-claude/tool-use — Messages tool_choice supports disable_parallel_tool_use=true to limit Claude Sonnet 5.5 to at most one tool call; parallel use is otherwise available for tool-capable models.",
18575
+ confidence: "inferred",
18576
+ observedAt: "2026-09-29T00:00:00Z"
18577
+ },
18578
+ structuredOutput: {
18579
+ value: true,
18580
+ source: "official-doc",
18581
+ sourceRef: "https://platform.claude.com/docs/en/build-with-claude/structured-outputs — supportedModels includes actual wire ID claude-sonnet-5-5; output_config.format supports JSON schema outputs.",
18582
+ confidence: "declared",
18583
+ observedAt: "2026-09-29T00:00:00Z"
18584
+ },
18585
+ promptCaching: {
18586
+ value: true,
18587
+ source: "official-doc",
18588
+ sourceRef: "https://platform.claude.com/docs/en/about-claude/pricing — Claude Sonnet 5.5 has cache-write and cache-hit price columns; https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 lists prompt caching with a 512-token minimum cacheable prompt.",
18589
+ confidence: "declared",
18590
+ observedAt: "2026-09-29T00:00:00Z"
18591
+ },
18592
+ reasoning: {
18593
+ supported: {
18594
+ value: true,
18595
+ source: "official-doc",
18596
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 thinking: Adaptive, on by default; https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide — thinking.type values accepted: "adaptive", "between_tools" (disabled and enabled/budget_tokens return 400).',
18597
+ confidence: "declared",
18598
+ observedAt: "2026-09-29T00:00:00Z"
18599
+ },
18600
+ efforts: [
18601
+ "low",
18602
+ "medium",
18603
+ "high",
18604
+ "xhigh",
18605
+ "max"
18606
+ ],
18607
+ continuation: "opaque-provider-state",
18608
+ defaultEffort: "high",
18609
+ readableState: {
18610
+ value: "summary",
18611
+ source: "live-probe",
18612
+ sourceRef: 'packages/conformance/compat/anthropic/0.3.250/derived-shapes-p6.md capture (F) — the runtime normalises an unsigned thinking block to signature: "" and replays it',
18613
+ confidence: "declared",
18614
+ observedAt: "2026-09-05T00:00:00Z"
18615
+ },
18616
+ summaryRequest: {
18617
+ value: {
18618
+ field: "thinking.display",
18619
+ values: [
18620
+ "summarized",
18621
+ "omitted"
18622
+ ]
18623
+ },
18624
+ source: "official-doc",
18625
+ sourceRef: "derived-shapes-p6.md item (c) — ThinkingAdaptive/ThinkingEnabled `display`",
18626
+ confidence: "declared",
18627
+ observedAt: "2026-09-05T00:00:00Z"
18628
+ },
18629
+ completionEvent: {
18630
+ value: "content_block_stop",
18631
+ source: "official-doc",
18632
+ sourceRef: "R6-D's pinned stream vocabulary — a thinking block's `signature` arrives across `signature_delta` events, so the COMPLETE replayable block exists only at `content_block_stop`; an earlier partial copy would replay an unsigned block",
18633
+ confidence: "declared",
18634
+ observedAt: "2026-09-05T00:00:00Z"
18635
+ },
18636
+ continuationDomain: {
18637
+ value: [
18638
+ "anthropic/claude-sonnet-5-5"
18639
+ ],
18640
+ source: "official-doc",
18641
+ sourceRef: "continuity report §4.4, BOTH halves. Own-state acceptance: the model's own `thinking` blocks are replayed to it unchanged, in order, with their signatures intact (§4.4's replay rules and its worked request). Why the domain is NARROW: \"when changing Claude models, prior `thinking` and `redacted_thinking` blocks should be stripped because they are tied to the model that produced them. Therefore 'same provider' is not automatically 'same continuation domain.'\" The domain is this model alone, never the Anthropic provider.",
18642
+ confidence: "declared",
18643
+ observedAt: "2026-09-05T00:00:00Z"
18644
+ },
18645
+ replayScope: {
18646
+ value: "all-turns",
18647
+ source: "live-probe",
18648
+ sourceRef: "continuity report §3 (wire probe of the pinned Claude Agent SDK, 0.3.250→0.3.258) — every uncompacted historical thinking/redacted block is replayed on every later request",
18649
+ confidence: "declared",
18650
+ observedAt: "2026-09-05T00:00:00Z"
18651
+ },
18652
+ effortRequest: {
18653
+ value: {
18654
+ field: "output_config.effort"
18655
+ },
18656
+ source: "official-doc",
18657
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/effort — the effort page\'s supportedModels list names claude-sonnet-5-5 (with claude-fable-5-1, claude-opus-5-5, claude-opus-5, claude-sonnet-5, …): effort is requested through `output_config.effort`; "Claude Sonnet 5.5 supports all five effort levels, and `high` is the default on the Claude API". budget_tokens returns 400 (https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide).',
18658
+ confidence: "declared",
18659
+ observedAt: "2026-09-29T00:00:00Z"
18660
+ },
18661
+ blockBinding: {
18662
+ value: {
18663
+ beta: "thinking-binding-controls-2026-08-01"
18664
+ },
18665
+ source: "official-doc",
18666
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — "Thinking blocks are tied to the model and the conversation": the API checks whether the system prompt, the tools or an earlier message changed since a Claude Sonnet 5.5 thinking block was produced, enforced by default for accounts created on or after 2026-08-31 (400 on replay); "send the `thinking-binding-controls-2026-08-01` beta header and set `thinking.block_binding.prefix_mismatch_behavior` to \\"drop_block\\""; block_binding works only with thinking type adaptive.',
18667
+ confidence: "declared",
18668
+ observedAt: "2026-09-29T00:00:00Z"
18669
+ },
18670
+ perMessageEffort: {
18671
+ value: {
18672
+ beta: "mid-conversation-output-config-2026-07-01"
18673
+ },
18674
+ source: "official-doc",
18675
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/effort#change-effort-mid-conversation-beta — "On Claude Fable 5.1, Claude Mythos 5.1, Claude Opus 5.5, Claude Opus 5, and Claude Sonnet 5.5, use a per-message effort change, which keeps the prompt cache": a role:"system" message with empty content and output_config.effort, beta header mid-conversation-output-config-2026-07-01. On Sonnet 5.5 with thinking between_tools a differing per-message effort returns 400 (Winter never sends between_tools, so adaptive thinking always applies).',
18676
+ confidence: "declared",
18677
+ observedAt: "2026-09-29T00:00:00Z"
18678
+ }
18679
+ },
18680
+ pricing: {
18681
+ value: {
18682
+ inputPerMTokUsd: 2,
18683
+ outputPerMTokUsd: 10,
18684
+ cacheWritePerMTokUsd: 2.5,
18685
+ cacheReadPerMTokUsd: 0.2
18686
+ },
18687
+ source: "official-doc",
18688
+ sourceRef: "https://platform.claude.com/docs/en/about-claude/pricing — Claude Sonnet 5.5 USD/MTok base input $2, output $10, 5m cache write $2.50, 1h cache write $4, cache hit $0.20 (same as Claude Sonnet 5; confirmed on https://platform.claude.com/docs/en/models/sonnet-5-5/overview).",
18689
+ confidence: "declared",
18690
+ observedAt: "2026-09-29T00:00:00Z"
18691
+ },
18692
+ unsupportedParameters: [
18693
+ "temperature",
18694
+ "top_p",
18695
+ "top_k",
18696
+ "thinking.type.enabled",
18697
+ "thinking.type.disabled",
18698
+ "tool_choice.any",
18699
+ "tool_choice.tool"
18700
+ ],
18701
+ status: "candidate",
18702
+ deferredToolLoading: {
18703
+ value: true,
18704
+ source: "official-doc",
18705
+ sourceRef: 'https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool — the Model compatibility table lists Claude Sonnet 5.5 (claude-sonnet-5-5) with tool_search_tool_regex_20251119 / tool_search_tool_bm25_20251119; "Custom tool search implementation": a client tool returns a tool_result whose content carries {type:"tool_reference", tool_name} blocks, every referenced tool declared in tools with defer_loading: true, and the API expands them; "The prefix is untouched, so prompt caching is preserved".',
18706
+ confidence: "declared",
18707
+ observedAt: "2026-09-29T00:00:00Z"
18708
+ },
18709
+ midConversationSystem: {
18710
+ value: true,
18711
+ source: "official-doc",
18712
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages — "This feature is available on Claude Fable 5.1, Claude Mythos 5.1, Claude Fable 5, Claude Mythos 5, Claude Opus 5.5, Claude Opus 4.8, Claude Opus 5, and Claude Sonnet 5.5. No beta header is required for mid-conversation system messages. This feature is not available on Claude Sonnet 5."',
18713
+ confidence: "declared",
18714
+ observedAt: "2026-09-29T00:00:00Z"
18715
+ },
18716
+ midConversationToolChanges: {
18717
+ value: {
18718
+ beta: "mid-conversation-tool-changes-2026-07-01"
18719
+ },
18720
+ source: "official-doc",
18721
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages — tool_addition / tool_removal blocks in a role:"system" message, by reference ("The `mid-conversation-tool-changes-2026-07-01` header works for changes that name a tool by reference, on the Claude API, Amazon Bedrock, and Google Cloud"); same model list as mid-conversation system messages, which names Claude Sonnet 5.5; https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — Feature support lists mid-conversation tool changes (beta) on Claude Sonnet 5.5 and not on Claude Sonnet 5.',
18722
+ confidence: "declared",
18723
+ observedAt: "2026-09-29T00:00:00Z"
18724
+ },
18725
+ inlineToolDefinitions: {
18726
+ value: {
18727
+ beta: "inline-tools-2026-09-15"
18728
+ },
18729
+ source: "official-doc",
18730
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages — tool_addition with a tool_definition ("On the Claude API, send the `inline-tools-2026-09-15` beta header, which also covers defining a tool inside a `tool_addition` block"), same models as the reference changes, Claude Sonnet 5.5 included; https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — "Define tools in a message (beta)" on Claude Sonnet 5.5. Claude API only, so set on the anthropic and console providers (both api.anthropic.com), never on a cloud reseller.',
18731
+ confidence: "declared",
18732
+ observedAt: "2026-09-29T00:00:00Z"
18733
+ },
18734
+ assistantPrefill: {
18735
+ value: false,
18736
+ source: "official-doc",
18737
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide — "Prefill returns an error. Claude Sonnet 5.5 rejects a prefilled last assistant turn with a 400 error, as Claude Sonnet 4.6 and Claude Sonnet 5 do": "This model does not support assistant message prefill. The conversation must end with a user message."',
18738
+ confidence: "declared",
18739
+ observedAt: "2026-09-29T00:00:00Z"
18740
+ },
18741
+ canonicalModelId: "claude-sonnet-5.5",
18742
+ modelFamily: "claude"
18743
+ },
18515
18744
  {
18516
18745
  key: "api-airforce/anthropic/claude-3.7-sonnet",
18517
18746
  providerId: "api-airforce",
@@ -35798,9 +36027,7 @@ var catalog_default = {
35798
36027
  providerId: "console",
35799
36028
  upstreamId: "claude-sonnet-5",
35800
36029
  displayName: "Claude Sonnet 5",
35801
- aliases: [
35802
- "sonnet"
35803
- ],
36030
+ aliases: [],
35804
36031
  endpoints: [
35805
36032
  "chat"
35806
36033
  ],
@@ -35971,6 +36198,237 @@ var catalog_default = {
35971
36198
  canonicalModelId: "claude-sonnet-5",
35972
36199
  modelFamily: "claude"
35973
36200
  },
36201
+ {
36202
+ key: "console/claude-sonnet-5-5",
36203
+ providerId: "console",
36204
+ upstreamId: "claude-sonnet-5-5",
36205
+ displayName: "Claude Sonnet 5.5",
36206
+ aliases: [
36207
+ "sonnet"
36208
+ ],
36209
+ endpoints: [
36210
+ "chat"
36211
+ ],
36212
+ contextWindow: {
36213
+ value: 1e6,
36214
+ source: "official-doc",
36215
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 context window 1M (1000000) tokens.",
36216
+ confidence: "declared",
36217
+ observedAt: "2026-09-29T00:00:00Z"
36218
+ },
36219
+ maxOutputTokens: {
36220
+ value: 128000,
36221
+ source: "official-doc",
36222
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 synchronous Messages max output 128K (128000) tokens; 300K only on the Message Batches API with the output-300k-2026-03-24 beta.",
36223
+ confidence: "declared",
36224
+ observedAt: "2026-09-29T00:00:00Z"
36225
+ },
36226
+ inputModalities: {
36227
+ value: [
36228
+ "text",
36229
+ "image"
36230
+ ],
36231
+ source: "official-doc",
36232
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 input → output: text and images → text.",
36233
+ confidence: "declared",
36234
+ observedAt: "2026-09-29T00:00:00Z"
36235
+ },
36236
+ outputModalities: {
36237
+ value: [
36238
+ "text"
36239
+ ],
36240
+ source: "official-doc",
36241
+ sourceRef: "https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 input → output: text and images → text.",
36242
+ confidence: "declared",
36243
+ observedAt: "2026-09-29T00:00:00Z"
36244
+ },
36245
+ toolCalling: {
36246
+ value: "native",
36247
+ source: "official-doc",
36248
+ sourceRef: 'https://platform.claude.com/docs/en/about-claude/models/overview — "All current models support text and image input, text output, multilingual capabilities, vision, and tool use"; Claude Sonnet 5.5 is in the current lineup.',
36249
+ confidence: "declared",
36250
+ observedAt: "2026-09-29T00:00:00Z"
36251
+ },
36252
+ nativeTools: {
36253
+ value: true,
36254
+ source: "official-doc",
36255
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — Feature support: Claude Sonnet 5.5 supports "server-side and client-side tools".',
36256
+ confidence: "declared",
36257
+ observedAt: "2026-09-29T00:00:00Z"
36258
+ },
36259
+ parallelTools: {
36260
+ value: true,
36261
+ source: "official-doc",
36262
+ sourceRef: "https://platform.claude.com/docs/en/build-with-claude/tool-use — Messages tool_choice supports disable_parallel_tool_use=true to limit Claude Sonnet 5.5 to at most one tool call; parallel use is otherwise available for tool-capable models.",
36263
+ confidence: "inferred",
36264
+ observedAt: "2026-09-29T00:00:00Z"
36265
+ },
36266
+ structuredOutput: {
36267
+ value: true,
36268
+ source: "official-doc",
36269
+ sourceRef: "https://platform.claude.com/docs/en/build-with-claude/structured-outputs — supportedModels includes actual wire ID claude-sonnet-5-5; output_config.format supports JSON schema outputs.",
36270
+ confidence: "declared",
36271
+ observedAt: "2026-09-29T00:00:00Z"
36272
+ },
36273
+ promptCaching: {
36274
+ value: true,
36275
+ source: "official-doc",
36276
+ sourceRef: "https://platform.claude.com/docs/en/about-claude/pricing — Claude Sonnet 5.5 has cache-write and cache-hit price columns; https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 lists prompt caching with a 512-token minimum cacheable prompt.",
36277
+ confidence: "declared",
36278
+ observedAt: "2026-09-29T00:00:00Z"
36279
+ },
36280
+ reasoning: {
36281
+ supported: {
36282
+ value: true,
36283
+ source: "official-doc",
36284
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/overview — Claude Sonnet 5.5 thinking: Adaptive, on by default; https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide — thinking.type values accepted: "adaptive", "between_tools" (disabled and enabled/budget_tokens return 400).',
36285
+ confidence: "declared",
36286
+ observedAt: "2026-09-29T00:00:00Z"
36287
+ },
36288
+ efforts: [
36289
+ "low",
36290
+ "medium",
36291
+ "high",
36292
+ "xhigh",
36293
+ "max"
36294
+ ],
36295
+ continuation: "opaque-provider-state",
36296
+ defaultEffort: "high",
36297
+ readableState: {
36298
+ value: "summary",
36299
+ source: "live-probe",
36300
+ sourceRef: 'packages/conformance/compat/anthropic/0.3.250/derived-shapes-p6.md capture (F) — the runtime normalises an unsigned thinking block to signature: "" and replays it',
36301
+ confidence: "declared",
36302
+ observedAt: "2026-09-05T00:00:00Z"
36303
+ },
36304
+ summaryRequest: {
36305
+ value: {
36306
+ field: "thinking.display",
36307
+ values: [
36308
+ "summarized",
36309
+ "omitted"
36310
+ ]
36311
+ },
36312
+ source: "official-doc",
36313
+ sourceRef: "derived-shapes-p6.md item (c) — ThinkingAdaptive/ThinkingEnabled `display`",
36314
+ confidence: "declared",
36315
+ observedAt: "2026-09-05T00:00:00Z"
36316
+ },
36317
+ completionEvent: {
36318
+ value: "content_block_stop",
36319
+ source: "official-doc",
36320
+ sourceRef: "R6-D's pinned stream vocabulary — a thinking block's `signature` arrives across `signature_delta` events, so the COMPLETE replayable block exists only at `content_block_stop`; an earlier partial copy would replay an unsigned block",
36321
+ confidence: "declared",
36322
+ observedAt: "2026-09-05T00:00:00Z"
36323
+ },
36324
+ continuationDomain: {
36325
+ value: [
36326
+ "console/claude-sonnet-5-5"
36327
+ ],
36328
+ source: "official-doc",
36329
+ sourceRef: "continuity report §4.4, BOTH halves. Own-state acceptance: the model's own `thinking` blocks are replayed to it unchanged, in order, with their signatures intact (§4.4's replay rules and its worked request). Why the domain is NARROW: \"when changing Claude models, prior `thinking` and `redacted_thinking` blocks should be stripped because they are tied to the model that produced them. Therefore 'same provider' is not automatically 'same continuation domain.'\" The domain is this model alone, never the Anthropic provider.",
36330
+ confidence: "declared",
36331
+ observedAt: "2026-09-05T00:00:00Z"
36332
+ },
36333
+ replayScope: {
36334
+ value: "all-turns",
36335
+ source: "live-probe",
36336
+ sourceRef: "continuity report §3 (wire probe of the pinned Claude Agent SDK, 0.3.250→0.3.258) — every uncompacted historical thinking/redacted block is replayed on every later request",
36337
+ confidence: "declared",
36338
+ observedAt: "2026-09-05T00:00:00Z"
36339
+ },
36340
+ effortRequest: {
36341
+ value: {
36342
+ field: "output_config.effort"
36343
+ },
36344
+ source: "official-doc",
36345
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/effort — the effort page\'s supportedModels list names claude-sonnet-5-5 (with claude-fable-5-1, claude-opus-5-5, claude-opus-5, claude-sonnet-5, …): effort is requested through `output_config.effort`; "Claude Sonnet 5.5 supports all five effort levels, and `high` is the default on the Claude API". budget_tokens returns 400 (https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide).',
36346
+ confidence: "declared",
36347
+ observedAt: "2026-09-29T00:00:00Z"
36348
+ },
36349
+ blockBinding: {
36350
+ value: {
36351
+ beta: "thinking-binding-controls-2026-08-01"
36352
+ },
36353
+ source: "official-doc",
36354
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — "Thinking blocks are tied to the model and the conversation": the API checks whether the system prompt, the tools or an earlier message changed since a Claude Sonnet 5.5 thinking block was produced, enforced by default for accounts created on or after 2026-08-31 (400 on replay); "send the `thinking-binding-controls-2026-08-01` beta header and set `thinking.block_binding.prefix_mismatch_behavior` to \\"drop_block\\""; block_binding works only with thinking type adaptive.',
36355
+ confidence: "declared",
36356
+ observedAt: "2026-09-29T00:00:00Z"
36357
+ },
36358
+ perMessageEffort: {
36359
+ value: {
36360
+ beta: "mid-conversation-output-config-2026-07-01"
36361
+ },
36362
+ source: "official-doc",
36363
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/effort#change-effort-mid-conversation-beta — "On Claude Fable 5.1, Claude Mythos 5.1, Claude Opus 5.5, Claude Opus 5, and Claude Sonnet 5.5, use a per-message effort change, which keeps the prompt cache": a role:"system" message with empty content and output_config.effort, beta header mid-conversation-output-config-2026-07-01. On Sonnet 5.5 with thinking between_tools a differing per-message effort returns 400 (Winter never sends between_tools, so adaptive thinking always applies).',
36364
+ confidence: "declared",
36365
+ observedAt: "2026-09-29T00:00:00Z"
36366
+ }
36367
+ },
36368
+ pricing: {
36369
+ value: {
36370
+ inputPerMTokUsd: 2,
36371
+ outputPerMTokUsd: 10,
36372
+ cacheWritePerMTokUsd: 2.5,
36373
+ cacheReadPerMTokUsd: 0.2
36374
+ },
36375
+ source: "official-doc",
36376
+ sourceRef: "https://platform.claude.com/docs/en/about-claude/pricing — Claude Sonnet 5.5 USD/MTok base input $2, output $10, 5m cache write $2.50, 1h cache write $4, cache hit $0.20 (same as Claude Sonnet 5; confirmed on https://platform.claude.com/docs/en/models/sonnet-5-5/overview).",
36377
+ confidence: "declared",
36378
+ observedAt: "2026-09-29T00:00:00Z"
36379
+ },
36380
+ unsupportedParameters: [
36381
+ "temperature",
36382
+ "top_p",
36383
+ "top_k",
36384
+ "thinking.type.enabled",
36385
+ "thinking.type.disabled",
36386
+ "tool_choice.any",
36387
+ "tool_choice.tool"
36388
+ ],
36389
+ status: "candidate",
36390
+ deferredToolLoading: {
36391
+ value: true,
36392
+ source: "official-doc",
36393
+ sourceRef: 'https://platform.claude.com/docs/en/agents-and-tools/tool-use/tool-search-tool — the Model compatibility table lists Claude Sonnet 5.5 (claude-sonnet-5-5) with tool_search_tool_regex_20251119 / tool_search_tool_bm25_20251119; "Custom tool search implementation": a client tool returns a tool_result whose content carries {type:"tool_reference", tool_name} blocks, every referenced tool declared in tools with defer_loading: true, and the API expands them; "The prefix is untouched, so prompt caching is preserved".',
36394
+ confidence: "declared",
36395
+ observedAt: "2026-09-29T00:00:00Z"
36396
+ },
36397
+ midConversationSystem: {
36398
+ value: true,
36399
+ source: "official-doc",
36400
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages — "This feature is available on Claude Fable 5.1, Claude Mythos 5.1, Claude Fable 5, Claude Mythos 5, Claude Opus 5.5, Claude Opus 4.8, Claude Opus 5, and Claude Sonnet 5.5. No beta header is required for mid-conversation system messages. This feature is not available on Claude Sonnet 5."',
36401
+ confidence: "declared",
36402
+ observedAt: "2026-09-29T00:00:00Z"
36403
+ },
36404
+ midConversationToolChanges: {
36405
+ value: {
36406
+ beta: "mid-conversation-tool-changes-2026-07-01"
36407
+ },
36408
+ source: "official-doc",
36409
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages — tool_addition / tool_removal blocks in a role:"system" message, by reference ("The `mid-conversation-tool-changes-2026-07-01` header works for changes that name a tool by reference, on the Claude API, Amazon Bedrock, and Google Cloud"); same model list as mid-conversation system messages, which names Claude Sonnet 5.5; https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — Feature support lists mid-conversation tool changes (beta) on Claude Sonnet 5.5 and not on Claude Sonnet 5.',
36410
+ confidence: "declared",
36411
+ observedAt: "2026-09-29T00:00:00Z"
36412
+ },
36413
+ inlineToolDefinitions: {
36414
+ value: {
36415
+ beta: "inline-tools-2026-09-15"
36416
+ },
36417
+ source: "official-doc",
36418
+ sourceRef: 'https://platform.claude.com/docs/en/build-with-claude/mid-conversation-system-messages — tool_addition with a tool_definition ("On the Claude API, send the `inline-tools-2026-09-15` beta header, which also covers defining a tool inside a `tool_addition` block"), same models as the reference changes, Claude Sonnet 5.5 included; https://platform.claude.com/docs/en/models/sonnet-5-5/whats-new-sonnet-5-5 — "Define tools in a message (beta)" on Claude Sonnet 5.5. Claude API only, so set on the anthropic and console providers (both api.anthropic.com), never on a cloud reseller.',
36419
+ confidence: "declared",
36420
+ observedAt: "2026-09-29T00:00:00Z"
36421
+ },
36422
+ assistantPrefill: {
36423
+ value: false,
36424
+ source: "official-doc",
36425
+ sourceRef: 'https://platform.claude.com/docs/en/models/sonnet-5-5/migration-guide — "Prefill returns an error. Claude Sonnet 5.5 rejects a prefilled last assistant turn with a 400 error, as Claude Sonnet 4.6 and Claude Sonnet 5 do": "This model does not support assistant message prefill. The conversation must end with a user message."',
36426
+ confidence: "declared",
36427
+ observedAt: "2026-09-29T00:00:00Z"
36428
+ },
36429
+ canonicalModelId: "claude-sonnet-5.5",
36430
+ modelFamily: "claude"
36431
+ },
35974
36432
  {
35975
36433
  key: "coze/claude-3-7-sonnet-20250514",
35976
36434
  providerId: "coze",
@@ -76873,6 +77331,104 @@ var catalog_default = {
76873
77331
  canonicalModelId: "claude-sonnet-5",
76874
77332
  modelFamily: "claude"
76875
77333
  },
77334
+ {
77335
+ key: "openrouter/anthropic/claude-sonnet-5.5",
77336
+ providerId: "openrouter",
77337
+ upstreamId: "anthropic/claude-sonnet-5.5",
77338
+ displayName: "Claude Sonnet 5.5 (via OpenRouter)",
77339
+ aliases: [],
77340
+ endpoints: [
77341
+ "chat"
77342
+ ],
77343
+ contextWindow: {
77344
+ value: 1e6,
77345
+ source: "official-doc",
77346
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): context_length 1000000",
77347
+ confidence: "declared",
77348
+ observedAt: "2026-09-29T00:00:00Z"
77349
+ },
77350
+ maxOutputTokens: {
77351
+ value: 128000,
77352
+ source: "official-doc",
77353
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): top_provider.max_completion_tokens 128000",
77354
+ confidence: "declared",
77355
+ observedAt: "2026-09-29T00:00:00Z"
77356
+ },
77357
+ inputModalities: {
77358
+ value: [
77359
+ "text",
77360
+ "image"
77361
+ ],
77362
+ source: "official-doc",
77363
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): architecture.input_modalities ['text', 'image', 'file'] (file/pdf inputs are not a Winter modality)",
77364
+ confidence: "declared",
77365
+ observedAt: "2026-09-29T00:00:00Z"
77366
+ },
77367
+ outputModalities: {
77368
+ value: [
77369
+ "text"
77370
+ ],
77371
+ source: "official-doc",
77372
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): architecture.output_modalities ['text']",
77373
+ confidence: "declared",
77374
+ observedAt: "2026-09-29T00:00:00Z"
77375
+ },
77376
+ toolCalling: {
77377
+ value: "native",
77378
+ source: "official-doc",
77379
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): supported_parameters include `tools` and `tool_choice`",
77380
+ confidence: "declared",
77381
+ observedAt: "2026-09-29T00:00:00Z"
77382
+ },
77383
+ nativeTools: {
77384
+ value: true,
77385
+ source: "official-doc",
77386
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): supported_parameters include `tools` and `tool_choice`",
77387
+ confidence: "declared",
77388
+ observedAt: "2026-09-29T00:00:00Z"
77389
+ },
77390
+ structuredOutput: {
77391
+ value: true,
77392
+ source: "official-doc",
77393
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): supported_parameters include `structured_outputs`",
77394
+ confidence: "declared",
77395
+ observedAt: "2026-09-29T00:00:00Z"
77396
+ },
77397
+ unsupportedParameters: [],
77398
+ status: "candidate",
77399
+ reasoning: {
77400
+ supported: {
77401
+ value: true,
77402
+ source: "official-doc",
77403
+ sourceRef: 'https://openrouter.ai/api/v1/models — OpenRouter\'s own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): reasoning {"mandatory": true, "supported_efforts": ["max", "xhigh", "high", "medium", "low"], "default_effort": "high"}; supported_parameters include `reasoning` and `reasoning_effort`',
77404
+ confidence: "declared",
77405
+ observedAt: "2026-09-29T00:00:00Z"
77406
+ },
77407
+ efforts: [
77408
+ "max",
77409
+ "xhigh",
77410
+ "high",
77411
+ "medium",
77412
+ "low"
77413
+ ],
77414
+ defaultEffort: "high",
77415
+ continuation: "none"
77416
+ },
77417
+ pricing: {
77418
+ value: {
77419
+ inputPerMTokUsd: 2,
77420
+ outputPerMTokUsd: 10,
77421
+ cacheReadPerMTokUsd: 0.2,
77422
+ cacheWritePerMTokUsd: 2.5
77423
+ },
77424
+ source: "official-doc",
77425
+ sourceRef: "https://openrouter.ai/api/v1/models — OpenRouter's own public model entry `anthropic/claude-sonnet-5.5` (read 2026-09-29): OpenRouter's own current price, prompt 0.000002 / completion 0.00001 / input_cache_read 0.0000002 / input_cache_write 0.0000025 USD per token.",
77426
+ confidence: "declared",
77427
+ observedAt: "2026-09-29T00:00:00Z"
77428
+ },
77429
+ canonicalModelId: "claude-sonnet-5.5",
77430
+ modelFamily: "claude"
77431
+ },
76876
77432
  {
76877
77433
  key: "openrouter/deepseek/deepseek-v4-pro",
76878
77434
  providerId: "openrouter",
@@ -113729,11 +114285,11 @@ var catalog_default = {
113729
114285
  },
113730
114286
  {
113731
114287
  name: "sonnet",
113732
- canonicalModelId: "claude-sonnet-5",
114288
+ canonicalModelId: "claude-sonnet-5.5",
113733
114289
  description: "fast, capable everyday coding; the default worker.",
113734
114290
  reason: "Third: the balance of speed, capability and price.",
113735
114291
  basis: "winter-curated",
113736
- citation: "spec:WS-13c §9",
114292
+ citation: "spec:WS-13c §9; 2026-09-29: repointed from `claude-sonnet-5` to Claude Sonnet 5.5, the current Sonnet (https://platform.claude.com/docs/en/about-claude/models/overview lists Claude Sonnet 5.5 in the current lineup and Claude Sonnet 5 under legacy models)",
113737
114293
  status: "candidate"
113738
114294
  },
113739
114295
  {