claude-code-usage-per-project CLAUDE.md

claude-code-usage-per-project CLAUDE.md is an instructions file for Claude Code from jwchoi-kr/claude-code-usage-per-project. It costs 2,083 tokens per session, scanned A, original, MIT.

Project instructions for ccupp, a Claude Code status-line and usage tracker. Claude Code is a coding assistant; a status line is the small live display shown during a session.

In plain words
What is it for?
Use them when working on usage reports, daily or model breakdowns, all-project comparisons, status-line output, or prompt exports.
Why use it?
They explain the tracker’s operating modes and file structure, making it easier to change the right part without confusing session, day, model, or project reports.

Instructions file for Claude Code

Written for Claude Code: the file is CLAUDE.md. Also seen: reads .claude/ paths; mentions CLAUDE.md; mentions Claude Code.

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/jwchoi-kr/claude-code-usage-per-project/claude-md
Clone the repo
git clone --depth 1 https://github.com/jwchoi-kr/claude-code-usage-per-project

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for claude-code-usage-per-project CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/jwchoi-kr/claude-code-usage-per-project/claude-md.svg)](https://agentmods.dev/instructions/jwchoi-kr/claude-code-usage-per-project/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/jwchoi-kr/claude-code-usage-per-project/claude-md"><img src="https://agentmods.dev/badge/instructions/jwchoi-kr/claude-code-usage-per-project/claude-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 2,083 This file is loaded in full into every session.
When invoked 2,083 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.02083 $0.02083
Opus 5 $0.01042 $0.01042
Sonnet 5 $0.00417 $0.00417
Haiku 4.5 $0.00208 $0.00208

Measured 6d ago against content hash f906e004c4cb, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

claude-code-usage-per-project CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 96 lines

How it starts

The opening of the file, as written. The whole thing — 96 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md — claude-code-usage-per-project (ccupp)

What this project is

A Claude Code status line + usage tracker. ccupp/cli.py is a thin entry point: main() dispatches by argv/TTY to one of six modes, each living in its own module:

  1. Status line — bare ccupp piped from Claude Code's statusLine hook (stdin is not a TTY); main() reads JSON from stdin and delegates rendering to ccupp/status_line.py, which prints a 2-line HUD
  2. Usage report — bare ccupp run in a terminal (TTY); ccupp/report.py prints a per-session table for the current project
  3. Daily breakdownccupp --daily; ccupp/daily.py prints the current project's usage grouped by local calendar day
  4. Model breakdownccupp --model; ccupp/model.py prints the current project's usage grouped by model
  5. All-projects comparisonccupp --all; ccupp/all.py prints a per-project comparison table across every tracked project
  6. Exportccupp --export; ccupp/export.py writes PROMPTS.md

Modes 2–4 are the same current-project scope sliced on a different axis: by session, by day, by model. The --daily and --model modes recompute from the raw transcripts (the per-session snapshots don't carry per-day or per-model splits), reusing the shared aggregate_by_day / aggregate_by_model helpers in ccupp/core.py.

Each user-facing mode is its own module. ccupp/core.py holds only what is shared across modes (data analysis, persistence, shared formatters). ccupp/status_line.py holds status-line presentation. Keep mode-specific logic out of ccupp/core.py.

File structure

ccupp/
  __init__.py          Package marker
  __main__.py          `python -m ccupp` entry point
  cli.py               main() dispatcher + install command
  status_line.py       Status line rendering (2-line HUD)
  core.py              Shared utilities, data analysis, persistence, table renderer
  report.py            Terminal usage report — current project (TTY mode)
  daily.py             Per-day usage breakdown — current project (--daily)
  model.py             Per-model usage breakdown — current project (--model)
  all.py               All-projects comparison report (--all)
  export.py            Prompt extraction and Markdown export (--export)
tests/
  __init__.py          Package marker
  test_cli.py          Tests for cli.py (dispatch + install)
  test_status_line.py  Tests for status_line.py
  test_core.py         Tests for core.py
  test_report.py       Tests for report.py
  test_daily.py        Tests for daily.py
  test_model.py        Tests for model.py
  test_all.py          Tests for all.py
  test_export.py       Tests for export.py
docs/                  Historical planning/spec docs — treat as context only

Read the full file on GitHub · 96 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 6d ago First seen · 96 lines · 2,083 tokens per session scan A f906e004c4cb

Subscribe to this mod's changes

claude-code-usage-per-project CLAUDE.md is an instructions file published in the GitHub repository jwchoi-kr/claude-code-usage-per-project (5 stars, last pushed 3mo ago), licensed MIT. It adds 2,083 tokens to every session, about $0.0104 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.