What problem does it solve? Codebases accumulate shallow modules whose interfaces are nearly as complex as their implementations, spreading bugs and knowledge across callers and making testing difficult. This Skill surfaces that architectural friction and proposes deepening refactors that consolidate behaviour behind small interfaces. ## Core Features & Use Cases - Deepening opportunity detection: Explores the codebase with the deletion test and deep-module vocabulary (module, interface, seam, adapter, leverage, locality) to find shallow modules and tightly-coupled packages. - Spec comparison: Compares actual module depth against the intended deep module design documented in spec/specs.md and flags divergence. - Interface design via parallel sub-agents: Generates radically different interface proposals for a chosen candidate using the Design It Twice approach, then compares them by depth, locality, and seam placement. - Dependency-aware testing strategy: Classifies dependencies (in-process, local-substitutable, remote-owned, true external) and recommends ports, adapters, or mocks accordingly. - Use Case: Ask the Skill to review a service package where tests require heavy mocking; it identifies the shallow pass-through modules, proposes a deepened module with a port at the seam, and designs the new interface with in-memory and HTTP adapters. ## Quick Start Ask the assistant to analyze this codebase for shallow modules and propose deepening opportunities using the improve-architecture skill.