Skip to content
Development
Command

/simplify-fn

Refactor a complex function to reduce cyclomatic complexity.

From plugin
rohitg00-claude-code-toolkit
2.5k199 skills138 agents199 commands
Install
$ npx -y skills add rohitg00/awesome-claude-code-toolkit --agent claude-code

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/simplify-fn

Context preview

What this command does when you run it.

Refactor a complex function to reduce cyclomatic complexity.

Command definition

simplify-fn.md

/simplify-fn - Simplify Complex Function

Refactor a complex function to reduce cyclomatic complexity.

Steps

1. Read the target function and calculate its current complexity score 2. Identify the primary complexity drivers: nested ifs, loops, switch statements 3. Map the function's control flow to understand all execution paths 4. Apply Extract Method refactoring: pull out logical blocks into named functions 5. Replace nested conditionals with guard clauses (early returns) 6. Convert switch statements to lookup tables or strategy pattern where appropriate 7. Replace complex boolean expressions with named boolean variables 8. Decompose loops with multiple responsibilities into separate loops or higher-order functions 9. Apply polymorphism to replace type-checking conditionals when applicable 10. Verify the refactored code preserves all original behavior by running tests 11. Calculate the new complexity score and report the improvement 12. Ensure the refactored code is readable and properly named

Rules

  • Preserve all existing behavior; this is refactoring, not feature change
  • Run tests after each refactoring step to catch regressions immediately
  • Target a complexity score of 5 or below for the main function
  • Keep extracted functions small (under 15 lines) and single-purpose
  • Use descriptive names for extracted functions that explain the "why"
  • Do not introduce new dependencies or external libraries
  • If tests do not exist, write them before refactoring
Read more
Ships withrohitg00-claude-code-toolkit

The most comprehensive toolkit for Claude Code -- 135 agents, 35 curated skills (+400,000 via SkillKit), 42 commands, 176+ plugins, 20 hooks, 15 rules, 7 templates, 15 MCP configs, 26 companion apps, 53 ecosystem entries, and more.

Get the whole plugin