Local controller daemon for Neruva Cockpit -- the dashboard for agentic AI. Spawns and tails Claude Code sessions, streams them to your browser at app.neruva.io. No CLI knowledge required after install.
Project description
neruva-control
Local controller daemon for Neruva Cockpit — the dashboard for agentic AI. Spawns and tails Claude Code sessions on your machine, streams them to your browser. No CLI knowledge required after install.
Install
pip install neruva-control
neruva-control-install
The installer:
- Generates a random auth token and stores it at
~/.config/neruva/control.token(mode 0600 on Unix). - Registers a background service so the daemon starts on login (launchd on macOS, systemd-user on Linux, Task Scheduler on Windows).
- Starts the daemon listening on
127.0.0.1:7331(loopback only). - Prints a one-time URL like
https://app.neruva.io/cockpit#token=<TOKEN>— open it once and the browser remembers your machine.
How it works
[browser at app.neruva.io]
↕ WebSocket (loopback :7331, token-authed)
[neruva-control daemon]
├─ HTTP/WS server on 127.0.0.1:7331
├─ Spawns: claude --headless --output-format stream-json
├─ Tails subprocess stdout, broadcasts events to browser
└─ Forwards user steering input → subprocess stdin
↕ HTTPS (existing Api-Key auth)
[api.neruva.io substrate]
The daemon binds to 127.0.0.1 only — your sessions never leave
your machine. The browser at app.neruva.io connects to your local
daemon via a loopback WebSocket. The auth token is the shared secret
between daemon and browser; only the browser tab you linked has it.
Commands
| Command | What it does |
|---|---|
neruva-control-install |
One-shot install (generates token, registers service, prints link URL). |
neruva-control start |
Run the daemon foreground (used by service). |
neruva-control status |
Show install + daemon health. |
neruva-control link |
Print the link URL again (for re-link or new browser). |
neruva-control stop |
Stop the daemon. |
Requirements
- Python ≥3.10
- Claude Code installed and on
$PATH(the daemon spawns it) - A Neruva account at neruva.io (free tier works)
What gets recorded
Every session's events (prompts, tool calls, file edits, shell commands, MCP calls) are captured and posted to your Neruva substrate via the Records API. You can recall them anytime via the Neruva MCP tools or the Cockpit memory browser.
What it doesn't record: IDE state, browser tabs, other apps. The daemon only sees what flows through Claude Code.
License
MIT — see LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file neruva_control-0.3.0.tar.gz.
File metadata
- Download URL: neruva_control-0.3.0.tar.gz
- Upload date:
- Size: 45.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed58750d1c4b74304622b0bef1072502e704d910fefbc7cf5c22ae9acdc3de6e
|
|
| MD5 |
6c3e667add906bfbfdd0db36d7f95d0e
|
|
| BLAKE2b-256 |
1d7c4906de318c9fc3ddad814252e1017fee1bbdcba81fd68dbd76fff0ceea8e
|
File details
Details for the file neruva_control-0.3.0-py3-none-any.whl.
File metadata
- Download URL: neruva_control-0.3.0-py3-none-any.whl
- Upload date:
- Size: 52.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d064b151c61cc4e6ddd310870e8347e74957a967f0ddf0389588173ab44261a
|
|
| MD5 |
fa2b6b8614c192e8dc541b78912119ea
|
|
| BLAKE2b-256 |
6627f10788302053d97cddb5bd68efcecd33903ec84054f4abfe9f0f98150f89
|