The cockpit OpenClaw deserves.
OpenClaw is powerful. Nerve is the interface that makes people say “oh, now I get it."
curl -fsSL https://raw.githubusercontent.com/daggerhashimoto/openclaw-nerve/master/install.sh | bashRun the installer, live in 60 seconds
Nerve-1.5.mp4
Mobile Screenshots
Chat is great for talking to agents. It is not enough for operating them.
The moment you care about visibility, control and coordination over your agents, the thread gets too small. You want the workspace, sessions, taskboard, editor, usage, and agent context in one place.
Nerve is that place.
Run multiple agents from one place. Each agent can have its own workspace, subagents, memory, identity, soul, and skills, while Nerve gives you a single control plane to switch context, inspect state, and operate the whole fleet.
Push-to-talk, wake word flows, explicit language selection, local Whisper transcription, multilingual stop and cancel phrases, and multiple TTS providers. Voice is part of the product, not an afterthought.
Each agent can have its own workspace, memory, identity, soul, and skills. Nerve lets you inspect, edit, and manage that context live, without guessing what an agent knows, where it works, or how it is configured.
Crons, session trees, kanban workflows, review loops, proposal inboxes, and model overrides. Nerve gives agent work an operating surface instead of leaving it trapped inside chat history.
Charts, diffs, previews, syntax-highlighted code, structured tool rendering, and streaming UI that makes agent responses easier to inspect.
What you can do with it
- Talk to your agent by voice and hear it answer back naturally
- Browse and edit the workspace live while the conversation is still happening
- Watch cron runs as separate sessions instead of treating automation like a black box
- Delegate work onto a kanban board and review what came back
- Ask for a chart and get a real chart, not a code block pretending to be one
- Track token usage, costs, and context pressure while long tasks run
- Inspect subagent activity without losing the main thread
- Switch between per-agent workspaces and memory without losing context
- Inspect each agent’s identity, soul, and skills from the UI
- Delegate subagent work inside a larger agent fleet instead of treating everything as one thread
| Area | Highlights |
|---|---|
| Agent fleet | Run multiple agents from one control plane, each with its own workspace, subagents, memory, identity, soul, and skills |
| Interaction | Streaming chat, markdown, syntax highlighting, diff views, image paste, file previews, voice input, TTS, live transcription preview |
| Workspace | Per-agent file browser, tabbed editor, memory editing, config editing, skills browser |
| Operations | Session tree, subagents, cron scheduling, kanban task board, review flow, proposal inbox, model overrides |
| Observability | Token usage, cost tracking, context meter, agent logs, event logs |
| Polish | Command palette, responsive UI, 14 themes, font family and 10px to 24px font size controls, mobile-safe input sizing, hot-reloadable settings, updater with rollback |
curl -fsSL https://raw.githubusercontent.com/daggerhashimoto/openclaw-nerve/master/install.sh | bashThe installer handles dependencies, clone, build, and then usually hands off straight into the setup wizard. Guided access modes include localhost, LAN, Tailscale tailnet IP, and Tailscale Serve.
- Local — Run Nerve and Gateway on one machine
- Hybrid — Keep Nerve local, run Gateway in the cloud
- Cloud — Run Nerve and Gateway in the cloud
Manual install
git clone https://github.com/daggerhashimoto/openclaw-nerve.git cd openclaw-nerve npm install npm run setup npm run prodUpdating
npm run update -- --yesFetches the latest release, rebuilds, restarts, verifies health, and rolls back automatically on failure.
Development
npm run dev # frontend — Vite HMR on :3080 npm run dev:server # backend — watch mode on :3081Requires: Node.js 22+ and an OpenClaw gateway.
Nerve sits in front of the gateway and gives you a richer operating surface in the browser.
Browser ─── Nerve (:3080) ─── OpenClaw Gateway (:18789) │ │ ├─ WS ──────┤ proxied to gateway ├─ SSE ─────┤ file watchers, real-time sync └─ REST ────┘ files, memories, TTS, models OpenClaw remains the engine. Nerve gives it a cockpit.
Frontend: React 19 · Tailwind CSS 4 · shadcn/ui · Vite 7 Backend: Hono 4 on Node.js
Nerve binds to 127.0.0.1 by default, so it stays local unless you choose to expose it.
When you bind it to the network (HOST=0.0.0.0), built-in password authentication protects the UI and its endpoints. Sessions use signed cookies, passwords are stored as hashes, WebSocket upgrades are authenticated, and trusted connections can use server-side gateway token injection.
For the full threat model and hardening details, see docs/SECURITY.md.
- Architecture — codebase structure and system design
- Configuration —
.envvariables and setup behavior - Deployment Guides — local, hybrid, and cloud setups
- Agent Markers — TTS, charts, kanban markers, and rich UI output
- Troubleshooting — common issues and fixes
- Tailscale Guide — private remote access via tailnet IP or Tailscale Serve
- Contributing — development workflow and pull requests
- Changelog — release notes and shipped changes
If this is the kind of interface you want around your OpenClaw setup, give the repo a star, contribute and keep an eye on it.
Join the Nerve Discord to get help, discuss, share your setup, and follow development.