{"id":"docs-check","name":"docs-check","summary":"CONTRIBUTOR TOOL - プラグインを最新のClaude Codeドキュメントと照らして検証。","body":"# Plugin Documentation Compatibility Check\n\nValidates plugin agents, skills, hooks, and config against the latest\nClaude Code documentation to catch breaking changes and discover new features.\n\n## Usage\n\n```text\n/docs-check                    # Full validation (all components)\n/docs-check --quick            # Structural checks only (no docs fetch, no tokens)\n/docs-check --focus=agents     # Validate only agents\n/docs-check --focus=skills     # Validate only skills\n/docs-check --focus=hooks      # Validate only hooks\n/docs-check --focus=config     # Validate only plugin.json/marketplace.json\n```\n\n## Architecture (OTP Supervision Pattern)\n\n```text\n┌─────────────────────────────────────────────────────────────────┐\n│  /docs-check (skill entry point)                                │\n│   │                                                             │\n│   ├─ Step 1: bash scripts/fetch-claude-docs.sh (zero tokens)    │\n│   │          Always fetches all 9 doc pages (~420KB)             │\n│   │                                                             │\n│   └─ Step 2: delegate to orchestrator (reads from cache only)   │\n│       │                                                         │\n│       │  docs-validation-orchestrator (opus)                    │\n│       │                                                         │\n│       │  SCAN → READ CACHE → SPAWN WORKERS → COMPRESS → REPORT │\n│       │   │         │              │             │          │   │\n│       │   ↓         ↓              ↓             ↓          ↓   │\n│       │ inventory  pre-fetched  4 parallel    context    report │\n│       │ plugin     docs-cache   subagents     supervisor       │\n│       │ components              (sonnet)      (haiku)          │\n│       └─────────────────────────────────────────────────────────┘\n└─────────────────────────────────────────────────────────────────┘\n```\n\n## Execution\n\n### Step 1: Fetch Docs (Automatic)\n\n**Always run first.** Downloads all doc pages to cache. Skips pages\nalready cached within 24h. Zero token cost — pure curl.\n\n```bash\n# --quick mode: skip this step entirely (structural checks only)\n# All other modes: always fetch\nbash scripts/fetch-claude-docs.sh\n```\n\n### Step 2: Delegate to Orchestrator\n\nAfter docs are cached, delegate. The orchestrator reads from cache only\nand crashes if cache files are missing.\n\n```text\nTask(subagent_type: \"docs-validation-orchestrator\")\n```\n\nPass the user's flags (--quick, --focus) in the prompt.\n\n## What the Orchestrator Does\n\n1. **Inventory** — scan `plugins/elixir-phoenix/` for existing components\n2. **Read cached docs** — from `.claude/docs-check/docs-cache/` (never fetches)\n3. **Spawn workers** — one sonnet subagent per component type, in parallel\n4. **Compress** — context-supervisor (haiku) if 3+ workers\n5. **Structural checks** — fast local checks, always run\n6. **Report & Action** — write report, offer PR if issues found\n\n## Iron Laws\n\n1. **Fetch ALL docs upfront** — no conditional fetching, no partial downloads\n2. **Use `scripts/fetch-claude-docs.sh`** — single source of truth for doc fetching\n3. **Workers get docs IN PROMPT** — no runtime fetching\n4. **Workers use sonnet** — opus is wasteful for comparison tasks\n5. **Structural checks always run** — even if docs fetch fails\n6. **Breaking changes are BLOCKERS** — surface prominently\n\n## References\n\n- `references/validation-rules.md` — Per-component validation checklists\n- `references/doc-pages.md` — Component-to-URL mapping","author":"@oliver-kriska","ownerProfile":null,"authorContacts":null,"sourceUrl":"https://github.com/oliver-kriska/claude-elixir-phoenix/tree/main/.claude/skills/docs-check","license":"MIT","category":"document","lang":"en","tokens":794,"stars":0,"calls30d":1,"claimed":false,"visibility":"public","origin":"crawler","version":"0.1.0","createdAt":"2026-08-22","updatedAt":"2026-08-22","files":[{"path":"references/doc-pages.md","size":1809,"sha256":"81702023a4bb23fc430697a0c2bd8f7ad0ad9738273198a47ea2cf46b5888b1c"},{"path":"references/validation-rules.md","size":5829,"sha256":"48be04080ddceda1df64176eaa17767ffd010633bec83be8978a62e324ee6321"}],"requires":{"mcp":[],"tools":[]},"safety":{"flags":[{"code":"injection.disable-permissions","kind":"injection","where":"references/validation-rules.md:22","excerpt":"bypassPermissions","message":"instructs the agent to disable permission checks","severity":"warn"}],"scannedAt":"2026-08-22","hasScripts":false,"networkEndpoints":["code.claude.com"]}}