What you can pick today
A runtime is the coding CLI a Worker is dispatched through. Two are selectable in the app:
| Runtime | Models | Effort levels |
|---|---|---|
| Claude Code | Opus 5, Fable 5, Sonnet 5, Opus 4.8, Haiku 4.5, plus the 1M-context variants | Low to Max |
| Codex CLI | GPT-5.6 family, GPT-5.5, GPT-5.4, GPT-5.3 Codex | Minimal to High |
Claude Code is the default.
What is supported underneath
Five more runtimes are fully implemented, and Fredrin dispatches, validates and probes all of them:
Cursor Agent, GitHub Copilot CLI, OpenCode, pi.dev and Hermes.
They are not in the picker yet. We would rather ship two runtimes we are confident in than seven we have not finished exercising, and the last one came off that list by flipping a single flag rather than by being built.
If the CLI you rely on is on that list and you want it turned on, tell us. It moves the queue.
Picking one
Use the CLI you already pay for. That is the honest answer most of the time. Fredrin's bring-your-own-subscription model means the runtime you already have a subscription for is the one that costs you nothing extra.
Match effort to the ticket, not to your mood. Both selectable runtimes expose reasoning effort, so you can spend it where it matters. A rename across forty files does not need Max. A concurrency bug does.
You do not have to standardise. Runtime is per ticket. Running one ticket on Claude Code and the next on Codex is normal, and comparing them on the same kind of work is a genuinely useful thing to do.
Effort levels
Where a CLI exposes reasoning effort, Fredrin passes it through natively rather than approximating it.
| Level | When |
|---|---|
| Low / Minimal | Mechanical edits, renames, formatting. |
| Medium | Everyday work. Most tickets. |
| High | Anything with real design content. |
| X-High / Max | Hard debugging, tricky concurrency, subtle correctness. |
Higher effort is slower and, on metered billing, costlier. It is not automatically better: a Max-effort run on a trivial ticket mostly produces a longer explanation of a trivial change.
Effort is native to each CLI rather than approximated: Fredrin passes the flag the tool itself understands.
Adding a runtime
Every runtime sits behind one contract, so supporting a new CLI is registration rather than new plumbing. If a CLI you rely on is missing entirely, tell us; it is a small piece of work rather than a roadmap item.
Next steps
- Connect your AI subscription - how a runtime authenticates.
- Writing a good ticket - what the model actually reads.