java-solid-designlisted
Install: claude install-skill andresnator/agents-orchestrator
# Skill: java-solid-design
## Activation Contract
Use this skill when asked to evaluate or improve Java object-oriented design using SOLID, cohesion, coupling, composition, inheritance, interfaces, and dependency direction.
Do **not** use this skill for simple naming/style cleanup, pattern shopping, framework wiring only, or non-Java code.
## Responsibility
This skill teaches Java SOLID design review. It does not call other skills, prescribe interfaces everywhere, or force pattern usage.
## Required Context
- Classes/interfaces involved.
- Change scenario or pain point.
- Public API compatibility constraints.
- Existing dependency direction and lifecycle ownership.
## Context Budget
- Keep this `SKILL.md` executable.
- Use `references/solid-java.md` for principle-specific guidance.
## Hard Rules
- Do not apply SOLID mechanically; connect every recommendation to a real change pressure.
- Prefer composition over inheritance unless subtype substitution is genuinely valid.
- Introduce interfaces for stable contracts or test/design seams, not ceremony.
- Protect LSP: subclasses must honor superclass/interface contracts.
- Keep dependencies pointing toward stable policy, not volatile details.
- Avoid splitting responsibilities so far that workflow becomes harder to understand.
## Decision Gates
| Condition | Action |
|---|---|
| Class has multiple reasons to change | Propose responsibility split around change axes. |
| Conditional selects behavior by type | Consider po