コア設定
Kodus には 3 つの設定レベルがあります:グローバル、リポジトリ、ディレクトリ。仕組みについては 設定の継承とオーバーライド を参照してください。
設定の優先度
Web UI の代わりに、リポジトリルートのkodus-config.yml ファイルでレビュー設定を管理できます。
有効化すると、ファイルは Web 設定の上にマージされます。変更したいキーだけを書けばよく、
省略したものは Web 側の値がそのまま使われます。
未知のキーは警告なく破棄されます。 現在のスキーマに含まれないトップレベルのキーは、
設定が適用される前に削除されます — エラーも警告も出ません。設定が効いていないように
見える場合は、下のサンプルとスペルを照合してください。
kodus-config.yml のサンプル
kodus-config.yml のサンプル
このサンプルは出荷時のデフォルトを反映しています。正典となるのは kodus-ai リポジトリの
default-kodus-config.yml
です。レビュー動作
自動レビュー
Kody は PR が開かれたときに自動的にレビューするか、@kody start-review とコメントしたときのみレビューできます。
これは初回レビューにのみ影響します。以降のコミットについては、下記のレビュー頻度を参照してください。
レビュー頻度
以降のコミットで Kody がレビューを処理する方法:- 自動
- 自動一時停止
- 手動
すべての新しいプッシュをレビュー。すべての変更に対して継続的なフィードバック。
PR ワークフロー
PR の自動承認
問題が見つからない場合、Kody は PR を承認します。 対応プラットフォーム: GitHub、GitLab、Bitbucket変更のリクエスト
クリティカルな問題が見つかった場合、Kody は変更をリクエストします。 対応プラットフォーム: GitHub、Bitbucketスキップ条件
無視するファイル: glob パターンを使用します(例:**/*.js)、1 行に 1 つ。デフォルト:yarn.lock、package-lock.json、package.json、.env、**/*.json
無視するタイトル: 特定のキーワードを含む PR をスキップします(大文字・小文字を区別しない、最大 100 文字)
ベースブランチ: どのターゲットブランチをレビューするかを絞り込みます。
空(デフォルト)はすべてのターゲットブランチをレビューする意味です —
dev/release/master
といった組み込みのリストは存在しません。スコープを狭めたいときだけエントリを追加してください。
リストが空でなくなると、Kody はそれらのブランチ宛の PR だけをレビューします(リポジトリの
デフォルトブランチは常に含まれます)。エントリは PR のターゲットブランチと照合され、専用の記法をサポートします:複数のエントリが一致した場合は、より具体的なものが優先されます。各エントリは 100 文字以内で、
使用できる文字は
a-z A-Z 0-9 / * - _ ! = : のみ、** は使えません。runOnDraft はデフォルトで true なので、ドラフトもレビューされます。
false にすると、PR が ready になるまでスキップされます。
分析タイプ
Kody は 4 つのカテゴリでレビューします。Analysis Types で、またはkodus-config.yml の
reviewOptions で個別に有効・無効を切り替えられます。
- Bug — ロジックエラー、競合状態、null 参照、エッジケース、誤った挙動。
- Security — 脆弱性、インジェクション、認証の問題、データ露出、シークレット。
- Performance — N+1 クエリ、ホットパスでのアロケーション、キャッシュ不足、ブロッキング I/O。
- Business Logic — PR に紐づくビジネスルール・要件・受け入れ基準に対して実装を検証します。 ビジネスロジック検証 を参照してください。
Kody Rules はこれらのカテゴリの 1 つではありません —
reviewOptions とは無関係に常に実行されます。
Kody Rules を参照してください。