comet-review について
comet-review は、選択中の Comet の変更をユーザーの依頼に応じて一度だけ読み取り専用でレビューするスキルです。要件、差分、既存の検証証拠を調べ、プロジェクトの状態を変更せず、テスト合格とも判断しません。
主な機能
- 01選択した変更の読み取り専用レビュー
- 02要件と実装差分の確認
- 03既存のテスト・検証証拠の評価
- 04重要度順の指摘と範囲の報告
活用シーン
- 01作業を進める前の Comet 変更レビュー
- 02実装と明示された要件との照合
- 03テスト実行や状態変更なしでの証拠評価
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ rpamis/ comet --skill comet-reviewインストール後、Claude Code で/comet-reviewを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yaml
詳細
Comet の手動コードレビュー
現在選択されている Comet の変更に対して、オンデマンドで読み取り専用のコードレビューを 1 回実施します。この項目はワークフローのフェーズではなく、Build または Verify のチェックやレビューに代わるものではありません。
この項目は review_mode から独立しています。このフィールドはワークフロー内の自動レビューを制御しますが、/comet-review はユーザーが明示的に依頼する 1 回限りのレビューです。この実行中に、現在の変更の review_mode を読み取ったり、変更したり、上書きしたりしないでください。
読み取り専用の操作を行う
Skill の実行全体を読み取り専用にしてください。
- ファイルを変更、作成、削除しないでください。
- ステージング、コミット、ブランチの切り替えや作成、ワークツリーの作成を行わないでください。
comet state select、comet native select、comet state set、comet state transition、フェーズガード、comet native next、アーカイブコマンドを実行しないでください。- 指摘事項を修正したり、フェーズを進めたり、タスク、状態、検証レポート、レビュー記録を更新したりしないでください。
- このレビューを Verify の合格と呼んだり、「指摘なし」をテスト合格の証明として扱ったりしないでください。
ファイルの読み取り、状態の照会、Git 差分の確認に必要なコマンドのみを実行してください。プロジェクトコードを実行したり、依存関係をインストールしたり、ファイルを生成したりする可能性のあるチェックは、この項目の対象外です。
1. プロジェクトと現在の変更を特定する
-
読み取り専用の Git クエリを使ってプロジェクトルートを特定します。Git リポジトリの外にいる場合は、現在の Comet プロジェクトルートを使用します。
-
プロジェクトルートで次を実行します。
comet status . --json -
.comet/current-change.jsonを読み取り、次の順序でレビュー対象を選びます。- ファイルに有効な
comet.selection.v2が含まれている場合は、そのworkflowとchangeを使用します。 - 選択情報がなく、ステータスにアーカイブされていない Comet の変更がちょうど 1 つある場合は、そのレビューに限り、その変更を使用します。選択情報を書き込まないでください。
- 選択情報がなく、変更が複数ある場合は、名前、ワークフロー、フェーズを一覧表示してユーザーに選択を求め、この実行を終了します。
- 選択先が存在しない変更、アーカイブ済みの変更、または無効な変更を指している場合は、選択情報が古い、または無効であることを報告し、修復せずに停止します。
- ファイルに有効な
Comet が管理していない通常の OpenSpec 変更は無視してください。選択されたワークフローがデフォルトのワークフローと異なるという理由だけで、選択されたワークフローをデフォルトのワークフローに置き換えないでください。
2. レビューのコンテキストを収集する
この変更に必要なコンテキストのみを読み取ってください。各事実について、ソースパスまたはコマンドを記録してください。
Classic
-
comet-classic/reference/classic-layout.mdを読み、指示に従ってプロジェクトの Classic 論理ルートを特定します。 -
現在の変更の
proposal.md、design.md、tasks.md、specs/*/spec.mdを読み取ります。リンクされている Design Doc も読み取ってください。 -
フェーズ、ベースライン、既存のエビデンス参照を確認するには、次の読み取り専用クエリを使用します。
comet state get <change-name> phase comet state get <change-name> base_ref comet state get <change-name> plan comet state get <change-name> verification_report -
既存の計画、検証レポート、および
comet status . --jsonが返すビルド/検証コマンドのチェック結果を読み取ります。エビデンスがない場合は「未提供」と記載し、失敗または成功を推測しないでください。
Native
次の読み取り専用コマンドを実行します。
comet native show <change-name> --json
comet native status <change-name> --details --json
返された参照先に従って、ブリーフ、提案された Spec 全体、受け入れ条件、Builder への引き継ぎ、チェック、検証、リスク、ブロッカー、検証レポートを読み取ります。現在の候補/イテレーションのエビデンスのみを使用してください。過去のイテレーションは残るリスクの説明に利用できますが、現在の状態に優先させないでください。
3. 実装差分を確定する
git status --short --untracked-files=allを実行し、作業ツリー内のステージ済み、未ステージ、および未追跡のファイルをすべて一覧表示します。- 要件、ワークスペースのバインディング、Git 履歴、および作業ツリーの状態を用いて、最も信頼できる関連範囲を確定します。Classic の場合、有効なプランの
base-refがあればそれを優先します。存在しないか無効な場合は、state のbase_refにフォールバックします。2 つの値が一致している必要はありません。両方の値が無効な場合に限り、Classic のベースラインが欠落していると判断します。Native の場合、state のワークスペース間の関係と、現在の候補の実装範囲を定める証拠を使用します。 - 信頼できるベースラインから現在の作業ツリーまでの完全な差分を確認します。コミット済み、ステージ済み、未ステージの変更をすべて含めます。この変更に属する未追跡ファイルもすべて読みます。ソース、テスト、ドキュメント、設定、および
SKILL.mdやagents/openai.yamlなどのメタデータが対象です。未追跡ファイルは、未追跡であることを明確に示します。 - 明らかに他の変更に属するものや、関連性のないユーザー作業は除外します。曖昧さがレビューの結論に重大な影響を与える場合に限り、ユーザーに確認します。それ以外の場合は、利用可能な証拠をもとに続行し、レポートに範囲の前提を明記します。
利用可能な証拠でも信頼でき、検証可能なベースラインを確定できない場合は、確認できる作業ツリーの差分をレビューし、レビュー範囲が不完全であることを目立つように明記します。
4. レビューを実施する
要件、タスク、現在の差分を確認し、次の点にのみ焦点を当てます。
- 実装の正確性と明確なロジックエラー。
- セキュリティ、権限、パス境界に関するリスク。
- エラー処理、互換性、重要なエッジケース。
- この変更に関する明示的な要件に対する、未対応のタスクや矛盾する実装。
- テストが変更された動作を網羅しているか、利用可能なテストの証拠が結論を裏付けているか。
スタイル上の好み、無関係なリファクタリング、具体的な影響を伴わない推測は指摘しないでください。指摘事項にはそれぞれ、ファイルと行番号を示し、エラーやリスクを引き起こす入力や状況を説明してください。証拠が不十分な場合は、重要度を下げるか「未解決の質問」に記載してください。
使用できる重要度は次のとおりです。
CRITICAL:セキュリティ侵害、データ損失、または中核的なワークフローが利用不能になる問題。IMPORTANT:明確な正確性の問題、中核的な受け入れ要件の欠落、または回帰の可能性が高い問題。WARNING:実在する、ブロッキングではないエッジケースのリスク、またはテスト不足。SUGGESTION:現在の正確性には影響しない、具体的な改善案。
5. 結果を報告する
指摘事項を重要度の高い順に先に列挙します。次の形式を使用してください。
[IMPORTANT] Short title — path/to/file.ts:123
Impact: The input or situation and the resulting error.
Evidence: The specific relationship to the diff, task, spec, or verification record.
続けて、次の項目を記載します。
Review scope:ワークフロー、変更、フェーズ、ベースライン、含めた差分、および範囲の制限。Evidence status:確認したテスト、ビルド、検証の記録と、それらが現在の変更にも引き続き適用できるかどうか。テストを再実行しないでください。Open questions:判断を妨げる実際の質問のみ。Conclusion:指摘件数、または「具体的な指摘事項はありません」と明記します。
指摘事項がない場合でも、残るリスクと未実施の確認を明記してください。次の注意書きで終えてください。
これは読み取り専用の手動レビューです。Comet のフェーズは進まず、
/comet-verifyまたは Native Verify の代わりにはなりません。
ユーザーが後から修正を依頼した場合は、新しい書き込みタスクとして扱います。この Skill を離れ、リポジトリの現在のワークフロールールに従って開発を再開してください。