code-review について
GitHub のプルリクエストレビューを扱うスキルです。フィードバックの理解、変更と対応内容の共有に加え、差分の確認や正式・行単位のレビュー投稿方法も説明します。
主な機能
- 01PR レビューと行コメントの確認
- 02プルリクエストの差分とファイルの調査
- 03変更依頼への対応と報告
- 04正式レビューと行コメントの投稿
活用シーン
- 01PR の変更依頼への対応
- 02ブランチのコード変更のレビュー
- 03個別のレビューコメントへの返信
- 04承認または変更依頼の投稿
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ letta-ai/ letta-code-action --skill code-reviewインストール後、Claude Code で/code-reviewを入力して読み込まれたか確認します。
詳細
コードレビューのスキル
PR のコードレビューに対応します。このスキルは、コードレビューのフィードバックを読み、理解し、対応するのに役立ちます。
このスキルを使用する場合
pull_request_reviewまたはpull_request_review_commentイベントによってトリガーされた場合- ユーザーからレビューのフィードバックへの対応を求められた場合
- ユーザーから変更内容のコードレビューを依頼された場合
レビューコメントを読む
PR 上のすべてのレビューを取得する
# List all reviews (approved, changes requested, commented)
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/reviews
# Get a specific review's comments
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/reviews/<review_id>/comments
レビューコメントを取得する(行単位のフィードバック)
# All line-level review comments on the PR
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments
# Filter by specific path
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments | jq '.[] | select(.path == "src/example.ts")'
レビューコメントの構造を理解する
レビューコメントの主なフィールド:
path:コメント対象のファイルline/original_line:差分内の行番号body:レビュー担当者のコメント本文diff_hunk:コメント周辺のコードコンテキストin_reply_to_id:別のコメントへの返信である場合の ID
レビューのフィードバックに対応する
フィードバックに対応するワークフロー
- レビューコメントを読む:どのような変更が求められているかを把握します
- 該当するファイルを読む:コメント内のパスを使ってファイルを確認します
- 求められた変更を行う:Edit ツールを使います
- コミットしてプッシュする:PR を更新します
- 追跡用コメントを更新する:対応した内容をまとめます
レビューコメントに返信する
# Reply to a specific review comment
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments \
-X POST \
-f body="Fixed in the latest commit" \
-f in_reply_to=<comment_id>
スレッドを解決済みとしてマークする
フィードバックに対応した後、通常はレビュー担当者がスレッドを解決します。次の方法で、対応済みであることを示せます。
- 変更内容を説明する返信をコメントに投稿する
- 対応内容の概要を追跡用コメントに記載する
コードレビューのフィードバックを提供する
コード変更のレビューを依頼された場合:
簡易レビューのチェックリスト
- 正確性:コードは想定どおりに動作しますか?
- セキュリティ:セキュリティ上の脆弱性はありませんか?
- パフォーマンス:明らかなパフォーマンス上の問題はありませんか?
- 可読性:コードは分かりやすく、保守しやすいですか?
- テスト:変更は適切にテストされていますか?
PR の変更を確認する
# View the diff
gh pr diff <number> --repo $GITHUB_REPOSITORY
# View changed files list
gh pr view <number> --repo $GITHUB_REPOSITORY --json files
# Compare with base branch (use two dots for shallow clones in GitHub Actions)
git diff origin/$BASE_BRANCH..HEAD
フィードバックを提供する
追跡用コメントにレビューのフィードバックを投稿します。内容を分かりやすく整理してください。
- ファイルごとにフィードバックをまとめる
- 具体的な行番号を示す
- 必須の変更と提案を区別する
- 建設的かつ具体的に記述する
対話形式のレビューを送信する
gh pr review を使うと、PR のレビューページに表示される正式な GitHub レビューを送信できます。
PR を承認する
gh pr review <number> --approve --body "LGTM! Changes look good."
変更をリクエストする
gh pr review <number> --request-changes --body "Please address the following issues..."
コメントのみのレビューを投稿する(承認/却下なし)
gh pr review <number> --comment --body "Some observations about the code..."
行単位のコメントを追加する
特定のコード行にコメントを追加するには(GitHub の差分ビューにインラインで表示されます):
行コメント付きのレビューを作成する
# First, get the latest commit SHA
COMMIT_SHA=$(gh pr view <number> --json headRefOid --jq '.headRefOid')
# Create a review comment on a specific position in the diff
# Note: position is the line number in the diff (not the file), starting from 1
gh api repos/$GITHUB_REPOSITORY/pulls/<number>/comments \
-X POST \
-f body="Consider using a more descriptive variable name here" \
-f commit_id="$COMMIT_SHA" \
-f path="src/example.ts" \
-F position=10
行コメントの主なフィールド
commit_id:コメント対象のコミットの SHA(最新のものを使用)path:リポジトリのルートからの相対ファイルパスposition:差分内の位置(差分ハンク内の行番号。1 から開始)body:コメント本文
注: position はファイル内の行番号ではなく、差分内の行番号です。差分ハンクの先頭から行数を数えてください。
変更を繰り返す
最初のフィードバックの後に追加の変更が必要な場合:
# Ensure you're on the PR branch
gh pr checkout <number>
# Make changes, then commit
git add <files>
git commit -m "fix: address review feedback"
# Push to update the PR
git push origin HEAD
重要な注意事項
- 返信の前に読む:変更を加える前に、レビューのコンテキスト全体を必ず確認してください
- すべてのコメントに対応する:フィードバックを未対応のままにしないでください
- 明確に伝える:対応した内容が分かるように、追跡用コメントを更新してください
- 変更をテストする:レビューで求められた変更を加えた後、テストを実行してください
コメント
Markdown 対応