
Distill
Reverse engineering specs from code is harder than it looks because you have to decide what's a domain rule versus what's just how someone happened to implement it. This skill handles distillation: you point it at existing code and it extracts Allium specifications by filtering out implementation details. The core trick is asking "would a product owner care about this?" for every line. Things like "expires in 7 days" matter, but "uses Redis" or "32 byte tokens" usually don't. The guide is thorough on scoping decisions, which matters in monorepos where you might only want to specify one service. Includes practical tests like "could this be different while still being the same system?" to separate means from ends.
- skills.sh installs
- 2.7K
- GitHub stars
- 529
- last updated
- Aug 21, 2026
Install
$ npx -y skills add juxt/allium --skill distill --agent claude-codeInstalls into .claude/skills of the current project.
Files
Distillation guide
This guide covers extracting Allium specifications from existing codebases. The core challenge is the same as forward elicitation: finding the right level of abstraction. In elicitation you filter out implementation ideas as they arise. In distillation you filter out implementation details that already exist. Both require the same judgement about what matters at the domain level.
Code tells you how something works. A specification captures what it does and why it matters. The skill is asking "why does the stakeholder care about this?" and "could this be different while still being the same system?"
Interaction modes
This skill runs in two modes. Every instruction below that asks, prompts or validates with the user follows the mode:
Sponsors
Details
- Repository
- github.com/juxt/allium
- First seen
- May 16, 2026