code-review について
code-reviewは、コーディングエージェント向けにGit diffのブラウザレビューを始めるスキルです。選択行への判定付きコメントを受け取り、返信やdiff更新を進める手順を示します。
主な機能
- 01ブラウザーでのGit diffレビュー
- 02判定付き行コメント
- 03レビューコメントのポーリング
- 04コメント返信とdiff更新
- 05エラー対応のガイダンス
活用シーン
- 01未コミット変更の人間レビュー
- 02ブランチとベースの差分レビュー
- 03Pull Requestコメントへの対応
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jordyrock15/ codereview-axi --skill code-reviewインストール後、Claude Code で/code-reviewを入力して読み込まれたか確認します。
詳細
codereview-axi
cr は git diff のブラウザーレビューセッションを開きます。人間は実際の diff を読み、行を選択して、意図(fix、explain、ignore)を添えてコメントを残します。そのコメントがあなたに返ってきたら、対応してスレッドに返信します。変更を加えると、diff はその場で更新されます。
人間が特定の行を指し示したい場合は、diff を会話に貼り付ける代わりにこれを使用します。
グローバルにインストールする必要はありません。npx -y codereview-axi open を実行してください。ツールの出力で cr から始まる後続のコマンドが示された場合は、代わりに npx -y codereview-axi ... として実行してください。制限付きサンドボックスやエージェントハーネスで npx -y が詳細を示さずに終了する場合は、インストール済みのコピーを直接使用してください。ローカルインストールの場合は node "$(npm root)/codereview-axi/bin/cr.js"、グローバルインストールの場合は node "$(npm root -g)/codereview-axi/bin/cr.js"、インストール済みであれば cr の実行ファイルをそのまま使用します。
リクエスト
$ARGUMENTS
上記のリクエストが空でない場合、ユーザーはこれを明示的に呼び出しています。説明されている内容のレビューをすぐに開始してください。単独の参照名は --base <ref>、数字は --pr <number> として扱います。空の場合は、会話の内容から対象範囲を判断し、既定では作業中の diff を対象にします。
レビューの開始
対象範囲を選んでから、レビューを開きます。
| レビュー対象 | コマンド |
|---|---|
| 未コミットの変更(既定) | cr open |
| 分岐元に対するブランチ | cr open --base main |
| プルリクエスト | cr open --pr 123 |
--note "<what you changed>" を追加すると、タブのヘッダーにこのレビューの内容が表示されます。open は URL を出力してタブを開きます。タブが開かなかった場合に備えて、人間にも URL を伝えてください。
--pr は gh を通じて base と head を解決し、ローカルブランチが PR の head でない場合は、チェックアウトせずに拒否します。出力されたコマンドをそのまま伝えてください。頼まれない限り、自分では実行しないでください。cr がレビュー対象のリポジトリに書き込みを行うことはありません。
ワークフロー
cr openでセッションを開きます(上記を参照)。URL が表示され、タブが開きます。cr waitを実行して、人間のコメントをロングポーリングします。最初のwaitでは--say "<what to look at first>"を追加し、タブがコンテキストとともに開くようにします。cr waitは、人間が「送信」を押すか、セッションを終了するまで何も表示しないため、実行したままにして、決して終了させないでください。 何も表示されないのは通常の状態であり、処理が停止したわけでも、ポーリングを諦めたり、人間に状況を報告したりする理由でもありません。 デフォルトではwaitをフォアグラウンドで実行し、コメントがそのまま返されるようにしてください。バックグラウンドでのwaitは、完了時に同じエージェントの再開または通知が保証される、ハーネスネイティブの追跡対象バックグラウンドジョブ機能を通じてのみ許可されます。ポーリングを継続させる目的でnohup、シェルの&、disown、リダイレクトしたまま放置するプロセス、またはデタッチされたターミナルを使用しないでください。コメントは誰も待機していないプロセスに返され、人間は先に進んでしまったエージェントをいつまでも待つことになります。ハーネスに完了を認識するバックグラウンド機能がない場合は、フォアグラウンドでwaitを実行してください。その経路が稼働するまでは、人間にレビューを監視中だと伝えないでください。waitが強制終了されたり、タイムアウトしたりした場合は、再度実行してください。送信済みのコメントはキューに保持され、失われることはありません。- 各コメントには、判定に従って対応します。
fixはコードを修正し、explainは根拠を記述して変更を加えず、ignoreは確認したうえで対応を終了します。 - 実際に行った対応を反映するステータスを付けて、コメントごとに
cr replyを1回実行します。 fix判定のコメントすべてに返信したら、cr refreshを実行して、新しい差分を開いているタブに反映します。explainまたはignoreの返信ではコードが変わらないため、そのバッチにfixが含まれていなければ省略します。- 報告のために立ち止まらず、ステップ2に戻ります。人間はチャットではなくタブにいるため、ラウンドの合間に要約を送ると、その分、人間を待たせることになります。
- ペイロードに
closed: trueが含まれている場合、レビューは終了です。人間に要約を伝え、招かれていないのにセッションを再開しないでください。
すべてのペイロードには、今すぐ行うべき命令が1つ記された next_step も含まれます。 セッションの実際の状態を認識しているため、このファイルと食い違う場合は next_step に従ってください。
ここでの3つの間違いは、何も通知されないまま失敗につながるため、あえて明記しています。
- コメントの行番号ではなく、
quoteでコードの位置を特定してください。 コードが変更されると、コメントは引用されたソーステキストに基づいて位置を再特定します。そのため、引用が正しい位置を示し、行番号は自身の編集によってすでに古くなっている場合があります。引用がファイル内に複数回現れる場合は、その一部ではなく引用全体と照合してください。 - 判定を尊重してください。 人間が説明を求めている内容を修正しないでください。
- すべてのコメントに返信してください。 未返信のコメントがあると、人間は何の知らせもないまま待つことになります。
エラーの読み取り方
エラーは {error: {code, message}} の形式で構造化されています。分岐には終了コードではなく code のスラッグを使ってください。終了コードが示すのは、0 が成功、1 がエラー、2 が不明なフラグということだけです。agent-waiting は再試行できます。session-closed は終端状態なので、再開しないでください。nothing-to-review は差分がないことを意味するため、再試行せずに人間に伝えてください。スラッグには、具体的な対応がある場合、固有の next_step が含まれます。
周辺コンテキスト
cr setup は Claude Code の SessionStart フックをインストールし、次回のセッションでレビュー待ちの状態がすぐに認識されるようにします。一度提案してください。ただし、人間の明示的な同意なしに決して実行しないでください。人間の Claude Code 設定を書き換えるためです。
文体
返信本文は、レビュー中の人間が読みます。何を変更したか、その理由をイギリス英語で簡潔に伝えてください。