What problem does it solve? Codebases accumulate shallow, tightly-coupled modules that are hard to test, hard to navigate, and create integration risk at every seam. This Skill applies John Ousterhout's deep-module philosophy to find genuine refactoring opportunities and turn them into actionable RFCs. ## Core Features & Use Cases - Friction-Based Exploration: Navigates the codebase organically, treating navigation friction (scattered concepts, shallow modules, brittle tests) as the signal for coupling problems. - Dependency Classification: Categorizes each candidate's dependencies as in-process, local-substitutable, remote-but-owned, or true external, which determines the entire testing strategy. - Multi-Design Interface Generation: Produces 3-4 radically different interface designs (minimal, flexible, caller-optimized, ports & adapters), optionally via parallel sub-agents, with an opinionated recommendation. - RFC Issue Creation: Drafts a structured GitHub issue covering problem, proposed interface, dependency strategy, testing strategy, and implementation principles, then creates it with gh after confirmation. - Use Case: A team complains that changing one feature breaks three others and tests are brittle. Run this Skill to find the coupled module cluster, design a deepened interface, and file an RFC proposing the merge with boundary tests replacing the old unit tests. ## Quick Start Ask the agent to explore this repository, find modules that should be deepened or consolidated, and draft an RFC for the strongest refactoring candidate.