← Back to list

refactoring-code
by dralgorhythm
A More Effective Agent Harness for Claude
⭐ 4🍴 0📅 Jan 22, 2026
SKILL.md
name: refactoring-code description: Improve code structure without changing behavior. Use when code is hard to read, modify, or test. Covers Extract Method, Rename, and other safe refactorings. allowed-tools: Read, Write, Edit, Bash, Glob, Grep, mcp__serena__*
Refactoring Code
MCP Tools
Serena (safe refactoring):
find_symbol— Locate refactoring targetsfind_referencing_symbols— Find ALL usages before changesrename_symbol— Rename across entire codebase safelyreplace_symbol_body— Replace function implementationsget_symbols_overview— Understand module structure
The Refactoring Hat
When refactoring, you change structure without changing behavior. Always have tests passing before and after.
Workflows
- Tests Green: Ensure all tests pass before starting
- Analyze: Use Serena to understand dependencies
- Small Steps: Make one small change at a time
- Verify Usages: Use
find_referencing_symbolsbefore changes - Commit Often: Commit after each successful refactoring
- Tests Green: Verify tests still pass after each change
Common Refactorings
Extract Method
When a code block does one thing, extract it to a named method.
- Use
find_referencing_symbolsto verify extraction won't break callers - Extract the method
- Run tests
Rename for Clarity
Names should reveal intent.
- Use
find_referencing_symbolsto find ALL usages - Use
rename_symbolfor codebase-wide rename - Verify no missed references
Remove Dead Code
- Use
find_referencing_symbolsto verify code is unused - If zero references, safe to remove
- If references exist, trace to understand usage
Code Smells to Address
- Long Method: Extract smaller methods
- Long Parameter List: Introduce parameter object
- Duplicate Code: Extract to shared function (use
find_symbolto locate duplicates) - Feature Envy: Move method to the class it uses most
- Data Clumps: Group related data into objects
- Primitive Obsession: Replace primitives with value objects
Safety Rules
- Never refactor and add features simultaneously
- Always use
find_referencing_symbolsbefore removing/renaming - Run tests after every change
- Use Serena's
rename_symbolinstead of find-replace - Commit working states frequently
Score
Total Score
55/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
✓最近の活動
1ヶ月以内に更新
+10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
✓タグ
1つ以上のタグが設定されている
+5
Reviews
💬
Reviews coming soon


