Skip to content
Development
Skill

/safe-refactor

Use when code needs restructuring without changing observable behavior.

From plugin
agent-powerups
6113 skills46 agents54 commands
Install
$ npx -y skills add yeaight7/agent-powerups --skill safe-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/safe-refactor

Context preview

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

Use when code needs restructuring without changing observable behavior.

SKILL.md

safe-refactor.SKILL.md
name: safe-refactor
description: Use when code needs restructuring without changing observable behavior.

Purpose

Restructure code in small, safe steps while preserving all externally observable behavior. Prevents refactor regressions where behavior silently changes.

When to Use

  • Code needs structural improvement but its public API must remain unchanged.
  • Naming, organization, or duplication needs cleanup after a feature is complete.
  • Technical debt needs reduction without introducing risk.

Do not use this skill if there are no existing tests — write tests first.

Inputs

  • Code to refactor.
  • Existing test suite (required).
  • Optional: specific goals (extract function, rename module, remove duplication).

Workflow

1. **Confirm behavior** — Run the test suite. All tests must pass before starting. 2. **Plan** — List the structural changes. Check each for API impact. 3. **Refactor in small steps** — One change at a time, each independently reversible. 4. **Avoid interface changes** — Do not alter public APIs, exported types, or CLI behavior unless explicitly intended. 5. **Validate after each step** — Re-run targeted tests after each meaningful change.

Output

Changed:
- <structural change 1>
- <structural change 2>

Behavior unchanged because: <reasoning>

Validated by: <test commands run>

Verification

  • [ ] Tests pass before starting
  • [ ] Each step is small and independently reversible
  • [ ] No unintended API or interface changes introduced
  • [ ] Tests pass after each meaningful step
  • [ ] Final test suite fully green

Failure Modes

  • **Missing tests** — Stop. Write tests before refactoring. Behavior cannot be verified otherwise.
  • **Silent API change** — If a refactor touches public interfaces, stop and confirm this is intentional.
  • **Bundled unrelated changes** — Keep each step focused. Mixed changes make rollback and blame impossible.
Read more
Ships withagent-powerups

Curated power-ups for coding agents: skills, slash commands, MCP configs, hooks, AGENTS.md templates, and workflows for serious software engineering. Claude Code, Codex, Antigravity CLI, Cursor and more

Get the whole plugin

Other skills on agent-powerups.