レビューとプランモード
変更を 1 つの diff として確認し、手を入れたいハンクにコメントを付け、すべてのコメントを 1 つのプロンプトとして送信できます。同じバッファで、セッションによる変更内容、変更された作業ツリー、適用前の個別提案のいずれもレビューできます。
セッション全体の変更をレビューする
Section titled “セッション全体の変更をレビューする”Transient メニューで D を押すか、C-c c D を入力するか、M-x ecc-review を実行します。プレフィクス引数(C-u D)で対象ファイルを指定できます。

Git 管理下のファイルは git diff で差分を取得します(未コミットのローカル変更も含まれます)。未追跡ファイルやリポジトリ外のファイルは、セッションで最初の変更が加えられる前の状態と比較されます。
| キー | 動作 |
|---|---|
c |
ポイント位置のハンクにコメント(再度押すと編集) |
l |
コメントを付けた箇所へジャンプ |
d |
このハンクのコメントを削除 |
e |
提案内容を編集(単一提案のレビュー時) |
C-c C-c |
コメントをプロンプトとして送信 |
C-c C-k |
レビューとコメントを破棄 |
g |
diff を読み直す |
q |
バッファを隠す |
バッファは読み取り専用の diff-mode で開くため、n、p、RET でハンク間の移動やソースへのジャンプが可能です。コメントを付けたハンクはヘッダーが太字になり、その下にコメントが、ヘッダーラインに件数が表示されます。
C-c C-c を押すと、コメントが 1 つのプロンプトにまとまり、送信前に確認できます:
## hello.py L1-L6```diff def greet(name): """Say hi."""- return "hi " + name+ return "hello " + name```Comment: the docstring still says hi必要に応じて編集し、C-c C-c で送信します。C-c C-k で diff に戻ります。
作業ツリーをレビューする
Section titled “作業ツリーをレビューする”ecc-review の対象はセッションが編集・作成したファイルのみです。自身で行った変更をレビューするには、メニューで G を押すか、C-c c G を入力するか、M-x ecc-review-worktree を実行します。
プロジェクトのリポジトリ全体を HEAD と比較し、ステージの有無にかかわらず未コミットの変更がすべて表示され、未追跡ファイルも含まれます(.gitignore の除外対象を除く。バイナリファイルや ecc-review-untracked-max-bytes を超えるファイルは、内容ではなくファイル名のみ表示)。C-u G で比較対象(リビジョン、main...HEAD などの範囲、または未ステージの変更のみとする空入力)を指定できます。
対象のプロジェクトはカレントバッファに基づいて判定され、コメントはそのプロジェクトのセッションに送られます。セッションが存在しない場合は起動を促されます(通常はこれが起動の起点になります)。コメントの付け方や送信手順は上記と同様で、2 つのレビューには別々のバッファが使われます。
コメントには注釈対象のハンク全体が含まれるため、ハンクは変更箇所のみの最小限のサイズになります。前後の行数を広げたい場合は (setq ecc-review-context-lines 3) を設定してください。この値は ecc が実行する git コマンドに -U 引数として渡されるため、git config の読み書きは行われません。なお、提案のレビューは設定にかかわらず前後 3 行のコンテキストが保持され、ecc-review-proposal-context-lines で調整します。
適用前の提案をレビューする
Section titled “適用前の提案をレビューする”
トランスクリプト上でリクエストが承認待ちのとき、リクエストノードで c を押すとその変更をレビューでき、e を押すと提案された内容が開きます(詳細は プロンプトとトランスクリプト を参照)。
ここでのコメントは 拒否の理由 として送信され、ファイル書き込み後に修正させるのではなく、事前に Claude へ再提案を促せます。
e を押すと対象ファイルのメジャーモードで提案が開きます。C-c C-c は Claude の提案の代わりに編集後のテキストで変更を許可し、変更箇所の diff を添えて送信します。C-c C-k はリクエストを保留のままにします。
プランモード
Section titled “プランモード”プランモードを抜けると計画がリクエストとして送信され、ecc はそれをセッションの横の編集可能なバッファで開きます。

フィードバックの方法は 3 通りあります。行コメント(C-c C-a、削除は C-c C-r)、行内の @claude: … マーカー、計画自体の編集(C-c C-d で差分を表示)です。
フィードバックがある場合、C-c C-c はそれを添えて計画を差し戻し、再提案を求めます。フィードバックがなければ承認し、権限モードの選択を求めます。C-c C-p で選択できるほか、指定しない場合は ecc-plan-default-mode(既定値: "acceptEdits")が使用されます。
| キー | 動作 |
|---|---|
C-c C-c |
承認、フィードバックがあればそれを送信 |
C-c C-k |
理由を添えて却下(フィードバックも含める) |
C-c C-a / C-c C-r |
現在行にコメントを追加 / 削除 |
C-c C-d |
提案された計画に対する編集差分を表示 |
C-c C-p |
承認後の権限モードを選択 |
C-c C-n |
前回の計画から変更された次の行へ |
再提案されたプランでは、変更された行がマージンにマークされ、ヘッダーラインに +N −N が表示されます。
変更ファイル一覧 (Files セクション)
Section titled “変更ファイル一覧 (Files セクション)”
トランスクリプトの末尾には、セッション中に操作されたファイルが一覧表示されます(ファイルパス、R×n 読み込み/E×n 編集/W×n 書き込みの各操作、+n −n の変更行数)。TAB でそのファイルの累積 diff を展開し、RET でファイルを開き、d で単体レビューを行えます。
トランスクリプトで f(メニューでは F)を押すとこのセクションへジャンプします。ecc-render-summary-position を 'top に設定すると、末尾ではなく先頭に配置されます。
タイムライン
Section titled “タイムライン”トランスクリプトで T を押すと、各ターンがプロンプト一覧で表示され、選んだターンへジャンプします。C-c C-n と C-c C-p でターンを前後に移動できます。

レビュー表示時のウィンドウ配置
Section titled “レビュー表示時のウィンドウ配置”レビューには画面スペースが必要です。次の 2 つの変数でウィンドウの表示やフォーカスを制御できます:
| 変数 | 説明 |
|---|---|
ecc-window-hide-on-review |
'project でこのプロジェクトのセッションを非表示、'all で全セッションを非表示、nil でそのまま維持 |
ecc-window-review-focus |
'review でレビューバッファにフォーカス、'session でトランスクリプトにポイントを維持、nil で元のフォーカスのまま |
ecc-toggle はカレントプロジェクトのセッションウィンドウを、ecc-toggle-all は全プロジェクトのセッションウィンドウを再表示します。その他の設定は 設定リファレンス をご覧ください。