| name | codebase-assessment |
| description | Use when starting open-ended tasks in unfamiliar codebases, before following existing patterns |
Codebase Assessment
Assess codebase maturity before implementing. Don't blindly follow patterns that may be outdated or inconsistent.
Quick Assessment Checklist
- Check config files: linter, formatter, type config present?
- Sample 2-3 similar files: Are patterns consistent?
- Note project age signals: Dependencies current? Patterns modern?
State Classification
| State | Signals | Your Behavior |
|---|---|---|
| Disciplined | Consistent patterns, configs present, tests exist | Follow existing style strictly |
| Transitional | Mixed patterns, some structure | Ask: "I see X and Y patterns. Which to follow?" |
| Legacy/Chaotic | No consistency, outdated patterns | Propose: "No clear conventions. I suggest [X]. OK?" |
| Greenfield | New/empty project | Apply modern best practices |
Verification Before Assuming
If codebase appears undisciplined, verify before assuming:
- Different patterns may serve different purposes (intentional)
- Migration might be in progress
- You might be looking at the wrong reference files
What To Check
| Area | Check For |
|---|---|
| Style | ESLint/Prettier/Biome config, consistent formatting |
| Types | tsconfig.json strictness, type coverage |
| Testing | Test framework, coverage expectations, test file patterns |
| Structure | Folder conventions, naming patterns, module boundaries |
| Dependencies | Package age, maintenance status, duplicate functionality |
Output Format
After assessment, state:
Codebase state: [Disciplined/Transitional/Legacy/Greenfield]
Key patterns to follow: [list 2-3]
Concerns noted: [any issues observed]
Proceeding with: [your approach]