codebase-documenter
Generates comprehensive documentation explaining how a codebase works, including architecture, key components, data flow, and development guidelines. Use when user wants to understand unfamiliar code, create onboarding docs, document architecture, or explain how the system works.
Install
npx skills add https://github.com/mhattingpete/claude-skills-marketplace --skill codebase-documenterSKILL.md
Codebase Documenter
Generates comprehensive documentation for codebases - architecture, components, data flow, development guidelines.
When to Use
- "explain this codebase"
- "document the architecture"
- "how does this code work"
- "create developer documentation"
- "generate codebase overview"
- "create onboarding docs"
What It Documents
1. Project Overview
- Purpose & vision
- Target users
- Key features
- Technology stack
- Project status
2. Architecture
- High-level structure
- Design patterns
- Data flow
- Control flow
- Diagrams (Mermaid)
- Architectural decisions
3. Directory Structure
- Organization purpose
- Naming conventions
- Entry points
- Core modules
- Configuration locations
4. Key Components
- Major modules
- Classes & functions
- Responsibilities
- Interactions
- Extension points
- Code examples
5. External Integrations
- APIs consumed
- Databases & schemas
- Authentication
- Caching
- Message queues
- File storage
6. Data Models
- Database schema
- Data structures
- Validation
- Migrations
- Data transformations
7. Development Setup
- Prerequisites
- Installation steps
- Configuration
- Running the app
- Testing
- Debugging
- Troubleshooting
8. Development Guidelines
- Coding conventions
- Testing approach
- Error handling
- Logging
- Security practices
- Performance patterns
9. Deployment
- Build process
- Deployment steps
- Environments
- Monitoring
- Rollback procedures
10. Contributing
- Development workflow
- Code review guidelines
- Testing requirements
- Documentation updates
Approach
- Explore using Explore agent (thorough)
- Map structure with Glob
- Read critical files (README, entry points, core modules)
- Identify patterns with Grep (imports, exports)
- Trace execution paths
- Extract knowledge from docs, comments, tests
- Synthesize into cohesive documentation
Output
Creates markdown documentation:
docs/
├── README.md # Overview and quick start
├── ARCHITECTURE.md # System architecture
├── DEVELOPMENT.md # Development guide
├── API.md # API documentation
├── DEPLOYMENT.md # Deployment guide
└── CONTRIBUTING.md # Contribution guidelines
Or single comprehensive doc if preferred.
Depth Levels
- Quick: High-level overview (15-30 min)
- Standard: Comprehensive coverage (30-60 min)
- Deep: Exhaustive with examples (60+ min)
Visual Elements
- Mermaid diagrams (architecture, flow charts, sequence)
- Code examples from codebase
- Specific file:line references
- Tables for structured info
- Lists for guidelines
Tools Used
- Task (Explore agent): Codebase exploration
- Glob: Map directory structure
- Grep: Find patterns, imports, exports
- Read: Analyze key files
- Write: Create documentation
- Bash: Extract metadata (git log, versions)
Success Criteria
- Complete coverage of all areas
- Clear explanations with examples
- Visual diagrams for complex concepts
- Specific file:line references
- Actionable setup/development instructions
- New developer can onboard using only docs
- Organized, navigable structure
- Accurate and current information
Integration
- code-auditor: Includes quality/security context
- project-bootstrapper: Documents bootstrap decisions
- visual-html-creator: Create visual diagrams
Related skills
domain-modelingmattpocock714KBuild and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a CONTEXT.md, or recording or editing an ADR.to-specmattpocock576KTurn the current conversation into a spec and publish it to the project issue tracker: no interview, just synthesis of what you've already discussed.caveman-helpjuliusbrussee369KQuick-reference card for caveman modes, skills and commands. Trigger: /caveman-help or "caveman help".pptxanthropics228KUse this skill any time a .pptx or .potx file is involved in any way — as input, output, or both. This includes: creating slide decks, pitch decks, or presentations; reading, parsing, or extracting text from any .pptx or .potx file (even if the extracted content will be used elsewhere, like in an email or summary); editing, modifying, or updating existing presentations; combining or splitting slide files; working with templates (.potx), layouts, speaker notes, or comments. Trigger whenever the u
