From improve-codebase-architecture
Explore a codebase to find opportunities for architectural improvement, focusing on making the codebase more testable by deepening shallow modules. Use when user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more AI-navigable.
How this skill is triggered — by the user, by Claude, or both
Slash command
/improve-codebase-architecture:improve-codebase-architectureThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Explore a codebase like an AI would, surface architectural friction, discover opportunities for improving testability, and propose module-deepening refactors as GitHub issue RFCs.
Explore a codebase like an AI would, surface architectural friction, discover opportunities for improving testability, and propose module-deepening refactors as GitHub issue RFCs.
A deep module (John Ousterhout, "A Philosophy of Software Design") has a small interface hiding a large implementation. Deep modules are more testable, more AI-navigable, and let you test at the boundary instead of inside.
Use the Agent tool with subagent_type=Explore to navigate the codebase naturally. Do NOT follow rigid heuristics — explore organically and note where you experience friction:
The friction you encounter IS the signal.
Present a numbered list of deepening opportunities. For each candidate, show:
Do NOT propose interfaces yet. Ask the user: "Which of these would you like to explore?"
Before spawning sub-agents, write a user-facing explanation of the problem space for the chosen candidate:
Show this to the user, then immediately proceed to Step 5. The user reads and thinks about the problem while the sub-agents work in parallel.
Spawn 3+ sub-agents in parallel using the Agent tool. Each must produce a radically different interface for the deepened module.
Prompt each sub-agent with a separate technical brief (file paths, coupling details, dependency category, what's being hidden). This brief is independent of the user-facing explanation in Step 4. Give each agent a different design constraint:
Each sub-agent outputs:
Present designs sequentially, then compare them in prose.
After comparing, give your own recommendation: which design you think is strongest and why. If elements from different designs would combine well, propose a hybrid. Be opinionated — the user wants a strong read, not just a menu.
Create a refactor RFC as a GitHub issue using gh issue create. Use the template in REFERENCE.md. Do NOT ask the user to review before creating — just create it and share the URL.
2plugins reuse this skill
First indexed Jul 14, 2026
npx claudepluginhub reedom/mattpocock-skills --plugin improve-codebase-architectureExplores codebases to identify architectural friction and opportunities to deepen shallow modules, improving testability, refactoring, and AI navigability.
Guides iterative architecture improvement by identifying shallow modules, running deletion tests, and proposing deepening refactors for better testability and locality.
Finds architecture deepening opportunities—refactors that consolidate tightly-coupled modules and improve testability and AI-navigability—using domain language from CONTEXT.md and ADRs.