SuperAPI AI 工具集

simplify

编程与开发

查看项目

更新于 10-15 14:13

技能介绍

Simplify 是一个代码简化技能,用于在保持行为不变和有效测试覆盖的前提下,简化指定的代码或代码差异(diff)。其核心目标是产出满足所需行为的最小清晰实现,重点在于减少概念和活动部件,而不是减少行数。

用途 该技能适用于在开发过程中或收敛阶段对代码进行简化。它可以帮助开发者识别并移除不再需要的复杂度,同时确保正确性和测试覆盖不受影响。它也可以用于对明确请求的分支进行审计,但默认只审查请求的更改,不会将小范围清理扩大为整个分支的审计。

主要能力 Simplify 提供了一套结构化的简化流程和优先级。工作流程包括:识别所需行为、不变量、约束和非目标;检查相关 diff 并拆分为逻辑概念;在添加任何内容前查看现有所有者、真实来源、公共路径和决策点;选择概念最少且运行时工作最少的设计;直接实现并复用现有机制;按风险比例验证行为;最后审查代码、测试、命名、注释、文档、配置和相关历史中不再值得保留复杂度的部分。

简化优先级包括:优先删除、复用或直接修改而非新增抽象;保持单一真实来源,避免镜像状态、重叠守卫、重复注册表和补偿机制;避免推测性回退、兼容路径、配置、参数和通用 API;当内联一次性辅助函数能使策略在决策点更清晰时进行内联;偏好直接的正向控制流而非提前返回链或空分支;在热路径上最小化分配、回调重建、订阅、渲染、遍历、I/O 和原生工作;对于文字内容,移除重复并保留最短且自足的措辞或示例。

使用方式 该技能以技能(skill)形式提供,具体安装或调用方式暂未提供。根据其描述,使用时需要指定要简化的代码或 diff。在构建过程中,可以在发现行为时局部应用这些优先级,允许明显临时的插桩或脚手架以加速学习。在收敛阶段,一旦某个逻辑行为切片通过,就简化该切片,移除被取代的尝试,并重新运行聚焦验证。对于明确请求的分支审计,与预期基线进行比较;否则只审查请求的更改。

适用场景 适用于需要简化代码、减少复杂度、清理技术债务或审查代码变更的场景。特别适合在开发过程中对已工作的代码进行简化,或在合并前对分支进行审计。也适用于性能优化,但要求明确指出移除的公共路径工作,并在改变语义或引入权衡时提供基准、性能分析或可重复复现。

限制 该技能强调不为了减少行数而用压缩或取巧的代码替代清晰代码。不擅自扩大任务范围,如果更好的设计需要大范围的 API 或架构变更,应解释并建议而不是未经批准就扩展任务。不触碰无关和用户编写的更改。在没有授权的情况下不重写分支历史。当每个剩余概念都支持需求、不变量、清晰度或可测量的性能需求时停止。只报告实质性的简化、验证和未解决的机会。

其他信息 该技能的官方文本暂未提供。其来源为 legendapp/legend-skills,具体安装命令和平台支持暂未提供。