Skip to content
Development
Skill

/code-refactor

Perform bulk code refactoring operations like renaming variables/functions across files, replacing patterns, and updating API calls. Use when users request renaming identifiers, replacing deprecated code patterns, updating method calls, or making consistent changes across

BOOST
From plugin
claude-skills-marketplace
68318 skills2 agents1 command
Install
$ npx -y skills add mhattingpete/claude-skills-marketplace --skill code-refactor --agent claude-code

How it fires

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

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/code-refactor

Context preview

The summary Claude sees to decide when to auto-load this skill.

Perform bulk code refactoring operations like renaming variables/functions across files, replacing patterns, and updating API calls. Use when users request renaming identifiers, replacing deprecated code patterns, updating method calls, or making consistent changes across

SKILL.md

code-refactor.SKILL.md
name: code-refactor
description: Perform bulk code refactoring operations like renaming variables/functions across files, replacing patterns, and updating API calls. Use when users request renaming identifiers, replacing deprecated code patterns, updating method calls, or making consistent changes across multiple locations.

Code Refactor

Systematic code refactoring across files. **Auto-switches to execution mode** for 10+ files (90% token savings).

Mode Selection

  • **1-9 files**: Use native tools (Grep + Edit with replace_all)
  • **10+ files**: Automatically use `code-execution` skill

**Execution example (50 files):**

from api.code_transform import rename_identifier
result = rename_identifier('.', 'oldName', 'newName', '**/*.py')
# Returns: {'files_modified': 50, 'total_replacements': 247}
# ~500 tokens vs ~25,000 tokens traditional

When to Use

  • "rename [identifier] to [new_name]"
  • "replace all [pattern] with [replacement]"
  • "refactor to use [new_pattern]"
  • "update all calls to [function/API]"
  • "convert [old_pattern] to [new_pattern]"

Core Workflow (Native Mode)

1. Find All Occurrences

Grep(pattern="getUserData", output_mode="files_with_matches")     # Find files
Grep(pattern="getUserData", output_mode="content", -n=true, -B=2, -A=2)  # Verify with context

2. Replace All Instances

Edit(
  file_path="src/api.js",
  old_string="getUserData",
  new_string="fetchUserData",
  replace_all=true
)

3. Verify Changes

Grep(pattern="getUserData", output_mode="files_with_matches")  # Should return none

Workflow Examples

Rename Function

1. Find: `Grep(pattern="getUserData", output_mode="files_with_matches")` 2. Count: "Found 15 occurrences in 5 files" 3. Replace in each file with `replace_all=true` 4. Verify: Re-run Grep 5. Suggest: Run tests

Replace Deprecated Pattern

1. Find: `Grep(pattern="\\bvar\\s+\\w+", output_mode="content", -n=true)` 2. Analyze: Check if reassigned (let) or constant (const) 3. Replace: `Edit(old_string="var count = 0", new_string="let count = 0")` 4. Verify: `npm run lint`

Update API Calls

1. Find: `Grep(pattern="/api/auth/login", output_mode="content", -n=true)` 2. Replace: `Edit(old_string="'/api/auth/login'", new_string="'/api/v2/authentication/login'", replace_all=true)` 3. Test: Recommend integration tests

Best Practices

**Planning:**

  • Find all instances first
  • Review context of each match
  • Inform user of scope
  • Consider edge cases (strings, comments)

**Safe Process:** 1. Search → Find all 2. Analyze → Verify appropriate 3. Inform → Tell user scope 4. Execute → Make changes 5. Verify → Confirm applied 6. Test → Suggest running tests

**Edge Cases:**

  • Strings/comments: Ask if should update
  • Exported APIs: Warn of breaking changes
  • Case sensitivity: Be explicit

Tool Reference

**Edit with replace_all:**

  • `replace_all=true`: Replace all occurrences
  • `replace_all=false`: Replace only first (or fail if multiple)
  • Must match EXACTLY (whitespace, quotes)

**Grep patterns:**

  • `-n=true`: Show line numbers
  • `-B=N, -A=N`: Context lines
  • `-i=true`: Case-insensitive
  • `type="py"`: Filter by file type

Integration

  • **test-fixing**: Fix broken tests after refactoring
  • **code-transfer**: Move refactored code
  • **feature-planning**: Plan large refactorings
Read more
Ships withclaude-skills-marketplace

A curated marketplace of Claude Code plugins for software engineering workflows.

Get the whole plugin

Other skills on claude-skills-marketplace.