Skip to content
github-pr-review-operation logo

GitHub PR Review Operation

github-pr-review-operation

GitHub Pull Request上でのレビュー操作を行うスキル。ghコマンドでPR情報取得、差分確認、コメント投稿・取得、インラインコメント、コメント返信を実行する。PRにコメントを投稿したい、差分を行番号付きで確認したい、レビューコメントに返信したいときに使用。

sushichan044/dotfiles0installs15starsOther

SKILL.md

Full skill instructions

GitHub PR Review Operation

GitHub CLI (gh) を使ったPRレビュー操作。

Inline Comment First

PR 上で code-specific な指摘や補足を残したい場合は、まずこの手順を見る。

目的

インラインコメントは、PR本文ではなく diff 上の正確な位置にレビュー意図を残すために使う。実装上の懸念、設計判断への確認、特定行への補足はここで扱う。

最短手順

  1. 対象 PR を特定する。
  2. gh pr diff を行番号付きで見て、コメント対象の path と line を決める。
  3. RIGHT / LEFT を判定する。
  4. head commit SHA を取得する。
  5. gh api repos/​OWNER/​REPO/​pulls/​NUMBER/​comments --method POST ... で投稿する。

行番号の見つけ方

まず diff を行番号付きで表示する。

gh pr diff NUMBER --repo OWNER/​REPO | awk '
/^@@/ {
  match($0, /​-([0-9]+)/, old)
  match($0, /\+([0-9]+)/, new)
  old_line = old[1]
  new_line = new[1]
  print $0
  next
}
/^-/ { printf "L%-4d     | %s\n", old_line++, $0; next }
/^\+/ { printf "     R%-4d| %s\n", new_line++, $0; next }
/^ / { printf "L%-4d R%-4d| %s\n", old_line++, new_line++, $0; next }
{ print }
'
  • L数字: base 側の削除行。インラインコメントでは side=LEFT
  • R数字: head 側の追加行。インラインコメントでは side=RIGHT

単一行コメント

まず head commit SHA を取る。

gh api repos/​OWNER/​REPO/​pulls/​NUMBER --jq '.head.sha'

その後、対象行にコメントする。

gh api repos/​OWNER/​REPO/​pulls/​NUMBER/​comments \
  --method POST \
  -f body="コメント内容" \
  -f commit_id="COMMIT_SHA" \
  -f path="src/​example.py" \
  -F line=15 \
  -f side=RIGHT

複数行コメント

gh api repos/​OWNER/​REPO/​pulls/​NUMBER/​comments \
  --method POST \
  -f body="コメント内容" \
  -f commit_id="COMMIT_SHA" \
  -f path="src/​example.py" \
  -F line=15 \
  -f side=RIGHT \
  -F start_line=10 \
  -f start_side=RIGHT

注意点

  • -F (大文字): 数値パラメータ(line, start_line)に使用。-f だと文字列になりエラーになる
  • side: RIGHT(追加行)または LEFT(削除行)
  • diff で見えている行番号と path が一致していないと投稿に失敗する

前提条件

  • gh インストール済み
  • gh auth login で認証済み

PR URLのパース

PR URL https://github.com/​OWNER/​REPO/​pull/​NUMBER から以下を抽出して使用:

  • OWNER: リポジトリオーナー
  • REPO: リポジトリ名
  • NUMBER: PR番号

特に PR が指示されなかった場合や、この PR などの指示語が与えられた場合

gh pr view --json url --jq .url 2>/​dev/​null || echo "No PR found for current branch" を実行して、現在のブランチに関連するPR URLを取得し、パースして使用する。

操作一覧

1. PR情報取得

gh pr view NUMBER --repo OWNER/​REPO --json title,body,author,state,baseRefName,headRefName,url

2. 差分取得(行番号付き)

スクリプトは上記「行番号の見つけ方」参照。出力例:

@@ -46,15 +46,25 @@ jobs:
L46   R46  |            prompt: |
L49       | -            (削除行)
     R49  | +            (追加行)
L50   R50  |              # レビューガイドライン
  • L数字: LEFT(base)側の行番号 → インラインコメントでside=LEFTに使用
  • R数字: RIGHT(head)側の行番号 → インラインコメントでside=RIGHTに使用

3. コメント取得

Issue Comments(PR全体へのコメント):

gh api repos/​OWNER/​REPO/​issues/​NUMBER/​comments --jq '.[] | {id, user: .user.login, created_at, body}'

Review Comments(コード行へのコメント):

gh api repos/​OWNER/​REPO/​pulls/​NUMBER/​comments --jq '.[] | {id, user: .user.login, path, line, created_at, body, in_reply_to_id}'

4. PRにコメント

gh pr comment NUMBER --repo OWNER/​REPO --body "コメント内容"

5. インラインコメント(コード行指定)

上記「Inline Comment First」セクション参照。

6. コメントへ返信

gh api repos/​OWNER/​REPO/​pulls/​NUMBER/​comments/​COMMENT_ID/​replies \
  --method POST \
  -f body="返信内容"

COMMENT_IDはコメント取得で得たidを使用。

More Other skills

Delegate independent tasks to specialized agents working concurrently with isolated context.

295.4K 206.3K
View

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

179.7K 100.1K
View

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

179.7K 89.5K
View

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

179.7K 76.1K
View

Fundamental design principles for writing maintainable, testable Python code.

40.2K 21.9K
View

Modern responsive layouts using container queries, fluid typography, CSS Grid, and mobile-first strategies.

40.2K 20K
View

Generate Playwright tests from scenarios using interactive browser exploration and validation.

39.7K 18.2K
View

Modern React state management with Redux Toolkit, Zustand, Jotai, and React Query for every state category.

40.2K 14.7K
View

GDPR-compliant data handling with consent management, data subject rights, and privacy controls.

40.2K 14.3K
View

Python error handling patterns including input validation, exception hierarchies, and partial failure handling. Use when implementing validation logic, designing exception strategies, handling batch processing failures, or building robust APIs.

40.2K 13.5K
View

Detailed multi-file refactor planning with safety checks and rollback guidance.

39.7K 13K
View