Rivets
Documentation

Agents and models

Rivets runs two coding agents: Claude Code and Codex. Both run on your workers with your own logins, so every model call is billed to your subscription. This page covers the models each agent offers, the options you can set per run, and how to move a conversation to another agent or worker.

Agents

Agent Sign in on the worker Notes
Claude Code claude auth login A message sent while it works is read at its next step, without stopping the turn.
Codex codex login Runs a process per turn. A message sent while it works stops the current turn and resumes the session with your message.

A worker only offers the agents it finds installed and signed in. If you choose an agent no online worker can run, the task cannot start.

Models

Claude Code

Rivets offers a curated list of Claude models:

Model Fast mode
Opus 5.5 (default) Yes
Fable 5.2
Fable 5.1
Fable 5
Opus 5 Yes
Opus 4.8 1M Yes
Opus 4.7 1M
Opus 4.6 1M
Sonnet 5.5
Sonnet 5 1M
Sonnet 4.6 1M
Sonnet 4.6
Haiku 4.5

Models marked 1M use the one-million-token context variant. A Claude job that names no model runs on Opus 5.5. The list comes from the worker, so a newly added model, such as Fable 5.2, appears once the worker is updated.

Codex

Codex models are discovered from the Codex CLI on each worker, newest generation first: GPT-6 Astra, Sol, and Luna, then the GPT-5.x line. Codex’s own default model is marked as the default. The list therefore follows the Codex version installed on the worker.

Adding models on a worker

Worker operators can extend or replace the lists with environment variables set for the worker process:

Variable Effect
RIVETS_CLAUDE_MODELS Comma-separated Claude model IDs to offer in addition to the built-in list.
RIVETS_CODEX_MODELS Comma-separated Codex model IDs, used when discovery returns nothing.

On macOS and Linux, the background service passes only RIVETS_HOME and PATH to the worker, so these variables take effect when you run the worker in the foreground with rivets run. See Background service.

Per-run options

Set these in the New task dialog or the composer. They apply to the next run, and are locked while the agent is working.

Option Values Notes
Reasoning effort low, medium, high, xhigh, max for Claude. Codex adds ultra on models that support it. Higher effort thinks longer. ultra is Codex’s top level and lets it spawn sub-agents. Unless you set a default, Claude starts on high and Codex on medium.
Fast mode On or off Shown only when the selected model supports it.
Plan mode On or off The agent plans before it edits.

Account-wide defaults

Set your preferred agent, model, and reasoning effort under Settings › Agents, in Agent defaults. They are preselected whenever you start a task or a conversation, on every device signed in to your account.

Each field falls back independently:

  1. Your saved default, if the worker that picks up the task still offers it.
  2. Otherwise, the model the worker marks as default: Codex’s own default, or Opus 5.5 for Claude.
  3. If a provider marks no default, no model is sent and the CLI chooses.

Context meter

The composer shows a ring for how much of the model’s context window the conversation is using, based on the usage the agent reports. Hover over it for the breakdown. It shows nothing until the agent has reported usage. For Codex, the worker reads the context size from Codex’s own session file, so the ring reflects the latest request rather than the thread’s running total.

Turn cost

To see the tokens and cost of the agent’s latest turn under its most recent answer, turn on Show the latest turn’s tokens and cost under Settings › General › Turn cost. On iPhone and iPad it is Show turn cost. It is off by default and applies to every device signed in to your account. The price is useful on API billing. On a subscription it does not apply.

Warm Claude processes

After a Claude job finishes, the worker keeps its Claude Code process alive for up to 2 hours and reuses it for the next message in the same conversation. This avoids restarting the CLI and keeps Claude’s prompt cache warm. A worker keeps at most 8 idle processes. Changing the model, effort, fast mode, or plan mode starts a new process that resumes the same session.

Operators can tune this with RIVETS_CLAUDE_SESSION_IDLE_MS (minimum 1 second) and RIVETS_CLAUDE_MAX_IDLE_SESSIONS (1 to 64), which, like the model variables above, reach a worker started with rivets run.

Sub-agents and background work

When Claude delegates to a sub-agent, Rivets nests everything the sub-agent does under the call that spawned it, at any depth. Work Claude starts in the background shows as Running in background until it reports back. While background tasks are still running, the conversation shows Waiting on N background tasks instead of appearing finished. If the run ends while background work is still going, the transcript shows N background tasks running. The line clears when the work finishes, the session ends, or the worker goes offline.

Questions from the agent

When Claude Code needs a decision from you, it asks with a question card docked above the composer instead of a list of bullet points. The card works on web, Mac, iPhone, and iPad:

  • It shows Question 1 of 3 and so on, with dots to move between questions.
  • Each question offers suggested answers, as single or multiple choice, and a field for your own answer.
  • Send answers stays disabled until every question has an answer, then sends them all in one message.

The run ends normally when the agent asks, so nothing is left waiting on a worker. You can hide the card and answer later: the transcript keeps a record of the question that reopens it. Questions are included when you search or export the transcript.

A run that ends on a question also posts the question with its reply in Linear. Codex agents still ask in plain text, because Codex does not support this in the mode Rivets runs it in.

Handoff

Hand off to another agent

Choose Handoff in the task header to continue the conversation with a different agent or model. On iPhone and iPad, it is in the task’s actions menu. Rivets opens a linked draft in a new conversation. The new conversation starts with a bounded copy of the transcript so the next agent has the context. Attachments cannot be added to a handoff draft.

Continue on another worker

The task header shows the worker the task runs on, with a status dot: green when it is online, amber when delivery is stalled, and grey when it is offline. Choose it to see the worker’s name, state, when it was last seen, its cluster, and its owner.

If a task’s worker goes offline while a chat is open, the worker status reads Offline · paused and the header offers Continue on another worker. On iPhone and iPad, choose Continue elsewhere in the task’s actions menu. Rivets picks another compatible worker, stops the old run, creates a linked task and conversation, applies the latest file changes, and imports the transcript so far.

Type to search the docs.