Project releases
RuView 0.9.1: watch WiFi sensing nodes live inside Claude Code
The RuView npm toolkit 0.9.1, merged and published on October 2, adds a Claude Code mod that opens a /ruview pane beside the conversation with node health, a CSI waterfall and a radar view. It also adds a spectrum capture option and a token-authenticated HTTP mode for its MCP server.
GitHub activity: · Published:
What this is about
RuView turns ordinary WiFi into room sensing with no cameras. Small ESP32 boards stream channel state information (CSI), a fingerprint of how the signal bounces around a room, to your computer. Until now, seeing that data meant a separate terminal or app.
Version 0.9.1 of the npm toolkit puts it beside your Claude Code conversation. Type /ruview and a pane opens that refreshes by itself.
What changed
- A Claude Code mod, ruview-live, with three views: an overview of nodes (frames per second, packet loss, signal strength) and an optional 60 GHz radar kit; a CSI waterfall showing every subcarrier over time; and a radar fan with distance, heart and breathing charts.
- esp32 --spectrum adds per-subcarrier amplitude frames to a capture; this feeds the waterfall and works from scripts.
- Also in the 0.8 to 0.9 line: a console widget for ChatGPT and other MCP Apps hosts, a token-authenticated HTTP option for the MCP server, and reading ESPHome 60 GHz radar kits over WiFi.
- Honest labelling: the waterfall says MEASURED or SYNTHETIC from the packets' own flag; radar vitals are labelled device-reported, not validated; a node that goes quiet is removed rather than shown as live.
- The pane only reads. It runs the package's read-only capture commands and never flashes, provisions or writes to a device.
- The release reports testing with an ESP32-C6 on firmware 0.7.0 streaming 7 to 18 frames per second, a Seeed MR60BHA2 radar kit, and 193 unit, 91 security and 4 Claude Code engine tests passing.
Get started
Prerequisites: Node.js and Claude Code. For live data, one or more RuView sensing nodes on your network; without them the pane has nothing to show. Mods are early access in Claude Code; if /ruview is missing, start Claude Code with function hooks switched on, as the release notes describe.
npx @ruvnet/ruview@0.9.1 doctor
What we saw when we ran it (Node 22, Linux, no RuView checkout, no boards): a grouped report of PASS, WARN and SKIP lines covering runtime, package integrity, hosts, Rust, Python, firmware and serial ports, each WARN with a fix line, such as installing pyserial or cloning the repository.
npx @ruvnet/ruview@0.9.1 mod
claude --plugin-dir "<path printed above>"
What we saw: mod printed JSON with the plugin path, the exact claude --plugin-dir line, the marketplace alternative (/plugin marketplace add ruvnet/RuView, then /plugin install ruview-live@ruview) and the /ruview commands. We did not open the pane or capture from a device.
npx -y @ruvnet/ruview mcp start
The README also documents npx @ruvnet/ruview install --host claude-code to register it, and an HTTP mode on 127.0.0.1 that requires a bearer token and only allows read tools; flashing and calibration stay on the CLI and stdio. Skills: the package ships host-neutral playbooks (onboard, provision-node, calibrate-room, train-pose, verify, cognitum-spaces), printed with npx @ruvnet/ruview skill <name>.
Use it today
Practical case: a board shows as connected but your room readings look flat. Input is two nodes streaming to your laptop. Workflow: open /ruview, check the overview for frame rate and loss, then press 2 for the waterfall. Output: you see straight away whether the board is sending real CSI, sending heartbeats only (raised as an alert), or nothing at all.
Acceptance test: with one node streaming, the waterfall should be labelled MEASURED and scroll; unplug the node and its picture should disappear rather than freeze as live.
Push it further
Experimental commentary. Putting live sensor state next to an agent conversation makes the agent's context and the operator's view the same thing, which is useful when an agent is helping debug a deployment. The read-only boundary matters here; it keeps the pane from becoming a way to change hardware.
Limitation: radar heart and breathing values are device-reported and not validated, and the radar kit reports distance but not direction. Falsifiable test: feed the simulator and confirm the waterfall reads SYNTHETIC, never MEASURED.
Read the original on GitHub release
Release ruview-harness-v0.9.1 — merge of PR #2062, commit 03a89793