review-crate について
review-crateは、Rust crateの全ファイル、テスト、既存の問題記録を監査するスキルです。行番号付きの根拠を必須とし、指摘の重複を避けてリポジトリの標準問題ファイルを更新します。
主な機能
- 01crate内の全ファイルを読む
- 02crateのテストを実行
- 03既存の標準問題記録を確認
- 04ファイルと行番号付きで指摘を記録
- 05残存リスクを報告
活用シーン
- 01変更前のRust crate監査
- 02正確性や検証上の問題の発見
- 03リスクの高い動作のテスト網羅性確認
- 04重複のないローカル問題記録の維持
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ulpi-io/ skills --skill review-crateインストール後、Claude Code で/review-crateを入力して読み込まれたか確認します。
詳細
譲れないルール:
- 対象クレート内のすべてのファイルを列挙して読み込むこと。
- 具体的な阻害要因がない限り、クレートのテストを実行すること。
- すべての指摘について、正確な
file:lineの根拠を示すこと。 - 新しい指摘を書く前に、現在のリポジトリにある正規の issue ファイルを確認すること。
- 指摘は、このリポジトリ内の
.ulpi/issues/<crate-name>.mdにのみ記載すること。
review-crate
入力
$crate_path:クレートディレクトリへのパス
目標
以下を実施し、クレートを完全に監査します。
- クレート全体を読み込む
- テストを実行する
- 実際のバグとカバレッジの不足を報告する
- 既存の指摘と重複しないように、正規のローカル issue ファイルを更新する
ステップ 0:クレートの識別情報を解決する
次の情報を特定します。
- クレートのパス
Cargo.tomlに記載されたクレート名- 正規の issue ファイルのパス:
.ulpi/issues/<crate-name>.md
クレートのパスが無効な場合は、処理を中止し、その旨を明確に伝えます。
成功基準:レビュー開始前に、クレートと issue ファイルの保存先が明確になっていること。
ステップ 1:クレート全体を列挙して読み込む
次のものを含め、クレート内のすべてのファイルを読み込みます。
Cargo.toml- ソースファイル
- テストファイル
CLAUDE.mdなど、クレート内のドキュメント- クレートディレクトリ内の補助ドキュメント
一部だけを確認して済ませてはいけません。「主要なファイル」を読んだ時点で終えてはいけません。
成功基準:クレート全体を読み込んだと正直に述べられること。
ステップ 2:クレートのテストを実行する
通常は、次のような、クレート全体を検証できる最小範囲の方法を実行します。
cargo test -p <crate-name> -- --nocapture
テストを実行できない場合は、具体的な阻害要因を報告します。
成功基準:レビューに、実際のクレートテストの結果、または実行できない具体的な理由が含まれていること。
ステップ 3:既存の issue ファイルを確認する
.ulpi/issues/<crate-name>.md がすでに存在する場合:
- まずそのファイルを読む
- 既存の指摘との重複を避ける
- 真に新しい問題のみを追記する
存在しない場合:
- 記録に値する指摘があれば、そのファイルを作成する
成功基準:issue ファイルが正規の記録として保たれ、重複がないこと。
ステップ 4:分析して指摘を記載する
次の点を確認します。
- 正確性に関するバグ
- パニックやクラッシュのリスク
- 検証の不足
- 競合状態や状態管理の問題
- データ破損のリスク
- 明らかに実在するパフォーマンス上の問題
- リスクの高い動作に関するカバレッジの不足
指摘ごとに、次の内容を含めます。
- 重大度
- カテゴリー
- 正確な
file:line - 問題が実在する理由
- 修正の方向性
確実でない主張には INFERENCE とラベルを付け、不確実な理由を説明します。
成功基準:指摘に根拠があり、実行可能な内容であること。
ステップ 5:残存リスクをまとめる
次の内容を報告します。
- 読み込んだファイル
- テスト結果
- 記載または追記した指摘
- 残っている不確実性やカバレッジの不足
重大な指摘がなければ、その旨を明確に述べます。
成功基準:ユーザーが、レビューの範囲と残るリスクの両方を把握できること。
ガードレール
- このリポジトリの外にある外部の絶対パスへ指摘を書き込まないでください。
- ファイルを読み飛ばした場合、完全なレビューを行ったと主張しないでください。
- 直感だけで問題を作り出さないでください。
disable-model-invocationを追加しないでください。これは有効な詳細監査ワークフローです。- 複数クレートをまとめて確認する作業に変更しないでください。
出力形式
次の内容を報告します。
- レビューしたクレート
- ファイル数と、クレート全体を読み込んだ旨
- テスト結果
- 重大度別の指摘
- 書き込みまたは追記した issue ファイル
- 残存リスク、または問題がなかった旨