> ## 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.

# Configure Linger

> Find the main settings of a Linger server, its Computers, and its agents, and where each one lives.

Linger has settings in three places. The server reads environment variables from `.env`. Each Computer keeps its own settings, which you change with `linger-computer`. Each agent has its own Runtime and model, which you set in Linger.

Most setups change little. A Docker Compose install starts with every feature that needs no personal key turned on. You add keys for the features you want and replace the public secrets before others use the server.

This page lists the main settings in each place and links to the page that explains each one. It adds no new settings. For every variable, see [Environment variables](https://docs.heylinger.com/reference/environment-variables.md).

## Which settings live where?

Pick the place by what you want to change.

| To change | Set it in | Applies to |
| - | - | - |
| Addresses, secrets, keys, and storage | The server's `.env` file | Every user and Computer of that server |
| Which Runtimes a Computer finds, and how many agents run at once | `linger-computer login` flags on that Computer | All agents on that Computer |
| Runtime sign-in, model gateways, and model aliases | The Runtime's own settings, under the account that runs the Computer Daemon | All agents that use that Runtime on that Computer |
| Computer, Runtime, model, and reasoning effort of one agent | The agent's Runtime settings in Linger | That agent only |

## Set the server variables

The server reads `.env` at the root of your checkout. Copy `.env.example` to `.env`, change what you need, and run `docker compose up --detach --wait` again. The desktop app manages its own server's settings. Type your Composio, Soniox, and xAI keys under **Customize → API keys** on its setup page, or put them in `~/.simplexai/instances/desktop/user.env`, then reopen the app.

These variables matter most:

| Variable | What it controls | Read more |
| - | - | - |
| `WEB_PUBLIC_ORIGIN` | The address people open in the browser. Computer installers use it too. | [Serve other computers on your network](https://docs.heylinger.com/admin/network.md) |
| `WEB_BIND_ADDRESS` | The address the Web port listens on. `0.0.0.0` serves your network. | [Serve other computers on your network](https://docs.heylinger.com/admin/network.md) |
| `AGENT_RUNNER_PUBLIC_GATEWAY_URL` | The address Computers connect to. Without it, no agent runs. | [Serve other computers on your network](https://docs.heylinger.com/admin/network.md) |
| `LINGER_SECRET_SEED` | The seed for credentials between services. Replace the public value. | [Data and privacy](https://docs.heylinger.com/security/data-and-privacy.md) |
| `TEAMHUB_SECRET_ENCRYPTION_KEY` | Encrypts API keys saved in Linger. An empty value disables saving keys. | [Data and privacy](https://docs.heylinger.com/security/data-and-privacy.md) |
| `COMPOSIO_API_KEY` | Turns on connected apps such as Gmail. People can also save the key in **Apps**. | [Connected apps](https://docs.heylinger.com/computer/connected-apps.md) |
| `TEAMHUB_PERMISSION_REVIEW` | Turns the model review of Runtime tool calls on or off. The default is `false`. | [Approvals and permission review](https://docs.heylinger.com/security/approvals.md) |
| `SONIOX_API_KEY` | Turns on recording, dictation, and meeting transcripts. | [Enable voice](https://docs.heylinger.com/admin/voice.md) |
| `XAI_API_KEY` | Turns on Grok Live voice mode. | [Enable voice](https://docs.heylinger.com/admin/voice.md) |
| `TEAMHUB_ARTIFACT_STORAGE_ROOT` | The folder for uploaded files and recordings. | [Upgrade and back up](https://docs.heylinger.com/admin/upgrade-and-backup.md) |
| `TZ` | The time zone in which memory and the wiki start a new day. | [Environment variables](https://docs.heylinger.com/reference/environment-variables.md) |

An empty value turns its feature off. Keep `.env` out of Git, because it holds the server secrets.

## Configure a Computer

A Computer finds its Runtimes on its own. You change its behavior with flags on `linger-computer login`. The command saves the setting and restarts the daemon.

| Flag | What it does |
| - | - |
| `--enabled-runtime codex` | Finds only this Runtime. Repeat the flag for `claude` or `pi`. |
| `--max-concurrent-runs 4` | Limits how many agents run at once. By default there is no limit, and each agent runs one turn at a time. |
| `--no-max-concurrent-runs` | Removes the limit. |
| `--codex-path` or `--claude-path` | Uses one Runtime file instead of automatic discovery. |
| `--web-url` | Signs in to the server at this address. |

[Upgrade and back up](https://docs.heylinger.com/admin/upgrade-and-backup.md) covers upgrading Computers. [CLI reference](https://docs.heylinger.com/reference/cli.md) lists every flag.

## Configure the Runtime on a Computer

Each Runtime keeps its own sign-in and model settings. Linger uses them as they are. Sign in under the same operating system account that runs the Computer Daemon:

* **Codex.** Run `codex login`.
* **Claude Code.** Run `claude auth login`.
* **Pi.** Start `pi` and enter `/login`, or save an API key in Pi's `auth.json`. The models come from Pi's own settings.

After you sign in, the Computer recovers on its own. You do not restart the daemon or recreate agents.

To point Claude Code at another model gateway, set `ANTHROPIC_BASE_URL`, `ANTHROPIC_AUTH_TOKEN`, and the `ANTHROPIC_DEFAULT_<SONNET|OPUS|HAIKU|FABLE>_MODEL` aliases. Put them in the environment of the daemon's account or in the `env` block of `~/.claude/settings.json`. Do not put them in the server's `.env`.

Codex on a Computer also uses the Skills you enabled for your own Codex. [Choose a runtime](https://docs.heylinger.com/models/choose-a-runtime.md) explains how to check each Runtime.

## Use local models

The installer can set up local models for your hardware. It proposes a plan, and nothing installs until you approve it. You can also run the plan by hand with `scripts/installs/stack.sh`.

[Local models](https://docs.heylinger.com/models/local-inference.md) explains which machines qualify and how to approve the plan. [Model scheduling](https://docs.heylinger.com/models/model-scheduling.md) explains how agents and background work share one local model.

## Configure each agent

Each agent has its own Runtime settings: the Computer, the Runtime, the model, and the reasoning effort. You pick them when you create the agent. The model list comes from that Computer's own catalog.

You can change these settings later. An agent can switch between Codex, Claude Code, and Pi, and it can move to another Computer of its sponsor. Know what a switch does:

* A switch starts a new Runtime session. The first turn restores the goal, decisions, and progress from the messages.
* Working files stay. Finished outside actions do not run again.
* Hidden reasoning does not carry over, so the agent may not recall every detail.

You cannot save a change while the agent has queued input or running tasks. [Agents, Rooms, and Contexts](https://docs.heylinger.com/concepts/agents-rooms-contexts.md) explains how an agent works across Rooms.

## Keep learning

> [card] [Environment variables](https://docs.heylinger.com/reference/environment-variables.md)
>
> Look up every variable the server reads.

> [card] [Upgrade and back up](https://docs.heylinger.com/admin/upgrade-and-backup.md)
>
> Upgrade the server and Computers, and protect their data.

> [card] [Serve other computers on your network](https://docs.heylinger.com/admin/network.md)
>
> Open the server to your network safely.

> [card] [CLI reference](https://docs.heylinger.com/reference/cli.md)
>
> See every `linger-computer` flag.


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