posting-review-summary

작성자: bitwarden

모든 인라인 댓글이 게시된 후 최종 요약 코멘트를 게시할 때 이 스킬을 사용하세요. 모든 검토 결과가 나온 후 코드 리뷰의 마지막 단계로 적용하세요.

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

Posting Review Summary

Context Detection

Check contexts in this order — use the first match:

ContextHow to DetectAction
Local output in effectAn OUTPUT: local files line in the prompt's leading directive block, or a caller that passes local files as the destination in effect. Check this first, and never key it on which tools happen to be availableWrite to review-summary.md in working directory
Local target, no GitHub destinationThe review target is local changes and no caller declared a GitHub destinationWrite to review-summary.md in working directory
Agent ModeSticky comment context provided in prompt (comment ID + <!-- bitwarden-code-review --> marker)Write summary to /tmp/review-summary.md
GitHub Actions (tag mode)mcp__github_comment__update_claude_comment available AND no sticky comment contextUpdate sticky comment via MCP tool
Local reviewNeither agent mode context nor MCP tool availableWrite to review-summary.md in working directory

FORBIDDEN: Do not use gh pr comment to create summary comments.

PR Metadata Assessment

If PR title, description, or test plan is genuinely deficient, add as a finding in the Code Review Details collapsible section.

Rules

  • DO NOT comment on minor improvements
  • DO NOT comment on adequate-but-imperfect metadata
  • NEVER add as an inline comment
  • DO NOT exceed 3 lines of feedback on the PR Metadata Assessment

Examples

Genuinely deficient means:

  • Title is literally "fix bug", "update", "changes", or single word
  • Description is empty or just "See Jira"
  • UI changes with zero screenshots
  • No test plan AND changes are testable

Adequate (DO NOT flag):

  • Title describes the change even if imperfect: "Fix login issue for SSO users"
  • Description exists and explains the change, even briefly
  • Test plan references Jira task with testing details

Format

- ❓ **QUESTION**: PR title could be more specific
  - Suggested: "Fix null check in UserService.getProfile"

Summary Format

## 🤖 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>

No Verdict

Use this form instead of the template above — not as a third value inside it — when nothing was reviewed — the diff could not be produced, it came back empty, the pull request could not be identified, or any other reason the review did not happen. Emit no APPROVE or REQUEST CHANGES; a verdict over an unreviewed diff is worse than none.

It goes to the same destination the mode you are in would have used for a normal summary, by the routing in Context Detection above and the per-mode steps in Output Execution below — including the marker append in agent mode, without which the next run cannot find the sticky comment and duplicates it. Nothing about this form changes where output lands — a stop that writes nowhere leaves a placeholder comment reading as a review that found nothing, which is the outcome the form exists to prevent.

The reason goes in the assessment-sentence position, outside <details>, for the same reason the coverage note does — a reason nobody expands is a reason nobody reads. There is no <details> block at all here, because there are no findings to put in one, and no coverage note either: this form already says the whole review did not happen.

## 🤖 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]

Not Covered

A coverage note is not a finding: it has no file:line to cite and it says what was not reviewed, which is the opposite of the assessment sentences above it. So it gets its own line, outside the <details> block, where an approval cannot bury it.

Render it when a review step the diff called for did not run and nothing else in this review covered its ground — this path cannot reach that reviewer at all, or the reviewer errored or returned nothing usable. An optional enrichment skill that was merely unavailable does not qualify: those fall back to your existing review knowledge, so the ground was still covered. Name the files that went unreviewed, why, and which other path covers them. Give the reason that actually applies on your path — do not assert an install state you cannot check, and do not point at a remedy the stated reason would also block.

Example, the bitwarden-code-reviewer path, where Task is unavailable so plugin-dev:skill-reviewer cannot be launched whatever is installed:

**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.

Omit the line entirely when every review step the diff called for ran. An approval that hides what went unreviewed reads as a pass on it.

Dependency Changes Table

When the PR diff includes dependency manifest file changes, add a Dependency Changes subsection inside the <details> block, after the findings list and before the optional PR Metadata Assessment.

Only render this table when there are meaningful version changes — not for lock file-only churn with no manifest changes.

### 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       |

Bold the word "major" for major version bumps. Mark new additions as "New (version)" and removals as "Removed".

Findings in Details Section

Ordering: Group findings by severity in this exact order:

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

Omit empty categories entirely.

Format per finding:

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

Example:

<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>

Output Execution

Agent Mode (Sticky Comment)

When sticky comment context is provided in the prompt (comment ID + marker):

  1. Write the summary to /tmp/review-summary.md using the Write tool
  2. Append \n\n<!-- bitwarden-code-review --> at the end of the file content
  3. Do NOT use mcp__github_comment__update_claude_comment
  4. Do NOT use gh pr comment or gh api

The workflow post-step will read this file and update the placeholder comment automatically.

GitHub Actions (Tag Mode)

Use mcp__github_comment__update_claude_comment to update the sticky comment with the summary.

Local

Write summary to review-summary.md in working directory.

bitwarden의 다른 스킬

figma-to-angular
bitwarden
이 스킬은 Figma 디자인 스펙을 Bitwarden Clients 모노레포 내에서 Storybook 스토리와 함께 완전히 구현된 Angular 컴포넌트로 변환합니다. 출력물은 모든 코드베이스 규칙을 따르면서 시각적으로 디자인과 일치해야 합니다.
force-multiplier
bitwarden
하나의 의도를 여러 대상에 동시에 적용합니다 — Bitwarden 생태계 전반의 저장소 플릿, 또는 모노레포 내 많은 프로젝트 — N개의 일관된 작업으로, …
analyzing-git-sessions
bitwarden
특정 기간이나 커밋 범위 내의 Git 커밋과 변경 사항을 분석하여 코드 리뷰, 회고, 작업 로그 또는 세션을 위한 구조화된 요약을 제공합니다.
coordinating-cross-team-breakdown
bitwarden
크로스 팀 리뷰 및 Bitwarden 기술 분석에 대한 승인을 조정합니다. 영향을 받는 팀을 식별하고, 파트 3 승인 테이블을 작성하며, 후속 조치를 진행할 때 사용하세요.
assessing-jira-issue-relevance
bitwarden
사용자가 개별 Jira 이슈 키를 제공하고 그것이 여전히 관련이 있는지, 여전히 적용 가능한지, 여전히 보류 중인지, 여전히 버그인지, 수정되었는지, 또는 …인지 물을 때 사용합니다.
assessing-test-coverage
bitwarden
특정 변경(PR, Jira 키, Tech Breakdown 문서, Testmo CSV, 변경된 경로 또는 명명된 항목)에 대해 이미 존재하는 테스트 커버리지를 파악할 때 사용합니다.
retrospecting
bitwarden
Claude Code 세션에 대한 포괄적인 분석을 수행하며, git 히스토리, 대화 로그, 코드 변경 사항을 검토하고 사용자 피드백을 수집하여 생성합니다…
reviewing-incremental-changes
bitwarden
이미 코멘트가 달린 PR을 재검토하거나 초기 리뷰 후 개발자의 변경 사항에 응답할 때 이 스킬을 사용하세요. PR 스레드가 존재하거나...