What problem does it solve?
It identifies shallow, tightly-coupled modules and the architectural friction between them, then proposes how to merge or deepen them so the codebase is easier to understand, maintain, and test.
Core Features & Use Cases
- Shallow-module detection: Scans for modules that delegate without adding clear value and create brittle seams.
- Deepening candidate design: Proposes a cleaner, more durable interface that hides internal complexity while clarifying responsibilities.
- Dependency classification for testability: Classifies dependencies (in-process, local-substitutable, ports & adapters, mock) to align design choices with testing strategy.
- Before/after testing plan: Recommends boundary tests to add and shallow tests to remove, following a replace-not-layer philosophy.
- Use case: When an Angular/TypeScript codebase has many small modules that bounce logic across boundaries, this skill produces a consolidated interface design and a test plan that reduces integration risk.
Quick Start
Ask to analyze your repository architecture for shallow module boundaries and produce a markdown file of deepening proposals.