Route T25 roles across Claude Code, Codex, and Cursor
Choose a CLI for each pipeline role and keep an ordered alternative available.
Ler em português Markdown version

What role routing means
In T25, role routing means choosing which CLI adapters may handle a pipeline role, such as planner, dev-backend, or reviewer, and in what order they should be considered. The configuration lives under routing in t25.yaml.
This is different from choosing one agent for an entire task. A task passes through several roles, and each role can have its own list. The T25 architecture article explains why CLIs do the work while the pipeline controls state transitions.
Check the CLIs first
T25 does not install or authenticate Claude Code, Codex, or Cursor for you. Install each CLI you plan to use and complete its login in the same environment that runs T25. If T25 runs in a container or service, confirm that the environment can see the binaries and required credentials.
In the current repository, the adapters call claude, codex, and cursor-agent. The docs also list kimi, gemini, opencode, pi, vibe, and mock. For provider-specific login and plan details, use each CLI's official documentation; those requirements can change independently of T25.
Set an order for each role
The example below shows three supported CLIs for every role. The order varies by preference: Claude Code, Codex, and Cursor can be the first choice or a fallback, provided each is installed and authenticated in the T25 environment:
routing:
triage: [claude, codex, cursor]
planner: [claude, cursor, codex]
research: [claude, codex, cursor]
dev-frontend: [cursor, claude, codex]
dev-backend: [codex, claude, cursor]
qa-frontend: [cursor, claude, codex]
qa-backend: [codex, cursor, claude]
reviewer: [claude, codex, cursor]
security: [claude, cursor, codex]
docs: [claude, codex, cursor]
release: [claude, cursor, codex]
This is an illustrative starting point, not a universal recommendation. Set the order based on the CLIs installed and your project's preferences. Role names and adapter IDs must match those T25 accepts; every list must contain at least one adapter.
T25 considers the ordered list and resolves the providers available for that role. A configured alternative does not fix expired credentials, missing permissions, or differences in CLI behavior. Treat each CLI as a dependency to check, and inspect the task result when fallback occurs.
A small workflow to get started
- Start with two installed and authenticated CLIs instead of configuring everything at once.
- Choose one role and a small task, such as a documentation fix, and set a short list in
t25.yaml. - Run a small task and check the cockpit to see which adapter was selected and how it finished.
- Add a fallback or change the order after observing the run.
- Repeat for implementation, QA, and review roles. Choosing a CLI does not remove pipeline gates.
If you want to understand task isolation before running a job, read one task, one worktree. For the complete configuration reference, see the configuration docs.
What routing cannot do
A longer list does not guarantee a task will finish. Every CLI could be unavailable; credentials can fail; and different outputs may call for prompt or process changes. Routing gives you execution options. It does not replace diff review or the human merge decision.
Nor does routing share one session across CLIs. Each adapter runs its own process and uses that CLI's configuration and authentication. If a particular tool is required for every role, make that explicit in the configuration instead of assuming fallback will preserve the requirement.
FAQ
Do I need to configure all eleven roles?
T25 recognizes eleven pipeline roles. The example shows all of them so you can see where routing goes; start with the roles your workflow needs and keep the project's validation rules in place.
Can Claude Code, Codex, and Cursor all run on one task?
Yes. Different roles can have different lists and use different adapters. That does not mean all three are called at each stage.
Does T25 provide provider credentials?
No. You install and authenticate the CLIs in the runtime environment. Check each provider's docs for current account, plan, and login requirements.
Does fallback retry after any failure?
Do not assume that. Configuration sets the candidate order; selection and retry conditions depend on the execution path. Inspect the adapter and recorded result to diagnose a specific case.
Does routing merge code automatically?
No. T25 can move work through the relevant stages, but review and merge remain subject to configured gates and human action.