rangewatch

agent
Security Audit
Pass
Health Pass
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Community trust — 17 GitHub stars
Code Pass
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

A launch-control room for your local AI agents — block minifig crew, NASA-style GO/NO-GO board, real-time events from Claude Code hooks and agent logs. No cloud, no simulation.

README.md

RANGEWATCH

Mission control for one agent, one trader, one machine.

RANGEWATCH — all stations go

A local-first dashboard that watches the three things that matter on this box:

  • Claude — live activity via Claude Code hooks: every session, tool call,
    and finished turn lands on the stage in ~2s, plus a token/usage strip parsed
    incrementally from local transcripts (ccusage-style, nothing leaves the Mac)
  • The traderrange-trader
    paper + live daemons: heartbeat freshness, watchdog arming, kill-switch
    state, open positions with stop/target, realized P&L today, the engine's
    last decision and thesis, and a live alerts tail
  • The machine — CPU / RAM / disk / uptime, the trading daemons' footprint,
    and TCP checks on the services that still exist

The centerpiece is a NASA-style big board: a market clock counting down to
the next open/close, and a GO/NO-GO grid over the real stack — PAPER, LIVE,
WDOG-P, WDOG-L, KILL, GLANCE, OPTICS, FEED. Red means something is actually
wrong; a healthy machine reads ALL STATIONS GO. A LEGO-minifig Claude
works the console and gets confetti when a turn finishes, because dashboards
are allowed to be fun.

Architecture

backend/   FastAPI :8000 — 5 modules, read-only collectors, WebSocket push
frontend/  React + Vite :3000 — canvas stage, trading desk, ops log

Two API contracts are frozen (external hooks depend on them):

  • POST /api/crew/hook — Claude Code hook receiver (~/.claude/settings.json)
  • POST /api/sessions/log — session/alert log (range-trader's alert hook)

Everything the backend watches, it watches read-only: ledgers open in SQLite
ro-mode, transcripts and logs are tail-read from byte offsets, and the only
thing it ever writes is its own session-log DB.

Run it

# backend
cd backend && python -m venv venv && venv/bin/pip install -r requirements.txt
./run_mission_control.sh          # uvicorn on 127.0.0.1:8000

# frontend
cd frontend && npm install && npm run dev   # vite on :3000

Both run under launchd on the owner's machine (local.mcd-backend,
local.mcd-frontend) and bind to localhost only. This is a local-first,
host-path-bound tool by design — it reads ~/.range-trader and
~/.claude/projects directly, so there is deliberately no Docker setup.

Tests

backend/venv/bin/python -m pytest backend/tests/

Covers the market clock (including weekend rollover), the trading collector
against fixture ledgers, incremental usage parsing, and both frozen contracts.

History

Formerly Blockhouse, the dashboard for a two-agent local AI mesh
(Claude + Hermes over AMP, MLX models, OpenViking memory). The mesh was
retired on 2026-07-26 and the dashboard was rebuilt single-agent the same
night — the backend went from ~6,000 lines polling ghosts to ~700 lines
watching things that exist. The LEGO stage survived; Hermes's console is
in storage.

Reviews (0)

No results found