Configuration
Every setting in .env, model keys and experimental features.
Docker Compose reads .env at the repository root. Copy it from .env.example. On your own machine every setting is optional.
Settings
| Setting | Default | What it does |
|---|---|---|
RATEL_ORG_NAME | empty | The organization's name, read at every start. |
BASE_URL | http://localhost:3000 | This deployment's origin. The console's snippets and the demo's links use it. |
POSTGRES_PASSWORD | ratel | Read only when the database is first created. Letters and digits only. |
TRACE_SIGNALS_HASH_SALT | public development salt | Keeps hashed values from being guessed. Changing it later splits old hashes from new. |
RATEL_PORT | 3000 | Host port for the console, bound to 127.0.0.1. Change BASE_URL with it. |
RATEL_DB_PORT | 5432 | Host port for Postgres, bound to 127.0.0.1. |
RATEL_EXPERIMENTAL_FEATURES | off | 1 turns on every experimental feature. |
On a server, set the first four before the first start. Generate each secret with openssl rand -hex 32.
Changing POSTGRES_PASSWORD later means deleting the data with docker compose down --volumes.
Model keys
ANTHROPIC_API_KEY=
OPENAI_API_KEY=Both are optional. Without them Ratel makes no outbound model call. The readings that need a model report themselves skipped, workflows keep their tool-order names, and topics are named from their own asks.
Experimental features
Off by default:
- Tasks and Ship pages, with the rail grouped by stage.
- Testing a fix before it ships.
- Session replay.
- The improvement-loop MCP tools.
Add RATEL_EXPERIMENTAL_FEATURES=1 to .env and run docker compose up -d --build --wait. Remove the line, or set 0, and run it again to turn them off. With them off, their pages answer 404.