SuperAPI AI 工具集

dry

写作与研究

查看项目

更新于 10-15 23:34

技能介绍

用途:在编写或审查代码时消除重复的知识与业务逻辑,适用于用户提出“这是重复的”“我们在两处都有这个”等场景。

主要能力:强调系统中每项知识应有单一权威表示,变更时只需改一处;要求数据、配置、常量、模式定义与校验规则各自只存在一处,其余从中派生;业务规则(如税费计算、权限检查、定价逻辑)集中到一个模块;当两种表示必须同步时,用代码生成代替手工同步。

使用方式:若存在 .agents/stack-context.md 应先读取,并按检测到的技术栈使用惯用模式;框架细节可借助 context7 MCP 或网络搜索,不要猜测。规则包括:区分知识重复与代码重复,外观相同但代表不同业务概念的函数应保持分离;模式稳定后再提取,至少出现两次相同语义再抽象;避免过早 DRY。

适用场景:消除散落在处理器、前端与脚本中的重复业务规则;统一重复的校验逻辑;处理魔法字符串、并行层级、复制粘贴修改等问题。

限制:DRY 针对知识而非语法,外观相同不代表应合并;过早 DRY 会产生错误抽象,比重复更难撤销;与 KISS 存在张力,过度重构可能带来更难理解的间接层;与 YAGNI 存在张力,不应因“可能用到”而提前构建通用工具;跨服务、仓库或团队的 DRY 成本高,可能造成耦合,有时跨边界重复更健康。代码审查清单包括:是否引入已存在的重复业务逻辑、魔法字符串或数字是否应常量化、规则变更需改多少文件、共享抽象是否被迫服务过多场景、是否存在可生成的手工同步表示。相关技能:yagni、kiss、convention-over-configuration。