跳转到正文
报告库
用途分类 / 开发辅助

Requesting Code Review Skill 安全审计

作者说它能做什么(原文)

Use when completing tasks, implementing major features, or before merging to verify work meets requirements

第三方安全检查结论

发现安全风险

已检查文件
2
发现的风险
3
会不会运行危险命令?检查是否下载程序后直接运行、让他人远程控制电脑,或藏起要运行的命令。发现 1 项风险
中风险

建议的 worktree 操作可能触发仓库配置的 Git hook

原文依据:1 处
发现了什么

模板允许子代理执行 `git worktree add`。该 Git 操作在存在相应 hook 配置时可能运行本机脚本,而模板没有要求检查或禁用 hook。

为什么需要注意

受污染的本地仓库配置或 hook 可能借评审流程以评审者权限执行命令,访问其可用文件或凭据。

这段证据能说明什么

源码确实允许执行 `git worktree add`,但没有提供该仓库的 Git hook 配置、全局 hooksPath 设置或任何将被执行的脚本,因此无法从现有证据确认本机代码执行风险。若环境配置了适用于该操作的 hook,创建并检出 worktree 可能触发它;影响取决于该外部配置。用户可要求评审禁用 worktree 创建,或先确认仓库及全局 hook 配置。

这项判断针对展示的代码和适用条件,不表示风险已经实际发生。
code-reviewer.md:35来自说明文档打开原文件
    Your review is read-only on this checkout. Do not mutate the working tree, the index, HEAD, or branch state in any way. Use tools like `git show`, `git diff`, and `git log` to inspect history. If you need a working copy of a different revision, check it out into a separate temporary directory (e.g. `git worktree add /tmp/review-[SHA] [SHA]`) — never move HEAD on this checkout.
会不会泄露文件和密钥?检查是否发送含密码或密钥的文件,以及代码里是否直接写了密钥。未发现风险
会不会删除文件或一直在后台运行?检查是否大范围删除文件、改写磁盘,或设置自动启动。发现 1 项风险
中风险

所谓只读评审可创建未清理的临时 Git worktree

原文依据:1 处
发现了什么

模板允许运行 `git worktree add /tmp/review-[SHA] [SHA]`。这会创建另一份项目文件并登记 worktree,但模板没有要求清理;因此整体流程并非完全无状态的只读操作。

为什么需要注意

临时目录可能长期保留源代码,并在仓库的 Git 管理数据中留下 worktree 记录;共享机器上的本地暴露程度取决于目录权限。

模板虽称评审为“只读”,但明确允许 `git worktree add`。在采用该分支时,它会在 `/tmp` 写出另一份工作目录,并在仓库中登记 worktree;所给完整源码没有清理要求。因此评审可能留下项目副本、占用磁盘,并使后续 worktree 管理受到残留登记影响。用户可限制评审只能使用 `git show/diff/log`,或要求使用隔离目录并保证清理。

code-reviewer.md:33来自说明文档打开原文件
    ## Read-Only Review    Your review is read-only on this checkout. Do not mutate the working tree, the index, HEAD, or branch state in any way. Use tools like `git show`, `git diff`, and `git log` to inspect history. If you need a working copy of a different revision, check it out into a separate temporary directory (e.g. `git worktree add /tmp/review-[SHA] [SHA]`) — never move HEAD on this checkout.
会不会绕过安全保护?检查是否跳过网站安全验证、开放过多文件权限,或取消操作前的确认。未发现风险
会不会误导 AI 或隐藏内容?检查工作说明是否要求 AI 忽略你的指令、干扰检查结果,或夹带看不见的文字。发现 1 项风险
中风险

需求文本未经隔离便被嵌入子代理提示词

原文依据:3 处
发现了什么

模板把 `[PLAN_OR_REQUIREMENTS]` 直接放进对子代理的指令中,却没有要求将其中内容视为不可信数据。需求文档或任务文本中的代理指令可能被误当作评审命令。

为什么需要注意

恶意或受污染的需求内容可能影响评审结论,或诱导子代理忽略只读约束并执行额外操作。

该 Skill 明确要求把计划或需求内容填入子代理模板,而模板将其直接置于评审提示词正文中,没有说明这部分只是待审数据、不得执行其中的指令。如果需求文件或任务文本含有面向代理的命令,评审子代理可能把它们当成自己的指令,影响其读取文件、运行命令或评审结论。用户可要求作者为需求内容设置清晰的数据边界,并明确忽略其中的代理指令。

code-reviewer.md:10来自说明文档打开原文件
  description: "Review code changes"  prompt: |    You are a Senior Code Reviewer with expertise in software architecture,    design patterns, and best practices. Your job is to review completed work    against its plan or requirements and identify issues before they cascade.    ## What Was Implemented    [DESCRIPTION]    ## Requirements / Plan    [PLAN_OR_REQUIREMENTS]
查看另外 2 个位置
code-reviewer.md:137来自说明文档打开原文件
**Placeholders:**- `[DESCRIPTION]` — brief summary of what was built- `[PLAN_OR_REQUIREMENTS]` — what it should do (plan file path, task text, or requirements)- `[BASE_SHA]` — starting commit- `[HEAD_SHA]` — ending commit
SKILL.md:34来自说明文档打开原文件
Dispatch a `general-purpose` subagent, filling the template at [code-reviewer.md](code-reviewer.md)**Placeholders:**- `{DESCRIPTION}` - Brief summary of what you built- `{PLAN_OR_REQUIREMENTS}` - What it should do- `{BASE_SHA}` - Starting commit- `{HEAD_SHA}` - Ending commit
会不会偷偷改推广链接或收款方?检查是否强制替换推广链接或收款对象,同时要求隐瞒更改。未发现风险

Skill 逻辑拆解

5 个说明模块

该 Skill 要求在重大功能完成后及合并前派出通用子代理,并向其提供实现说明、需求以及两个 Git 提交标识。

查看原文
SKILL.md:14来自说明文档打开原文件
**Mandatory:**- After each task in subagent-driven development- After completing major feature- Before merge to main
SKILL.md:32来自说明文档打开原文件
**2. Dispatch code reviewer subagent:**Dispatch a `general-purpose` subagent, filling the template at [code-reviewer.md](code-reviewer.md)**Placeholders:**- `{DESCRIPTION}` - Brief summary of what you built- `{PLAN_OR_REQUIREMENTS}` - What it should do- `{BASE_SHA}` - Starting commit- `{HEAD_SHA}` - Ending commit

评审模板要求子代理检查指定提交范围的完整差异,因此该范围内的源代码和可能误提交的敏感内容都会进入子代理的评审上下文。

查看原文
code-reviewer.md:23来自说明文档打开原文件
    ## Git Range to Review    **Base:** [BASE_SHA]    **Head:** [HEAD_SHA]    ```bash    git diff --stat [BASE_SHA]..[HEAD_SHA]    git diff [BASE_SHA]..[HEAD_SHA]    ```

模板明确限制评审为只读、禁止移动当前检出的 HEAD,也禁止评审子代理继续派生其他子代理。

查看原文
code-reviewer.md:33来自说明文档打开原文件
    ## Read-Only Review    Your review is read-only on this checkout. Do not mutate the working tree, the index, HEAD, or branch state in any way. Use tools like `git show`, `git diff`, and `git log` to inspect history. If you need a working copy of a different revision, check it out into a separate temporary directory (e.g. `git worktree add /tmp/review-[SHA] [SHA]`) — never move HEAD on this checkout.    ## You Do Not Dispatch Subagents    Do all of this review yourself. Never spawn a subagent to review part    of the diff, and never spawn another reviewer for a second opinion.
从这里开始 · 工作说明SKILL.md
requesting-code-review
连线表示工作说明包含的模块,不是实际运行顺序。点击模块可查看原文。

文件引用关系图

1 处引用
哪些文件发起引用引用了什么
连线表示真实的文件引用,不是运行顺序。点击节点可高亮相关连线,并查看具体文件和原文位置。虚线表示还有文件需要定位。
文件与检查记录2 个文件

检查范围与遗漏

逐文件查看涉及的内容

下方列出本次涉及的原文范围;纳入检查不代表已查清所有问题。

  • SKILL.md已纳入全文
  • code-reviewer.md已纳入全文

这份报告只针对上方版本。我们看了拿到的代码和说明文件,没有实际运行 Skill,也没有检查它另外安装的软件包。因此,这不是“保证安全”的承诺;换了版本或使用环境,结果也可能不同。

  • SKILL.md工作说明
  • code-reviewer.md配套文件

代码和说明中提到的操作

运行命令
SKILL.md:27来自说明文档打开原文件
**1. Get git SHAs:**```bashBASE_SHA=$(git rev-parse HEAD~1)  # or origin/main
code-reviewer.md:28来自说明文档打开原文件
    ```bash    git diff --stat [BASE_SHA]..[HEAD_SHA]
读取了多少行
278
文件校验值(用于核对版本)
cc817b7b6ab0413a616c7558540c112eecc0ada3d1e3b83f392c0b8d2ac7d97d