Project notes
kylebegeman/ledger
Ledger
Change memory that lives in your repository.


Overview
A diff shows what changed. Ledger keeps why it changed, what must stay true, and how it was checked. Markdown receipts live beside the code, so the next person or coding agent starts with the evidence. I built the CLI, agent integrations, and reader around that same record, with no account or hosted service required.
Read. Change. Remember.
- 01
Read the context
Ask for the files and decisions that matter before changing the code.
- 02
Leave a receipt
Capture the why, the constraints, and the checks alongside the diff.
- 03
Carry it forward
The next person or agent can pick up where the last change left off.
The reader
From the whole project to a single decision.
Catch up in Overview, narrow the Records list, or follow the Timeline month by month. Open a receipt beside the results and trace its files, symbols, linked decisions, and backlinks. Search, pill filters, and the command palette keep that history within reach.
Browse the records
Publishing
Share what shipped. Keep the working record.
The full reader is for the repository’s history. A separate public profile publishes released versions and their Public Notes, with release links and an Atom feed. Generate the directory and host it on any static server.
Read the public changelog
Highlights
- 01
Context before the edit
Retrieve history for a file, symbol, or topic within a token budget. Packets bring the relevant decisions, invariants, and verification into the next session.
- 02
Receipts while the work is fresh
Hooks for Claude Code, Codex, and Cursor track edits and draft a receipt. The author finishes the reasoning; the ready check catches unfinished content.
- 03
Evidence in the pull request
CI checks record structure, file coverage, and docs impact. Receipts travel through review with the change they explain.
- 04
Your history, your files
Plain Markdown under .ledger/ is the source of truth. Keep durable guides in docs/ and rebuild the reader, indexes, and reports whenever you need them.
One record, several ways in
Documentation & getting started
npm install --save-dev @kylebegeman/ledger
npx ledger adopt
npx ledger hooks install --host claude-code --command "npx ledger" --import-agents
npx ledger skills install
npx ledger agents --write
npx ledger serve --watch
Repository snapshot
- 231Commits
- Sep 2026Last updated
- MITLicense
- Jun 2026Started
- TypeScript 93.5%
- JavaScript 3.4%
- CSS 3.1%
Recent commits