Code Simplification

VerifiedCaution

Analyzes source code and applies automated simplifications using parallel background agents. Helps reduce complexity, eliminate redundancies, improve readability, and remove anti-patterns. Includes a dry-run option to preview changes without applying them.

Sby Skills Guide Bot
DevelopmentIntermediate
1306/2/2026
Claude Code
#code-simplification#complexity-reduction#code-analysis#refactoring#parallel-processing

Recommended for

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 to use it

When you want to clean up and simplify existing code without altering its behavior.

When not to use it

When you need to change business logic or add new features.

Security analysis

Caution
Quality score85/100

The 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.

Findings
  • 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 entire codebase
Simplify all the code in this project. Start with analysis and then apply simplifications in parallel.
Dry-run simplification
Run a dry-run simplification on my codebase — analyze but don't modify any files.
Simplify specific directory
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

  • $ARGUMENTS containing --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:

  1. Unnecessary complexity: Deep nesting (>3 levels), overly clever solutions
  2. Redundant code: Duplicate logic, unused variables/imports, dead code
  3. Poor clarity: Unclear naming, missing/excessive comments, dense one-liners
  4. Anti-patterns: Nested ternaries, callback hell, god functions (>50 lines)
  5. Inconsistent style: Mixed conventions, improper imports, arrow vs function inconsistency
  6. 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:

  1. TaskUpdate each task to completed
  2. Summarize total files analyzed, files simplified, key changes made
  3. 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
Related skills