See every agent. Understand every run. Command the whole fleet.
An open-source visual command center for OpenClaw and Hermes agents.
Quickstart · Why Nerve · Architecture · Adapter contract · Roadmap · Contributing
Important
Nerve is a public-alpha, single-operator control plane. Live Hermes HTTP and
OpenClaw Gateway adapters, encrypted connections, commands, skill management,
PostgreSQL persistence, audit events, and Railway packaging are implemented.
Runtime compatibility is not guaranteed until v1.0.
Agent runtimes are good at running agents. They are not always the best place to understand a whole organization of agents at once.
Nerve sits above individual runtimes and gives operators one legible surface:
- a spatial map of agents, missions, handoffs, and dependencies;
- a live view of what each agent is doing and why it needs attention;
- one conversation layer across OpenClaw and Hermes;
- fleet-wide commands with explicit approval and audit boundaries;
- runtime-neutral traces, metrics, artifacts, and memory references.
The goal is not to replace agent runtimes. It is to make operating many of them calm, observable, and safe.
- Unified OpenClaw and Hermes agent map
- Server-side OpenClaw Gateway protocol-v4 connection and agent discovery
- Server-side Hermes API connection, capabilities, runs, stop, and approvals
- Working, waiting, completed, and idle states
- Agent filtering and canvas zoom
- Run inspection with progress, trace, model, token, and timing data
- Direct commands and stop controls with idempotency records
- Direct operator-to-agent questions that start runtime-native work
- OpenClaw ClawHub skill installation per agent
- Hermes installed-skill discovery and Nerve-side assignment
- Encrypted credentials, authenticated APIs, endpoint SSRF policy, and audits
- PostgreSQL migrations and production health checks
- Fleet-wide command bar
- Responsive layouts for desktop and smaller screens
The dashboard falls back to sample agents until a live runtime is connected. See Connecting runtimes for supported APIs and network requirements.
- Node.js 22.13 or newer
- npm 10 or newer
- PostgreSQL 15 or newer
git clone https://github.com/boyeesu/nerve.git
cd nerve
npm install
cp .env.example .env.localFill DATABASE_URL, NERVE_ENCRYPTION_KEY, NERVE_SESSION_SECRET, and
NERVE_ADMIN_TOKEN, then initialize and run:
npm run db:migrate
npm run dev:nextOpen the local URL and unlock Nerve with NERVE_ADMIN_TOKEN.
Nerve includes a Docker image, config-as-code, pre-deploy migrations, a PostgreSQL service contract, and readiness checks. Follow the Railway deployment guide.
npm run build
node --test tests/rendered-html.test.mjs
npm run lintflowchart LR
OC["OpenClaw"] --> OCA["OpenClaw adapter"]
HE["Hermes"] --> HEA["Hermes adapter"]
OCA --> EN["Event normalizer"]
HEA --> EN
EN --> MG["Mission graph"]
EN --> TS["Trace store"]
UI["Nerve UI"] <--> API["Control API"]
API <--> MG
API <--> TS
API --> CB["Command bus"]
CB --> OCA
CB --> HEA
PE["Policy + approvals"] --> CB
Nerve treats each runtime as an adapter behind a shared model for agents, runs, events, messages, commands, approvals, and artifacts. Read Architecture for system boundaries and Adapter contract for the proposed integration interface.
| Area | Status |
|---|---|
| Product interface | Live connection-aware alpha |
| Connection persistence | PostgreSQL + encrypted credentials |
| OpenClaw adapter | Protocol-v4 subset; pairing, agents, commands, skills |
| Hermes adapter | HTTP API; capabilities, runs, actions, skills |
| Live event transport | Poll/request foundation; durable streaming planned |
| Authentication | Single-operator secure session |
| Tenancy and RBAC | Planned |
| Policy engine | Runtime approvals supported; central policy planned |
No production compatibility promise is made before v1.0.0. Breaking changes
will be documented in CHANGELOG.md.
| Document | Purpose |
|---|---|
| Architecture | System boundaries, services, data flow, safety, and deployment |
| Adapter contract | Runtime-neutral types, events, capabilities, and commands |
| Connecting runtimes | OpenClaw/Hermes setup, pairing, scopes, and network access |
| Production readiness | Implemented controls and remaining stable-release gates |
| Railway deployment | Docker, PostgreSQL, variables, health checks, and template definition |
| Development | Setup, project layout, testing, and local workflows |
| Roadmap | Milestones from prototype to stable release |
| Governance | Decision-making, roles, and project stewardship |
| Contributing | How to propose, build, test, and submit changes |
| Security | Supported versions and responsible disclosure |
| Support | Where to ask questions and report problems |
| Code of Conduct | Community participation standards |
Contributions are welcome, especially around runtime adapters, event normalization, observability, accessibility, and operator safety.
Start with CONTRIBUTING.md, review the architecture, and use the repository issue forms before beginning a large change.
Please do not report vulnerabilities in public issues. Follow the private disclosure process in SECURITY.md.
Nerve is available under the MIT License.

