Caprock banner
dspv dspv

Caprock

Development community

Description

Local dashboard for every Claude Code session on your machine — live activity, cost per repo, loop alerts. No telemetry.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Caprock

See what your Claude Code is actually doing.

![The live pulse: one bar per minute, coloured by what the minute cost](docs/pulse.gif)

*Real capture, 46 seconds. One session working; the bars advance as the minutes roll over and the cost ticks with them.*

[![release](https://img.shields.io/github/v/release/dspv/caprock?color=feb157)](https://github.com/dspv/caprock/releases) [![license](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](LICENSE) [![CI](https://github.com/dspv/caprock/actions/workflows/ci.yml/badge.svg)](https://github.com/dspv/caprock/actions/workflows/ci.yml) ![platform](https://img.shields.io/badge/macOS%20·%20Linux%20·%20Windows-informational)

# macOS / Linux
brew install dspv/tap/caprock

# Windows
scoop bucket add dspv https://github.com/dspv/scoop-bucket
scoop install caprock

caprock up        # opens localhost:4173; offers to set up hooks + plan-limit status line

Have Go? `go install github.com/dspv/caprock/cmd/caprock@latest` — the dashboard is embedded, so it works with no Node build. No package manager? Grab a binary from [Releases](https://github.com/dspv/caprock/releases).

Or let Claude Code install it — paste one prompt into a fresh Claude Code message.

It picks the right command for your machine, so there is nothing to choose. The `--yes` is load-bearing: consent for the hook is refused rather than assumed when stdin is not a terminal, which is what an agent's shell gives it, so without the flag you would get a dashboard that never sees a session.

The wording was tested against five agents given no other context. An earlier draft was refused outright by one of them, and the two lines it objected to were both ours meaning well: "do not start or type into any claude session" (our Rule 7, which reads as *do not tell the user*) and "show me the error instead of trying another source" (meant to stop a lookalike package being installed, which reads as *stop verify