AI代码专项审查Skill

AI 相关代码的专项审查要点(Prompt注入面、模型调用凭证、输出处理、成本失控)。当代码包含 LLM 调用、Prompt 组装、RAG/Agent 编排,需要专项审查安全与成本风险时使用。

Sky-Cube 271dbdc 2.7 KB Updated

File contents

AI代码专项审查Skill

适用场景

代码审查环节中,项目包含模型调用 SDK、Prompt 拼接、工具调用、RAG 检索或 Agent 编排代码,需要专项排查 AI 特有风险时使用。普通逻辑缺陷另行使用「代码逻辑缺陷审查Skill」。

执行步骤

  1. 定位 AI 代码入口:搜索模型 SDK 调用点、Prompt 组装处、工具调用定义、模型输出解析处。
  2. 按风险面逐类排查(见下表)。
  3. 每条发现定位:文件 + 行号 + 证据片段 + 触发场景 + 影响 + 修复建议。
  4. 分级:P0 安全/资损/PII 泄露,P1 功能缺陷或高概率触发,P2 隐患。

风险面清单

风险面 排查要点
Prompt 注入面 用户输入未经隔离直接拼入系统提示词;工具调用返回内容未过滤回流给模型;外部文档/网页内容可能被模型解读为指令;输出中要求执行敏感动作的提示词无拦截
模型调用凭证 API Key 硬编码在代码/配置/前端;前端直连模型服务导致密钥暴露;日志明文打印密钥或请求头;凭证无最小权限、无轮换机制
输出处理 模型输出未校验直接拼接 SQL/Shell 命令;输出直接渲染到前端(存储型 XSS);JSON 解析无异常处理与格式校验;输出长度/枚举值无约束直接入业务库
成本失控 无 max_tokens、无超时、无重试上限与退避;历史消息全量回传导致上下文无限膨胀;循环调用 Agent 无步数上限;无调用量监控与费用告警
数据与合规 敏感数据未脱敏直接送入模型;Prompt 日志留存 PII;无调用审计与留存策略

规范要点

  • 每条结论必须附证据:文件路径 + 行号 + 关键代码片段,禁止「存在注入风险」式空泛结论。
  • 注入面问题必须写出具体可利用路径:什么输入 → 进入哪段 Prompt → 模型可能产出什么危害动作。
  • 成本类问题必须量化:给出单次调用 token 量级估算与放大系数(并发用户数 × 调用频次 × 上下文膨胀倍数)。
  • 不能确定是否可被利用时,降级为 P2 并注明「需渗透验证」。

输出模板

## AI代码专项审查报告
| # | 风险面 | 位置(文件:行号) | 证据 | 触发场景 | 影响 | 级别 | 修复建议 |
## 成本量化估算(单次 token × 放大系数)

自检清单

  • 每条发现附文件与行号证据
  • 注入路径描述可复现、非空泛
  • 成本问题有量化估算
  • 四大风险面(注入/凭证/输出/成本)均已覆盖排查

Sky-Cube/fullflow-dev-agent/tree/main/.claude/skills/ai-code-review commit 271dbdc8e2

Frequently asked questions

npx skillmds@latest add sky-cube/ai-skill