Prereqs
- Docker installed (Docker Desktop or engine).
- Node 20+ for the CLI.
Deploy
- Drops
docker-compose.yamland.envinto~/.corebrain/gateways/<name>/. - Optionally prompts for
CLAUDE_CODE_OAUTH_TOKEN,OPENAI_API_KEY,GITHUB_TOKENso the coding and git slots work out of the box. - Optionally exposes the host via Tailscale Funnel (re-uses any existing Tailscale install).
- Runs
docker compose up -d. - Prints the public URL and offers to auto-register with CORE.
7787.
Grab the security key
Thegwk_... value is generated during setup and written to ~/.corebrain/gateways/<name>/.env. Grab it here:
Register in the CORE app
If you answered yes to the wizard’s “Add to CORE?” prompt, the gateway is already registered — skip to Verify. Otherwise, in the webapp:- Sidebar → Gateways → + New gateway.
- Pick Docker.
- Paste the Base URL and the Security key from step above.
- Submit.
Verify
Manage the container
Register a folder
Point the gateway at directories on the Docker host that it should have access to:Troubleshooting
Gateway shows as Unreachable in the webapp: confirm the URL in the webapp is what your reverse proxy / tunnel exposes, not the container’s internalhttp://localhost:7787.
docker compose up failed with port conflict: another service is on 7787. Edit .env to set COREBRAIN_GATEWAY_HTTP_PORT to a free port, and adjust your reverse proxy accordingly.
Rotating the security key: change COREBRAIN_GATEWAY_SECURITY_KEY in .env, run docker compose up -d, then update the gateway’s key in Sidebar → Gateways → Edit in the webapp.
Lost the key entirely: it’s still in .env — grep COREBRAIN_GATEWAY_SECURITY_KEY ~/.corebrain/gateways/<name>/.env.