Exposes session data over HTTP so the LogLife dashboard (hosted on Vercel) can display it. The plugin runs inside the OpenClaw gateway process — no separate service needed.
git clone https://github.com/openclaw/openclaw.git ~/openclaw
cd ~/openclaw
pnpm install
pnpm buildcd ~/openclaw
./openclaw.mjs plugins install /path/to/loglife/plugin --linkThis registers the plugin in your OpenClaw config and loads it directly from the repo (no copy). Updates arrive via git pull.
Generate a key and store it in your OpenClaw config:
cd ~/openclaw
./openclaw.mjs config set plugins.entries.loglife.config.apiKey "$(openssl rand -hex 32)"Note the key — you'll need it for the website in step 5.
To see the current key:
cat ~/.openclaw/openclaw.json | grep apiKeycd ~/openclaw
# Foreground (development):
./openclaw.mjs gateway --allow-unconfigured
# Or as a background service (production):
./openclaw.mjs gateway install
./openclaw.mjs gateway startVerify the plugin loaded by testing the endpoint:
curl -H "Authorization: Bearer YOUR_API_KEY" \
"http://localhost:18789/loglife/sessions?sessionId=test"You should get a JSON response (either session data or {"error":"Session not found"}).
cd loglife/website
pnpm installAdd the OpenClaw connection to your .env:
OPENCLAW_API_URL=http://localhost:18789
OPENCLAW_API_KEY=<the key from step 3>
Start the dev server:
pnpm devThe dashboard at http://localhost:3000/dashboard will now fetch session data through the plugin.
The website deploys to Vercel automatically on push to main. Set these environment variables in your Vercel project settings:
OPENCLAW_API_URL— your server's public address (e.g.https://your-server.com:18789)OPENCLAW_API_KEY— the same key from step 3
GitHub Actions triggers on pushes to main that change plugin/**. The workflow SSHes into the server and runs git pull. Restart the gateway manually afterwards:
- Send
/restartfrom WhatsApp (or any connected channel) - Or run
openclaw gateway restartvia SSH
The plugin accepts two config values in openclaw.json under plugins.entries.loglife.config:
| Key | Required | Default | Description |
|---|---|---|---|
apiKey |
Yes | — | Shared secret for authenticating dashboard requests |
agentId |
No | "main" |
Which agent's sessions to serve |
See openclaw-config.json for a template.
All development happens locally. The production server is for deployment only.
- Run OpenClaw gateway locally (step 4 above)
- Run the website dev server (step 5 above)
- Edit
plugin/index.ts, restart the local gateway, and test - Push to
mainwhen ready — Vercel deploys the website, GitHub Actions deploys the plugin