A minimal, self-hosted web chat that connects directly to your OpenClaw agent. No data leaves your infrastructure — except the model API call you control.
Every request follows the same path. No middleman, no cloud relay, no hidden hops.
A real ochat session. The UI is served directly from the Express server — pure HTML, no framework.
// request { "message": "What can you help with?", "sessionId": "a3f9b2c1-…" }
$ openclaw agent \ --session-id a3f9b2c1 \ --message "What can you…" \ --json
// response { "ok": true, "text": "I can help with…", "sessionId": "a3f9b2c1-…" }
Docker handles everything — openclaw, the gateway, and the chat server in a single container.
git clone github.com/rmfaria/ochat.env.example to .env
and add your ANTHROPIC_API_KEY or OPENAI_API_KEY.
docker compose up -dhttp://localhost:18800