Help us improve
Share bugs, ideas, or general feedback.
From kiss
Analyzes source code for simplification opportunities across five dimensions: complexity, abstraction, redundancy, coupling, and architecture. Delivers severity ratings, code locations, and actionable suggestions.
npx claudepluginhub florianbuetow/claude-code --plugin kissHow this skill is triggered — by the user, by Claude, or both
Slash command
/kiss:kissThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Analyze source code and architecture for **simplification opportunities** — places where
Reviews recently implemented code for reuse opportunities, quality issues, and efficiency problems. Dispatches parallel reviewers, applies user-approved fixes with test verification, and generates a structured simplification report.
Analyzes and simplifies code implementations to reduce complexity, improve maintainability, and remove technical debt. Best invoked when users ask to simplify or refactor code.
Detects over-engineering in code via speculative generality, premature abstraction, gold plating, and excessive layers. Analyzes codebases or paths, categorizes issues (critical/warning/info), and provides simplification roadmap with metrics.
Share bugs, ideas, or general feedback.
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