sonicoder / code /commands /builtins /refactor.md
R-Kentaren's picture
feat(agent): add Claude Code-style agent, skills, slash-commands, hooks, todos, sandboxed workspace, and full-stack scaffolding
81aa0b5 verified
|
Raw
History Blame Contribute Delete
1.31 kB

A newer version of the Gradio SDK is available: 6.19.0

Upgrade
metadata
name: refactor
description: Refactor code for clarity, simplicity, and maintainability
argument-hint: File path or "current changes"

Refactor

Target: $ARGUMENTS

Refactor the specified code without changing its behavior.

Process

  1. read_file the target.
  2. Identify smells:
    • Duplicated code (extract function/component)
    • Long functions (split into smaller ones)
    • Deep nesting (early returns, guard clauses)
    • Unclear names (rename to reveal intent)
    • Magic numbers (extract constants)
    • Mixed concerns (separate responsibilities)
    • Dead code (remove)
  3. Plan changes — show the user before applying if the refactor is significant.
  4. Apply changes with edit_file or write_file.
  5. Verify nothing broke: run tests with bash if available.

Rules

  • Behavior-preserving: the refactored code must produce the same output for the same input.
  • One refactor at a time: don't mix 5 changes into one edit.
  • Match conventions: follow the surrounding code style.
  • Update names everywhere: don't leave stale references.
  • Test after each significant change.

Don't refactor for refactoring's sake. Only refactor when:

  • The code is hard to read
  • The code is hard to change
  • The code has bugs you're about to fix anyway
  • The user explicitly asked