mcpField
S
simplify

simplify

github.com/scottwater开发172 次安装1 天前更新
代码仓库

关于 simplify

simplify 是面向编码任务的技能,指导 Agent 在限定范围内精简实现,同时保持可观察行为和公开契约不变。它覆盖边界确认、修改、验证与结果报告。

主要功能

  1. 01检查代码、调用方、测试和差异
  2. 02识别重复逻辑与不必要抽象
  3. 03限定修改范围并保护既有行为
  4. 04运行相关测试并审查差异
  5. 05报告改动、验证结果和风险

适用场景

  1. 01精简当前工作区的待提交改动
  2. 02在不改变接口的前提下整理实现
  3. 03核验简化是否保留重要行为

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/scottwater/skills --skill simplify

安装后在 Claude Code 中输入/simplify确认已加载。

详细介绍

简化

在不改变可观察行为的前提下,精简用户要求的实现。

1. 确定边界

阅读仓库指南,并检查实现、调用方、测试和当前差异。按用户提供的范围开展工作。如果用户未指定范围,则将本次精简限定在当前工作树中的待处理更改;不要把它扩大为整个仓库的清理。

确定实现必须保留的行为和公共契约。区分属于此实现的更改与用户的无关工作。如果预期行为或归属边界存在重大歧义,先询问再编辑。

2. 找出实质性的精简机会

检查以下方面:

  • 重复的逻辑、数据、辅助函数或测试;
  • 可以更直接表达的控制流或状态;
  • 不必要的间接层、包装器、抽象或配置;
  • 通过重新组织可让代码归属更清晰的零散代码;
  • 当前范围内的实现并不需要的兼容路径或防御性分支;
  • 与行为无关的注释、格式更改、重命名和其他改动;
  • 重复覆盖、断言实现细节或无法提供有意义回归信号的测试。

优先删除代码并采用直观的局部实现,而不是引入新抽象。只有当抽象确实维护不变量、减少真实调用方之间的重复,或保护稳定边界时,才保留它。不要以隐藏耦合为代价换取表面上的简单。

保留能够证明重要行为、边界、失败模式或回归的测试。只有当其他测试已提供相同信号,或所覆盖的行为已被移除时,才删除测试;剩余测试仍须能明确验证保留的契约。

3. 精简实现

进行最小且连贯的修改,切实降低复杂度或减少无关改动。保留外部行为、公共接口、数据格式、错误、附带效应和支持的边缘情况,除非用户明确授权更改。

遵守既定边界。不要仅为保持一致而重写周边代码,也不要覆盖脏工作树中的无关工作。

4. 验证行为保留情况

检查最终差异,确认没有意外的行为变化或不必要的修改。先运行最相关的测试,然后运行仓库要求的其他更全面测试、类型检查、Lint 或格式检查命令。如果删除了测试,请确认保留的测试仍覆盖关键行为。

如果验证失败,请修正精简方案或撤销不安全的部分。绝不要为了让验证通过而弱化断言或删除失败的测试。

5. 报告

总结以下内容:

  • 精简或删除了什么;
  • 为什么行为得以保留;
  • 运行了哪些验证及其结果;
  • 哪些部分未作修改,因为精简它们会增加风险或改变行为。

只有当限定范围内的实现确实更简单、最终差异不包含本次精简引入的无关改动,并且保留的行为已通过新的验证得到确认时,本次精简才算完成。

评论

支持 Markdown