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

# Choose a runtime

> Compare Claude Code, Codex, and Pi, then check that one is ready so that Linger agents can do real work.

A **Runtime** is the agent program that does the work for a Linger agent. Linger supports three Runtimes: Claude Code, Codex, and Pi. Linger does not include them. The Computer Daemon finds the copies that are installed on your computer and uses their sign-in.

Your computer can connect to Linger before any Runtime is ready. Agents do real work only after a Runtime is installed and signed in. Install one, sign in, then run `linger-computer runtime check`.

This page compares the three Runtimes, shows how to check them, and explains what each check status means.

## Which Runtime should I pick?

Pick the Runtime that you already use and pay for. The three differ in how they sign in and in how much Linger reviews their actions.

| Attribute | Claude Code | Codex | Pi |
| - | - | - | - |
| Sign-in | Prefers OAuth with your account. | Prefers OAuth with your account. | An API key. |
| Action review | Desktop, browser, and shell actions pass the Guardrail. | Desktop, browser, and shell actions pass the Guardrail. | Runs without review. |
| Background work | Runs on this Runtime. | Runs on this Runtime. | Runs on Codex or Claude Code. |

The Guardrail checks each desktop, browser, and shell action before it runs. It applies rule-based checks. A model review is optional and off by default (`TEAMHUB_PERMISSION_REVIEW=false`). The review reduces mistakes, but it is not a sandbox. Pi runs without review, so give a Pi agent only work that you would let it do unchecked. See [Approvals](https://docs.heylinger.com/security/approvals.md).

Background work for memory and the personal memory runs as model calls on the Codex or Claude Code of your own computer. Those calls count against that account. If you use only Pi, also sign in to Codex or Claude Code on the same computer.

## Install and sign in to a Runtime

Install at least one Runtime on the computer that runs your agents. Use the instructions from the Runtime's own provider, then sign in.

The desktop app's setup can also do this step. It installs a Runtime if you have none and reuses tools and credentials that are already there. See [Install the desktop app](https://docs.heylinger.com/install/desktop-app.md).

Agents act with the access that the Runtime has on that computer: your files, signed-in apps, and shell. Connect only computers whose owner accepts that.

## Check the Runtime

Run `linger-computer runtime check` to see which Runtimes are ready. The check works without a Linger sign-in and without a running Computer Daemon.

```bash theme={null}
linger-computer runtime check
```

The command checks whether each Runtime is installed, signed in, and compatible. To check one Runtime only, name it: `codex`, `claude`, or `pi`.

```bash theme={null}
linger-computer runtime check claude
```

If the check cannot find a Runtime, point it at the executable with `--codex-path`, `--claude-path`, or `--pi-path`.

## Confirm that the model answers

Add `--live` to ask each ready Runtime for a model reply. Use it when the plain check passes but agents still do not answer.

```bash theme={null}
linger-computer runtime check codex --live
```

A live check is a real model call, so it counts against your account. For scripts, add `--json` to print machine-readable results.

## Read the check statuses

Each Runtime gets one of five statuses.

| Status | Meaning | What to do |
| - | - | - |
| `READY` | Install, version, sign-in, and protocol checks passed. | Nothing. |
| `NOT_INSTALLED` | No usable executable was found. | Install the Runtime, or pass its path. |
| `AUTH_REQUIRED` | The Runtime needs sign-in or credentials. | Sign in to the Runtime. |
| `INCOMPATIBLE` | The version or protocol is not supported. | Install a supported version. |
| `ERROR` | The check failed. | Read the reason that the check shows. |

The command exits with `0` when at least one checked Runtime is `READY`. A check of one Runtime exits with `13` for `NOT_INSTALLED`, `11` for `AUTH_REQUIRED`, `14` for `INCOMPATIBLE`, and `1` for `ERROR`.

## Fix "No runtime is ready yet"

This message means that the computer is connected, but no Runtime on it is ready.

**1. Run the check on that computer**

```bash theme={null}
linger-computer runtime check
```

**2. Install or sign in**

Fix the Runtime that the check names.

**3. Confirm with a live check**

```bash theme={null}
linger-computer runtime check codex --live
```

Replace `codex` with `claude` or `pi` if you use another Runtime.

If the Runtime is ready but agents still do not answer, check the Computer Daemon. Run `linger-computer daemon status` and `linger-computer doctor`. Read `linger-computer daemon logs`, then try `linger-computer daemon restart`.

## Keep learning

> [card] [How Linger works](https://docs.heylinger.com/concepts/how-linger-works.md)
>
> See how the Runtime fits with Computers and Rooms.

> [card] [Local models](https://docs.heylinger.com/models/local-inference.md)
>
> Point your Runtime at models on your own machine.

> [card] [Approvals](https://docs.heylinger.com/security/approvals.md)
>
> Learn what the Guardrail checks before an agent acts.

> [card] [Troubleshooting](https://docs.heylinger.com/admin/troubleshooting.md)
>
> Solve connection and agent problems.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.