SuperAPI AI 工具集

code-quality

编程与开发

查看项目

更新于 10-26 16:20

技能介绍

用途

code-quality 是一个代码质量校验技能,适用于代码修改完成之后,检查改动是否干净、合规。它只做修改之后的质量验证,不负责确认原始功能问题是否真的被解决——官方要求先运行验证技能确认功能已修复,再用本技能确认修复质量。

主要能力

技能围绕一个强制的 7 阶段工作流展开,各阶段如下:

  • 阶段 1:架构探索。首先启动 explore-codebase 代理,收集编程语言、现有 linter 配置(如 .eslintrc、.prettierrc、pyproject.toml)、包管理器与已安装 linter、项目结构与约定、框架版本(package.json、go.mod、Cargo.toml)、架构模式(Clean、Hexagonal、MVC)、状态管理(Zustand、Redux、Context)、接口/类型目录位置。此阶段为阻塞项。
  • 阶段 2:文档研究。启动 research-expert 代理,针对每类错误查证官方 API 文档、当前语法与废弃情况、错误模式的最佳实践、版本相关的破坏性变更、安全公告以及语言相关的 SOLID 模式。此阶段为阻塞项。
  • 阶段 3:影响分析。对每个待修改元素用 Grep 查找使用处,评估风险:0-1 处使用为低风险直接进行;2-5 处且兼容为中风险谨慎进行;5 处以上或破坏性变更属高风险,须先向用户标记。此阶段为阻塞项。
  • 阶段 3.5:DRY 重复检测。使用 jscpd(支持 150 多种语言),命令为 npx jscpd ./src --threshold 5 --reporters console,json。重复率低于 3% 为优秀;3-5% 记录、视时间修复;5-10% 应抽取共享逻辑;超过 10% 必须重构。此阶段不阻塞,但结果会用于阶段 5 的修正。
  • 阶段 4:错误检测。运行 linter 发现错误。
  • 阶段 5:精准修正。结合文档、影响分析与 DRY 结果进行修正。
  • 阶段 6:验证。重跑 linter、测试与重复检测。

错误优先级

技能给出错误优先级矩阵:安全类(SQL 注入、XSS、CSRF、认证绕过)属关键级,立即修复;逻辑类(SOLID 违规、内存泄漏、竞态条件)与重复率超过 10% 属高级,同一会话内修复;重复率 5-10% 与性能问题(N+1 查询、废弃 API、低效算法)属中级,视时间修复;格式、命名、缺文档等风格问题属低级。

禁止行为

技能列明多类禁止行为:跳过阶段 1、2、3、3.5 或在阻塞项激活时继续;留下任何 linter 错误、引入新错误、无视 SOLID 或超过 5% 的重复、复制粘贴代码而非抽取共享逻辑、在无测试的项目中新建测试;接口放在组件文件中(零容忍)、业务逻辑写在组件里(应放 hooks)、单体组件不做切分、文件超过 FUSE_SOLID_MAX_LINES 不拆分、全局数据用局部状态;未经用户批准做高风险改动、静默破坏向后兼容、未弃用就修改公共 API。

使用方式

技能通过子代理调用参与工作流,如 Agent(subagent_type="fuse-ai-pilot:explore-codebase", prompt="...")。完整的规范工作流定义在 agents/sniper.md 中,该技能与 sniper 代理共用同一套 7 阶段流程,修改时需同步更新两者。更详细的按语言重复阈值、linter 命令、SOLID 检测模式、文件大小规则、架构规则、验证报告模板与完整流程示例,可参阅技能内的 references/ 目录。

适用场景

适合在完成一次代码修改后做质量把关,尤其关注 SOLID 原则、重复代码、linter 错误与架构约束的项目。若项目完全没有测试,技能规定不应新建测试。具体支持的语言与 linter 范围暂未提供。