refactor
by BytesAgain
Analyze code quality and suggest refactoring improvements using static analysis. Use when cleaning up or improving codebases.
安装
claude skill add --url github.com/openclaw/skills/tree/main/skills/bytesagain/refactor文档
Refactor — Code Refactoring Suggestions Tool
Analyze source code for quality issues, measure complexity, detect dead code, and generate actionable refactoring suggestions. Supports rename, extract method/function, inline, and move refactoring patterns. Tracks refactoring history and generates reports. Built for developers who want to systematically improve code quality.
Prerequisites
- Python 3.8+
bashshell- Source code files accessible from the filesystem
Data Storage
All refactoring analysis results and history are stored in ~/.refactor/data.jsonl as newline-delimited JSON. Each record captures the file analyzed, metrics, suggestions, and timestamps.
Configuration is stored in ~/.refactor/config.json.
Commands
analyze
Perform a thorough analysis of a source file or directory. Reports code metrics, potential issues, and refactoring opportunities.
REFACTOR_FILE=./src/main.py bash scripts/script.sh analyze
rename
Suggest or record a rename refactoring for a symbol (variable, function, class). Tracks old and new names with file locations.
REFACTOR_FILE=./src/main.py REFACTOR_OLD_NAME="getData" REFACTOR_NEW_NAME="fetchUserData" REFACTOR_SYMBOL_TYPE=function bash scripts/script.sh rename
extract
Suggest extracting a code block into a new function or method. Specify the file, line range, and suggested function name.
REFACTOR_FILE=./src/main.py REFACTOR_START_LINE=45 REFACTOR_END_LINE=62 REFACTOR_NEW_NAME="validateInput" bash scripts/script.sh extract
inline
Suggest inlining a function, variable, or constant that is used only once or adds unnecessary indirection.
REFACTOR_FILE=./src/utils.py REFACTOR_SYMBOL="tempVar" REFACTOR_SYMBOL_TYPE=variable bash scripts/script.sh inline
move
Suggest moving a function, class, or block of code to a different file or module for better organization.
REFACTOR_FILE=./src/main.py REFACTOR_SYMBOL="UserValidator" REFACTOR_TARGET="./src/validators.py" bash scripts/script.sh move
dead-code
Scan for dead code: unused imports, unreachable code blocks, unused variables, and functions never called.
REFACTOR_FILE=./src/ REFACTOR_RECURSIVE=true bash scripts/script.sh dead-code
complexity
Calculate cyclomatic complexity for functions in a file. Flags functions exceeding the configured threshold.
REFACTOR_FILE=./src/main.py REFACTOR_THRESHOLD=10 bash scripts/script.sh complexity
report
Generate a thorough refactoring report for a file or project. Includes all metrics, suggestions, and priority rankings.
REFACTOR_FILE=./src/ REFACTOR_FORMAT=text bash scripts/script.sh report
config
View or update configuration (complexity threshold, ignored patterns, report format, language hints).
REFACTOR_KEY=complexity_threshold REFACTOR_VALUE=15 bash scripts/script.sh config
export
Export refactoring history and analysis results to JSON or Markdown.
REFACTOR_OUTPUT=/tmp/refactor-report.md REFACTOR_FORMAT=markdown bash scripts/script.sh export
help
Show usage information and available commands.
bash scripts/script.sh help
version
Display the current version of the refactor skill.
bash scripts/script.sh version
Examples
# Analyze a Python file
REFACTOR_FILE=./src/app.py bash scripts/script.sh analyze
# Check complexity of all functions
REFACTOR_FILE=./src/app.py REFACTOR_THRESHOLD=8 bash scripts/script.sh complexity
# Find dead code in a directory
REFACTOR_FILE=./src/ REFACTOR_RECURSIVE=true bash scripts/script.sh dead-code
# Generate a full report
REFACTOR_FILE=./src/ REFACTOR_FORMAT=text bash scripts/script.sh report
Metrics Calculated
- Cyclomatic Complexity: Number of independent paths through code
- Lines of Code (LOC): Total, code, comment, and blank lines
- Function Count: Number of functions/methods per file
- Nesting Depth: Maximum nesting level in functions
- Dead Code Score: Percentage of potentially unused code
- Maintainability Index: Composite score based on complexity, LOC, and coupling
Supported Languages
Primary support for Python. Basic line-counting and structural analysis for JavaScript, TypeScript, Go, Java, and shell scripts.
Notes
- Analysis is static only — no code execution occurs.
- The tool suggests refactorings but does not modify source files.
- All suggestions are stored in JSONL for tracking and follow-up.
- Use
configto tune complexity thresholds and ignore patterns.
Powered by BytesAgain | bytesagain.com | hello@bytesagain.com
相关 Skills
前端设计
by anthropics
面向组件、页面、海报和 Web 应用开发,按鲜明视觉方向生成可直接落地的前端代码与高质感 UI,适合做 landing page、Dashboard 或美化现有界面,避开千篇一律的 AI 审美。
✎ 想把页面做得既能上线又有设计感,就用前端设计:组件到整站都能产出,难得的是能避开千篇一律的 AI 味。
网页构建器
by anthropics
面向复杂 claude.ai HTML artifact 开发,快速初始化 React + Tailwind CSS + shadcn/ui 项目并打包为单文件 HTML,适合需要状态管理、路由或多组件交互的页面。
✎ 在 claude.ai 里做复杂网页 Artifact 很省心,多组件、状态和路由都能顺手搭起来,React、Tailwind 与 shadcn/ui 组合效率高、成品也更精致。
网页应用测试
by anthropics
用 Playwright 为本地 Web 应用编写自动化测试,支持启动开发服务器、校验前端交互、排查 UI 异常、抓取截图与浏览器日志,适合调试动态页面和回归验证。
✎ 借助 Playwright 一站式验证本地 Web 应用前端功能,调 UI 时还能同步查看日志和截图,定位问题更快。
相关 MCP 服务
GitHub
编辑精选by GitHub
GitHub 是 MCP 官方参考服务器,让 Claude 直接读写你的代码仓库和 Issues。
✎ 这个参考服务器解决了开发者想让 AI 安全访问 GitHub 数据的问题,适合需要自动化代码审查或 Issue 管理的团队。但注意它只是参考实现,生产环境得自己加固安全。
Context7 文档查询
编辑精选by Context7
Context7 是实时拉取最新文档和代码示例的智能助手,让你告别过时资料。
✎ 它能解决开发者查找文档时信息滞后的问题,特别适合快速上手新库或跟进更新。不过,依赖外部源可能导致偶尔的数据延迟,建议结合官方文档使用。
by tldraw
tldraw 是让 AI 助手直接在无限画布上绘图和协作的 MCP 服务器。
✎ 这解决了 AI 只能输出文本、无法视觉化协作的痛点——想象让 Claude 帮你画流程图或白板讨论。最适合需要快速原型设计或头脑风暴的开发者。不过,目前它只是个基础连接器,你得自己搭建画布应用才能发挥全部潜力。