Config
Files, env vars, and Docker image for gegenlesen.
Ledger setup writes config/gegenlesen.json (gitignored), including models and openrouter_api_key. You can still copy config/gegenlesen.example.json and set OPENROUTER_API_KEY in the environment.
Override the path with GEGENLESEN_CONFIG. GET /api/settings never returns the key.
Env
| Variable | What |
|---|---|
OPENROUTER_API_KEY |
Reviewers, judge, miner |
GEGENLESEN_URL |
CLI API base. Default http://127.0.0.1:8080 |
GEGENLESEN_ALLOW_REMOTE=1 |
Allow a non-loopback bind |
GEGENLESEN_SKIP_AGENT=1 |
Deterministic path only. Used in tests |
GEGENLESEN_BIND / GEGENLESEN_PORT / GEGENLESEN_DATA_DIR |
Listen and store |
GEGENLESEN_MODEL_A / GEGENLESEN_MODEL_B / GEGENLESEN_JUDGE_MODEL |
Model ids |
GEGENLESEN_LEARN_INTERVAL_MINUTES |
Sweep. 0 disables |
GEGENLESEN_DOCKER |
docker binary |
GEGENLESEN_OPENCODE_IMAGE |
Runner image. Default gegenlesen/opencode-runner:0.1.0 |
Docker
The API image is ghcr.io/pmdroid/gegenlesen (:main on the default branch, semver on tags). The runner is ghcr.io/pmdroid/gegenlesen/runner. How to run it: Docker.
Local runner build:
scripts/build-runner.sh
Image tag: gegenlesen/opencode-runner:0.1.0. Never write :latest into config/gegenlesen.json. CI may tag the GHCR runner :latest on a release; pin the digest or the semver tag in config.
The runner user is gegenlesen. Sealed config is bind-mounted at /opt/gegenlesen/opencode and seeded onto a tmpfs home so opencode run can write.
Egress network: gegenlesen-egress.
gegenlesen