mcpField
P
posting-review-summary

posting-review-summary

github.com/bitwarden测试与质量162102 次安装今天更新
代码仓库

关于 posting-review-summary

posting-review-summary 是面向代码审查 Agent 的技能,规定审查摘要的内容、格式和输出位置。它根据本地审查、Agent 模式或 GitHub Actions 等上下文选择写入文件或更新评论。

主要功能

  1. 01按上下文选择摘要输出位置
  2. 02规定审查结论与摘要格式
  3. 03评估 PR 元数据是否存在实质缺陷
  4. 04按严重程度组织审查发现
  5. 05要求标明未覆盖的审查步骤

适用场景

  1. 01将本地代码审查结果写入摘要文件
  2. 02在 Agent 模式下准备供后续步骤读取的摘要
  3. 03通过 GitHub MCP 工具更新审查评论

MCP 相关

在 GitHub Actions 标签模式中,使用 mcp__github_comment__update_claude_comment 更新置顶评论;Agent 模式和本地模式不调用该工具。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bitwarden/ai-plugins --skill posting-review-summary

安装后在 Claude Code 中输入/posting-review-summary确认已加载。

详细介绍

发布审核摘要

上下文检测

按以下顺序检查上下文——使用第一个匹配项:

上下文检测方式操作
本地输出生效提示词开头的指令块中有一行 OUTPUT: local files,或调用方将本地文件指定为当前生效的目标。先检查这一项,绝不能根据当前可用的工具来判断写入工作目录中的 review-summary.md
本地目标,无 GitHub 目标审核目标是本地更改,且调用方未声明 GitHub 目标写入工作目录中的 review-summary.md
Agent 模式提示词中提供了固定评论上下文(评论 ID + `` 标记)将摘要写入 /tmp/review-summary.md
GitHub Actions(标签模式)mcp__github_comment__update_claude_comment 可用,且不存在固定评论上下文通过 MCP 工具更新固定评论
本地审核既没有 Agent 模式上下文,也没有 MCP 工具写入工作目录中的 review-summary.md

**禁止:**不得使用 gh pr comment 创建摘要评论。

PR 元数据评估

如果 PR 标题、描述或测试计划确实存在不足,请在“代码审核详情”折叠部分中将其列为一项发现。

规则
  • 不要评论细微改进
  • 不要评论虽不完美但足够合格的元数据
  • 绝不要将其作为行内评论
  • PR 元数据评估的反馈不得超过 3 行
示例

确实存在不足的情况:

  • 标题就是“fix bug”“update”“changes”或单个词
  • 描述为空或只有“See Jira”
  • UI 有更改,但没有任何截图
  • 没有测试计划,且更改可以测试

足够合格(不要标记):

  • 标题描述了更改,即使不够完美:“Fix login issue for SSO users”
  • 描述不为空,且对更改有所说明,即使很简短
  • 测试计划引用了包含测试细节的 Jira 任务
格式
- ❓ **QUESTION**: PR title could be more specific
  - Suggested: "Fix null check in UserService.getProfile"

摘要格式

## 🤖 Bitwarden Claude Code Review

**Overall Assessment:** APPROVE / REQUEST CHANGES

[Up to 4 neutral sentences describing what was reviewed]

[Optional **Not covered:** line - only when a review step the diff called for did not run and nothing else in this review covered its ground]

<details>
<summary>Code Review Details</summary>

[Findings grouped by severity - see ordering below]

[Optional PR Metadata Assessment - only for truly deficient metadata]

</details>

无结论

如果没有进行审查——例如无法生成差异、差异为空、无法识别拉取请求,或因其他原因未能进行审查——请使用此表单代替上面的模板,而不是将其作为模板中的第三种取值。不要给出 APPROVE 或 REQUEST CHANGES;对未经审查的差异给出结论,还不如不下结论。

根据上面的上下文检测和下面的输出执行中各模式的步骤,此表单会发送到当前模式下正常摘要的同一位置——包括在 Agent 模式下追加标记;没有该标记,下次运行就无法找到固定评论,并会重复创建评论。此表单不会改变输出位置——如果停止流程没有写入任何内容,就会留下一个称审查未发现问题的占位评论,而此表单正是为了避免这种情况。

原因应放在评估句的位置,置于 <details> 之外,理由与覆盖范围说明相同——没人展开的原因,就没人会读。因此,此处完全不使用 <details> 块,因为没有发现项可放入其中;也不需要覆盖范围说明,因为此表单已说明整个审查并未进行。

## 🤖 Bitwarden Claude Code Review

**Overall Assessment:** NO VERDICT

[One or two sentences: what was attempted, what stopped it, and what the caller should do next]

未覆盖的内容

覆盖范围说明不是发现项:它没有可引用的 file:line,而且说明的是哪些内容_未_经过审查,这与它上方的评估句恰恰相反。因此,它应单独占一行,放在 <details> 块之外,以免被批准结论掩盖。

当差异要求执行的某个审查步骤未能运行,且本次审查中的其他环节也未覆盖其范围时,请输出此说明——例如,无法通过此路径联系到审查者,或者审查者出错或未返回可用结果。仅仅是无法使用的可选增强技能不符合此条件:这类情况会回退到你已有的审查知识,因此相关内容仍然得到了覆盖。请说明未审查的文件、原因,以及由哪个其他路径覆盖这些文件。请给出实际适用于当前路径的原因——不要断言无法核实的安装状态,也不要提出同样会被所述原因阻止的补救方法。

例如,在 bitwarden-code-reviewer 路径中,如果 Task 不可用,那么无论安装了什么,都无法启动 plugin-dev:skill-reviewer:

**Not covered:** Skill review did not run — this review path cannot launch
`plugin-dev:skill-reviewer`, so `plugins/example/skills/doing-a-thing/SKILL.md` was not checked
for description quality, length, or progressive disclosure.
`performing-multi-agent-code-review` covers them where `plugin-dev` is installed.

如果差异要求的所有审查步骤都已运行,则完全省略此行。掩盖未审查内容的批准结论,会让人误以为这些内容也通过了审查。

依赖项变更表

如果 PR 差异包含依赖清单文件的变更,请在 <details> 块内、发现项列表之后、可选的 PR 元数据评估之前,添加 依赖项变更小节。

仅当存在有意义的版本变更时才显示此表——如果只有锁定文件变动而清单未变更,则不显示。

### Dependency Changes

| Package           | Change                | Ecosystem |
| ----------------- | --------------------- | --------- |
| `@foo/bar`        | New (1.2.0)           | npm       |
| `lodash`          | 3.x → 4.x (**major**) | npm       |
| `Newtonsoft.Json` | 13.0.1 → 13.0.3       | NuGet     |
| `old-package`     | Removed               | npm       |

对于主版本升级,请将“major”一词设为粗体。新增项标记为“New (版本)”,移除项标记为“Removed”。

Details 部分中的发现项

排序: 按严重程度分组,并严格按以下顺序排列:

  1. ❌:CRITICAL
  2. ⚠️:IMPORTANT
  3. ♻️:DEBT
  4. 🎨:SUGGESTED
  5. ❓:QUESTION

完全省略没有发现项的类别。

每条发现项的格式:

- [emoji]: [One-line description]
  - `filename.ts:42`

示例:

<details>
<summary>Code Review Details</summary>

- ❌ : SQL injection in user query builder
  - `src/auth/queries.ts:87`
- ⚠️ : Missing null check on optional config
  - `src/config/loader.ts:23`

</details>

输出执行

Agent 模式(固定评论)

当提示中提供了固定评论上下文(评论 ID + 标记)时:

  1. 使用 Write 工具将摘要写入 /tmp/review-summary.md
  2. 在文件内容末尾追加 \n\n
  3. 不要使用 mcp__github_comment__update_claude_comment
  4. 不要使用 gh pr comment 或 gh api

工作流的后置步骤会读取此文件,并自动更新占位评论。

GitHub Actions(标签模式)
Use mcp__github_comment__update_claude_comment to update the sticky comment with the summary.
本地
Write summary to review-summary.md in working directory.

评论

支持 Markdown