Token导航 LogoToken导航TokenDH.com
研究检索执行命令github未标认证来源可访问许可证需确认审计未展示

dyad%3aswarm-pr-reviewdyad%3aswarm 公关审查

Agent Skill

dyad%3aswarm-pr-review 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

539

周安装

22

GitHub Stars

20,195

下载量

174
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:dyad%3aswarm-pr-review(dyad%3aswarm 公关审查)
来源仓库:https://github.com/dyad-sh/dyad
仓库路径:skills/dyad%3Aswarm-pr-review
安装命令:
npx skills add https://github.com/dyad-sh/dyad --skill dyad:swarm-pr-review
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/dyad-sh/dyad --skill dyad:swarm-pr-review

简介

dyad%3aswarm-pr-review 使用 Claude Code 的多智能体 swarm 功能进行协作式 PR 审查。

  • 由三位专家角色分别审查 diff 并达成共识,最终输出合并建议与内联评论。
  • 适合复杂变更或多维度评审需求的代码审查场景。
  • 需确认 GitHub API 权限及能否成功调用 agent team 功能。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Swarm PR Review

This skill uses Claude Code's agent team (swarm) functionality to perform a collaborative PR review with three specialized reviewers who discuss and reach consensus.

Overview

  1. Fetch PR diff and existing comments
  2. Create a review team with 3 specialized teammates
  3. Each teammate reviews the diff from their expert perspective
  4. Teammates discuss findings to reach consensus on real issues
  5. Team lead compiles final review with merge verdict
  6. Post summary comment + inline comments to GitHub

Team Members

NameRoleFocus
correctness-reviewerCorrectness & Debugging ExpertBugs, edge cases, control flow, security, error handling
code-health-reviewerCode Health ExpertDead code, duplication, complexity, meaningful comments, abstractions
ux-reviewerUX WizardUser experience, consistency, accessibility, error states, delight

Workflow

Step 1: Determine PR Number and Repo

Parse the PR number and repo from the user's input. If not provided, try to infer from the current git context:

# Get current repo
gh repo view --json nameWithOwner -q '.nameWithOwner'

# If user provides a PR URL, extract the number
# If user just says "review this PR", check for current branch PR
gh pr view --json number -q '.number'

Step 2: Fetch PR Diff and Context

IMPORTANT: Always save files to the current working directory (e.g. ./pr_diff.patch), never to /tmp/ or other directories outside the repo. In CI, only the repo working directory is accessible.

# Save the diff to current working directory (NOT /tmp/ or $SCRATCHPAD)
gh pr diff <PR_NUMBER> --repo <OWNER/REPO> > ./pr_diff.patch

# Get PR metadata
gh pr view <PR_NUMBER> --repo <OWNER/REPO> --json title,body,files,headRefOid

# Fetch existing comments to avoid duplicates
gh api repos/<OWNER/REPO>/pulls/<PR_NUMBER>/comments --paginate
gh api repos/<OWNER/REPO>/issues/<PR_NUMBER>/comments --paginate

Save the diff content and existing comments for use in the review.

Step 3: Create the Review Team

Use TeamCreate to create the team:

TeamCreate:
  team_name: "pr-review-<PR_NUMBER>"
  description: "Code review for PR #<PR_NUMBER>"

Step 4: Create Review Tasks

Create 4 tasks:

  1. "Review PR for correctness issues" - Assigned to correctness-reviewer
  2. "Review PR for code health issues" - Assigned to code-health-reviewer
  3. "Review PR for UX issues" - Assigned to ux-reviewer
  4. "Discuss and reach consensus on findings" - Blocked by tasks 1-3, no owner (team-wide)

Step 5: Spawn Teammates

Spawn all 3 teammates in parallel using the Task tool with team_name set to the team name. Each teammate should be a general-purpose subagent.

IMPORTANT: Each teammate's prompt must include:

  1. Their role description (from the corresponding file in references/)
  2. The full PR diff content (inline, NOT a file path - teammates cannot read files from the team lead's scratchpad)
  3. The list of existing PR comments (so they can avoid duplicates)
  4. Instructions to send their findings back as a structured message

Teammate Prompt Template

For each teammate, the prompt should follow this structure:

You are the [ROLE NAME] on a PR review team. Read your role description carefully:

<role>
[Contents of references/<role>.md]
</role>

You are reviewing PR #<NUMBER> in <REPO>: "<PR TITLE>"

<pr_description>
[PR body/description]
</pr_description>

Here is the diff to review:

<diff>
[Full diff content]
</diff>

Here are existing PR comments (do NOT flag issues already commented on):

<existing_comments>
[Existing comment data]
</existing_comments>

## Instructions

1. Read your role description carefully and review the diff from your expert perspective.
2. For each issue you find, classify it as HIGH, MEDIUM, or LOW severity using the guidelines in your role description.
3. Send your findings to the team lead using SendMessage with this format:

FINDINGS:

[ { "file": "path/to/file.ts", "line_start": 42, "line_end": 45, "severity": "MEDIUM", "category": "category-name", "title": "Brief title", "description": "Clear description of the issue and its impact", "suggestion": "How to fix (optional)" } ]


1. After sending your initial findings, wait for the team lead to share other reviewers' findings.
2. When you receive other reviewers' findings, discuss them:
  - ENDORSE issues you agree with (even if you missed them)
  - CHALLENGE issues you think are false positives or wrong severity
  - ADD context from your expertise that strengthens or weakens an issue
3. Send your discussion responses to the team lead.

Be thorough but focused. Only flag real issues, not nitpicks disguised as issues.

IMPORTANT: Cross-reference infrastructure changes (DB migrations, new tables/columns, API endpoints, config entries) against actual usage in the diff. If a migration creates a table but no code in the PR reads from or writes to it, that's dead infrastructure and should be flagged.

Step 6: Collect Initial Reviews

Wait for all 3 teammates to send their initial findings. Parse the JSON from each teammate's message.

Step 7: Facilitate Discussion

Once all initial reviews are in:

  1. Send each teammate a message with ALL findings from all reviewers (labeled by who found them)
  2. Ask them to discuss: endorse, challenge, or add context
  3. Wait for discussion responses

The message to each teammate should look like:


All initial reviews are in. Here are the findings from all three reviewers:

## Correctness Reviewer Findings:

[list of issues]

## Code Health Reviewer Findings:

[list of issues]

## UX Reviewer Findings:

[list of issues]

Please review the other reviewers' findings from YOUR expert perspective:

- ENDORSE issues you agree are real problems (say "ENDORSE: - ")
- CHALLENGE issues you think are false positives or mis-classified (say "CHALLENGE: - ")
- If you have additional context that changes the severity, explain why

Focus on issues where your expertise adds value. You don't need to comment on every issue.

Step 8: Compile Consensus

After discussion, compile the final issue list:

Issue Classification Rules:

  • An issue is confirmed if the original reporter + at least 1 other reviewer endorses it (or nobody challenges it)
  • An issue is dropped if challenged by 2 reviewers with valid reasoning
  • An issue is downgraded if challenged on severity with good reasoning
  • HIGH/MEDIUM issues get individual inline comments
  • LOW issues go in a collapsible details section in the summary

Step 9: Determine Merge Verdict

Based on the confirmed issues:

  • :white_check_mark: YES - Ready to merge: No HIGH issues, at most minor MEDIUM issues that are judgment calls
  • :thinking: NOT SURE - Potential issues: Has MEDIUM issues that should probably be addressed, but none are clear blockers
  • :no_entry: NO - Do NOT merge: Has HIGH severity issues or multiple serious MEDIUM issues that NEED to be fixed

Step 10: Post GitHub Comments

Summary Comment

Post a summary comment on the PR using gh pr comment:

## :mag: Dyadbot Code Review Summary

**Verdict: [VERDICT EMOJI + TEXT]**

Reviewed by 3 specialized agents: Correctness Expert, Code Health Expert, UX Wizard.

### Issues Summary

| # | Severity | File | Issue | Found By | Endorsed By |
|---|----------|------|-------|----------|-------------|
| 1 | :red_circle: HIGH | `src/auth.ts:45` | SQL injection in login | Correctness | Code Health |
| 2 | :yellow_circle: MEDIUM | `src/ui/modal.tsx:12` | Missing loading state | UX | Correctness |
| 3 | :yellow_circle: MEDIUM | `src/utils.ts:89` | Duplicated validation logic | Code Health | - |

<details>
<summary>:green_circle: Low Priority Notes (X items)</summary>

- **Minor naming inconsistency** - `src/helpers.ts:23` (Code Health)
- **Could add hover state** - `src/button.tsx:15` (UX)

</details>

<details>
<summary>:no_entry_sign: Dropped Issues (X items)</summary>

- **~~Potential race condition~~** - Challenged by Code Health: "State is only accessed synchronously in this context"

</details>

---
*Generated by Dyadbot code review*

Inline Comments

For each HIGH and MEDIUM issue, post an inline review comment at the relevant line using gh api:

# Post a review with inline comments
gh api repos/<OWNER/REPO>/pulls/<PR_NUMBER>/reviews \
  -X POST \
  --input payload.json

Where payload.json contains:

{
  "commit_id": "<HEAD_SHA>",
  "body": "Swarm review: X issue(s) found",
  "event": "COMMENT",
  "comments": [
    {
      "path": "src/auth.ts",
      "line": 45,
      "body": "**:red_circle: HIGH** | security | Found by: Correctness, Endorsed by: Code Health\n\n**SQL injection in login**\n\nDescription of the issue...\n\n:bulb: **Suggestion:** Use parameterized queries"
    }
  ]
}

Step 11: Shutdown Team

After posting comments:

  1. Send shutdown requests to all teammates
  2. Wait for shutdown confirmations
  3. Delete the team with TeamDelete

Deduplication

Before posting, filter out issues that match existing PR comments:

  • Same file path
  • Same or nearby line number (within 3 lines)
  • Similar keywords in the issue title appear in the existing comment body

Error Handling

  • If a teammate fails to respond, proceed with the other reviewers' findings
  • If no issues are found by anyone, post a clean summary: ":white_check_mark: No issues found"
  • If discussion reveals all issues are false positives, still post the summary noting the review was clean
  • Always post a summary comment, even if there are no issues
  • Always shut down the team when done, even if there were errors

File Structure

references/
  correctness-reviewer.md  - Role description for the correctness expert
  code-health-reviewer.md  - Role description for the code health expert
  ux-reviewer.md           - Role description for the UX wizard

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.85%
按下载量换算61

Claude

30.43%
按下载量换算53

Cursor

20.81%
按下载量换算36

Gemini CLI

10.54%
按下载量换算18

安全审计

暂无安全审计结果可展示。

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/dyad-sh/dyad --skill dyad:swarm-pr-review 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills