design-pattern-selector
Installation
SKILL.md
Design Pattern Selector
When to Use
You've encountered a concrete object-oriented design problem and need a proven structural solution. This skill is appropriate when:
- You're designing a new component and want to get the structure right before writing code
- Existing code has a design smell — tightly coupled classes, a proliferating subclass hierarchy, or brittle object creation — and you want a pattern to address it
- You know roughly what you want (e.g., "something like a factory") but need to pick the right variant or confirm it fits
- You're reviewing someone else's code and want to identify what pattern(s) would improve it
- You want to understand trade-offs between two candidate patterns before committing
Before starting, verify:
- Do you have a description of the design problem, even informally? (Ask the user if not)
- Are you working with object-oriented design? (These patterns are OO-specific — they assume classes, objects, and inheritance)
- Is this about pattern selection (this skill) or pattern implementation? If the user already knows which pattern they want, move directly to the application process in Step 6