Skip to content

Offer multiple Anthropic models in the composer model picker#170

Open
GrigoryPervakov wants to merge 1 commit into
mainfrom
grisha/anthropic-model-picker
Open

Offer multiple Anthropic models in the composer model picker#170
GrigoryPervakov wants to merge 1 commit into
mainfrom
grisha/anthropic-model-picker

Conversation

@GrigoryPervakov

Copy link
Copy Markdown
Member

Summary

  • The composer's model picker only ever listed the single configured Anthropic model (config.agent.model) plus any local Ollama models, so there was no way to switch a message to a different Anthropic model (e.g. bump one message to Claude Fable 5).
  • Adds agent.selectable_models — extra Anthropic chat models that GET /api/models emits alongside the default (de-duplicated, order preserved).
  • The existing composer picker already renders 2+ models, and the engine already switches model per turn (client teardown + resume), so no session state, migration, or new UI is required. config.example.yaml ships [claude-fable-5].

Why

Opus 4.8 is the default; Fable 5 is Anthropic's most capable model but ~2× the cost, so it's a per-message opt-in via the picker rather than a global default.

Test plan

  • With selectable_models: [claude-fable-5], the composer picker shows Opus 4.8 + Fable 5 (even without Ollama)
  • Selecting Fable 5 routes the next message to it; the model-change is visible and context is preserved (resume)
  • Empty/unset selectable_models → picker unchanged (default-only, hidden unless Ollama present)
  • pytest tests/test_engine.py green; npm run build clean

🤖 Generated with Claude Code

The picker (added in #147) only exposed the single configured Anthropic model
plus local Ollama models, so there was no way to switch, e.g., Opus 4.8 to
Fable 5 for a message.

Add agent.selectable_models: extra Anthropic model ids that GET /api/models
emits alongside the default (de-duplicated, order preserved). The existing
composer picker already renders 2+ models and the engine already switches model
per turn, so no session state, migration, or new UI is needed. Enabled with
[claude-fable-5] in config.example.yaml.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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.

1 participant