skills/7spade/black-tortoise/cohesion-coupling-review

cohesion-coupling-review

SKILL.md

High Cohesion / Low Coupling (Review Skill)

Use when

  • A change touches multiple folders/layers/capabilities.
  • You’re tempted to import a file from another capability.
  • “Shared” is being considered for convenience.

Checklist (fast)

  1. Ownership: which capability/bounded context owns the rule/data?
  2. Cohesion: is the logic colocated with its change reason?
  3. Coupling: are dependencies narrow (ports/events) rather than concrete imports?
  4. Public surface: can exports be reduced to the minimal stable interface?
  5. Import hygiene: any deep imports into another capability/layer?
  6. Promotion: does it truly qualify for shared (2+ contexts, no business policy)?

Smallest fixes (preferred order)

  • Move code to the owner (increase cohesion).
  • Introduce/adjust a port or event (reduce coupling).
  • Narrow exports / add an explicit entry point (stabilize interface).
  • Only then consider shared (if it meets promotion rules).

References

  • .github/instructions/06-cohesion-coupling-copilot-instructions.md
  • .github/instructions/05-design-principles-copilot-instructions.md
  • scripts/dependency-cruiser.js
Weekly Installs
10
First Seen
Feb 1, 2026
Installed on
codex10
opencode9
gemini-cli9
claude-code9
antigravity8
github-copilot8