Add monitor-dash render to README; prepare wiki layout

- Move uploaded renders into docs/images/ (tracked).
- Insert the Monitor Dash render at the top of README.md as the
  headline image of the project.
- Rewrite README body to point at the forgejo wiki (six pages now
  live) as the canonical documentation surface, with PLAN.md
  staying as working notes.
- Gitignore docs/wiki/ so the wiki git checkout does not bleed
  into the main repo.

Refs #1

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Jeff Smith 2026-04-17 19:31:02 -06:00
parent 08eaa63300
commit fdab957b55
4 changed files with 33 additions and 22 deletions

3
.gitignore vendored
View file

@ -175,3 +175,6 @@ cython_debug/
# Superpowers brainstorm companion working dir
.superpowers/
# Local wiki checkout (separate git repo)
docs/wiki/

View file

@ -1,31 +1,39 @@
# claude-gauge
Hardware instrument cluster displaying Claude Code session telemetry.
Hardware instrument cluster displaying Claude Code session telemetry
in real time.
Three analog needle gauges (5h fuel, tokens/min tach, 7d fuel) plus
an annunciator row of model-indicator and warning lamps, driven by
an ESP32 polling a local Python daemon. The daemon reads either
Claude Code's native OpenTelemetry feed through a Prometheus stack
(architecture A) or `ccusage` CLI aggregates with a direct JSONL
tail for the tach (architecture B). Firmware and cluster are
identical across both.
![Monitor-mounted cluster with four gauges and annunciator row](docs/images/monitor-dash.png)
Fighter-jet / race-car aesthetic. Physical-first: all the deep
stats live in Grafana (A) or ccusage's own surfaces (B). The dial
on the desk is the ambient summary.
Four analog needle gauges (5h fuel, tokens/min tach, thinking ratio,
cache hit) plus an annunciator row of model-indicator and warning
lamps, driven by an ESP32 polling a local Python daemon. The daemon
reads either Claude Code's native OpenTelemetry feed through a
Prometheus stack (architecture A) or `ccusage` CLI aggregates with a
direct JSONL tail for the tach (architecture B). Firmware and
cluster are identical across both.
See [PLAN.md](PLAN.md) for:
Fighter-jet / race-car aesthetic. Physical-first: the deep stats
live in Grafana (A) or `ccusage` (B); the dial on the desk is the
ambient summary.
* Instrument cluster layout and annunciator semantics
* Architecture A: Docker Compose stack, Claude Code env config,
PromQL queries, daemon sketch
* Architecture B: ccusage subprocess integration, watchdog tail,
daemon sketch
* Hardware: X27.168 steppers, SwitecX25 library, ESP32 wiring,
enclosure notes
* Six-phase plan from daemon MVP through enclosure V1
* Full metrics brainstorm for later phases
## Documentation
Full documentation is in the [wiki](https://forgejo.labbity.unbiasedgeek.com/archeious/claude-gauge/wiki):
* **Home** — overview and cluster at a glance
* **Architecture** — two-architecture tradeoff, daemon contract
* **DataSources** — Docker Compose + PromQL (A), `ccusage` +
watchdog (B)
* **Hardware** — X27.168 steppers, ESP32 wiring, firmware,
enclosure
* **Roadmap** — phases, shipped, deferred
* **Ideas** — exotic enclosure variants, metrics brainstorm,
parked thoughts
Working notes live in [PLAN.md](PLAN.md). Session records and
in-flight thinking happen there; the wiki is the curated surface.
## Status
Scaffolded. Phase A pending architecture decision and first issue.
Scaffolded. Phase A pending architecture decision.

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 MiB