关于 code-refactor
code-refactor 是一个将代码重构任务委派给 agents-plugin:refactor Agent 的 Skill,面向指定文件或目录。它聚焦函数式编程改进,并要求保持行为与外部 API 契约不变。
主要功能
- 01将指定路径的重构委派给专用 Agent
- 02识别副作用、可变状态和深层嵌套
- 03用纯函数、不可变转换和组合改进代码
- 04要求保留现有行为与外部 API
- 05建议确保现有测试通过
适用场景
- 01拆分混合业务逻辑与 I/O 的代码
- 02减少函数中的状态或参数原地修改
- 03简化可替换为高阶函数的命令式循环
- 04降低深层嵌套对代码意图的遮蔽
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill code-refactor安装后在 Claude Code 中输入/code-refactor确认已加载。
详细介绍
适用场景
| 适合使用此技能的场景…… | 适合使用其他技能的场景…… |
|---|---|
| 文件或目录中混杂着副作用和业务逻辑 | 跨文件消除重复代码 → /code:dry-consolidation |
| 函数会修改状态或参数 | 只检测代码异味而不修复 → /code:antipatterns |
| 业务逻辑与 I/O 或日志记录纠缠在一起 | 审查整体质量和架构 → /code:review |
| 命令式循环可以替换为 map/filter/reduce | 涉及 10 个以上文件的大型多阶段重构 → /workflow:checkpoint-refactor |
| 深层嵌套掩盖了代码意图 |
上下文
- 目标路径:!
echo "$1"
参数
$1:必需的待重构文件路径或目录
你的任务
将此任务委派给 agents-plugin:refactor Agent。
使用 Agent 工具,并将 subagent_type 设为 agents-plugin:refactor,以重构指定代码。将上下文中收集的所有信息传递给该 Agent。
重构 Agent 应当:
-
找出重构机会——检查以下函数式编程代码异味:
- 计算函数中混杂副作用(变更、I/O、日志记录)
- 原地修改参数或外部状态
- 可用
map、filter、reduce或flatMap替换的命令式循环(for、while) - 多个函数访问共享的可变状态
- 可通过提前返回或守卫子句简化意图的深层嵌套
- 调用处的业务逻辑与 I/O 纠缠在一起
- 重复的转换逻辑
-
应用函数式编程原则:
- 纯函数:将计算提取为无副作用的函数——相同输入始终产生相同输出
- 不可变性:用数据转换(
spread、map、Object.assign、结构化副本)替代原地变更 - 组合:用小巧、专注且职责单一的函数构建复杂行为
- 高阶函数:用
map、filter、reduce、flatMap、find替换命令式循环 - 明确副作用:将 I/O、日志记录和变更推至最外层边界;保持内部函数纯粹
- 提前返回/守卫子句:在顶部验证前置条件,提前返回以避免深层嵌套
- DRY/KISS:消除重复;优先选择有效的最简单结构
-
保持功能不变:
- 确保所有现有测试通过
- 保持外部 API 契约
- 不改变行为
-
输出重构后的代码,并确保结构清晰
向 Agent 提供:
- 目标文件或目录路径
- 检测到的编程语言
- 项目中的风格指南示例
该 Agent 擅长:
- 保持行为不变的代码转换
- 函数式重构模式
- 代码异味检测与修复
- 用于查找相似模式的语义代码搜索
相关技能
- 如果重构前需要复杂度指标 →
/code:complexity - 如果需要合并重复代码 →
/code:dry-consolidation - 如果尚未配置代码检查标准 →
/configure:linting
评论
支持 Markdown