Skip to content

feat(claude): add Claude Sonnet 5.5 to the built-in model list - #57

Merged
DanielGGordon merged 1 commit into
mainfrom
t3code/add-sonnet-5-5-model
Oct 5, 2026
Merged

DanielGGordon merged 1 commit into
mainfrom
t3code/add-sonnet-5-5-model

Conversation

@DanielGGordon

Copy link
Copy Markdown
Owner

What

Claude Code 2.1.284 shipped claude-sonnet-5-5, but the Claude provider's hardcoded catalog topped out at claude-sonnet-5, so Sonnet 5.5 never appeared in the T3 model menu.

  • Adds the claude-sonnet-5-5 built-in entry with the same Reasoning / Context Window options as Sonnet 5, gated on Claude Code >= 2.1.284.
  • Effort defaults to Medium, matching Claude Code's baked-in catalog (default_effort: "medium" for Sonnet 5.5, vs high for Sonnet 5).
  • Context Window stays 200k by default with 1M opt-in, matching Sonnet 5 (claude-sonnet-5-5[1m] is a valid id in the CLI, but 1M is not the menu default for the Sonnet family).
  • No Fast Mode / Ultracode option: Sonnet 5.5's catalog entry carries neither fast_mode nor the ultracode-style capabilities, same as Sonnet 5.
  • Extends the version upgrade-message chain and keeps xhigh unmapped for the new slug (it has xhigh_effort, so it must not be promoted to max).
  • Points the bare sonnet alias at 5.5 (mirroring feat(claude): add Claude Fable 5.1 to the built-in model list #55/feat(claude): add Claude Opus 5.5 to the built-in model list #56 for fable/opus), adds sonnet-5.5 / claude-sonnet-5.5, and leaves sonnet-5 on claude-sonnet-5.

Why 2.1.284 for the minimum version

Confirmed empirically: claude-sonnet-5-5 is absent from the 2.1.283 binary's baked-in model catalog and present in 2.1.284 (checked by unpacking @anthropic-ai/claude-code-linux-x64 at both versions).

Verification

  • vp test run apps/server/src/provider/Layers/{ProviderRegistry,ClaudeAdapter}.test.ts apps/server/src/provider/providerSnapshot.test.ts — 120 passed (includes new coverage: model shows at 2.1.284, hidden with upgrade message at 2.1.283, xhigh preserved)
  • vp test run packages/shared/src/model.test.ts, apps/web/src/{modelSelection,providerInstances}.test.ts — passing
  • tsgo --noEmit -p apps/server/tsconfig.json — clean; vp lint / vp fmt --check on changed files — clean

🤖 Generated with Claude Code

Claude Code 2.1.284 shipped claude-sonnet-5-5 (1M native context, 128k max
output), but the Claude provider's hardcoded catalog topped out at
claude-sonnet-5, so it never appeared in the model menu.

- Add the claude-sonnet-5-5 built-in entry with the same Reasoning and Context
  Window options as Sonnet 5, defaulting effort to Medium to match Claude
  Code's `default_effort` for the model, gated on Claude Code >= 2.1.284
  (confirmed: the slug is absent from the 2.1.283 binary and present in 2.1.284)
- Extend the version upgrade-message chain and keep xhigh effort unmapped for
  the new slug so it is not silently promoted to max
- Point the bare `sonnet` alias at 5.5 and add sonnet-5.5 / claude-sonnet-5.5
  aliases, leaving `sonnet-5` on claude-sonnet-5

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@DanielGGordon

Copy link
Copy Markdown
Owner Author

Test deployment (degraded / tunnel mode)

This branch is running on a local test instance, but the external HTTPS
port is not reachable yet (Caddy not bootstrapped or OVH port closed), so
there is no public URL. Reach it over an SSH tunnel:

# Open the tunnel from your laptop (keep this session open):
ssh -L 8080:127.0.0.1:3779 dgordon@<SERVER_IP>
# THEN, inside that SSH session (i.e. on <SERVER_IP>, not your laptop),
# mint a link whose URL points at your tunnel origin:
node scripts/test-status.ts --pair 7449 --base-url http://127.0.0.1:8080
# finally open the printed http://127.0.0.1:8080/pair#token=... in your local browser

Slot: external 7449 ⇄ loopback 3779.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:M labels Oct 5, 2026
@DanielGGordon
DanielGGordon merged commit fa3e7f1 into main Oct 5, 2026
5 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:M vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant