agentsclimarketplace

Vibe ledger

Skill aakashdhar/vibe-skill/vibe-ledger

Generates a full project cost report as a self-contained HTML file from vibe/cost/history.json. Opens automatically in the browser. Tracks spend per session, per task, per phase, and per day. Shows task size breakdown (S/M/L avg costs), session burn with dot indicators, token composition, efficiency metrics, waste pattern advice, and project cost forecast. All plain English — readable by non-technical stakeholders. Triggered automatically at the end of every cost: session. Also triggers on "ledger:", "generate ledger", "show cost report", "open ledger", "cost report", "how much have I spent", "show me the report". Requires vibe/cost/history.json to exist — run cost: first if it doesn't. Zero dependencies — uses Python stdlib only, works on any machine.From its SKILL.md

Install
npx -y skills add aakashdhar/vibe-skill --skill vibe-ledger

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 7 stars7 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.7 KB, 964 tokens by cl100k_base, as published. Nobody here has run it

Vibe Ledger

Generates a visual cost report from your project's cost history. Reads vibe/cost/history.json. Writes vibe/cost/ledger/index.html. Opens in browser.

No dependencies. No installs. Works on Mac, Linux, and Windows.


When this runs

Automatically — vibe-cost calls this at the end of every session after writing history.json.

Manually — when the user says:

  • ledger: — regenerate and open
  • show cost report / open ledger / generate ledger
  • how much have I spent — if history.json exists

Step 1 — Check history.json exists

ls vibe/cost/history.json 2>/dev/null && echo "EXISTS" || echo "MISSING"

If missing:

"No cost history found yet. Run cost: after your next session to start tracking, then ledger: to generate the report."

Stop here if missing.


Step 2 — Run the generator

python3 ~/.claude/skills/vibe-ledger/scripts/generate.py

The script:

  1. Finds vibe/cost/history.json from the current project directory
  2. Computes all metrics — totals, averages by task size, day breakdowns, efficiency ratios
  3. Generates vibe/cost/ledger/index.html — self-contained, no external dependencies
  4. Opens it in the default browser automatically
  5. Prints a summary to the terminal

Step 3 — Confirm to user

After the script runs, tell the user:

"Ledger generated — opening in your browser.

[Project name] · [N] sessions · [N] tasks · $[X.XX] total Report: vibe/cost/ledger/index.html

Run ledger: any time to refresh it with the latest data."


What the report shows

Header — project name, total cost, session count, date range, build progress

Stat cards — avg cost per task, avg cost by size (S/M/L), peak session, cache savings

At a glance — plain English summary: what was built, what it cost, whether costs are healthy

Day by day — cost per day with ASCII block bars

Task size breakdown — S/M/L cost totals with percentage of total spend

Session burn table — each session with dot indicators (each dot ≈ cost/7), colour-coded:

  • Green = on track
  • Red = peak session
  • Amber = output-heavy (CP-03)
  • Blue = review session

Token composition — reading vs writing cost in plain terms ("reading costs $X of your $Y")

Efficiency metrics — tokens per task, read-to-write ratio, code written per dollar

Top 5 most expensive tasks — with size, phase, input and output tokens

Advice cards — plain English explanations of waste patterns detected, with specific fixes

Forecast — remaining cost estimate based on avg task cost × tasks remaining


Output files

vibe/cost/
├── history.json          ← source data (written by cost:)
└── ledger/
    └── index.html        ← generated report (open this)

index.html is fully self-contained — no internet required to view it. Share it with a client or team member by just sending the file.


Updating the report

Every cost: session automatically regenerates the ledger. Or run ledger: manually any time to refresh from the current history.json.

The report always reflects the complete project history — not just the last session.


Troubleshooting

"vibe/cost/history.json not found" → You haven't run cost: yet in this project. Run it after your next session.

"history.json is empty" → The file exists but has no sessions. Run cost: at the end of a session to populate it.

"python3: command not found" → Python is not installed. Install from python.org — it's free and takes 2 minutes. On most Macs and Linux machines, python3 is already available.

Report opens but looks wrong → Try opening vibe/cost/ledger/index.html directly in Chrome or Firefox. The VT323 font requires an internet connection to load from Google Fonts. If offline, it falls back to Share Tech Mono or monospace — same layout, different font.

What ships with it: 1 file

41.8 KB alongside SKILL.md, 1 of them executable

scripts/

Gives 0 of the 12 instructions most finance skills give in 964 tokens

Counted across 469 of the 469 authors here whose files we hold, read 2026-08-07

  • Extract date vendor amount and descriptionin 15 of 469, across 3 files
  • Scan folder for invoice filesin 14 of 469, across 2 files
  • Rename files to standard formatin 14 of 469, across 2 files
  • Show organization plan before movingin 14 of 469, across 2 files
  • Generate summary CSVin 14 of 469, across 2 files
  • Organize files by categoryin 13 of 469, across 1 file
  • Preserve original filesin 13 of 469, across 1 file
  • Flag files missing critical infoin 13 of 469, across 1 file
  • Produce the requested output filein 9 of 469, across 4 files
  • Build best, base, and worst case scenariosin 9 of 469, across 5 files
  • Implement backoff if rate limit errors occurin 8 of 469, across 3 files
  • Determine the weighted average cost of capitalin 8 of 469, across 4 files

Said here and by no other author read

  • Check history.json exists before running
  • Stop if history.json is missing
  • Open the report in the browser
  • Print the project cost summary
  • Include spend per session, task, phase, and day
  • Show task size breakdown averages

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.