- 多くのリポジトリ全体のレビュー動作に対する単一の信頼できる情報源が必要な場合。
- コードとしてのコードレビュー:履歴、PR レビュー、ロールバック、CI 検証。
- 組織全体で一貫した Kody ルール(レビュールールとメモリ)が必要な場合。
- CLI または CI 主導の設定変更が必要な場合。
仕組み
- 集中設定を保持する 1 つのリポジトリを選択します。
- UI で集中設定を有効にし、そのリポジトリを指定します。
- 初期同期モードを選択します:
pr— Kodus は現在の有効な設定とルールで初期化 PR を開きます。manual— Kodus はファイルを生成します。チームはファイルをダウンロードして PR を開きます。
- 最初のマージ後、集中リポジトリへの将来のすべてのマージが Kodus への変更を自動的に伝播します。
リポジトリレイアウト
集中リポジトリは、フォルダーパスを使用してファイルをスコープにマッピングします。レイアウトはレビュー設定(kodus-config.yml)と Kody ルール(.kody-rules/)の両方をカバーします。
リポジトリ名は任意です。組織に合ったものを選んでください。以下では慣例として
kodus-config を使用します。- 集中リポジトリのルートにある
kodus-config.ymlはグローバルに適用されます。 - Kodus リポジトリの名前と一致するトップレベルフォルダー(例:
backend-api/)は、そのリポジトリにファイルをスコープします。 - リポジトリフォルダー内のネストされたパス(例:
backend-api/src/auth/)は、そのディレクトリにファイルをスコープし、Web UI と同じ継承モデルに従います。 .kody-rules/review/下のルールはレビュールールになり、.kody-rules/memories/下のルールはメモリになります。
設定ファイル
各kodus-config.yml は一般設定に記載されているリポジトリごとの kodus-config.yml と同じスキーマを使用します。フィールドはファイルが存在するフォルダーのレベルで適用され、通常の継承ルールに従います(設定の継承とオーバーライドを参照)。
最小限の例:
Kody ルールファイル
各ルールは.kody-rules/review/(標準ルール)または .kody-rules/memories/(メモリ)下の単一の YAML ファイルです。ファイル名は任意です。Kodus はルールを title フィールドとルールと共に保存された正規ファイルパスで識別します。
レビュールールの例(.kody-rules/review/require-tests-for-endpoints.yml):
inheritance.inheritable、exclude、include の動作についてはルール継承を参照してください。
UI ワークフロー
設定 → コードレビュー → 一般から:- 集中設定を開きます。
- 集中設定を有効にします。
- ソースリポジトリを選択します。
- 初期同期方法を選択します:
- 自動(今すぐ PR を作成)
- 手動(後で同期)
- 保存してステータスを確認します。
有効時の Web UI の動作
集中設定が有効な場合、設定の信頼できる情報源は集中リポジトリです。Web UI はこれを反映します:- リポジトリ、ディレクトリ、グローバルのコードレビュー設定は Web UI で読み取り専用になります。集中リポジトリで PR を開いて編集してください。
- Kody ルールと PR メッセージは Web UI で引き続き編集可能です。編集を保存してもルールを直接変更しません。Kodus は提案された変更を含むプルリクエストを集中リポジトリで開きます。PR がマージされると、変更が有効になります。
同期状態
集中設定から来る各ルールは、ステータスを通じてライフサイクルを追跡します:| ステータス | 意味 |
|---|---|
SYNCED | Kodus 内のルールが集中リポジトリのファイルと一致している。 |
PENDING_ADD | UI/CLI 経由で新しいルールが作成され PR が開かれた。ファイルはまだデフォルトブランチに存在しない。 |
PENDING_EDIT | UI/CLI 経由で編集が提案され PR が開かれている。既存のファイルはまだ更新されていない。 |
PENDING_DELETE | UI/CLI 経由で削除が提案され PR が開かれている。ファイルはまだデフォルトブランチに存在する。 |
PENDING_* は対応する PR がマージされると SYNCED に戻ります。
同期モード
- PR(デフォルト)
- 手動
Kodus は現在の有効な設定とルールで初期化プルリクエストを自動的に開きます。
設定バンドルのダウンロード
現在の設定とルールを反映した生成済みkodus-config.yml ファイルと .kody-rules/ ツリーを含む ZIP をダウンロードできます。
以下の場合に使用します:
- 生成された設定の監査。
- 別のチームとのセットアップアーティファクトの共有。
- ロールアウト前のローカルバックアップの保持。
manualモードでの集中リポジトリのブートストラップ。
集中設定の無効化
集中設定を無効にすると、選択されたソースリポジトリがクリアされ、すべてのリポジトリが標準の非集中動作(Web UI で設定を編集、オプションでリポジトリごとのkodus-config.yml)に戻ります。
同期されたルールと設定は Kodus に残ります。無効化時に削除されません。
CLI
以下のコマンドを使用して、ターミナルワークフローと CI スクリプトから集中設定を管理します。要件
- チームキー認証。
- Kodus で少なくとも 1 つの選択されたリポジトリ。
ステータスの確認
集中設定の初期化
--sync-optionのデフォルトはprです。- インタラクティブなターミナルでリポジトリが省略された場合、CLI は選択を促します。
- 非インタラクティブ環境では、リポジトリを指定する必要があります。
同期の実行
集中設定の無効化
設定 ZIP のダウンロード
--outは必須です。- 出力は生成された設定ファイルと
.kody-rules/ツリーを含む ZIP バンドルです。
JSON 出力
すべての集中コマンドは--json による構造化出力をサポートします。