Compound docs
Skill oliver-kriska/claude-elixir-phoenix/targets/amp/skills/compound-docs
Claude Code plugin for Elixir/Phoenix/LiveView — 20 specialist agents, Iron Laws enforcement, and Tidewave MCP integration. Plan features with parallel research agents, execute with automatic verification, review with 4-agent parallel audits, and capture learnings as reusable knowledge.
npx -y skills add oliver-kriska/claude-elixir-phoenix --skill compound-docsAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
What its author says it does
Copied from the file, not written here
Searchable Elixir/Phoenix/Ecto solution documentation system with YAML frontmatter. Builds institutional knowledge from solved problems. Use when consulting past solutions before investigating new issues.
SKILL.md
2.2 KB, 493 tokens by cl100k_base, as published. Nobody here has run it
Compound Docs — Institutional Knowledge Base
Searchable, categorized solution documentation that makes each debugging session easier than the last.
Directory Structure
.claude/solutions/
├── ecto-issues/
├── liveview-issues/
├── oban-issues/
├── otp-issues/
├── security-issues/
├── testing-issues/
├── phoenix-issues/
├── deployment-issues/
├── performance-issues/
└── build-issues/
Iron Laws
- ALWAYS search solutions before investigating — Check
.claude/solutions/for existing fixes before debugging - YAML frontmatter is MANDATORY — Every solution needs
validated metadata per
references/schema.md - One problem per file — Never combine multiple solutions
- Include prevention — Every solution documents how to prevent recurrence
Solution File Format
---
module: "Accounts"
date: "2025-12-01"
problem_type: runtime_error
component: ecto_schema
symptoms:
- "Ecto.Association.NotLoaded on user.posts"
root_cause: missing_preload
severity: medium
tags: [preload, association, n-plus-one]
---
# Association NotLoaded on User Posts
## Symptoms
Ecto.Association.NotLoaded raised when accessing user.posts
in UserListLive after filtering.
## Root Cause
Query in Accounts context missing preload for :posts.
## Solution
Added `Repo.preload(:posts)` to `list_users/1`.
## Prevention
Use n1-check skill before shipping list views.
Searching Solutions
Use Grep to search .claude/solutions/ by symptom (e.g., NotLoaded), by tag (e.g., tags:.*preload), or by component (e.g., component: ecto).
Integration
phx-compoundcreates solution docs herephx-investigatesearches here before debuggingphx-planconsults for known riskslearn-from-fixfeeds into this system
References
references/schema.md— YAML frontmatter validation schemareferences/resolution-template.md— Full solution template
Gives 0 of the 12 instructions most docs writing skills give in 493 tokens
Counted across 1,637 of the 3,044 authors here whose files we hold, read 2026-08-07
- announce the skill at startin 54 of 1637, across 26 files
- convert legacy doc files before editingin 45 of 1637, across 7 files
- Predict questions readers might askin 42 of 1637, across 4 files
- Generate clarifying questions for initial contextin 42 of 1637, across 3 files
- Create document scaffold with placeholder textin 42 of 1637, across 3 files
- Brainstorm content options for each sectionin 42 of 1637, across 3 files
- Test document with fresh context-less instancein 42 of 1637, across 3 files
- include exact file paths in every taskin 42 of 1637, across 15 files
- ask interview questions one at a timein 42 of 1637, across 27 files
- Apply surgical edits during refinementin 41 of 1637, across 2 files
- Offer structured workflow or freeformin 40 of 1637, across 1 file
- Ask for document meta-contextin 40 of 1637, across 2 files
Said here and by no other author read
- document exactly one problem per file
- document how to prevent recurrence in every solution
- search solutions directory by symptom, tag, or component
- validate metadata per the schema reference
- create solution documents here
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.