# AI代码专项审查Skill

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

- Skill: `sky-cube/ai-skill` (Agent Skill)
- Install (CLI): `npx skillmds@latest add sky-cube/ai-skill`
- Raw SKILL.md: https://api.skillmd.com/api/skills/sky-cube/ai-skill/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: Sky-Cube (https://skillmd.com/u/sky-cube)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/sky-cube/ai-skill

---

# 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 × 放大系数)
```

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

