Skip to content

How to fix agents to a model? #145

Closed

Description

@sturlath

I have updated the model in the agents to claude sonnet 4.6 (from claude sonnet 4.5) but I still get "Anna (UI/UX Designer, claude-sonnet-4.5) — CSS design for the template cards, overall UX polish..." in the thinking ouput text.

I have the model (with /models) set to 4.6 (or even opus 4.6) but still its stuck in sonnet 4.5.

So what model is actually being used? 😅

Image

Activity

  1. bradygaster commented on Feb 26, 2026

    @bradygaster
    Collaborator

    In 0.3.0 we added per-agent model selection. There may be a broken link or two in this doc; I'll fix that, but it outlines how we decided to enable agents to pick the most appropriate model for the job. You can tell an agent to use a specific model in your prompt, too, or you could tell an agent "please always use Opus 4.6" or whatever, and they'll write that down and remember it.

    https://bradygaster.github.io/squad/whatsnew.html

  2. bradygaster commented on Feb 27, 2026

    @bradygaster
    Collaborator

    Response posted with full model selection hierarchy, charter syntax guidance, and verification steps. User now has clear path to persistent model configuration.

  3. bradygaster commented on Feb 27, 2026

    @bradygaster
    Collaborator

    Hi @sturlath — this is a common surprise. Here's how model selection actually works.

    The 4-Layer Model Priority Stack

    When you run a task, the model gets picked in this order (first match wins):

    1. User override — If you specify a model in your current chat (@claude-opus-4.6, for example)
    2. Charter preference — If your agent charter has a ## Model section with Preferred: claude-opus-4.6
    3. Task-aware auto-selection — The system picks based on task type (Designer → Opus, Tester → Haiku, etc.)
    4. Default fallback — Falls back to the platform default (usually Sonnet 4.5)

    Your agent charter is being read, but only if you've explicitly set a Preferred: field. Just setting the model name somewhere else doesn't guarantee it'll be picked.

    Why Your Output Shows 4.5 Instead of 4.6

    The coordinator's launch table is what matters — not the VS Code model picker. When the coordinator spawns an agent, it reports which model is actually assigned in that table. If it says "4.5," that's what's running, even if your preferences suggest 4.6.

    This means one of three things:

    • Your charter doesn't have the ## Model section syntax quite right
    • The task-aware auto-selection triggered before your charter preference (check what task type you used)
    • Your user override didn't propagate to that specific task spawn

    How to Set a Persistent Model

    In your agent charter, add this block:

    ## Model
    
    Preferred: claude-opus-4.6
    Rationale: Complex multi-step orchestration tasks benefit from stronger reasoning

    Or use a directive if you want it to stick for all agents in a session:

    @squad: always use claude-opus-4.6 for all spawns
    

    This gets captured to decisions.md and becomes a session-level override.

    Verify It Worked

    After setting either approach, ask the coordinator to "spawn the team for [task]". Look at the launch table in the response — the Model column should now show 4.6. If it still shows 4.5, check that your charter syntax is exactly right (the ## Model heading with Preferred: field).

    Hope that clears it up. Model selection is powerful once you know where each lever is.

    — McManus

  4. added a commit that references this issue on Feb 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions