Claude Code session recapの使い方と自動表示の条件
離席から戻ったときに出る一行要約session recapが、いつ生成されいつ表示されるかの条件と、/recapでの手動実行、/configでの無効化を解説します。
session recapとは何を教えてくれる機能か
離席してターミナルに戻ると、Claude Codeがセッションで何が起きたかを一行で要約して表示します。これがsession recapです。長時間セッションを何本も並行して進めているとき、「このタブでは今どこまで進んだか」を会話履歴を読み返さずに確認できます。
役割分担を先に書くと、本記事は「自動で出る側」が主題で、出る条件・出ない理由・止め方を扱います。/recapコマンドの使い方と、履歴に残らない質問コマンド/btwとの違いは/recapと/btwの使い分けにあります。
recapはプランやプロバイダーを問わず既定で有効です。Anthropic APIでもBedrock・Google Cloud・Microsoft Foundryでも、追加の設定なしに表示されます。
自動表示される3つの条件
次の3つがすべて揃ったときだけ、バックグラウンドで生成が始まります。
recapが生成される条件(すべて必要)
3分以上経過
直前のターンが完了してから3分以上が過ぎている。完了直後に画面を離れても、しばらくは生成されません。
フォーカスなし
ターミナルがフォーカスを失っている。他のウィンドウに切り替えた状態が続けば、生成は裏で進みます。
3ターン以上
セッションに少なくとも3ターンの履歴がある。始めたばかりの短いセッションでは出ません。
さらに、recapは2回連続では表示されません。「毎回出るはずなのに出ない」ときの主な原因は、ターミナルにフォーカスしたまま作業を眺めていた、3分たたずに戻った、直前にすでに表示されたばかり、の3つです。3ターン未満のセッション、/configやawaySummaryEnabledでのオフ、環境変数を0にした場合、非対話モードでも出ません。
生成を先に済ませておくのは、戻ったときに結果を用意しておくためです。公式ドキュメントも「切り替えて戻る頃には準備ができている」という趣旨で書いています。離席の長さは、Claude Codeが最後に完了したターンからの経過時間で測ります。
自動のrecapと/recapは何が違うか
自動recap と /recap
自動recap
3条件が揃うと裏で生成され、戻った瞬間に表示されます。非対話モード(-p)では常にスキップされるので、CIやスクリプトから-pで起動する自動化ではrecapの有無を気にする必要がありません。
/recap
実行したその場で要約を生成します。離席条件は関係なく、履歴の途中で進捗を振り返る用途に向きます。
長さはどちらも同じ上限に従います。v2.1.236で、自動のrecapも/recapの出力も400文字で打ち切る(単語の切れ目で切る)よう変わりました。長文化した要約が出る暴走的な事例への修正として記載されています。
/recapは入力元にも条件があります。v2.1.284で、チャットのスレッド(自分の発言を含む)や、routine・webhookから中継された/recapは、短い通知を返して実行されなくなりました。ターミナル、Claudeアプリ、Remote Control、-p、SDKホストから打った場合は従来どおり動きます。
/recapオフにする方法
自動recapが不要なら、/configを開いてSession recapの項目を無効にします。
/config設定ファイルなら、settings.jsonのawaySummaryEnabledをfalseにします。挙動は/configのトグルと同じで、未設定なら既定でオンです。設定画面の分類は「Remote, desktop, and notifications」で、どの設定ファイルにも書けます。
環境変数CLAUDE_CODE_ENABLE_AWAY_SUMMARYは、この2つより優先されます。0なら強制的にオフ、1ならawaySummaryEnabledがfalseでも強制的にオンです。セッション単位の上書きに向いていて、どちらの向きにも効きます。
/configはメニューを開かず、key=valueの形でもその場で変えられます。
/config awaySummaryEnabled=falsethinking=falseやtheme=darkと同じ書式で、settings.jsonのキー名をそのまま渡します。-pでも使え、ClaudeモバイルアプリからRemote Control経由でも同じ形で送れます。設定できるキーの一覧は/config --helpで見られます(v2.1.183で追加)。
組織全体で無効化する
awaySummaryEnabledは、組織の管理設定からも制御できます。対象はClaude for TeamsまたはClaude for Enterpriseです。
OwnerまたはPrimary Ownerの権限があれば、サーバー管理設定を配信できます。場所はclaude.aiの管理コンソールのAdmin Settings > Claude Code > Managed settingsです。各利用者のClaude Codeは認証時にこの設定を取得するので、MDMを持たない組織でも一括でオフにできます。ただし届くのは、TeamまたはEnterpriseのOAuthログインなど対象の認証で、api.anthropic.comに直接つないでいる利用者だけです。Bedrockなどプロバイダー経由の利用者や、ANTHROPIC_BASE_URLを既定から変えている環境では取得自体が行われません。MDMやレジストリポリシーで配るエンドポイント管理設定を使っている組織は、そちらにawaySummaryEnabled: falseを含めても構いません。
テレメトリー無効環境でも既定オンになった
recapは導入当初、利用状況テレメトリーを送信していない環境(Bedrock・Vertex・Foundry、またはDISABLE_TELEMETRY設定時)では対象外でした。コンプライアンス上の理由でテレメトリーを止めている企業では、導入直後は既定では要約が出ず、CLAUDE_CODE_ENABLE_AWAY_SUMMARYで強制的に有効にする必要がありました。v2.1.110でこの制限が外れ、こうした環境でも既定で提供されます。止めたいときの手段は他の環境と同じです。
不具合修正の履歴を見ると挙動の癖が分かる
recapは複数のバージョンで不具合修正と対象拡大が続いています。ターミナルの種類やモデル切り替えなど、周辺の環境との組み合わせで出た不具合が目立ちます。
session recapの変遷
- v2.1.108recap機能を追加
/configでの設定と/recapでの手動生成に対応しました。詳細はClaude Code v2.1.108のリリースノートにあります。 - v2.1.110テレメトリー無効環境にも既定で提供
フォーカスモードでrecapやローカルスラッシュコマンドの出力が出ない不具合も直っています。
- v2.1.113入力中の割り込みを修正
未送信のテキストを打っている最中に、recapが自動で出てしまう不具合が直りました。
- v2.1.181モデル切り替え直後の不具合を修正
/recapと会話のフォークが、モデルを切り替えた直後に前のモデルを使う不具合が直りました。 - v2.1.186 / v2.1.196バックグラウンドの重複表示を修正
バックグラウンドセッションでrecapが重複する不具合が2回直りました。v2.1.186でエージェント自身のターン末尾要約がrecap行になり、v2.1.196ではスキーマ不適合で再試行された分の二重描画が消えました。
- v2.1.236出力を400文字に制限
上限の詳細は前節のとおりです。
- v2.1.251表示崩れを修正
GNU screenと、
screen系のターミナルタイプで動くtmuxで、recapのような斜体の行が反転したブロックで描画される不具合が直りました。 - v2.1.257キャッシュの取りこぼしを修正
advisorモデルを設定したセッションで、
/recapを含むバックグラウンドのリクエストがプロンプトキャッシュに当たらず、会話全体を毎回再送していた不具合が直りました。 - v2.1.268CPU負荷を修正
recapの生成中にターミナルのフォーカス通知が短時間に多数届くと、CPU使用率が高いままになる不具合が直りました。同じ項目で、長時間放置したアイドルセッションのビジーループも解消しています(recap固有ではありません)。
- v2.1.284中継された/recapを拒否
中継された
/recapの扱いは前節のとおりです。
バックグラウンドセッションでもrecapは動きます。
サーバー管理設定はいつ届き、どこまで効くか
awaySummaryEnabled: falseをサーバー管理設定で配ったあと、利用者側で実際に止まるまでの流れは次のとおりです。
- Claude Codeは起動時にサーバー管理設定を取得し、対話セッション中は1時間ごとに再取得します。管理コンソールで保存した内容は、次の起動か1時間の周期のどちらか早いほうで届きます。
- 一度取得に成功したあとは、キャッシュが起動直後から適用されます。ネットワークが落ちて取得に失敗しても、キャッシュ済みのポリシーで動き、対話セッションでは警告が出ます。
- キャッシュが一度もない初回起動で取得に失敗すると、サーバー管理設定なしのまま起動を続けます。そのあいだは組織の無効化が効かず、recapは既定のオンのままです。
- 管理設定は設定階層の最上位で、コマンドライン引数を含めて他のレベルから上書きできません。
管理設定の配り方が2系統ある組織は、優先の付き方に注意が要ります。既定では、サーバー管理設定とエンドポイント管理設定のうち、キーを1つでも配信している最初のソースだけが使われ、確認順はサーバー管理設定が先です。サーバー側が何かのキーを配っていれば、エンドポイント側にだけ書いたawaySummaryEnabledは使われない可能性があります。両方に同じ値を入れておくと、どちらが選ばれても結果が変わりません。
配布を取りやめたときも即座には戻りません。管理コンソールで設定を消しても、各端末のキャッシュは次の取得に成功するまで残ります。/statusを実行すると、どの管理ソースが有効かを確認できます。
一方、CLAUDE_CODE_ENABLE_AWAY_SUMMARYは環境変数のドキュメントで「設定と/configのトグルより優先する」と書かれています。管理設定との前後関係は公式に明記が見当たらないため、組織で一律に止めたい場合は、利用者の環境変数に頼らず管理設定でawaySummaryEnabledを配り、実際の端末で挙動を確かめるのが確実です。
隣接する機能との見分け方
/recapや/configを含む全コマンドは、役割別にClaude Codeスラッシュコマンド一覧へまとめています。CLAUDE_CODE_ENABLE_AWAY_SUMMARYを含む環境変数の全体像はClaude Code環境変数リファレンスにあります。
作業の最中にClaudeの進み具合を見たいなら、離席時のrecapではなくタスクリスト表示が担当です。
まとめ
個人で止めるなら/configかawaySummaryEnabled、セッション単位の上書きなら環境変数、組織全体ならサーバー管理設定と、止める範囲によって手段が分かれます。出ないときは、まず3条件と非対話モードを疑います。