# Agents

> Add Claude Code, Codex, Cursor, Pi or opencode to a project, connect each with your own subscription or key, and choose their order, model and thinking level.

A project's agents are the coding agents you already pay for, each running as its maker's own tool at its latest release, on your own subscription or key. Iterada adds nothing to what their plans cost.

![Agent factory, Agents.](https://iterada.com/docs/shots/agent-factory.png)

## Use the subscriptions you already pay for

Iterada builds and deploys your app with the subscriptions you already have instead of paying per token: Claude Code runs on your Claude plan and Codex on your ChatGPT plan. Iterada adds no per-token charge and no markup on top of them. Claude Code and Codex can work on one project together: the order below decides who takes a turn, and when one cannot carry on - its plan ran out, its sign-in stopped working or its provider is down - the next agent takes the same work over on the same branch. On the Free plan, each day's Free allowance is spent first, and your subscriptions take over once it is used up.

## Add an agent

1. Open **Agent factory**, then **Agents**.
2. Press **Add** beside the agent you want.
3. Press **Configure** on its row and follow the steps under **Sign-in**. For Claude Code and Codex, press **Copy** beside the command and run it on your own computer. Cursor uses an API key you create in its dashboard instead.
4. Give the login a **Name**, paste what the command printed (or the key) into **Value** and press **Add login**.

Pi and opencode have no login to add: they use the provider keys your Iterada installation already passes to agent runs.

The **Subscriptions** tab lists every login with how much of each limit is used and when it resets. **Disconnect** removes one.

On the Free plan, Claude Code can also sign in with a Claude API key of your own:

1. Link a Console organization on the Billing page at claude.ai, then create a key in the Claude Console.
2. Open **Subscriptions**, then **Connect your subscription**, and choose Claude Code.
3. Paste the key under **Use an API key** and press **Save**.

Once the day's Free allowance is used up, that project's Claude Code turns run on the key, and no other project and no quiet-hours pass uses it. It is listed on **Subscriptions** as **API key**; **Remove** stops it being used from the next turn.

## Choose the order

Agents run top to bottom. The first row reads **Runs first** and takes every turn; the rows below it read "Fallback 1", "Fallback 2" and so on, and take over in order when the one above cannot carry on, on the same branch. Use the arrows on a row to move it, and **Remove** to take an agent out of the list; on a phone these wait under the row's **More** button as **Move up**, **Move down** and **Remove**. The list always keeps at least one agent.

:::tip
Put the agent with the most generous plan first, and a second one below it. When the first plan runs out in quiet hours, the work carries on instead of waiting for the limit to reset. When the first agent's plan is nearly used up, Iterada may also suggest sending a message on the other agent: you see it under **Suggested changes** before you send.
:::

## Configure one

Press **Configure** on an agent's row:

- **Model**: which of the agent's models it uses. Leave it on **Adapter default** unless you have a reason, or choose **Custom…** to type a model name the list does not have.
- **Thinking level**: how hard it thinks before it answers. Higher is slower and uses more of your plan. Cursor has no thinking level here, because its thinking is part of the model.
- **Autonomous subagents**: **Allowed** lets the agent start subagents of its own for larger tasks; **Work alone** keeps it to one. Leave **Subagent model** and **Subagent effort** on **Inherit** unless you want subagents on a cheaper model. A field an agent cannot take is greyed out and says why. On the Free plan, Cursor does not use subagents.
- **Fast** and **Auto optimize for**, for Cursor only: **Fast** uses a model's faster version where it has one, at a higher cost. **Auto optimize for** chooses what Cursor's Auto weighs when it picks a model: **Cost**, **Balance** or **Intelligence**.

Press **Save**. For a single message, choose another agent, model or thinking level under the message box instead - see [Ask for a change](https://iterada.com/docs/ask-for-a-change#choose-who-does-it).

## Give one agent defaults for workflow steps

Press **Model & skills** on an agent's row to give it a model and thinking level of its own, and to choose which installed skills it may use, whenever a workflow step runs it. A step can still choose its own. See [Skills and agent setup](https://iterada.com/docs/skills-and-setup#limit-the-skills-one-agent-uses).
