core-design-principles
Installation
SKILL.md
Core Design Principles (Operational Checklist)
Use when
- A task feels “easy to overbuild” (new helpers, new layers, new abstractions).
- You’re not sure where code should live.
- You need to choose between “quick fix” vs “correct boundary”.
Inputs (ask/confirm)
- What capability/bounded context owns this change?
- What is the smallest stable interface needed by the next layer?
- Where are the side effects (if any)?
Workflow (tool-first → assembly)
- Identify the tool: the smallest reusable unit (pure function, port, adapter, store method).
- Place it in the owner (capability / workspace / eventing / integration) without cross-context imports.
- Add the assembly: facade/effect/component that wires it, preserving unidirectional flow.
- Verify deletion path: removing the feature should be mostly deleting code, not untangling.