Git-native development ledger
Timbers
Git knows what changed.
Timbers captures why.
Record the reasoning behind a change while it still exists, then turn that ledger into reports, release notes, and durable project context.
curl -fsSL https://raw.githubusercontent.com/gorewood/timbers/main/install.sh | bash
The working mill
Turn change into context.
Timbers keeps the compact synthesis and leaves the exhaustive session behind.
-
01
Commit
Git remains the source of implementation truth.
-
02
Capture
Record what, why, how, who contributed, and the trade-offs that mattered.
-
03
Publish
Shape the ledger into reports for the audience at hand.
Graded reasoning
Capture the synthesis, not the session.
Agent transcripts are exhaustive and temporary. A Timbers entry keeps the compact explanation and contributor snapshot future maintainers need. Git attribution is automatic; --who records shared work or corrections.
what Switched to cursor pagination
why Offset pages duplicate items when
writes happen between requests.
how Opaque cursors encode created_at
and id for a stable ordering.
who Maya Chen · Alex Rivera
notes Offset was simpler, but stability
matters more for active feeds.
Finished stock
Project history people can use.
Real artifacts produced from Timbers' own development ledger.
Example artifacts
Browse allDevelopment reports
Browse allStart the line
Start with the next meaningful change.
Timbers stores plain structured entries alongside the code. No transcript archive and no hosted service are required.
Read the tutorial