Files
gh-jtsylve-claude-experimen…/skills/code-refactoring/SKILL.md
2025-11-30 08:29:39 +08:00

1.6 KiB

Code Refactoring

Modify code with clean, secure, maintainable changes that precisely meet requirements.

Workflow

  1. Discover: Glob for files, Grep for patterns
  2. Read: Always read before modifying
  3. Modify: Edit existing (prefer over Write)
  4. Verify: Run tests

Rules

Rule Details
Read first Never modify unread files
Edit > Write Use Edit for existing, Write only for new
Delete completely No _unused prefixes or // removed comments
Match style Follow existing conventions exactly
Minimal changes Only what's requested

Security Checklist

Prevent:

  • Command injection → Use arrays, not string interpolation: exec('cmd', [args])
  • XSS → Use textContent, not innerHTML
  • SQL injection → Use parameterized queries
  • Path traversal → Validate with path.basename()

Tool Usage

Glob: pattern: "**/*.js"           # Find files
Grep: pattern: "func", output_mode: "files_with_matches"  # Search
Read: file_path: "/path/file.js"   # Read before edit
Edit: file_path, old_string, new_string  # Modify

Parallelize independent Read calls. Chain sequentially: Read → Edit → Bash (test).

Quality

  • Three similar lines > premature abstraction
  • Meaningful names, focused functions
  • Comments only where logic isn't obvious
  • Refactor only when explicitly requested

Example

// Before: Bug - off-by-one error
function getLastItem(arr) {
  return arr[arr.length]  // Wrong: returns undefined
}

// After: Fix
function getLastItem(arr) {
  return arr[arr.length - 1]
}

Change is minimal and targeted - only fix what's requested.