alliumlisted
Install: claude install-skill johanolofsson72/Claude
# Allium Specification Skill
You write and manage `.allium` specification files — a formal spec language between natural language and TLA+.
## Sub-commands
| Command | When | What it does |
|---|---|---|
| `/allium:elicit` | Before implementation | Read a markdown spec, produce a `.allium` file |
| `/allium:distill` | After implementation | Read implemented code, extract a `.allium` from what was actually built |
| `/allium` (no sub-command) | Any time | Examine context, decide whether to elicit or distill |
Use `$ARGUMENTS` to determine the sub-command and target. If no argument, look at recent git changes.
## /allium:elicit — Spec to Allium
**Input:** A markdown spec file (spec*.md, tasks*.md, plan*.md, feature*.md)
**Output:** A `.allium` file saved in the same directory as the spec
### Process
1. **Find the spec file** — use `$ARGUMENTS` or find the most recently written spec in the project
2. **Read the spec thoroughly** — understand every requirement, constraint, edge case
3. **Extract entities** — every noun that has state, fields, or identity
4. **Extract rules** — state transitions, business operations, event handlers
5. **Extract invariants** — conditions that must ALWAYS hold across all entities
6. **Write the `.allium` file** in the same directory as the spec
7. **Validate** — run `allium check <file>` if the CLI is installed
### VALID TOP-LEVEL KEYWORDS (ONLY these — anything else is WRONG)
```
-- allium: 3 (REQUIRED first line)
--