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

cc-lens

v0.4.1

Published

Claude Code Lens — visualize your usage, costs, and sessions from ~/.claude/

Readme

cc-lens CLI

Claude Code Lens (cc-lens)

Local analytics dashboard for Claude Code. No cloud, no telemetry, no API key, just your ~/.claude/ data, visualized.

npx cc-lens

The CLI finds a free local port, starts the dashboard, and opens it in your browser.

[!NOTE] cc-lens 0.4.0 is out

Adds Insights, budgets, team adoption, terminal digest, Wrapped, and expanded project docs.

View the v0.4.0 release notes

Quick Start

Run directly with npx:

npx cc-lens

On first run, cc-lens prepares a small runtime cache in ~/.cc-lens/. After that, launches are faster.

What You Can See

| | | | --- | --- | | OverviewTrack sessions, messages, tokens, cost, storage, trends, models, peak hours, projects, and recent activity. | SessionsSearch sessions, replay JSONL conversations, inspect Markdown replies, tool calls, costs, tokens, and compactions. | | CostsReview estimated spend, cache savings, project costs, model breakdowns, token usage, and pricing references. | InsightsFind cache, model, compaction, plan-fit, budget, and savings opportunities from local usage patterns. | | ProjectsBrowse projects by sessions, duration, spend, languages, branches, MCP usage, agents, and top tools. | Project TrendsAnalyze project sessions, spend, language mix, branch activity, model usage, tools, and activity over time. | | Tools & FeaturesCompare tool rankings, categories, skill (slash-command) usage, MCP servers, feature adoption, errors, versions, and git branch usage. | ActivityView activity calendars, streaks, active days, peak hours, day-of-week patterns, and usage consistency. | | TasksBrowse Claude Code todos with search, status filters, task metadata, project context, and local file provenance. | WorkspaceInspect workspace state, memory, settings, installed skills, plugins, MCP servers, and local storage usage. | | WrappedCreate a yearly card with sessions, usage, spend, favorite tools, active projects, and local highlights. | Export & ImportExport portable .cclens.json files with stats, metadata, facets, history, previews, and date filters. |

Import is preview-only right now. It shows which sessions are new or already present, but it does not write merged data back into ~/.claude/, to avoid corrupting live Claude Code files.

Multiple Claude Profiles

By default, cc-lens reads ~/.claude/. To point it at another Claude Code config directory, set CLAUDE_CONFIG_DIR:

# Default profile
npx cc-lens

# Work profile
CLAUDE_CONFIG_DIR=~/.claude-work npx cc-lens

On Windows PowerShell:

$env:CLAUDE_CONFIG_DIR="C:\Users\you\.claude-work"; npx cc-lens

The active config directory is shown in the CLI banner on launch.

CLI Options

npx cc-lens [options]

| Option | Default | Description | | --- | --- | --- | | --host <host> | 127.0.0.1 | Address to bind. Loopback only by default. Set 0.0.0.0 to expose the dashboard on your LAN. Also settable with the CC_LENS_HOST env var. | | --port <port> | 3000 | Port to listen on. Auto-increments if the port is taken. Also settable with the PORT env var. | | --help, -h | | Print usage and exit. | | --version, -v | | Print the version and exit. |

The dashboard serves your private Claude Code history, so it binds to loopback (127.0.0.1) by default. cc-lens does not read the shell's HOSTNAME variable, so it works the same on WSL, containers, and CI. Override the host only if you understand the exposure.

# Bind to a fixed port
npx cc-lens --port 4000

# Expose on the local network (opt-in)
npx cc-lens --host 0.0.0.0

There are also cc-lens push and cc-lens digest subcommands for team mode; see Team mode.

Run From Source

Prerequisites

  • Node.js 20+
  • Claude Code with local data in ~/.claude/

Development

npm install
npm run dev

Open http://localhost:3000, or the port shown in your terminal.

Production Build

npm run build
npm start

For the packaged standalone bundle used by the CLI:

npm run build:dist

Checks

npm run lint
npm test

Project Docs

  • Roadmap: planned improvements and non-goals.
  • Known limitations: accuracy, compatibility, and runtime caveats.
  • Compatibility: supported local files and reporting guidance.
  • Contributing: local setup, PR expectations, and manual test notes.
  • Team mode: shared-folder team analytics, push hub setup, and terminal team digests.
  • Privacy: what data is read, exported, or edited.
  • Security: private vulnerability reporting and review checklist.

Data Sources

cc-lens reads local Claude Code files directly:

  • ~/.claude/projects/<slug>/*.jsonl: session JSONL and replay data
  • ~/.claude/stats-cache.json: aggregate stats when available
  • ~/.claude/usage-data/session-meta/: session metadata fallback
  • ~/.claude/history.jsonl: command history
  • ~/.claude/todos/: todo files
  • ~/.claude/plans/: saved plan files
  • ~/.claude/projects/*/memory/: project memory files
  • ~/.claude/settings.json: settings, skills, plugins, and MCP config

Dashboard data refreshes every 5 seconds while the app is open.

Privacy

Claude Code Lens runs locally and reads files from your machine. It does not require a login, API key, hosted backend, or telemetry service. Your Claude Code history stays on your computer.

Cost Estimates

Claude Code stores token counts and model identifiers, not final billing totals. cc-lens estimates cost using the pricing table in lib/pricing.ts. If provider pricing changes, update that file to keep estimates current.

To override or add rates without editing source, create ~/.cc-lens/pricing.json. Entries are merged over the defaults, so you can override a single model or add new ones. Values are in dollars per million tokens:

{
  "claude-opus-4-8": { "input": 5.0, "output": 25.0, "cacheWrite": 6.25, "cacheRead": 0.5 }
}

Star History