> ## Documentation Index
> Fetch the complete documentation index at: https://help.notis.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect your agents

> Sign Codex and Claude Code in to Notis — device code in the cloud, your own CLI login on your machine, never an API key.

Every target except **Notis** runs on a coding-agent account you sign in yourself. The two cloud targets are connected inside Notis; the two local ones reuse the CLI login that already exists on your machine. All four are shown in one place: open your account menu and choose **Agents routing**. Each target has its own status card and, when it is not ready, says what it needs.

<Note>
  Notis never asks for an API key and never accepts one. Every coding-agent target runs on your own Codex or Claude subscription, so usage lands on the account you already pay for. The one credential you ever paste — the Claude setup token below — is a subscription login minted by Claude Code itself, not an API key.
</Note>

## Codex Cloud

Codex Cloud signs in with a device code, the same way you would sign a TV app in to a streaming service. Nothing is typed into Notis.

<Steps>
  <Step title="Open Agents routing">
    Account menu → **Agents routing** → the **Codex Cloud** card.
  </Step>

  <Step title="Start the connection">
    Press the button on the card. It reads **Connect Codex Cloud** the first time, **Continue authorization** while an authorization is still waiting on you, and **Reconnect** after an attempt expired or failed — all three start or resume the same flow. Notis prepares your cloud computer and installs the Codex CLI there, which takes a few seconds the first time.
  </Step>

  <Step title="Approve on OpenAI">
    The card shows a verification link and a short code, and Notis opens that link for you. Enter the code and approve with the ChatGPT account whose Codex subscription you want to use. The copy button next to the code puts it on your clipboard.
  </Step>

  <Step title="Come back">
    The card flips to **Connected**. The authorization code is single-use and expires after about 20 minutes — if you miss the window, press **Reconnect** and start again.
  </Step>

  <Step title="Switch accounts later">
    Press **Disconnect** on the connected Codex Cloud card. This signs Codex out without deleting your cloud files. Press **Connect** again and approve with the other ChatGPT account.
  </Step>
</Steps>

Your Codex credential is written by the Codex CLI itself, inside your own cloud computer. Notis only ever handles the verification link and the short code.

## Claude Cloud

Claude Code has no device-code flow, so the credential comes from a token you mint yourself.

<Steps>
  <Step title="Mint a token on your own machine">
    In a terminal, run:

    ```bash theme={null}
    claude setup-token
    ```

    Claude Code opens your browser, you log in with your normal Claude subscription, and the command prints a token.
  </Step>

  <Step title="Paste it into Notis">
    Account menu → **Agents routing** → the **Claude Cloud** card → paste only the token and press **Connect Claude Cloud**. If your terminal wrapped it onto two lines, paste both lines — Notis joins them automatically. The field is masked, and Notis never shows the token again.
  </Step>

  <Step title="Notis verifies it">
    Notis installs the Claude Code CLI in your cloud computer, stores the token there, and runs a check. If the token is good, the card flips to **Connected** and the button becomes **Disconnect**. If Claude refuses the token, the card says so and nothing is stored.
  </Step>
</Steps>

What this means in practice:

* **Notis never sees your Claude login.** You log in to Anthropic in your own browser. Notis receives only the token that command printed.
* **The token lives in your cloud computer, nowhere else.** It is written to a private file that only your sandbox can read. It is not stored in the Notis database, not shown again after you save it, and not written to any log.
* **It lasts one year.** Anthropic issues `setup-token` credentials with a one-year lifetime, and there is no renewal notice — the first sign that it expired is a Claude Cloud run failing. Re-run `claude setup-token`, paste the new value, and you are back. If you want a reminder, ask Notis to set one for eleven months out.
* **You can disconnect at any time.** Removing the connection deletes the token from your cloud computer.

Anthropic documents `claude setup-token` as the supported way to authenticate "CI pipelines, scripts, or other environments where interactive browser login isn't available". That is exactly what your cloud computer is.

## Codex Local and Claude Local

The local targets have nothing to connect inside Notis — they reuse the CLI you already use in your own terminal. You need three things:

1. **The CLI installed and logged in.** Run `codex login` or `claude` once in your terminal and sign in with your subscription. Confirm it works there before expecting Notis to use it.
2. **The Notis desktop app running and signed in**, with **Your Computer** enabled. That toggle is the trust boundary — see [Your Computer](/your-computer/overview) for the full setup.
3. **The desktop app awake.** A sleeping laptop makes a Local target unavailable. Pin Auto if you want Notis to keep answering elsewhere; pin the Local target if you want the request to fail rather than move.

Notis never reads, copies, or transmits your local CLI credential. It asks the CLI to run a task and reads back the result.

## Reading the status cards

Each card carries a status badge, and often a line of detail under it explaining the badge.

| Status                                   | Where it appears | What it means                                                                                                                               |
| ---------------------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| **Connected**                            | Any target       | Ready to be routed to.                                                                                                                      |
| **Not connected**                        | Cloud targets    | Nothing has been connected yet, or the credential was removed. Connect it here.                                                             |
| **Sign in needed**                       | Local targets    | The CLI is installed on your machine but not signed in. Run `codex login` or `claude` in your terminal.                                     |
| **Not installed**                        | Any target       | The CLI is missing — install Codex or Claude Code locally, or press the connect button again so Notis reinstalls it in your cloud computer. |
| **Disconnected**                         | Local targets    | The Notis desktop app is not reachable — usually asleep, quit, or **Your Computer** turned off.                                             |
| **Update required**                      | Local targets    | The desktop app is too old to run delegated tasks. Update it.                                                                               |
| **Starting** / **Authorization pending** | Codex Cloud      | The connection is in progress. **Authorization pending** means the link and code are on the card, waiting for you.                          |
| **Expired**                              | Codex Cloud      | The authorization was not approved inside its 20-minute window. Press **Reconnect**.                                                        |
| **Needs attention**                      | Codex Cloud      | The authorization did not complete. Press **Reconnect**.                                                                                    |
| **Unavailable**                          | Any target       | Notis could not read the status just now. Press **Check again**.                                                                            |

Any other badge is passed straight through from the runtime check; the detail line under it says what happened.

A target that is not ready still shows up in every routing picker, dimmed and marked **NOT CONNECTED**. Clicking it opens **Agents routing** instead of selecting it — or, if you are already there, points you at the cards above — so you cannot accidentally aim a channel at something that cannot run.

## Related

* [Agent routing overview](/agent-routing/overview) — Auto versus the five named targets.
* [Route channels, automations, and conversations](/agent-routing/route-channels-and-automations) — where to apply a target.
* [Your Computer](/your-computer/overview) — enabling the desktop bridge.
* [Cloud Computer](/tools/cloud-computer) — the container the cloud targets run in.
