Agent skill
simplify-implementation
Analyze and simplify existing implementations to reduce complexity, improve maintainability, and enhance scalability. Use when users ask to simplify code, reduce complexity, refactor for readability, clean up implementations, improve maintainability, reduce technical debt, or make code easier to understand.
Install this agent skill to your Project
npx add-skill https://github.com/codeaholicguy/ai-devkit/tree/main/skills/simplify-implementation
SKILL.md
Simplify Implementation Assistant
Reduce complexity with an analysis-first approach before changing code.
Hard Rules
- Do not modify code until the user approves a simplification plan.
- Readability over brevity. Some duplication beats the wrong abstraction.
Workflow
- Gather Context
- Confirm targets, pain points, and constraints (compatibility, API stability, deadlines).
- Search for past simplification decisions or known constraints:
npx ai-devkit@latest memory search --query "<target area>" --tags "simplify"
- Analyze Complexity
- Identify sources (nesting, duplication, coupling, over-engineering, magic values).
- Assess impact (LOC, dependencies, cognitive load, scalability blockers).
- Apply Readability Principles
- Apply the readability guide and its "Reading Test".
- Propose Simplifications For each issue, apply a pattern:
- Extract: Long functions → smaller, focused functions.
- Consolidate: Duplicate code → shared utilities.
- Flatten: Deep nesting → early returns, guard clauses.
- Decouple: Tight coupling → dependency injection, interfaces.
- Remove: Dead code, unused features, excessive abstractions.
- Replace: Complex logic → built-in language/library features.
- Defer: Premature optimization → measure-first approach.
- Prioritize and Plan
- Rank by impact/risk. Present plan with before/after snippets. Request approval.
Red Flags and Rationalizations
| Rationalization | Why It's Wrong | Do Instead |
|---|---|---|
| "While I'm here, let me refactor this too" | Scope creep breaks things | Only simplify what was requested |
| "This abstraction will help later" | Predicted reuse rarely materializes | Remove it unless used twice today |
| "Shorter is simpler" | Brevity can hide complexity | Optimize for readability, not line count |
Validation
- Verify no regressions, add tests for new helpers, update docs if interfaces changed.
Output Template
- Target and Context
- Complexity Analysis
- Simplification Proposals (prioritized)
- Recommended Order and Plan
- Scalability Recommendations
- Validation Checklist
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
dev-lifecycle
Structured SDLC workflow with 8 phases — requirements, design review, planning, implementation, testing, and code review. Use when the user wants to build a feature end-to-end, or run any individual phase (new requirement, review requirements, review design, execute plan, update planning, check implementation, write tests, code review).
tdd
Test-driven development — write a failing test before writing production code. Use when implementing new functionality, adding behavior, or fixing bugs during active development.
debug
Guide structured debugging before code changes by clarifying expected behavior, reproducing issues, identifying likely root causes, and agreeing on a fix plan with validation steps. Use when users ask to debug bugs, investigate regressions, triage incidents, diagnose failing behavior, handle failing tests, analyze production incidents, investigate error spikes, or run root cause analysis (RCA).
memory
Use AI DevKit memory via CLI commands. Search before non-trivial work, store verified reusable knowledge, update stale entries, and avoid saving transcripts, secrets, or one-off task progress.
technical-writer
Review and improve documentation for novice users. Use when users ask to review docs, improve documentation, audit README files, evaluate API docs, review guides, or improve technical writing.
verify
Enforce evidence-based completion claims — require fresh command output before reporting success. Use when completing any task, fixing a bug, finishing a phase, running tests, building, deploying, or making any "it works" claim.
Didn't find tool you were looking for?