# Claude Code & Codex

tratto has no AI of its own and no account of its own. It uses the command line tools you install and sign in to:
**Claude Code**, **Codex**, and optionally **cswap** to switch between Claude accounts. It talks to them through a
helper program, `tratto-ai`, that ships with the app.

## Install and sign in

| Tool | Install | Sign in |
|---|---|---|
| Claude Code | `curl -fsSL https://claude.ai/install.sh \| bash` | `claude auth login` |
| Codex | `npm install -g @openai/codex` | `codex login` |
| cswap (optional) | `uv tool install claude-swap` | `cswap add` |

Then turn each tool on in **Settings › Integration › AI tools**, where you can also choose its model and effort.
tratto checks each tool's version, whether you are signed in and which models it offers.

## What tratto uses them for

- **Commit messages and explanations** in the commit box: see
  [Explain changes & commit messages](/docs/ai/commit-messages).
- **Pull request descriptions**, written from the commits of the branch: see [Pull requests](/docs/git/pull-requests).
- **The copilot** on Home: see [Copilot](/docs/home/copilot).
- **Talking to an agent** that is already running, from the Agents module: see [Agents](/docs/ai/agents).
- **Your usage**, in the status bar: see [Usage & cost](/docs/ai/usage).

## What it never does

The AI never writes to your repository on its own. A proposed message waits for your yes before it replaces what you
typed, and the copilot can read the project but not change its files.
