Configuring a run
Choosing models
The quick picker, the three model roles, and when a bigger model actually pays off.
A run uses a language model in up to three places. You can leave all of them alone and get sensible defaults, change just the generator from the composer, or set each role individually.
The quick picker
The model button on the composer offers three tiers. It sets the generator, which is the role that writes your RTL and therefore the one worth thinking about:
| Model | When to reach for it |
|---|---|
| Claude Haiku 4.5 | Fastest and cheapest. Good for small, well-understood blocks and for iterating quickly on something you already have. |
| Claude Sonnet 5 | The default, and the right answer most of the time. Balanced across quality, speed and cost. |
| Claude Opus 4.8 | Most rigorous. Worth it for intricate protocol logic, tricky clock-domain crossings, and anything you would otherwise spend an afternoon reviewing. |
The three roles
Run setup has a Models entry that opens the full picker, with the whole catalog available for each role:
| Role | What it does |
|---|---|
| Planner | Turns your specification into a build plan, and writes the clarifying questions in Plan mode. |
| Generator | Writes the RTL and the testbench. The one that matters most. |
| Verifier | Used by Reflection to critique and improve the generated module. A reasoning-heavy model earns its keep here. |
Note
A role left unset uses the deployment default rather than nothing. You never have to fill all three in to start a run.
Does a bigger model actually help?
Sometimes, and it is worth being honest about when:
- It helps on specifications with several interacting requirements, multi-clock designs, protocol compliance, and code that has to fit into conventions described in prose rather than in the code itself.
- It rarely helps on a counter, a shift register, a mux, or a small state machine. A cheaper model writes those correctly, and the run finishes sooner.
- It never fixes a vague spec. If the description is ambiguous, a larger model produces a more confident version of the wrong module. Spend the effort on the spec first.
Models and cost
Which model you pick changes what a run costs us, and on the free tier that is what it costs you: free-tier runs are charged at their measured cost. On a paid plan, a run inside your monthly allowance costs one slot no matter which model wrote it, and overage is a flat per-run price. See Plans and packages.