adr-review について
adr-review は、コード変更が承認済みの Architecture Decision Records に沿っているかを確認するレビュー用スキルです。マージ前や定期レビューで、アーキテクチャ違反、古い決定への参照、コンプライアンス上の懸念を特定します。
主な機能
- 01変更ファイルに関連する ADR の検索
- 02承認済み決定に基づく変更確認
- 03置き換え済み ADR の参照検出
- 04コンプライアンスレポートの作成
- 05コードまたは ADR の対応案提示
活用シーン
- 01マージ前のプルリクエスト確認
- 02大規模な変更後のアーキテクチャレビュー
- 03定期的なアーキテクチャ適合性確認
MCP 対応
関連する ADR メモリの検索と ADR 関係グラフの照会に、Ruflo core の MCP ツールを使用します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ ruvnet/ ruflo --skill adr-reviewインストール後、Claude Code で/adr-reviewを入力して読み込まれたか確認します。
詳細
ADR のレビュー
承認済みの Architecture Decision Record に照らしてコード変更をレビューし、違反、乖離、非準拠を検出します。
使用するタイミング
PR をマージする前、大規模なコード変更の後、または定期的なコンプライアンスチェックの一環として使用します。コード変更がチームで合意したアーキテクチャ上の決定を尊重していることを確認するために使用してください。
手順
-
差分を取得する --
git diff main...HEAD --name-only(または指定されたブランチ)を実行し、変更されたファイルを一覧表示します。次に、git diff main...HEADを実行して差分全体を取得します。 -
関連する ADR を見つける -- 変更されたファイルごとに、次の操作を行います。
- ファイル内を
Grepして ADR への参照を探します(ADR-\d+)。 docs/adr/をGrepして、変更されたファイルパスやモジュールに言及している ADR を探します。- ファイルパスと変更概要を指定して
mcp__plugin_ruflo-core_ruflo__memory_searchを呼び出し、意味的に関連する ADR を探します。
- ファイル内を
-
ADR の内容を読み込む -- 関連する ADR ファイルを
Readします。次の項目に注目してください。- Decision セクション(決定された内容)
- Status(「accepted」の ADR のみを適用)
- Consequences(想定される制約)
-
違反を確認する -- 変更された各ファイルを、関連する ADR に照らして分析します。
- コード変更は、承認済みの決定に反していますか?
- ADR で明示的に却下された技術やパターンを使用していますか?
- ADR の Consequences で警告された形でモジュールを変更していますか?
- コードは非推奨または置き換えられた ADR を参照していますか?
-
関係グラフを照会する -- 名前空間
adr-edgesを指定してmcp__plugin_ruflo-core_ruflo__memory_listを呼び出し(行は<relation>:<from>__<to>をキーとし、relation はsupersedes、amends、depends-onのいずれかです)、参照されている ADR が置き換えられていないか確認します。名前空間が空の場合は、先にadr-indexを実行します。参照されている ADR が置き換えられている場合は、コードが古い決定を参照していることを指摘します。 -
報告する -- 準拠状況のレポートとして調査結果を提示します。
## ADR Compliance Report ### Violations - [ ] <file>:<line> — violates ADR-NNN: <reason> ### Warnings - [!] <file> references superseded ADR-NNN (replaced by ADR-MMM) ### Compliant - [x] <file> — consistent with ADR-NNN ### Unlinked Changes - [?] <file> — no ADR coverage (consider creating one) -
対応を提案する -- 違反ごとに、コードを更新するか、違反対象の ADR に取って代わる新しい ADR を提案するかを提案します。