Skip to content
Development
Skill

/load-pr-review

Load GitHub PR review comments into AI session — analyze, triage, plan. Default: analysis-only (no auto-fix). Use when: reviewing PR feedback, planning fixes, addressing review comments, replying to reviewers. Not for: creating reviews (use codex-review-fast), creating PRs (use

From plugin
sd0x-dev-flow
18899 skills16 agents5 hooks
Install
$ npx -y skills add sd0xdev/sd0x-dev-flow --skill load-pr-review --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/load-pr-review

Context preview

The summary Claude sees to decide when to auto-load this skill.

Load GitHub PR review comments into AI session — analyze, triage, plan. Default: analysis-only (no auto-fix). Use when: reviewing PR feedback, planning fixes, addressing review comments, replying to reviewers. Not for: creating reviews (use codex-review-fast), creating PRs (use

SKILL.md

load-pr-review.SKILL.md
name: load-pr-review
description: "Load GitHub PR review comments into AI session — analyze, triage, plan. Default: analysis-only (no auto-fix). Use when: reviewing PR feedback, planning fixes, addressing review comments, replying to reviewers. Not for: creating reviews (use codex-review-fast), creating PRs (use create-pr), viewing PR status (use pr-summary)."
allowed-tools: Bash(git:*), Bash(gh:*), Bash(bash:*), Bash(jq:*), Read, Grep, Glob, Edit, Write, AskUserQuestion, Agent

Load PR Review

Trigger Keywords

`load pr review`, `pr feedback`, `address review`, `review comments`, `pr comments`

When NOT to Use

| Need | Use Instead | |------|-------------| | Create a code review | `/codex-review-fast` or `/codex-review` | | Post new review comments | `/pr-comment` | | Create a PR | `/create-pr` | | PR status overview | `/pr-summary` | | Investigate code history | `/git-investigate` |

Core Principle

Load review → independent per-thread triage → analysis report → user decides next step
Default: analysis-only. Fix and writeback require explicit --mode fix / --writeback.
Data plane (JS script) handles fetch/normalize/writeback.
Control plane (this SKILL.md) handles classification, fix orchestration, auto-loop.

Non-Negotiable Rules

| # | Rule | Violation = | |---|------|-------------| | 1 | Plan/fix mode MUST invoke `/seek-verdict` via Skill tool per unresolved thread (unless `--no-verdict`) | Report invalid — re-run with verdict | | 2 | Step 3 (Present) is blocked until Step 2 (Verdict Triage) completes | Report invalid | | 3 | Each `/seek-verdict` must use fresh Codex context per thread (no batch) | Triage invalid | | 4 | Plan output MUST include Codex Verdict Threads field (non-empty, from Step 2) | Report rejected |

Analysis-Only Default ⚠️

This skill is an **analysis tool by default**. It loads PR review comments and produces a triage report. It does NOT auto-fix.

Prohibited Behaviors

| ❌ Prohibited | ✅ Correct | |--------------|-----------| | Auto-fixing code after loading PR reviews | Present analysis report, wait for user to invoke `--mode fix` | | Editing files in plan mode | Only read and classify; no writes | | Suggesting "let me fix this" without explicit `--mode fix` | "Use `--mode fix` to start fixing ACTIONABLE threads." | | Skipping triage and jumping to fixes | Always complete Step 2 verdict triage before any action | | Skipping `/seek-verdict` and classifying threads with AI judgment alone | Invoke `/seek-verdict` per thread via Skill tool; AI judgment is fallback only for failed calls | | Outputting plan table without Codex verdict data when `--no-verdict` was not passed | Complete Step 2 before Step 3 |

Precedence

> **Rule priority**: Plan mode's analysis-only constraint overrides the "Skill analysis-only mode" exception in `fix-all-issues.md`. > Issues found in plan mode are recorded in the analysis report (logged as `[ANALYSIS_ONLY_DEFERRED]`), not auto-fixed. User must explicitly invoke `--mode fix` to apply changes.

Mode Behavior

| Mode | Default? | Reads Code | Edits Code | Writes Back | |------|----------|------------|------------|-------------| | `plan` | **Yes** | ✅ | ❌ | ❌ | | `summary` | No | ❌ | ❌ | ❌ | | `fix` | No (explicit) | ✅ | ✅ (after AskUserQuestion) | Only with `--writeback` |

Workflow

sequenceDiagram
    participant U as User
    participant SK as SKILL.md
    participant JS as load-pr-review.js
    participant GH as GitHub (gh CLI)
    participant SV as /seek-verdict (per thread)
    participant AL as Auto-Loop

    U->>SK: /load-pr-review [args]
    SK->>SK: Step 0 — Resolve PR target

    SK->>JS: fetch --pr N --repo owner/repo
    JS->>GH: gh api graphql (reviewThreads)
    alt GraphQL fails
        JS->>GH: gh api REST (fallback)
    end
    JS-->>SK: Normalized JSON

    alt plan/fix mode + verdict enabled
        loop Each unresolved thread (parallel)
            SK->>SV: /seek-verdict (fresh Codex per thread)
            Note over SV: Independent research
            SV-->>SK: Per-thread verdict
        end
    end

    alt summary mode
        SK->>U: Table of threads
    end

    alt plan mode (DEFAULT)
        SK->>SK: Map verdicts to categories
        SK->>U: Analysis report (no edits)
    end

    alt fix mode (explicit --mode fix only)
        SK->>U: AskUserQuestion — select threads
        loop Each selected thread
            SK->>SK: Read file + apply fix
            SK->>AL: auto-loop
        end
    end

    alt --writeback
        SK->>JS: writeback --plan
        JS-->>SK: Dry-run plan
        SK->>U: AskUserQuestion — approve
        U->>SK: Approved
        loop Each thread
            SK->>JS: writeback --execute (one at a time)
            JS->>GH: POST reply + resolve
        end
    end

Step 0: Resolve PR Target

Determine the target PR using this cascade:

1. **Explicit PR# in arguments** → use directly 2. **URL in arguments** → parse `owner/repo/number` 3. **Context block data** → `gh pr view` on current branch 4. **None found** → AskUserQuestion: ask user to provide PR# or URL

Step 1: Fetch Review Comments

Run the data plane script:

bash scripts/run-skill.sh load-pr-review load-pr-review.js \
  fetch --pr <N> --repo <owner/repo> [--all] [--budget <N>]

Parse the JSON output. Check `summary.degraded` — if `true`, inform user:

> REST fallback active: thread resolution status unknown, showing all comments.

If `summary.total === 0`:

> No review comments found on this PR.

Step 2: Per-Thread Verdict Triage (via `/seek-verdict`) — MANDATORY

In **plan** and **fix** modes (not summary), invoke `/seek-verdict` **per thread** for independent Codex assessment. Each thread gets its own fresh Codex context — no shared state between threads.

**Why per-thread, not batch**: Each review comment needs an independent perspective. Batch assessment in a single Codex call allows cross-thread contamination (one verdict influencing anothe

Read more
Ships withsd0x-dev-flow

Language: English | 繁體中文 | 简体中文 | 日本語 | 한국어 | Español The harness layer for Claude Code. Let the model choose the path. Keep "done" verifiable. Full control plane on Claude Code. Skills-only distribution for Codex CLI and other compatible agents.

Get the whole plugin

Other skills on sd0x-dev-flow.