Claude-elixir-phoenix docs-check
install
source · Clone the upstream repo
git clone https://github.com/oliver-kriska/claude-elixir-phoenix
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/oliver-kriska/claude-elixir-phoenix "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/docs-check" ~/.claude/skills/oliver-kriska-claude-elixir-phoenix-docs-check && rm -rf "$T"
manifest:
.claude/skills/docs-check/SKILL.mdsource content
Plugin Documentation Compatibility Check
Validates plugin agents, skills, hooks, and config against the latest Claude Code documentation to catch breaking changes and discover new features.
Usage
/docs-check # Full validation (all components) /docs-check --quick # Structural checks only (no docs fetch, no tokens) /docs-check --focus=agents # Validate only agents /docs-check --focus=skills # Validate only skills /docs-check --focus=hooks # Validate only hooks /docs-check --focus=config # Validate only plugin.json/marketplace.json
Architecture (OTP Supervision Pattern)
┌─────────────────────────────────────────────────────────────────┐ │ /docs-check (skill entry point) │ │ │ │ │ ├─ Step 1: bash scripts/fetch-claude-docs.sh (zero tokens) │ │ │ Always fetches all 9 doc pages (~420KB) │ │ │ │ │ └─ Step 2: delegate to orchestrator (reads from cache only) │ │ │ │ │ │ docs-validation-orchestrator (opus) │ │ │ │ │ │ SCAN → READ CACHE → SPAWN WORKERS → COMPRESS → REPORT │ │ │ │ │ │ │ │ │ │ │ ↓ ↓ ↓ ↓ ↓ │ │ │ inventory pre-fetched 4 parallel context report │ │ │ plugin docs-cache subagents supervisor │ │ │ components (sonnet) (haiku) │ │ └─────────────────────────────────────────────────────────┘ └─────────────────────────────────────────────────────────────────┘
Execution
Step 1: Fetch Docs (Automatic)
Always run first. Downloads all doc pages to cache. Skips pages already cached within 24h. Zero token cost — pure curl.
# --quick mode: skip this step entirely (structural checks only) # All other modes: always fetch bash scripts/fetch-claude-docs.sh
Step 2: Delegate to Orchestrator
After docs are cached, delegate. The orchestrator reads from cache only and crashes if cache files are missing.
Task(subagent_type: "docs-validation-orchestrator")
Pass the user's flags (--quick, --focus) in the prompt.
What the Orchestrator Does
- Inventory — scan
for existing componentsplugins/elixir-phoenix/ - Read cached docs — from
(never fetches).claude/docs-check/docs-cache/ - Spawn workers — one sonnet subagent per component type, in parallel
- Compress — context-supervisor (haiku) if 3+ workers
- Structural checks — fast local checks, always run
- Report & Action — write report, offer PR if issues found
Iron Laws
- Fetch ALL docs upfront — no conditional fetching, no partial downloads
- Use
— single source of truth for doc fetchingscripts/fetch-claude-docs.sh - Workers get docs IN PROMPT — no runtime fetching
- Workers use sonnet — opus is wasteful for comparison tasks
- Structural checks always run — even if docs fetch fails
- Breaking changes are BLOCKERS — surface prominently
References
— Per-component validation checklistsreferences/validation-rules.md
— Component-to-URL mappingreferences/doc-pages.md