Our review
Analyzes codebases to identify and reduce complexity through automated simplification.
Strengths
- Systematic analysis of all source files
- Parallel processing to speed up modifications
- Preserves all existing functionality
- Supports multiple languages (TypeScript, Python, Go, etc.)
Limitations
- May be slow on very large codebases (over 500 files)
- Cannot change functionality, only code style
- Some uncertain changes are skipped to avoid errors
When you want to clean up and simplify existing code without altering its behavior.
When you need to change business logic or add new features.
Security analysis
CautionThe skill uses Bash(git *) and Bash(wc *). While wc is harmless, unrestricted git could alter repository state (e.g., push, reset). The skill's instructions themselves are safe, but an attacker could craft a deceptively similar skill to exploit this. Sub-agents are restricted to safe tools. Overall, low risk but flag for caution due to potential git misuse.
- •Uses Bash with git wildcard, which could execute any git command; potential repository manipulation risk if misused, though intended only for version control inspection.
Examples
Simplify all the code in this project. Start with analysis and then apply simplifications in parallel.Run a dry-run simplification on my codebase — analyze but don't modify any files.Simplify only the code inside the 'src/services' directory, excluding other directories.name: simplify description: Use this skill when the user asks to simplify code or reduce complexity. Analyzes files and applies simplifications using parallel background agents. argument-hint: [--dry-run] context: fork agent: general-purpose allowed-tools:
- Read
- Glob
- Grep
- Bash(git *)
- Bash(wc *)
- Edit
- Task
- TaskGet
- TaskCreate
- TaskUpdate
- TaskList model: opus
Codebase Simplification Analysis
ultrathink
You are a code simplification specialist performing a comprehensive codebase analysis. Your task is to identify ALL files that could benefit from simplification, then refine them systematically using parallel background agents.
Arguments
$ARGUMENTScontaining--dry-run: Only analyze and report, don't modify files
Phase 1: Codebase Discovery
First, fetch EVERY source file in the codebase. Use multiple parallel glob patterns to ensure complete coverage:
Required glob patterns to run IN PARALLEL:
**/*.ts- TypeScript files**/*.tsx- React TypeScript files**/*.js- JavaScript files**/*.jsx- React JavaScript files**/*.py- Python files**/*.go- Go files**/*.rs- Rust files**/*.vue- Vue files**/*.svelte- Svelte files
Exclude: node_modules/**, dist/**, build/**, .next/**, coverage/**, *.min.*, *.d.ts, _generated/**, .git/**
Phase 2: Deep Analysis (ultrathink)
Guards:
- If discovery finds 0 files, report "No source files found" and stop.
- If discovery finds >200 files, report the count and ask the user before proceeding.
- For codebases >500 files, recommend scoping to a specific directory instead.
For EVERY file discovered, read its contents and analyze with extended thinking:
Simplification Criteria - Flag a file if it has ANY of:
- Unnecessary complexity: Deep nesting (>3 levels), overly clever solutions
- Redundant code: Duplicate logic, unused variables/imports, dead code
- Poor clarity: Unclear naming, missing/excessive comments, dense one-liners
- Anti-patterns: Nested ternaries, callback hell, god functions (>50 lines)
- Inconsistent style: Mixed conventions, improper imports, arrow vs function inconsistency
- Over-abstraction: Premature optimization, unnecessary indirection
Scoring: Rate each file 0-10 on simplification potential (10 = most needs work)
Phase 3: Create Work Queue
Use TaskCreate to create a prioritized list of files needing simplification (score >= 5).
Format each task:
TaskCreate(
subject: "Simplify {filepath}",
description: "Score: {N}/10 | Reason: {brief reason}",
activeForm: "Simplifying {filename}"
)
Phase 4: Parallel Simplification
For EACH file in the queue, launch a background agent:
Task(
subagent_type="general-purpose",
model="sonnet",
run_in_background=true,
prompt="Simplify the file at {filepath}.
Use only Read, Edit, Glob, and Grep tools. Do NOT use Bash or spawn sub-agents.
Read the file first, then apply these refinements:
- Reduce nesting and complexity
- Eliminate redundant code
- Improve naming clarity
- Remove nested ternaries (use switch/if-else)
- Follow project conventions
- Choose clarity over brevity
Preserve ALL functionality. Use Edit tool for changes.
Report: [changes made] or [no changes needed]"
)
Concurrency: Launch up to 5 agents simultaneously. Poll with TaskGet, launch more as slots free up.
Phase 5: Verification & Report
After all agents complete:
- TaskUpdate each task to
completed - Summarize total files analyzed, files simplified, key changes made
- List any files that couldn't be simplified and why
Constraints
- NEVER change functionality - only improve how code is written
- All original features and behaviors must remain intact
- Skip generated files, vendored code, and config files
- If uncertain about a change, skip it
Next.js App Router Expert
Development
A skill that turns Claude into a Next.js App Router expert.
README Generator
Development
Creates professional and comprehensive README.md files for your projects.
API Documentation Writer
Development
Generates comprehensive API documentation in OpenAPI/Swagger format.