
リポジトリスコープの Code review → Kody Rules:保留中のレビュー、Review Rules / Memories タブ、フィルター、ルール一覧
Kody ルール UI の 2 つの種類
Kody ルールは 2 つのカテゴリに整理されており、サイドバーの Code review → Kody Rules にある Review Rules タブと Memories タブで管理されます。どのレベルを編集するかは、Code review グループ上部のスコープピッカーで Global(またはリポジトリ/ディレクトリ)を選んで決めます:- レビュールール
- メモリ
専用のコードレビューステージで実行される従来のコードレビュールール。ファイルの差分と PR メタデータを分析してコーディング標準を強制します。
- ファイルレベル(実行モード Per file)またはプルリクエストレベル(実行モード Per PR)で適用
- 変数、ファイル参照、MCP 関数をサポート
- 自動コードレビュー時にトリガー
レビュールール
カスタムルールの作成
チームの正確なニーズに基づいてルールを定義します。Review Rules タブで New rule(リストが空の場合は Write a rule)をクリックすると、ルールダイアログが開きます。レビュールールは、Execution mode フィールドで選択する ファイルレベル(Per file)と プルリクエストレベル(Per PR)の 2 つの異なるレベルで適用できます。両方のレベルで変数、ファイル参照、MCP 関数をサポートし、強力でコンテキスト対応のルールを構築できます。変数、ファイル参照 & MCP 関数
ルールは変数、ファイル参照、MCP 関数を通じてリッチなコンテキストにアクセスできます。利用可能なものを以下に示します: 変数: 変数はルール実行時に利用可能なコンテキストデータを表します。利用可能なものを理解することで、変数と MCP 関数およびファイル参照を組み合わせてより優れたルールを作成できます。-
ファイルレベル:
fileDiff- 分析中の個別ファイルに対する特定の変更
-
PR レベル:
pr_title- プルリクエストのタイトルpr_description- プルリクエストの説明/本文pr_total_additions- 追加された行の合計数pr_total_deletions- 削除された行の合計数pr_total_files- 変更されたファイルの合計数pr_total_lines_changed- 変更された行の合計数pr_files_diff- プルリクエスト全体のすべての変更の完全な差分pr_tags- プルリクエストに関連するタグpr_author- プルリクエストの作者pr_number- プルリクエスト番号
-
@file:path/to/file.ts- ルールを編集している同じリポジトリのファイルを参照- 現在のリポジトリ内のテンプレート、例、または設定ファイルを参照する場合に使用
- 例:
@file:src/services/userService.ts
-
@repo:org/project- 別のリポジトリのファイルを参照するか、リポジトリコンテキスト外でルールを設定する場合に使用- 複数のリポジトリ全体で一貫性を強制したり、共有標準を参照する場合に使用
- 例:
@repo:team/api-standards
- Kody はルールを保存するときにファイル参照を自動的に識別します
- 参照はバックグラウンドで解決されます。完了を確認するためにエディタ横のステータスインジケーターを確認してください
- プレースホルダーではなく正確な blob スタイルのパスを使用してください(例:
src/utils/helpers.ts) - ファイルの内容はルールコンテキストに注入され、Kody がパターンを比較、検証、または強制できます
- ファイルレベルとプルリクエストレベルの両方のルールで機能します
- リポジトリ操作:リポジトリのリスト、リポジトリファイル、コンテンツ、言語の取得
- PR 分析:プルリクエストの詳細取得、コミットのリスト、PR ファイルコンテンツの分析
- ファイルコンテンツの取得:ファイルコンテンツと差分の取得
- クロスファイル検証:複数ファイルにわたる高度な分析
- カスタム統合:プラグインとして接続された MCP サーバー(Jira、カスタムツールなど)
- 一般的なプレースホルダーではなく特定のファイルパスを使用する
- チームの標準を表す安定したファイルを参照する
- 解決エラーを避けるためにルールを保存する前にファイル参照が存在することをテストする
- 包括的な検証のために変数、ファイル参照、MCP 関数を組み合わせる
ファイルレベルルール
特定のコードファイル内の問題を捕捉するために個別ファイルを分析します。 利用可能なコンテキスト: 詳細については上記の変数、ファイル参照 & MCP 関数セクションを参照してください。このレベルで利用可能:fileDiff 変数、ファイル参照(@file、@repo)、MCP 関数。
できること:
@fileまたは@repoを使用して参照ファイルと比較する- MCP 関数を使用して関連ファイルやリポジトリデータを取得する
- 変数、ファイル参照、MCP 関数を組み合わせてパターンを検証し、一貫性を確認し、アーキテクチャルールを強制する
- ルール名:ルールの目的を明確に定義する
- Execution mode:Per file(デフォルト)
- Path:glob パターンを使用して特定のファイルまたはディレクトリにルールを制限する(空のままにするとすべてのファイルに適用)
- Instructions:
fileDiffを使用し、@file/@repoでファイルを参照し、MCP 関数を呼び出してリッチなコンテキストで強力なルールを作成する。新しいルールは Start with a popular template から始めることもできます - Severity:Critical、High(デフォルト)、Medium、Low に設定する
- Advanced settings:Inheritable(デフォルトでオン。ルール継承を参照)と Code examples(Bad example / Good example)
src/**/*.ts
⚠️ 重大度:クリティカル
📝 指示:「等値演算子(== または !=)を使用すると、正確な値が一致しない場合に無限ループが発生する可能性があります。」
❌ 悪い例:
プルリクエストレベルルール
クロスファイル検証と PR 固有の要件のためにプルリクエスト全体を分析します。 利用可能なコンテキスト: 詳細については上記の変数、ファイル参照 & MCP 関数セクションを参照してください。このレベルで利用可能:PR 変数(pr_title、pr_description、pr_files_diff など)、ファイル参照(@file、@repo)、MCP 関数。
できること:
pr_title、pr_description、pr_authorなどの変数を使用して PR メタデータを検証する@fileまたは@repoを使用して設定ファイルやテンプレートを参照する- MCP 関数を使用して追加コンテキストを取得する(例:関連ファイルが存在するか確認、リポジトリ構造に対して検証)
- PR 変数、ファイル参照、MCP 関数を組み合わせて包括的な検証ルールを作成する
- すべてのサービスファイルには対応するテストファイルが必要
- PR の説明は完全で、追加または削除された内容を明確に述べる必要がある
- コントローラーに新しいルートが作成された場合、routes.json に登録する必要がある
pr_total_lines_changedを使用してサイズ制限を超える PR をフラグするpr_files_diffと MCP 関数を組み合わせてクロスファイルの依存関係を検証する@file:routes.jsonを参照して新しいルートが登録されていることを確認する- MCP 関数を使用して変更されたサービスファイルにテストファイルが存在するか確認する
強力なルールの作成
変数、MCP 関数、ファイル参照を組み合わせて、リッチなコンテキストを持つ高度なルールを作成します。各レベルで利用可能なものを以下に示します: ファイルレベルの構成:fileDiffを使用してファイルの特定の変更を分析する@file:path/to/template.tsで関連ファイルを参照してパターンと比較する- MCP 関数を呼び出してリポジトリデータを取得したり、関連ファイルが存在するか確認する
- 例:「
fileDiffを分析し、@file:src/utils/example.tsのパターンに従っているか確認します。MCP を使用して関連するテストファイルが存在するか検証します。」
- PR 変数(
pr_title、pr_description、pr_files_diffなど)を使用して PR メタデータとサイズを検証する @file:config.jsonまたは@repo:org/shared-configで設定ファイルを参照して一貫性を強制する- MCP 関数を呼び出してクロスファイル検証を実行したり、リポジトリ構造を確認したり、コミット履歴を取得する
- 例:「
pr_files_diffに新しいルートが含まれている場合、@file:routes.jsonに登録されていることを確認します。MCP を使用して変更されたすべてのサービスファイルに対応するテストファイルが存在するか確認します。」
@repo:org/projectで他のリポジトリのファイルを参照してプロジェクト全体の一貫性を維持する- MCP 関数と組み合わせて共有標準やテンプレートと照合して検証する
- 例:「
@repo:org/api-standardsで定義されたパターンに API エンドポイントが従っていることを確認します。MCP を使用して最新の標準ドキュメントを取得します。」
- MCP 関数はルール評価時に実行され、現在のリポジトリ状態に適応するルールを可能にする
- ファイル、コミット、リポジトリ構造についてリアルタイムデータを取得する
- 例:「MCP を使用して現在のリポジトリ構造を確認し、新しいファイルが既存のディレクトリパターンに従っていることを確認します。」
ルールライブラリからインポート
実証済みのベストプラクティスを即座に活用します:- Code review → Kody Rules(Review Rules タブ)で Discovery をクリックすると、ルールライブラリ(Rules Marketplace)が開きます。ルールのリストが空の場合は Browse the library から、または ⌘K コマンドパレットで Rules library を検索して開くこともできます。
- Featured から始めるか、Browse に切り替えてカタログ全体を検索し、Severity、Language、Packs でルールをフィルタリングします。
- ルールを開いて Add to my rules をクリックします。その横のリポジトリピッカーで、Global か、ルールを適用するリポジトリ(およびディレクトリ)を選択します。
- セキュリティ:「安全でない MD5 ハッシングの使用を禁止する。」
- 保守性:「React コンポーネントを 150 行未満に制限する。」
メモリ
メモリは、Kody がチームの会話とコーディング実践から学習する永続的なコンテキスト指示です。コードレビュー中に実行されるレビュールールとは異なり、メモリはすべてのプロンプトと会話に注入されて継続的な高優先度コンテキストを提供し、将来の提案も改善します。メモリの仕組み
- どこにでも注入:メモリはコードレビュー分析(クロスファイル、セーフガード、PR レベルルール)と会話でのインタラクションに含まれます
- 高優先度コンテキスト:メモリは AI によって高優先度のガイダンスとして扱われ、チームの規約が一貫して適用されます
- 将来の提案を改善:メモリは、Kody がリポジトリについて同じ誤った前提を繰り返さないようにします
- インテリジェントな重複排除:新しいメモリが作成されると、Kody は LLM ベースの解決メカニズムを使用して作成するか、スキップするか(重複の場合)、既存のメモリを更新するかを決定します
メモリの作成
メモリを作成する方法は 2 つあります:会話経由
メモリを作成する最も自然な方法は、PR コメントで Kody との会話を通じてです。Kody は規約を保存する明示的および暗黙的な意図の両方を検出します: 明示的 — Kody に記憶を依頼する:Kody は一時的な指示(例:「今これを修正して」)、デバッグのやり取り、質問、曖昧な発言、または単一のタスクや PR に明示的にスコープされたリクエストに対してはメモリを作成しません。
UI 経由
メモリを手動で作成することもできます:- サイドバーで、Code review グループ上部のスコープピッカーで Global(またはリポジトリ/ディレクトリ)を選択し、Kody Rules を開きます。メモリはここで選択したスコープに作成されます
- Memories タブに切り替えます
- New memory(リストが空の場合は Add a memory)をクリックします
- Memory name と Instructions を入力し、Create memory をクリックします
メモリのスコープ
各メモリには適用先を決定するスコープがあります:LLM 生成メモリの承認
デフォルトでは、AI 生成のメモリは自動的に有効化されます。有効になる前に手動承認を要求できます:- 目的のスコープ(Global、リポジトリ、またはディレクトリ)で Code review → Kody Rules に移動します
- Configuration をクリックしてサイドシートを開きます
- Kody knowledge approval を有効にします
- AI 生成のルールとメモリは保留状態に入り、承認されるまで有効化されません
- Review Rules タブと Memories タブのバッジに保留中の件数が表示されます
- 保留中のアイテムはページ上部の Pending review セクションに表示され、そこで承認または破棄します(下記の保留中のレビューを参照)
- 新規作成と既存のルール/メモリの更新の両方が承認フローを通じます
kodus-config.yml でも設定できます:
保留中のレビュー
Pending review セクション(“Rules and memories awaiting approval.”)には、保留中のルールとメモリがまとめて一覧表示され、それぞれに Rule、Memory、Update のいずれかのマークが付きます:- 新しいルールとメモリ:承認待ちの AI 生成アイテム。Approve を選ぶとアイテムが有効化され、Discard を選ぶと拒否されます。
- 更新:既存のルールまたはメモリへの提案された変更で、差分として表示されます。Update existing で変更を適用し、Create new instead で元のものを残したまま提案を別のアイテムとして追加し、Discard で拒否します。
次のステップ
IDE ルールの同期
Cursor、Copilot、Claude および他の AI コーディングツールからルールを自動インポートします。
リポジトリルール
構造化されたマークダウンファイルを使用してリポジトリに直接ルールを作成します。
AI 生成
コードベースのパターンと過去のレビューに基づいて AI がルールを生成します。