npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

codeledger

v0.2.6

Published

Token-level cost intelligence for Claude Code — per-project, per-agent, per-skill usage tracking with conversational MCP querying and local dashboard

Readme

CodeLedger

Token-level cost intelligence for Claude Code.

npm version license TypeScript Node.js

CodeLedger is a Claude Code plugin that tracks where your AI coding tokens go — per-project, per-agent, per-skill — and separates your actual coding work from background plugin overhead. Ask questions conversationally via MCP tools, or browse the local dashboard.

Setup & MCP Tools

CodeLedger Setup

Dashboard

CodeLedger Dashboard

Why CodeLedger?

Running Claude Code agents can burn through tokens fast. A single session with 49 parallel subagents can cost $8,000-$15,000. But you have zero visibility into:

  • Which project costs the most?
  • Which agent burned the most tokens?
  • How much is plugin overhead (claude-mem observers, auto-compaction) vs your actual work?
  • Are you using Opus for tasks that Sonnet handles just as well?

No existing tool answers these questions. CodeLedger does.

What Makes It Different

| Capability | ccusage | Agentlytics | tokscale | CodeLedger | |---|---|---|---|---| | Per-project tracking | Yes | Yes | No | Yes | | Per-agent token breakdown | No | No | No | Yes | | Per-skill attribution | No | No | No | Yes (~estimated) | | User vs overhead cost split | No | No | No | Yes | | Session category classification | No | No | No | Yes | | Cost optimization recommendations | No | No | No | Yes | | Conversational querying via MCP | No | No | No | Yes | | Local web dashboard | No | Yes | No | Yes | | Runs as Claude Code plugin | No | No | No | Yes |

Quick Start

Install from npm

npm install -g codeledger

Run Claude Code with the plugin

macOS / Linux:

claude --plugin-dir $(npm root -g)/codeledger

Windows (PowerShell):

claude --plugin-dir "$(npm root -g)\codeledger"

Windows (CMD):

for /f "delims=" %i in ('npm root -g') do claude --plugin-dir "%i\codeledger"

This loads everything — 6 MCP tools, 4 hooks (real-time tracking), and slash commands.

Anthropic Plugin Marketplace: CodeLedger has been submitted to the official Claude Code plugin directory and is pending approval. Once approved, installation will be simply:

/plugin install codeledger

Until then, use the npm install method above.

Start the dashboard

npx codeledger dashboard

Opens a local dashboard at http://localhost:4321 with charts, tables, and drill-downs.

Install from source (development)

git clone https://github.com/bhvbhushan/codeledger.git
cd codeledger && npm install && npm run build
claude --plugin-dir .

Features

6 MCP Tools (conversational querying)

Ask Claude directly — no dashboards needed:

  • usage_summary — "How much have I spent today?"
  • project_usage — "Which project costs the most?"
  • model_stats — "What's my model distribution?"
  • agent_usage — "Which agents burned the most tokens?"
  • skill_usage — "How much does brainstorming cost vs code review?" (~estimated)
  • cost_optimize — "How can I reduce my costs?" (evidence-based recommendations)

User vs Overhead Classification

CodeLedger automatically separates your actual coding work from background noise:

This Week — $142.62
  Your coding agents:     $122.76 (86%)
  Background overhead:     $19.87 (14%)
    Plugin observers (acompact-*)
    System agents (aprompt_suggestion-*)

Zero configuration. Works by detecting agent ID prefixes — a structural signal present in all Claude Code versions.

Session Categories (auto-classified)

Every session is classified by what kind of work it does, based on tool usage patterns:

| Category | Signal | |----------|--------| | generation | Write + Edit > 40% of tool calls | | exploration | Read + Grep + Glob > 60% | | debugging | Bash + Edit combos | | review | Read-heavy, no Write/Edit | | planning | Agent delegation dominant | | devops | Bash-heavy, no editing | | mixed | No dominant pattern |

Classification is heuristic (~70-80% accuracy). Always labeled "auto-categorized."

Cost Optimization

Evidence-based recommendations with dollar amounts:

1. Opus used for exploration-only sessions
   12 sessions spent $45.00 using Opus just for Read/Grep/Glob
   Recommendation: Use Sonnet — same quality at 1/5 the price
   Potential savings: ~$36.00

2. Background plugin overhead exceeds 15%
   $19.87 spent on overhead agents (14% of total)
   Recommendation: Review active plugin configuration
   Potential savings: ~$9.94

Local Dashboard

Dark-themed web dashboard at localhost:4321:

  • Overview — KPI cards, daily spend chart (user vs overhead), model distribution pie chart, top projects
  • Projects — per-project table with drill-down to sessions and agents
  • Agents — filter by user/overhead, click project to see its agents
  • Skills — per-skill estimated token attribution
  • Optimize — actionable cost reduction recommendations

How It Works

~/.claude/projects/*/              Claude Code JSONL session files
         │
         ├── SessionEnd hook ──────── Parses JSONL on session completion
         ├── SubagentStop hook ────── Parses agent JSONL files
         ├── PostToolUse hook ─────── Logs skill invocations
         └── Background scanner ───── Catches missed sessions (every 5 min)
                    │
                    ▼
         ~/.codeledger/codeledger.db   SQLite (WAL mode)
                    │
          ┌─────────┼──────────┐
          ▼         ▼          ▼
      MCP Tools  Dashboard  Classifier
     (6 tools)  (:4321)   (categories)

All data stays local. Zero network calls. The SQLite database at ~/.codeledger/codeledger.db is readable, exportable, and deletable at any time.

Configuration

| Environment Variable | Default | Purpose | |---------------------|---------|---------| | CODELEDGER_DB_PATH | ~/.codeledger/codeledger.db | Database location | | CLAUDE_DATA_DIR | ~/.claude | Claude Code data directory |

Dashboard port: npx codeledger dashboard --port 8080

Development

git clone https://github.com/bhvbhushan/codeledger.git
cd codeledger
npm install
npm run build     # tsup: src/ → dist/
npm test          # vitest (117 tests)
npm run lint      # tsc --noEmit
npm run dev       # tsup --watch

Privacy

  • 100% local. All data stays in ~/.codeledger/. Zero network calls.
  • Read-only parsing. CodeLedger reads JSONL files but never modifies them.
  • No code or prompts stored. Only aggregated metrics: token counts, costs, model names, tool names.
  • User-owned data. Delete ~/.codeledger/ at any time to remove all data.

Roadmap

  • [x] Per-project and per-session tracking
  • [x] Per-agent token breakdown with overhead classification
  • [x] Per-skill estimated token attribution
  • [x] Session category classification
  • [x] Cost optimization recommendations
  • [x] Local web dashboard
  • [ ] Team dashboard (hosted, multi-user aggregation)
  • [ ] Budget alerts and anomaly detection
  • [ ] Multi-tool support (Cursor, Copilot)

Contributing

Contributions are welcome! Please read the Contributing Guidelines before submitting a PR.

All contributors are expected to follow the Code of Conduct.

License

MIT