multi-cli-review について
CLI によるコードレビューで、指定対象を調査し、調整担当者が集約する構造化レポートを1件作成するレビュアー向けスキルです。コード変更、レビュー用ディレクトリの作成、修正判断は行いません。
主な機能
- 01指定されたレビュー対象を調査
- 02構造化レポートを1件作成
- 03task-level と legacy のプロトコルに対応
- 04規定のレポートパスを使用
- 05不確かな指摘を慎重に扱う
活用シーン
- 01別の CLI が指定した対象をレビュー
- 02マルチ CLI レビュー用の範囲を絞った報告
- 03コードを変更せず根拠のある問題を報告
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ starforall/ ai-coding-toolkit --skill multi-cli-reviewインストール後、Claude Code で/multi-cli-reviewを入力して読み込まれたか確認します。
詳細
マルチ CLI レビュー
バージョン履歴
- v2.3: タスクレベルの
reviewer-idの扱いを、コーディネーターが割り当てる英字 ID に統一し、実際の CLI ID はsource-cliに保持するようにしました - v2.2: ペアとなる契約が特定のワークフロー画面に依存しないよう、汎用的なコーディネーターの管理範囲を明確にしました
- v2.1: レビュアー側のレポート出力を
multi-cli-review-actionに合わせ、タスクレベルのパスルールを厳格化し、レビュアーのみが担う範囲を明確にしました
目的
multi-cli-review は、multi-cli-review-action と対になるレビュアー側のスキルです。
ワークフロー固有のレビュー形式ではなく、汎用的なペア型プロトコルのレビュアー側です。
このスキルが行うことは 1 つです。
- 割り当てられた対象を慎重に調査する
- 構造化されたレビューレポートを 1 つ作成する
- 集約と判断のために、そのレポートを現在の CLI に返す
コードの編集、レポートの集約、最終的な修正の決定、またはワークフロー状態の遷移は行いません。
使用する場合
次のいずれかに該当する場合は、このスキルを使用します。
- 別の CLI から、この CLI に対象のレビューとレポート作成を依頼された
- ユーザーが「这个 skill 的问题を分析して」と依頼した
- ユーザーが「構造化された問題レポートを出力して」と依頼した
- ユーザーが「マルチ CLI レビューを実施して」と依頼した
- 標準化されたレビュアーコマンドパッケージが
multi-cli-reviewを指定している
使用しない場合
- レポートの集約や修正の適用が必要な場合:
multi-cli-review-actionを使用します - レビュアーへの引き継ぎを伴わない通常の実装タスクを行う場合
- 要件の確認だけが必要な場合:
brainstormを使用します - 現在の差分を簡易的にレビューするだけの場合:
requesting-code-reviewまたはcode-review-routerを使用します
基本ルール
- レビュアーのみ:このスキルは独立したレポートを作成し、コードを編集することはありません。
- レビュアー 1 人につきレポート 1 つ:各実行で作成するレビューレポートは最大 1 つです。
- オーケストレーションはコーディネーターが管理:レビュアー数のポリシー、ラウンドの計画、ディレクトリの作成、最終的な修正判断は、現在の CLI または他の上流コーディネーターが担い、レビュアーは担いません。
- ディレクトリを作成しない:レビュアーは
task-dirまたはreview-round-{N}ディレクトリを作成してはいけません。 - 集約しない:重複排除、競合の解決、要約の作成、
action.mdの作成は行いません。 - レポートは根拠であり、実行指示ではない:指摘は具体的で、対象範囲が明確であり、レビューを目的とする必要があります。
- 不確実な場合は慎重に扱う:根拠が不十分な場合は、確定した事実として述べるのではなく、指摘に不確実性があることを示します。
- プロジェクトルートを基準にパスを解決:相対パスは、システムの
/tmpやツールのインストールディレクトリではなく、アクティブなプロジェクトルートを基準に解決します。 - タスクレベルのパス契約は厳格:現在のプロトコルのレポートでは、
multi-cli-review-actionが期待する正規のパスとメタデータ形式を使用する必要があります。
プロトコル
| プロトコル | ステータス | 使用する場合 |
|---|---|---|
task-level | 現行 | 明示的な --task-dir を指定するレビュアーフロー |
legacy | 互換性のみ | 過去の単一レポートフロー |
プロトコルの選択
--task-dirが指定されている場合は、task-levelを使用します。- レポートパスのレガシーパラメーターが明示的に使用されている場合は、
legacyを使用します。 - 新しい作業では
task-levelを優先してください。
入力
共通入力
| 入力 | 必須 | 意味 |
|---|---|---|
<issue-description> | はい | レビュー対象の問題説明、または割り当てられたレビュー目標 |
[target-path] | いいえ | 調査するファイルまたはディレクトリ |
task-level
| パラメーター | 必須 | 意味 |
|---|---|---|
--task-dir | はい | タスクディレクトリ。例:tmp/multi-cli-review/<task-id> |
--reviewer-id | 明示することが望ましい | ファイル名とメタデータに使用する、コーディネーターが割り当てたレビュアー枠 ID |
--round | 明示することが望ましい | レビューラウンド識別子 |
--review-focus | いいえ | このレビュアーの重点領域 |
ルール:
- 標準化された複数レビュアー向けコマンドパッケージでは、
--reviewer-idと--roundを明示してください。 - 新しいタスクレベルの複数レビュアー向けワークフローでは、
--reviewer-idに CLI 名ではなく、a、b、c、dなどの短い枠文字を使用してください。 - 実際の CLI の識別情報は、
reviewer-idではなく、レポートのメタデータフィールドsource-cliに記載します。 - コーディネーターから具体的なコマンドがすでに提示されている場合、新しい
task-id、新しいラウンド、新しいレビュアー識別情報を独自に作成しないでください。 --outputは現在のtask-levelプロトコルの一部ではないため、正規のレビュアーレポート出力先を回避する目的で使用してはいけません。
legacy 互換性
| パラメーター | 必須 | 意味 |
|---|---|---|
--md-a | いいえ | 明示的に指定するレガシーレポートのパス |
--md-b | いいえ | 以前のワークフローで使用されていた、過去のペア成果物のパス |
--output | いいえ | レガシーの単一レポート用途に限り、互換性のために明示的に指定する出力先パス |
互換性ルール:
- レガシーパラメーターは、以前の単一レポートのワークフローに限り維持されています。
- 現在の
task-levelプロトコルの出力先を変更する目的で使用してはいけません。
パスのルール
相対パスは、アクティブなプロジェクトルートを基準に解決してください。
相対パスを次の場所を基準に解釈しないでください。
- スキルのリポジトリルート
- ユーザーのホームディレクトリ
- システムの
/tmp - CLI のインストールディレクトリ
プロジェクトルートを特定できない場合は、推測せずに停止し、代わりに絶対パスを尋ねてください。
コーディネーターが管理するパラメーター
コーディネーターがワークフロー、コマンドパック、手動の現行 CLI プロセスのいずれであっても、レビュアーは以下をコーディネーター管理の項目として扱う必要があります。
tmp/multi-cli-review/<task-id>/の作成review-round-{N}/の作成- デフォルトのレビュアー数
- 標準レビュアーコマンドの生成
- 最終的な集約、確認、修正、検証
このスキルは、その範囲内で割り当てられたレビューの役割のみを果たします。
タスクレベルのレポート出力契約
task-level のレビュアーレポートは、以下のすべてを満たす必要があります。
- 出力ファイルのパスが正確に
{task-dir}/review-round-{N}/{reviewer-id}.mdであること - ファイル名が正確に
<reviewer-id>.mdであること --outputを使用してレポートを別の場所に出力しないこと- ラウンドディレクトリがすでに存在すること。存在しない場合は停止し、コーディネーターに作成を依頼すること
- フロントマターに以下が含まれていること:
task-idroundreviewer-idsource-clireview-timereview-focusprotocol: task-level
- フロントマターの値がディレクトリとファイル名に一致していること
- 対象ファイルがすでに存在する場合は停止し、コーディネーターが上書きする意図なのか、別のレビュアー ID を使うのか確認すること
レポート内容の契約
各タスクレベルの指摘には、以下を含める必要があります。
- 該当箇所
- 問題の説明
- 重大度
- 影響
- 問題となる理由
- 修正方針の提案
証拠が不十分な場合は、以下も記載することを推奨します。
- 証拠に関する注記
- 不確実性に関する注記
安全性に関するルール:
- 観察事項と修正方針の提案は分けてください。
- 修正がすでに承認されているかのように記述しないでください。
- 証拠がないまま、不確実な事柄を重大度の高い主張にしないでください。
- 周辺の問題に興味を引かれても、割り当てられたレビューの重点領域を超えて対象を広げないでください。
ワークフロー
ステップ 1:モードと入力を解決する
- この実行が
task-levelかlegacyかを判断します。 - 相対パスをアクティブなプロジェクトルートを基準に解決します。
- 割り当てられたレビュー対象とレビューの重点領域を特定します。
ステップ 2:レビュー担当者のコンテキストを検証する
task-level の場合:
--task-dirを確認します--reviewer-idを確認します--roundを確認します{task-dir}/review-round-{N}/がすでに存在することを確認します- 明示的に上書きが要求されていない限り、出力先ファイルに別のレビュー担当者のレポートがすでに含まれていないことを確認します
次の場合は停止します:
task-dirが指定されていない- ラウンドディレクトリが存在しない
- レポートのパスが曖昧になる
- コマンドが
--outputを使って正規パスの外に書き込もうとしている
ステップ 3:慎重にレビューする
- 割り当てられた対象と、その直接的な証拠のみを確認します。
- 指定されている場合は、
review-focusに従います。 - 指摘は具体的かつ限定的にします。
- 入手可能な証拠から主張を裏付けられない場合は、確信度を下げるか、その指摘を省略します。
ステップ 4:レビュー担当者のレポートを 1 件だけ書き込む
task-level の場合:
{task-dir}/review-round-{N}/{reviewer-id}.mdにレポートを書き込みます- フロントマターの契約全体を含めます
- 構造化された指摘を含めます
summary-round-{N}.mdは書き込みませんaction.mdは書き込みません.processed.jsonは更新しません
legacy の場合:
- レガシー形式の単一レポート成果物のみを書き込みます
- フローを
task-levelに暗黙的にアップグレードしません
ステップ 5:実際の出力を表示する
実行の最後に、次の情報を表示します:
- task-dir または legacy 実行ディレクトリ
- round
- reviewer-id
- 実際の出力パス
ステップ 6:停止する
レポートを書き込み、パスを表示したら停止します。
次のことはしないでください:
- ワークフローがすでに次の段階に進んだと提案する
- 修正を実施済みとしてマークする
- 検証がすでに完了したと主張する
出力ファイル
task-level レビュー担当者レポート
正規のファイル名:{reviewer-id}.md
最小構成:
---
task-id: <task-id>
round: <round>
reviewer-id: <reviewer-id>
source-cli: <cli-name>
review-time: <ISO 8601 time>
review-focus: <focus text>
protocol: task-level
---
# Defect Report
## Review Summary
- Reviewer: <reviewer-id>
- Review Time: <review-time>
- Review Focus: <review-focus>
- Target: <target-path>
## Findings
### Finding 1: <title>
- Location: <path and lines>
- Problem: <concrete issue>
- Severity: high | medium | low
- Impact: <why this matters>
- Why It Should Be Addressed: <reason>
- Suggested Fix Direction: <proposal, not an approved action>
- Evidence: <optional>
- Uncertainty: <optional>
legacy 互換レポート
正規のファイル名:cur_defect.md
レガシーモードでは、互換性レポートを 1 件だけ出力できますが、新しい複数レビュー担当者の作業では推奨される方法として扱わないでください。
表示要件
最低限、次の情報を表示します:
| フィールド | 意味 |
|---|---|
task-dir | タスクのルートまたは legacy 実行のルート |
round | 現在のラウンド |
reviewer-id | 実際に使用した、コーディネーターが割り当てたレビュー担当者スロット ID |
output-path | 実際に出力されたレポートのパス |
例:
✅ Review report generated
📁 task-dir: <project-root>/tmp/multi-cli-review/my-task
🔄 round: 1
👤 reviewer-id: a
📄 output-path: <project-root>/tmp/multi-cli-review/my-task/review-round-1/a.md
必須の停止条件
次のいずれかに該当する場合は停止し、確認を求めます:
- タスクディレクトリが存在しない
- ラウンドディレクトリが存在しない
- 正規のレポートパスを 1 つに特定するための情報がコマンドに不足している
- 正規のレポートファイルがすでに存在する
- コーディネーターがこのレビュー担当者にディレクトリの作成を求めていると思われる
- コマンドがレビュー担当者にコードの編集やレポートの集約を求めている
エラー処理
| ケース | 必須の動作 |
|---|---|
task-dir が指定されていない | 停止し、task-level ディレクトリを求めます |
| ラウンドディレクトリが存在しない | 停止し、コーディネーターに作成を求めます |
| プロジェクトルートが曖昧 | 停止し、絶対パスを求めます |
| レポートファイルがすでに存在する | 停止し、上書きするか reviewer id を変更するか確認します |
task-level モードで --output による上書きを試みた | 拒否し、正規パスを使用するか、そのパスを求めます |
| 強い主張を裏付ける証拠が不十分 | 確信度を下げる、不確実性を明記する、または指摘を省略します |
| コードの変更を求められた | 拒否します。レビュー担当者はレポートのみを書き込みます |
よくある間違い
- レポートではなくコードを編集する:このスキルで行うのはレビューのみです。
- ディレクトリを作成する:ディレクトリの作成はコーディネーターが担当します。
--outputで正規パスを回避する:現在のプロトコルのレポートは、multi-cli-review-actionが想定する場所に配置する必要があります。- 不完全なフロントマターを出力する:アクション側での取り込みは、一貫したメタデータに依存します。
- 既存のレビュー担当者レポートを黙って上書きする:停止して確認を求めてください。
- レビュー担当者レポート内で集約を行う:重複の除去と競合の処理は、
multi-cli-review-actionが担当します。 - 推測を事実として扱う:不確かな指摘は明記するか、省略してください。
例
例 1:標準的なレビュー担当者コマンド
用户:/multi-cli-review "分析 skills/multi-cli-review 的问题" skills/multi-cli-review --task-dir tmp/multi-cli-review/skill-review --reviewer-id a --round 1 --review-focus "边界条件与协议漂移"
CLI Reviewer:
1. 解析 task-dir、reviewer-id、round、review-focus
2. 按项目根目录解析 task-dir
3. 确认 <project-root>/tmp/multi-cli-review/skill-review/review-round-1/ 已存在
4. 分析目标并写入报告
5. 回显实际输出路径
例 2:ラウンドディレクトリがない場合
CLI Reviewer:
❌ review-round-2 directory is missing:
<project-root>/tmp/multi-cli-review/skill-review/review-round-2/
Reviewer must not create directories.
Ask the coordinator to create the round directory and resend the command.
例 3:レガシー互換性
用户:/multi-cli-review "分析 ./docs/api.md 的问题" ./docs/api.md --md-a tmp/multi-cli-review/4/cur_defect.md
CLI Reviewer:
1. 进入 legacy compatibility mode
2. 写入 cur_defect.md
3. 回显实际路径
4. 不自动升级为 task-level
関連スキル
multi-cli-review-action:現在の CLI の集約と修正の実行brainstorm:レビュー前の要件の明確化requesting-code-review:マルチレビュアープロトコルが不要な場合の軽量なレビューパス
互換性に関する注意事項
- 新しいマルチレビュアー作業では、明示的な
--task-dir、--reviewer-id、--roundを指定したtask-levelを常に優先してください。 - レガシーの
--md-a、--md-b、--outputは互換性のためだけに残されており、現在のタスクレベルのレポート契約を再定義してはなりません。 - コーディネーターが標準化されたレビュアーコマンドをすでに生成している場合は、パス、ファイル名、ラウンド番号を独自に決めず、そのコマンドに正確に従ってください。
- コーディネーターが管理するタスクレベルのレビューラウンドでは、
reviewer-idはスロット(a/b/c/d)を示し、source-cliはそのスロットのレポートを実際に生成した CLI を記録します。