Generate project rules from ADR and integrate with CLAUDE.md
Converts Architecture Decision Records into AI-executable rules and integrates them with CLAUDE.md
/plugin marketplace add thkt/claude-config/plugin install complete-workflow-system@thkt-development-workflows[ADR number]inheritConvert ADR (Architecture Decision Record) into AI-executable rule format.
Auto-integrates with project's .claude/CLAUDE.md.
/rulify <ADR-number>
Examples: /rulify 1, /rulify 0001, /rulify 12
# Zero-pad and find
ADR_NUM=$(printf "%04d" $1)
ADR_FILE=$(ls docs/adr/${ADR_NUM}-*.md 2>/dev/null | head -1)
Extract from ADR:
| Condition | Priority |
|---|---|
| Security/Auth related | P0 |
| Language/Framework config | P1 |
| Development process | P2 |
| Recommendations | P3 |
Output: docs/rules/[RULE_NAME].md
Template Reference: [@../templates/rules/from-adr.md]
IMPORTANT:
Append to .claude/CLAUDE.md:
## Project Rules
Generated from ADR:
- **[Rule Name]**: [@docs/rules/[RULE_NAME].md](docs/rules/[RULE_NAME].md) (ADR-[number])
✅ Rule Generated
📄 ADR: docs/adr/[number]-[title].md
📋 Rule: docs/rules/[RULE_NAME].md
🔗 Integrated: .claude/CLAUDE.md
| Error | Message | Resolution |
|---|---|---|
| ADR not found | ❌ ADR-XXXX not found | Check docs/adr/ |
| Invalid number | ❌ Invalid ADR number | Use numeric value |
| Rule exists | ⚠️ Rule already exists | Confirm overwrite |
| No CLAUDE.md | ⚠️ .claude/CLAUDE.md not found | Create new file |
# Create ADR then convert to rule
/adr "Adopt TypeScript strict mode"
/rulify 0001
# Result:
# docs/rules/TYPESCRIPT_STRICT_MODE.md created
# .claude/CLAUDE.md updated with reference
git add docs/rules/*.md .claude/CLAUDE.md
git commit -m "docs: add rule from ADR-XXXX"
/adr [title] - Create ADR/audit - Review rule application