extract-module
Installation
SKILL.md
Extracting an Optional Dependency into a New Content Module
Use this guide when making a dependency of a plugin module optional by moving it into a separate content module.
Goal: the host module continues to work when the new module is absent, and behaves identically when it is present.
When to Use Each Pattern
Pattern A — Simple move
All code that touches dependency X is isolated in a few files with no callers inside the host module. Move those files wholesale into the new module.
Pattern B — Extension Point (EP)
The host module's core files contain scattered references to X. Introduce an EP interface in the host module (no X imports), implement it in the new module, and replace direct X calls with null-safe static helpers.