kisslisted
Install: claude install-skill hk9890/claude-dev-tools
# KISS
What to challenge: $ARGUMENTS. If no argument is given, challenge the artifact currently under
discussion, and say which one you took it to be.
Every layer, abstraction, dependency, flag, and option is **guilty until proven necessary** — the
burden sits on the addition. Ask the user when something is unclear, and apply the simplification
once it is agreed.
## Route
Read only the matching file — or both, when the target genuinely spans two rows.
| Target | Read |
|---|---|
| requirement, scope proposal, feature request, acceptance criteria | [references/requirements-analysis.md](references/requirements-analysis.md) |
| design, component structure, dependency choice, service boundary, integration plan | [references/architecture-analysis.md](references/architecture-analysis.md) |
| implementation, diff, pull request | [references/code-analysis.md](references/code-analysis.md) |
## Stance
**Essential or accidental.** Essential complexity comes from the problem; **accidental complexity**
is self-inflicted. Separate them first. Smells: machinery serving machinery; code that **complects**.
**The addition carries the burden.** What pain does it solve *now*, and what breaks without it?
**YAGNI**; abstraction waits for the **Rule of Three**. Smells: optionality with no caller;
configuration standing in for a decision; a dependency bought for convenience.
**Model before machinery.** Complicated logic usually means the model underneath is wrong — show me
your tables and I