From kiss
This skill should be used when the user asks to "find simplification opportunities", "simplify this code", "check for unnecessary complexity", "find over-engineering", "audit code complexity", "reduce complexity", or "what can be simplified". Also triggers when the user mentions KISS, "keep it simple", over-abstraction, dead code, redundant code, tight coupling, interface bloat, or asks about simplification opportunities. Supports checking all five dimensions at once or focusing on a single dimension.
npx claudepluginhub florianbuetow/claude-code --plugin kissThis skill uses the workspace's default tool permissions.
Analyze source code and architecture for **simplification opportunities** — places where
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Analyze source code and architecture for simplification opportunities — places where accidental complexity can be reduced without losing capability. Produce actionable findings with severity ratings, dimension scores, code locations, and concrete simplification suggestions.
The framing matters: this is not about reporting what IS complex, but about identifying what CAN be simplified. Essential complexity (inherent to the problem domain) is not a simplification opportunity. Accidental complexity (introduced by our choices) is.
Five dimensions, each targeting a different axis of simplification:
| Dimension | Question It Answers | Reference |
|---|---|---|
| Complexity | Where can control flow, cognitive load, or function structure be simplified? | references/complexity.md |
| Abstraction | Where can unnecessary layers, interfaces, or indirection be removed? | references/abstraction.md |
| Redundancy | Where can dead, duplicated, or unused code be eliminated? | references/redundancy.md |
| Coupling | Where can dependencies be loosened or dependency chains shortened? | references/coupling.md |
| Architecture | Where can system-level infrastructure or layering be consolidated? | references/architecture.md |
| Command Pattern | Scope | Reference |
|---|---|---|
kiss / kiss all / kiss check | All five dimensions | All references |
kiss complexity | Code Complexity | references/complexity.md |
kiss abstraction | Over-Abstraction | references/abstraction.md |
kiss redundancy | Redundancy | references/redundancy.md |
kiss coupling | Coupling & Dependencies | references/coupling.md |
kiss architecture | Architecture Complexity | references/architecture.md |
When no subcommand is specified, default to all five dimensions. When a dimension is mentioned by name (even without "kiss"), match it.
Determine what code to analyze:
Supported languages: any (Python, Java, TypeScript, C#, C++, Kotlin, Go, Rust, etc.). Adapt checks to the idioms of the target language — simplicity looks different across languages and paradigms.
Before analyzing, read the reference file(s) for the requested dimension(s):
references/complexity.md — code complexity simplificationreferences/abstraction.md — over-abstraction simplificationreferences/redundancy.md — redundancy eliminationreferences/coupling.md — coupling reductionreferences/architecture.md — architecture consolidationFor a full audit (kiss all), read all five.
For each target file/class, apply the simplification patterns from the loaded references.
Per-dimension scoring: For each dimension analyzed, assign a score from 1–5:
| Score | Label | Meaning |
|---|---|---|
| 1 | Minimal | Few or no simplification opportunities. Code is as simple as the problem allows. |
| 2 | Low | Minor opportunities exist but are low-priority. |
| 3 | Moderate | Several opportunities that would meaningfully reduce cognitive load or maintenance cost. |
| 4 | High | Significant accidental complexity. Simplification would substantially improve the codebase. |
| 5 | Critical | Accidental complexity dominates. The code is harder than the problem it solves. |
Think carefully about each pattern — not every heuristic match is a true opportunity. Consider context, project size, language idioms, and pragmatism. Essential complexity is not a simplification target.
Present findings using this structure:
**[DIMENSION] Simplification Opportunity — Severity: HIGH | MEDIUM | LOW**
Location: `filename.py`, function `name`, lines ~XX-YY
Opportunity: What can be simplified and why simplifying it matters.
Approach: Concrete simplification with brief code sketch if helpful.
Severity guidelines:
After all findings, provide a dimension scorecard:
| Dimension | Score | Label |
|---------------|-------|----------|
| Complexity | 3/5 | Moderate |
| Abstraction | 2/5 | Low |
| Redundancy | 4/5 | High |
| Coupling | 2/5 | Low |
| Architecture | 1/5 | Minimal |
Only include dimensions that were analyzed.
| Dimension | HIGH | MEDIUM | LOW |When a fix or simplification is requested (e.g., "fix this", "simplify it", "show me the simpler version"), produce simplified code that resolves the identified opportunities. Explain each change briefly.
These are guidelines, not laws. Apply judgment:
User: kiss complexity (with a file attached)
Claude:
references/complexity.md