# コードレビュー (/ja/docs/verdent-manager/advanced-features/code-review)

> 組み込みの Reviewer サブエージェント、マルチモデルレビュー、ワンクリック修正でコードの変更をレビューする



Verdent には Reviewer という組み込みのサブエージェントが含まれており、その唯一の役割はコードのレビューです。コードを書き終えたら `@Reviewer` をタグ付けするだけで、変更を複数の観点からスキャンし、重要度順に並べた構造化された問題リストを出力します。修正したい項目をクリックすると自動的に変更が適用されます。コメントを書いたりドキュメントを手動で探したりする必要はありません。

***

## コードレビューを実行する方法 [#コードレビューを実行する方法]

最も手軽な方法は、グループでチームメイトにメンションするように、チャットで `@Reviewer` と入力することです。

```
@Reviewer please review the authentication logic I just wrote
```

Reviewer は現在のコンテキストを自動的に読み取ってレビューを開始します。指示なしで単に `@Reviewer` を呼び出すこともでき、その場合は何を検査するかを自分で判断します。

手動での実行に加えて、エージェントはワークフローの最終的な VERIFY ステップとして自動的に Reviewer を呼び出すこともできます。コードが書き上がれば心配する必要はなく、システムが Reviewer を呼び込んで結果を検証します。

***

## レビュー結果の見え方 [#レビュー結果の見え方]

レビュー後には、構造化された Findings のリストが表示されます。各項目には以下が含まれます。

* **タイトル** — 問題を一行で説明
* **詳細な説明** — なぜ問題なのか、その潜在的な影響
* **ファイルパス + 行番号** — クリックでコードに直接ジャンプ
* **信頼度スコア** — Reviewer がどれだけ確信しているか（0〜1）

問題は 3 つの重要度レベルに分類されます。

| 優先度    | 意味          | 典型的な例                     |
| ------ | ----------- | ------------------------- |
| **P0** | 致命的、必ず修正すべき | ロジックエラー、SQL インジェクション、権限昇格 |
| **P1** | 重要、修正すべき    | エッジケースの欠落、潜在的なパフォーマンス問題   |
| **P2** | 提案          | コードスタイル、可読性の改善            |

上部には `P0: 1 / P1: 3 / P2: 5` のような概要が表示され、重要度の分布を一目で把握できます。末尾には `overall_explanation` があり、変更内容の全体的な評価を提供します。

***

## ワンクリック修正 [#ワンクリック修正]

各問題を手動で編集する必要はありません。各 Finding にはチェックボックスがあります。

1. 修正したい問題を選択します（全選択も可能）
2. **Fix** をクリックします
3. Reviewer が自動的に変更を適用します
4. ステータスが **Fix done** に更新されます

場合によっては、Reviewer が変更を低リスクと判断すると、確認を求めずにすべての問題を自動選択して修正を実行することがあります。

***

## マルチモデル協調レビュー [#マルチモデル協調レビュー]

Reviewer の最も強力な機能の 1 つが マルチモデルコードレビュー です。複数の AI モデルが同じコードを並行してレビューするもので、異なるバックグラウンドを持つ 3 人のエンジニアがそれぞれ独立してあなたの実装を評価してくれるようなものです。

**有効にする方法**

Settings → Chat → Reviewer に移動し、「Multi-model review」を有効にします。

**モデル選択モード**

| モード              | 説明                                             |
| ---------------- | ---------------------------------------------- |
| **Default mode** | Verdent がタスクの複雑さに応じて最適なモデルの組み合わせを自動選択します       |
| **User mode**    | 1〜3 個のモデルを手動で選択します（Claude、GPT、Gemini を組み合わせ可能） |

最大 3 個のモデルを選択できます。最初のモデルがプライマリレビュアーで、残りはセカンダリレビュアーです。モデルが多いほどカバー範囲は広がりますが、実行は遅くなります。単純な変更であれば、通常は 1 つのモデルで十分です。

***

## レビュールール（カスタムレビューポリシー） [#レビュールールカスタムレビューポリシー]

Reviewer はデフォルトで多くの一般的な問題を検出しますが、チームごとに独自の基準があります。レビュールールを使えば、エンジニアリングのガイドラインを直接定義できます。

**設定場所**

Settings → Chat → Reviewer → レビュールールエディタ（Markdown をサポートする Monaco エディタ）。

**定義できる内容**

* すべての SQL クエリはパラメータ化されたステートメントを使い、文字列連結を行わない
* 非同期処理は適切な try/catch のエラーハンドリングを含める
* React コンポーネントは props が安定している場合に `memo` を使う
* すべての公開 API はユーザー権限を検証する

これらのルールは Reviewer のコンテキストに自動的に注入され、レビューのたびにチェックされます。更新は約 500ms 後に自動的に反映され、手動保存は不要です。

***

## リアルタイムワークフロー [#リアルタイムワークフロー]

レビュー中は、Reviewer の Working Tree Stream をリアルタイムで確認できます。どのファイルを読み、どのロジックを分析しているかが表示されます。展開すると完全なタスクツリーが表示されます。よりシンプルな表示が好みであれば折りたたんでも結果には影響しません。

***

## ユースケース [#ユースケース]

### 最終品質チェック [#最終品質チェック]

複雑なロジックを実装した後、`@Reviewer` を実行して、疲労によって見逃したかもしれないエッジケースや微妙なバグを検出します。

### PR 前の検証 [#pr-前の検証]

プルリクエストを送信する前にレビューを実行します。まず P0/P1 の問題をすべて修正することで、やり取りを減らし、チームメイトのレビュー負担を軽減できます。

### セキュリティ監査 [#セキュリティ監査]

セキュリティ重視のレビュールール（例:「すべての入力は XSS サニタイズが必要」）を追加し、すべての変更がセキュリティポリシーに対して自動的にチェックされるようにします。

### チーム標準の強制 [#チーム標準の強制]

ESLint ルール、API の設計規約、命名標準をレビュールールにエンコードすることで、新しいコントリビューターでも自動的にチームのガイドラインに従えるようにします。

### 多角的なアーキテクチャの意思決定 [#多角的なアーキテクチャの意思決定]

大きな変更については、マルチモデルレビューを有効にして独立した評価を得て、盲点を発見します。

### 初心者向けの学習ツール [#初心者向けの学習ツール]

Reviewer のフィードバックを学習教材として活用します。P0 の問題がなぜ重要なのかを理解することは、ドキュメントを読むよりも早くエンジニアリングの基本原則を学べます。

***

## 注意事項 [#注意事項]

* **シングルモデルとマルチモデル**: マルチモデルはカバー範囲が広い一方で、遅く、コストも高くなります。単純なタスクや緊急のタスクには、通常シングルモデルで十分です。
* **無料プランの制限**: User mode の無料ユーザーは Eco Mode プールのモデルしか選択できません。プレミアムモデルにはサブスクリプションが必要です。
* **モデルの廃止**: 選択したモデルが廃止された場合、無効化され、置き換える必要があります。
* **レビュールールはグローバル**: すべてのプロジェクトに適用されます。プロジェクト固有のルールの場合は、メモを追加するか使用後に削除してください。
* **BYOK のステータス**: 独自の API キーを使用している場合、期限切れや残高不足によって該当するモデルが無効化され、更新するまでレビューが失敗します。

***

## 関連項目 [#関連項目]

<CardGroup cols="2">
  <Card title="Subagents" icon="robot" href="/docs/verdent-manager/configuration/subagents">
    組み込みのサブエージェントについて学ぶ
  </Card>

  <Card title="BYOK" icon="key" href="/docs/verdent-manager/configuration/byok">
    独自の API キーを使う
  </Card>

  <Card title="Plan Mode" icon="clipboard-list" href="/docs/verdent-manager/advanced-features/plan-mode">
    実装前に計画する
  </Card>
</CardGroup>
