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

tracebox

v0.2.0

Published

Local-first trace recorder for coding agent sessions — records what Claude Code actually did into an auditable timeline

Readme

tracebox

See what your coding agent actually did. tracebox records every Claude Code session — tools called, files touched, commands run, tokens spent — into an auditable timeline, and flags where the agent claimed an edit that never landed.

npm license node

100% local. Zero telemetry. Your session data never leaves your machine.

tracebox session view — instrument summary, timeline, and claims-vs-reality panel

Install

Requires Node.js ≥ 20.

npm install -g tracebox

tracebox install   # registers hooks in ~/.claude/settings.json
tracebox list      # your past sessions are already there
tracebox ui        # open the web UI

Or run without installing:

npx tracebox list

From source

git clone https://github.com/VictorLG98/tracebox.git && cd tracebox
npm install && npm run build && npm link

Commands

| Command | What it does | |---|---| | tracebox install | Register collection hooks (Claude Code) | | tracebox list | Recent sessions: project, started, events, tokens | | tracebox show <id> | Timeline of one session | | tracebox stats | Token usage by day and by project | | tracebox dashboard | Fleet-wide metrics summary in the terminal | | tracebox ui | Open the local web UI (Ctrl-C to stop) |

Web UI

tracebox ui ingests the latest data, starts a local server on 127.0.0.1 (no auth, no network — it binds loopback only), and opens your browser. It serves a small single-page app with three views:

  • Dashboard (home) — fleet-wide metrics (sessions, tokens, files, average duration, discrepancy rate, active-day streak), a GitHub-style activity calendar (one cell per day, shaded by session count or token volume, hover for the daily breakdown, click a day to jump into that day's sessions), plus token-by-project and top-tool breakdowns. Filter everything by project and time range.
  • Session list — project, date, duration, tokens, files touched, and a badge on sessions with a claims-vs-reality discrepancy.
  • Session view — three zones: a summary header, a filterable/searchable timeline (subagent events nested), and a claims-vs-reality panel.

Claims vs. reality

For each file the agent tried to edit, the panel shows whether the edit succeeded (✓), failed (✗), or was attempted with no recorded outcome (⚠). This is a structural, deterministic comparison — attempts come from the agent's Edit/Write calls, outcomes come from the hook results. No text analysis, no guessing.

The "reality" signal requires hooks (tracebox install). Sessions recorded before hooks were installed still show attempted edits, marked ⚠ with a "hooks not installed" note — never a blank screen.

How it works

Claude Code hooks append raw events to ~/.tracebox/raw/ (the collector never fails and never slows your session). Transcripts under ~/.claude/projects/ are parsed on demand for token usage — which is why sessions from before you installed tracebox show up too. Everything is normalized into SQLite at ~/.tracebox/db.sqlite.

Status

MVP: Claude Code only. The ingestion layer is adapter-based — other agents are on the roadmap.