用途
Code Refactoring 技能的目标是在复杂度成为问题之前加以预防,解决用户“很少知道何时该重构、往往意外发现文件过大”的痛点。它会主动监控文件大小与复杂度模式,在做出可能加重问题的改动之前提醒用户。
主要能力
- 监控文件行数,按语言设定阈值并在 150/200/300 行等节点给出提示。
- 在编辑文件前检查行数:150-200 行警告、200-300 行告警、300 行以上要求先重构。
- 在创建文件过程中跟踪行数,达到 150 行暂停并建议结构拆分,达到 200 行建议立即抽取。
- 读取文件后发现超过 300 行时,主动建议重构。
- 检测通用模式:大型数据结构(超过 20 行)、复杂条件(5 个以上分支)、深层嵌套(超过 3 层)、重复代码块、过长参数列表(超过 5 个)。
- 检测 JavaScript/TypeScript/React 模式:5 个以上硬编码数据项、4 个以上 useState/useEffect、Modal/Dialog、复杂表单、大型 switch。
- 检测 Python 模式:类超过 300 行、函数超过 50 行、模块超过 500 行、方法超过 15 个、复杂 init。
- 提供文件大小指南:JS/TS/React 组件 100-200 行理想、200-300 行需关注、300 行以上必须拆分;Python 模块 150-250 行良好、250-400 行考虑拆分、400 行以上拆分;Python 类 100-200 行聚焦、200-300 行检查单一职责、300 行以上拆分;通用文件 150-250 行可维护、250-400 行趋于复杂、400 行以上需重构。
- 可执行重构:在用户批准后逐步抽取并提交,每步验证,失败自动回滚。
- 提供代码库审计模式,扫描既有技术债并按严重程度分类和排序。
使用方式
技能被调用时,第一步是检查后台文件监控器的未读告警,运行命令:node ~/.claude/plugins/marketplaces/custom-skills/code-refactoring/scripts/check-alerts.js。如有告警则显示并询问用户是否现在或稍后重构;无告警则继续常规流程。用户也可用 /check-refactor-alerts 手动检查告警。
检查文件大小可用:wc -l [target-file],或使用辅助脚本 bash ~/.claude/plugins/marketplaces/custom-skills/code-refactoring/scripts/check-size.sh [filename],以及 bash scripts/check-size.sh src/ '*.tsx'。
查找超限文件:find src -name "*.tsx" -exec wc -l {} \; | awk '$1 > 200' | sort -rn。
执行阶段流程:先展示重构计划并请求用户批准(选项包括 Yes 立即执行、No 跳过、Later 保存计划为 refactoring-plan-[filename].md、Review 查看详细步骤);用户同意后创建备份提交、验证起始状态、逐步执行(每步抽取→验证→提交)、最终完整测试,任一步失败自动回滚。
适用场景
适用于 JavaScript/TypeScript(React、Node)、Python 和通用代码库。可用于编辑大文件前、创建新文件时、读取超过 200 行文件后,以及用户要求审计代码库、查找大文件、检查技术债、扫描重构机会或规划大规模重构时。审计时按严重程度分类(Critical >300、High 200-300、Medium 150-200、Good <150),并使用公式 (Size/100) + (Change Frequency × 2) + (Business Impact × 3) 排定优先级。
限制
资料中未提供该技能的具体收费、价格、平台支持范围与性能保证。分类选择依据其明确的编程用途,属于编程与开发类别。实际抽取与拆分操作需用户明确批准后才会执行。