Skip to content

feat: add Claude Fable 5 model#1372

Open
jlixfeld wants to merge 1 commit into
slopus:mainfrom
jlixfeld:feat/fable-5-model
Open

feat: add Claude Fable 5 model#1372
jlixfeld wants to merge 1 commit into
slopus:mainfrom
jlixfeld:feat/fable-5-model

Conversation

@jlixfeld

@jlixfeld jlixfeld commented Jun 9, 2026

Copy link
Copy Markdown

What

Adds Claude Fable 5 (claude-fable-5) to the Claude model pickers. Anthropic shipped Fable 5 as a GA model on 2026-06-09 — a Mythos-class, most-capable model for long-horizon agentic work (1M context, adaptive thinking always-on, no extended thinking).

Changes

  • codium plugins/anthropic/index.ts: add claude-fable-5 to the full-ID MODELS list (top slot).
  • happy-app modelModeOptions.ts: add claude-fable-5 to getClaudeModelModes() fallback.
    • Fable 5 is a new family with no short alias (unlike opus/sonnet/haiku), so the picker sends the full model id; the Claude CLI passes it through to the API unchanged.
    • The live model list still comes from CLI session metadata when present — this only changes the offline fallback.
  • happy-app modelModeOptions.test.ts: new test asserting the Claude fallback list and that the full id is used for Fable 5.

Verification

  • modelModeOptions.test.ts — 10 passed
  • happy-app typecheck — pass
  • codium typecheck — pass

Follows the same pattern as the Opus 4.8 addition (#1363).

🤖 Generated with Claude Code

Anthropic released Claude Fable 5 (`claude-fable-5`) as a GA model on
2026-06-09 — a Mythos-class, most-capable model for long-horizon agentic
work (1M context, adaptive thinking always-on, no extended thinking).

Expose it in both Claude model pickers:
- codium Anthropic plugin: add `claude-fable-5` (full-ID list).
- happy-app Claude fallback: add `claude-fable-5` to getClaudeModelModes.
  Fable 5 is a new family with no short alias (unlike opus/sonnet/haiku),
  so the picker sends the full model id; the Claude CLI passes it through
  to the API unchanged. The live model list still comes from the CLI's
  session metadata when present — this is the offline fallback.

Add a getClaudeModelModes test asserting the fallback list and that the
full id is used for Fable 5.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
chphch added a commit to chphch/happy that referenced this pull request Jun 10, 2026
Add Fable 5 — Claude's new top tier above Opus — to getClaudeModelModes()
above opus 4.8. Use the full model id `claude-fable-5` (not the `fable`
short alias) to match upstream PR slopus#1372 and stay portable
across Claude Code versions that predate the alias. Default stays
opus + ultracode; the model key passes straight to `claude --model`.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
@chphch

chphch commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

Small data point on the "no short alias" note — the fable short alias does exist in current Claude Code, but claude-fable-5 is still the better choice, so I don't think anything needs to change here.

In the bundled claude binary (2.1.170) the model-alias set is:

["sonnet","opus","haiku","fable"]

and it maps fableclaude-fable-5 (fable:"claude-fable-5"), same shape as the other three.

So on recent CLIs fable would resolve — but the alias was only added in a recent release, whereas the full id claude-fable-5 works on older Claude Code versions too (and passes straight through to the API). Sending the full id from the picker is the more portable call. 👍

chphch added a commit to chphch/happy that referenced this pull request Jun 11, 2026
Add Fable 5 — Claude's new top tier above Opus — to getClaudeModelModes()
above opus 4.8. Use the full model id `claude-fable-5` (not the `fable`
short alias) to match upstream PR slopus#1372 and stay portable
across Claude Code versions that predate the alias. Default stays
opus + ultracode; the model key passes straight to `claude --model`.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
chphch added a commit to chphch/happy that referenced this pull request Jun 11, 2026
Add Fable 5 — Claude's new top tier above Opus — to getClaudeModelModes()
above opus 4.8. Use the full model id `claude-fable-5` (not the `fable`
short alias) to match upstream PR slopus#1372 and stay portable
across Claude Code versions that predate the alias. Default stays
opus + ultracode; the model key passes straight to `claude --model`.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
chphch added a commit to chphch/happy that referenced this pull request Jun 11, 2026
Add Fable 5 — Claude's new top tier above Opus — to getClaudeModelModes()
above opus 4.8. Use the full model id `claude-fable-5` (not the `fable`
short alias) to match upstream PR slopus#1372 and stay portable
across Claude Code versions that predate the alias. Default stays
opus + ultracode; the model key passes straight to `claude --model`.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
chphch added a commit to chphch/happy that referenced this pull request Jun 11, 2026
Add Fable 5 — Claude's new top tier above Opus — to getClaudeModelModes()
above opus 4.8. Use the full model id `claude-fable-5` (not the `fable`
short alias) to match upstream PR slopus#1372 and stay portable
across Claude Code versions that predate the alias. Default stays
opus + ultracode; the model key passes straight to `claude --model`.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
chphch added a commit to chphch/happy that referenced this pull request Jun 11, 2026
Add Fable 5 — Claude's new top tier above Opus — to getClaudeModelModes()
above opus 4.8. Use the full model id `claude-fable-5` (not the `fable`
short alias) to match upstream PR slopus#1372 and stay portable
across Claude Code versions that predate the alias. Default stays
opus + ultracode; the model key passes straight to `claude --model`.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
chphch added a commit to chphch/happy that referenced this pull request Jun 11, 2026
Add Fable 5 — Claude's new top tier above Opus — to getClaudeModelModes()
above opus 4.8. Use the full model id `claude-fable-5` (not the `fable`
short alias) to match upstream PR slopus#1372 and stay portable
across Claude Code versions that predate the alias. Default stays
opus + ultracode; the model key passes straight to `claude --model`.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants