Most automation projects build an automation. This one builds a system that discovers which automations to build — by mining your own recent work — and then packages the high-confidence ones into reusable tools. It's a self-improving skill for Claude Code.
You feel it but rarely measure it: the same multi-step sequence done by hand for the third time. A focused bug-fix → branch → conventional commit → PR cycle. A QA-sweep dispatch. A release deploy. Each repetition is a signal that an abstraction is missing — but nobody systematically finds those signals. They're scattered across git history, terminal sessions, and memory.
distill-workflows
does
distill-workflows
is a Claude Code skill that turns that scattered signal into reusable tooling, in one pass:
*.jsonl
) — repeated bash command patterns The diagram above maps the flow left-to-right: Signal Sources → Scanner ( scan.sh) → Distill Engine → Packaging → Outputs, with a
A few design choices worth calling out:
Run against its own repo, the scanner surfaced a pattern repeated 50+ times that nobody had abstracted: a single-concern Android/Kotlin fix shipped as a small PR with the same conventions every time (branch naming, conventional commit scope, base branch, size limit, no AI attribution). The engine packaged it into an android-fix-pr
skill — exactly the kind of convention layer the generic commit
/create-pr
tools don't encode.
The higher-frequency QA-sweep pattern was also detected, but the engine correctly declined to package it: it already existed as a parameterized workflow. Knowing when not to build is half the value.
SKILL.md
procedure the agent follows.scan.sh
signal miner — jq
over transcripts, git log
shape analysis, gps recall
, artifact inventory — emitting one structured report.watchlist.md
ledger for cross-session frequency.Built with Claude Code. The core idea generalizes well beyond one repo: point a discovery loop at your own work history, score what repeats, and let the high-confidence patterns become tools.