{"manifest":{"name":"CLAUDE.md Generator","version":"1.0.0","description":"Teaches agents how to analyze a codebase and generate effective CLAUDE.md files with progressive disclosure.","tags":["meta","context","generator","toolkit"],"standard":"agentskills.io","standard_version":"1.0","content_checksum":"7b69d9db7e61a74565d30e2e3417dc332a32cb5d0c5268d2fbf6541475a798f9","bundle_checksum":null,"metadata":{},"files":[]},"files":{"SKILL.md":"# CLAUDE.md Generator\n\n> **Purpose:** Teach an AI agent how to analyze a codebase and produce a high-quality CLAUDE.md file with progressive disclosure.\n\n---\n\n## Overview\n\nA great CLAUDE.md is the single most impactful file in a repository for AI-assisted development. It tells the agent what it needs to know — and nothing more. This skill teaches you how to create one.\n\n---\n\n## Principles\n\n1. **Concise over comprehensive** — 200 lines max for CLAUDE.md. Details go in agent_docs/.\n2. **Universal, not personal** — Write for any agent, not a specific model.\n3. **No linting rules** — Agents get these from config files. Don't duplicate.\n4. **Progressive disclosure** — Top-level has critical info. agent_docs/ has deep dives.\n5. **Imperative rules** — \"Never do X\" and \"Always do Y\" are clearer than explanations.\n\n---\n\n## Process\n\n### Step 1: Analyze the Codebase\n\nScan these files first:\n- `package.json` / `Cargo.toml` / `pyproject.toml` — stack and dependencies\n- Existing config files (`.eslintrc`, `tsconfig.json`, etc.) — already-encoded rules\n- `README.md` — project purpose (but don't copy it)\n- Recent git history — active patterns and conventions\n\n### Step 2: Identify Critical Rules\n\nLook for:\n- **Data access patterns** — ORMs, query builders, column selection rules\n- **Numeric conventions** — score ranges (0-1 vs 0-100), currency units\n- **Auth patterns** — how auth is handled, typed clients, middleware\n- **Architecture constraints** — \"never import X from Y\", module boundaries\n- **Testing patterns** — test file locations, mocking conventions, assertion styles\n- **Common gotchas** — things that break builds or cause subtle bugs\n\n### Step 3: Structure the CLAUDE.md\n\n```markdown\n# {Project Name}\n\n{One paragraph: what the project is and does}\n\n## Stack\n\n- {Framework} + {Language} + {Styling}\n- {Database/backend}\n- {Testing framework}\n\n## Quick Reference\n\n```bash\n{dev command}      # {what it does}\n{test command}     # {what it does}\n{build command}    # {what it does}\n```\n\n## Workflow\n\n- {Branch strategy}\n- {Deploy process}\n\n## Critical Rules\n\n- **{Rule name}** — {concise explanation}\n- **{Rule name}** — {concise explanation}\n\n## Agent Docs (read when relevant)\n\n| File | When to read |\n|------|-------------|\n| `agent_docs/{file}.md` | {trigger condition} |\n```\n\n### Step 4: Create agent_docs/ Files\n\nFor each deep topic, create a focused file:\n\n- `agent_docs/project_structure.md` — file layout, key directories, naming conventions\n- `agent_docs/development_workflow.md` — git workflow, environments, migrations, deployment\n- `agent_docs/common_gotchas.md` — debugging issues, form validation, auth quirks\n- `agent_docs/testing.md` — writing and running tests, mocking patterns\n\nEach agent_docs file should be **self-contained** — an agent reads it independently.\n\n---\n\n## Anti-Patterns\n\n- Copying the entire README into CLAUDE.md\n- Listing every file in the project\n- Including linting rules the agent gets from config\n- Writing paragraphs when bullet points suffice\n- Including setup instructions (agents don't run npm install)\n- Documenting obvious conventions (standard Next.js patterns, etc.)\n\n---\n\n## Quality Checklist\n\n- [ ] CLAUDE.md is under 200 lines\n- [ ] Every rule is actionable (\"Never X\", \"Always Y\")\n- [ ] No duplicate info from config files\n- [ ] agent_docs/ table has clear \"when to read\" triggers\n- [ ] A new developer (or agent) could be productive after reading just CLAUDE.md\n- [ ] No personal preferences disguised as project rules\n\n## Playground\n\n<!DOCTYPE html><html><head><meta charset='utf-8'><style>*{box-sizing:border-box;margin:0;padding:0}body{background:#0d1117;color:#e6edf3;font-family:monospace;font-size:12px;height:100vh;display:flex;flex-direction:column;overflow:hidden}.header{background:#161b22;border-bottom:1px solid #30363d;padding:8px 14px;font-size:11px;color:#8b949e;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.title{color:#58a6ff;font-weight:bold;font-size:13px}.panels{display:flex;flex:1;overflow:hidden}.panel{flex:1;overflow:auto;padding:12px;border-right:1px solid #30363d}.panel:last-child{border-right:none}.label{font-size:10px;color:#8b949e;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}pre{white-space:pre-wrap;word-break:break-word;line-height:1.5}</style></head><body><div class='header'><span class='title'>CLAUDE.md Generator</span><span>Example · SkillSlap</span></div><div class='panels'><div class='panel'><div class='label'>Input: Project description</div><pre><span style='color:#8b949e'>Project: Next.js 16 + Supabase SaaS</span>\n<span style='color:#8b949e'>Stack: TypeScript, Tailwind, Vitest</span>\n<span style='color:#8b949e'>Special rules:</span>\n<span style='color:#8b949e'>- Never SELECT * on users table</span>\n<span style='color:#8b949e'>- Always run tests before commit</span>\n<span style='color:#8b949e'>- Stripe is test-mode only in dev</span></pre></div><div class='panel'><div class='label'>Output: CLAUDE.md</div><pre><span style='color:#58a6ff'># ProjectName</span>\n\n<span style='color:#8b949e'>Next.js 16 SaaS with Supabase auth</span>\n<span style='color:#8b949e'>and Stripe billing.</span>\n\n<span style='color:#58a6ff'>## Stack</span>\n<span style='color:#8b949e'>Next.js 16 · Supabase · TypeScript</span>\n<span style='color:#8b949e'>Tailwind · Vitest · Stripe</span>\n\n<span style='color:#58a6ff'>## Non-Negotiable Rules</span>\n<span style='color:#8b949e'>1. Never `SELECT *` on users table</span>\n<span style='color:#8b949e'>   — use USER_COLUMNS from lib/</span>\n<span style='color:#8b949e'>2. Run `npx vitest run` before</span>\n<span style='color:#8b949e'>   every commit</span>\n<span style='color:#8b949e'>3. Stripe is ALWAYS test-mode in</span>\n<span style='color:#8b949e'>   dev (sk_test_ keys only)</span>\n\n<span style='color:#58a6ff'>## Quick Commands</span>\n<span style='color:#8b949e'>npm run dev   # localhost:3000</span>\n<span style='color:#8b949e'>npm test      # full unit suite</span></pre></div></div></body></html>"}}