ledger-audit

ledger-audit is a skill for Claude Code from Dupflo/decision-ledger. It costs 36 tokens per session (1,541 once invoked), scanned A, original, MIT.

A retrospective review for an existing project that reconstructs earlier structural choices and undocumented coding conventions. A decision ledger is a record of why project decisions were made.

In plain words
What is it for?
Use it to audit an established codebase, prepare its existing decisions and conventions for recording, and identify choices that were made without a documented reason.
Why use it?
It gives a newly installed ledger an initial understanding of decisions made before the ledger existed, so future work does not start with an empty history.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter. Also seen: reads .claude/ paths; mentions CLAUDE.md; names the AskUserQuestion tool.

Part of the decision-ledger plugin — 3 skills shipped together

Good fit Use it to audit an established codebase, prepare its existing decisions and conventions for recording, and identify choices that were made without a documented reason.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/dupflo/decision-ledger/ledger-audit
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.

Any agent
npx skills add Dupflo/decision-ledger --skill ledger-audit
Clone the repo
git clone --depth 1 https://github.com/Dupflo/decision-ledger

Made for: Claude Code.

Or install decision-ledger, the plugin that ships this one along with the rest of its 3 skills.

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 ledger-audit

README.md
[![agentmods](https://agentmods.dev/badge/skills/dupflo/decision-ledger/ledger-audit/github.svg)](https://agentmods.dev/skills/dupflo/decision-ledger/ledger-audit)
Your own site
<a href="https://agentmods.dev/skills/dupflo/decision-ledger/ledger-audit"><img src="https://agentmods.dev/badge/skills/dupflo/decision-ledger/ledger-audit/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ledger-audit

Your own site · 80×15
<a href="https://agentmods.dev/skills/dupflo/decision-ledger/ledger-audit"><img src="https://agentmods.dev/badge/skills/dupflo/decision-ledger/ledger-audit.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 36 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,541 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.00036 $0.01541
Opus 5 $0.00018 $0.00771
Sonnet 5 $0.00007 $0.00308
Haiku 4.5 $0.00004 $0.00154

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

Security

Grade A, and why

ledger-audit 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 10d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/ledger.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

ledger-audit/SKILL.md · 112 lines

How it starts

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

ledger-audit

A retrospective pass over a project that already exists, which is every project, the first time this is installed. Without it the ledger only ever knows about work done after installation, and starts from an empty file on a codebase with two years of decisions in it.

An audit is the one moment interrogation is welcome. The user sat down for it. That makes a batch of questions acceptable here and nowhere else, and it is the only place in this family where that is true. Everything in /ledger exists to keep questions rare; that budget does not apply once someone has explicitly asked to be audited.

for p in ~/.claude/skills/decision-ledger/bin/ledger \
         ~/.claude/skills/ledger-audit/bin/ledger \
         .claude/skills/ledger-audit/bin/ledger \
         .agents/skills/ledger-audit/bin/ledger; do
  [ -x "$p" ] && LEDGER="$p" && break
done

$LEDGER audit --depth 5

The list covers both ways this can be installed: install.sh, which lays down the whole repo, and a skills registry, which copies this directory alone.

The command prepares the material: inherited conventions first, then previously undefended decisions. It writes nothing. Reading the codebase, asking the questions and recording the answers is your job.

Rules

Ground every question in this codebase. This is what separates an audit from the quiz this whole project exists to avoid.

Your users table has a soft-delete column. Why not a real delete?

is unanswerable from memory. It requires having thought about this schema.

How should auth work?

is a quiz question, answerable by anyone who has read a blog post, and proves nothing. If a question could be asked of a stranger's project, it is the wrong question.

Read before asking: existing decision records (below), schema and migrations, module and package boundaries, the dependency list, state management, CLAUDE.md and AGENTS.md.

Start with the decision records, if there are any

Look for docs/decisions/, docs/adr/, doc/architecture/decisions/. This is the ADR convention, roughly a decade old and vendor-neutral, and increasingly written for you by agentic pipelines rather than by hand. Each file already names one structural decision, the options considered, and why the others were rejected.

Read the full file on GitHub · 112 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

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. 10d ago First seen · 112 lines · 36 tokens per session scan A eb863fc257ce

Subscribe to this mod's changes

ledger-audit is a skill published in the GitHub repository Dupflo/decision-ledger (6 stars, last pushed 1mo ago), licensed MIT. It adds 36 tokens to every session and 1,541 once invoked, about $0.0002 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.

Related

Other skills, from other repositories

solid-principles

SOLID principles checklist with Java examples. Use when a class has too many responsibilities, an abstraction leaks, or a dependency points the wrong way, and when the user asks about Single Responsibility, Open/Closed, Liskov, Interface Segregation or Dependency Inversion. For naming, duplication and method length…

decebals/claude-code-java · 73 tokens

clean-code

Clean Code principles (DRY, KISS, YAGNI), naming, function design and readability. Use when code is hard to read, with long methods, unclear names, duplication or deep nesting. For how responsibilities are split across classes and which way dependencies point, use solid-principles instead.

decebals/claude-code-java · 64 tokens

architecture-review

Analyze Java project architecture at macro level - package structure, module boundaries, dependency direction, and layering. Use when user asks "review architecture", "check structure", "package organization", or when evaluating if a codebase follows clean architecture principles.

decebals/claude-code-java · 51 tokens

concurrency-review

Review Java concurrency code for thread safety, race conditions, deadlocks, and modern patterns (Virtual Threads, CompletableFuture, @Async). Use when user asks "check thread safety", "concurrency review", "async code review", or when reviewing multi-threaded code.

decebals/claude-code-java · 58 tokens

java-code-review

Systematic code review for Java with null safety, exception handling, concurrency, and performance checks. Use when user says "review code", "check this PR", "code review", or before merging changes.

decebals/claude-code-java · 45 tokens

agents-md-improver

Audit and improve project-rules files (AGENTS.md, CLAUDE.md, .agents/instructions, local overrides) so the agent keeps accurate project context. Use when the user asks to check, audit, review, update, improve, or fix their AGENTS.md or CLAUDE.md, mentions "project rules maintenance" or "agent context optimization", or…

waybarrios/opencode-power-pack · 125 tokens