SuperAPI AI 工具集

sniff-fix

编程与开发

查看项目

更新于 10-15 09:50

技能介绍

用途

sniff-fix 是 sniff 技能流程中的一个步骤,用于扫描项目并自动修复安全的问题。它本身不是独立入口,而是由 sniff 技能自身的流程调用。资料说明,user-invocable: false 这一 frontmatter 键仅被 Claude Code 支持,因此在其他 agent 中该文件可能显示为独立命令,但应将其视为 sniff 运行中的一个步骤,而非入口点。

主要能力

该技能使用统一的 sniff MCP 工具,以 mode: "scan" 和项目的 rootDir 获取所有发现项。如果统一工具不可用,则使用旧版 sniff_scan。

对于每个发现项,在安全的前提下进行修复:

  • debug-debugger:移除 debugger; 行
  • debug-console-log:移除 console.log/debug/info 行
  • placeholder-lorem:向用户标记(需要手动替换)
  • hardcoded-localhost:建议使用环境变量
  • api-hardcoded-secret:移除密钥并建议使用环境变量

使用方式

该技能由 sniff 流程调用,用户也可通过 /sniff-fix 触发。执行时会先扫描项目,然后自动修复可安全处理的问题。资料强调:不要在未告知用户所做更改的情况下自动修复。修复完成后,需重新运行统一 sniff 的 mode: "scan" 以验证问题已解决。

示例流程:

用户:/sniff-fix

助手:我会扫描并尽可能修复。

发现 8 个问题。自动修复 4 个:

  • 从 src/handler.ts:42 移除 debugger
  • 从 src/api.ts:8 移除 console.log
  • 从 src/api.ts:15 移除 console.log
  • 从 src/utils.ts:3 移除 console.debug

4 个问题需要手动处理:

  • src/config.ts:8 - 硬编码 localhost URL(替换为环境变量)
  • README.md:28 - 指向 ./missing-guide.md 的失效链接
  • ...

重新扫描... 剩余 4 个问题(从 8 个减少)。

适用场景

适用于在 sniff 扫描流程中自动清理调试残留(如 debugger、console 调用)以及处理部分可安全修复的问题。

限制

该技能并非独立入口,应作为 sniff 运行中的一步。部分问题(如占位符文本、硬编码 localhost、硬编码密钥)不会自动修复,而是提示用户手动处理或建议使用环境变量。资料未提供关于收费、价格、平台支持范围或具体效果保证的信息。