CtrlK
BlogDocsLog inGet started
Tessl Logo

receipts

Generate a personal Claude Code usage & impact report ("receipts") from this machine's local session transcripts — for justifying Claude Code usage/spend to a manager, self-review, or "what have I been using this for" check-ins. Mines ~/.claude/projects locally (no extra API calls beyond one final write-up), cross-references local git history, and writes a markdown report plus a self-contained HTML receipt to your home directory. Use when the user asks for "receipts", an "impact report", "usage report", wants to "show my Claude Code activity", "prove the value of Claude Code", or runs `/receipts`.

76

Quality

95%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A highly actionable, carefully sequenced workflow whose guidance is almost entirely non-obvious craft knowledge (attribution rules, null semantics, what not to report) rather than filler. Its main weaknesses are repetition of the same interpretive caveats across multiple sections and keeping all field-level detail inline instead of splitting it into a reference file for the report-writing step.

Suggestions

State the commitsWithOurWork null/gitUnavailable distinction once — either in the JSON schema comment or in the Step 3 bullets — and cross-reference it from the other location instead of re-explaining it three times.

Explain the 'spend belongs to a project, not a tool' rationale in one place: the JSON comment and the 'Don't add a where the spend went' section currently make the same argument in full.

Move the annotated JSON schema and the per-field report-writing guidance into a reference file (e.g. references/report-format.md) loaded at Step 3, keeping SKILL.md to the workflow itself.

DimensionReasoningScore

Conciseness

Mostly efficient and dense with non-obvious domain guidance ('a Bash call carries no working directory, so a commit in a throwaway fixture repo under /tmp can't be told apart from one in the dev's project'), but noticeably above anchor 3 rather than at anchor 5: the commitsWithOurWork null-vs-gitUnavailable semantics are explained in the JSON comment, again under the commits-column bullet, and again in its own bullet; the ~90%-context-handling spend rationale likewise appears both in the JSON comment and in full in the 'Don't add a where the spend went' section. These repetitions could be consolidated without loss.

4 / 5

Actionability

Fully executable end-to-end: exact miner invocation ('node <skill-dir>/scripts/mine-transcripts.mjs --days <N> [--repo <substr>] --html /tmp/cc-receipt.html'), explicit $ARGUMENTS parsing rules ('week' → 7, 'month' → 30, bare number → days, substring → --repo), exact output filenames ('~/claude-code-receipts-<since>-to-<until>.md') with dates sourced from the JSON, a complete annotated output schema, and a per-section report structure covering the common cases.

5 / 5

Workflow Clarity

Six explicitly sequenced steps with interpretive validation checkpoints throughout: 'check totals.gitUnavailable before you say which' when totals.commitsWithOurWork is null, keep the miner's ordering ('top 12 by share of spend, biggest first... don't re-sort'), take since/until 'from the JSON — not from your own date arithmetic', and surface the project-name list before any sharing, with publication gated on explicit request. No destructive or batch operation is involved, so a validate-fix-retry loop is not applicable; every decision point that could produce a wrong report has an explicit branch.

5 / 5

Progressive Disclosure

Good structure: the single bundle file (scripts/mine-transcripts.mjs, verified present) is referenced one level deep and clearly signaled ('ships alongside this SKILL.md, under scripts/'), and sections are well-organized per step. Not anchor 5: the ~150 lines of JSON field semantics plus report-writing/framing guidance are inline in SKILL.md; the schema semantics are only needed at Step 3, so a reference file loaded at that step would keep the SKILL.md body leaner — a minor organization gap rather than content that clearly 'should be separate.'

4 / 5

Total

18

/

20

Passed

Description

100%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete third-person actions covering all outputs, an explicit 'Use when' clause with natural trigger phrases and the slash command, and a well-defined niche with minimal conflict risk. Its only nit is length, but every clause carries triggering or scoping information.

DimensionReasoningScore

Specificity

Multiple specific concrete actions with comprehensive coverage: 'Generate a personal Claude Code usage & impact report', 'Mines ~/.claude/projects locally (no extra API calls beyond one final write-up), cross-references local git history, and writes a markdown report plus a self-contained HTML receipt'. Anchor 5, not 4: it names every action the skill performs including all three output artifacts, with no coverage gaps.

5 / 5

Completeness

Clearly and explicitly answers both what ('Generate a personal Claude Code usage & impact report from this machine's local session transcripts') and when ('Use when the user asks for "receipts"... or runs /receipts'), with concrete trigger phrases — the exact anchor-5 example structure. Not 4: the when-clause is as explicit and enumerated as it can be.

5 / 5

Trigger Term Quality

Comprehensive natural terms including synonyms and the slash command: '"receipts"', 'an "impact report"', '"usage report"', '"show my Claude Code activity"', '"prove the value of Claude Code"', and 'runs /receipts' — these are exactly the phrases a user would say when needing this. Not 4: no common variation of the request is missing.

5 / 5

Distinctiveness Conflict Risk

A clear niche — personal Claude Code activity receipts from local transcripts — with distinct triggers ('receipts', '/receipts') that no other skill would claim. Minor theoretical overlap via the generic phrase 'usage report', but it is qualified by the Claude Code framing throughout, fitting anchor 5 ('minimal conflict risk') better than anchor 4.

5 / 5

Total

20

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
anthropics/claude-plugins-official
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.