code-organisation
Installation
SKILL.md
Code organisation
The rule
Information hiding (Parnas, 1972): every module owns one secret, a design decision likely to change, and hides it behind an interface smaller than the secret.
A module is anything with an interface and an implementation, at any size: an app slice such as a Nuxt layer or a workspace package, a directory, a file, a class, a function. The rule is the same at every size; only the zoom changes. Its payoff is locality: a change, a bug, a test, and the context an agent must load all stay inside one module.
To shape one module's interface (depth, seams, adapters), use /codebase-design.
The four checks
Run them on every module you create, move or audit. A module is done when it passes all four.