本文へスキップ
Claude Media
Claude Code v2.1.132 — ターミナル全画面表示を切り替え可能に、IDE停止時の安全な終了処理

Claude Code v2.1.132 — ターミナル全画面表示を切り替え可能に、IDE停止時の安全な終了処理

Claude Code v2.1.132はalternate-screen opt-out、外部SIGINTでのgraceful shutdown、bracketed paste周りの修正、stdio MCPの暴走メモリ抑止を含む運用安定化リリースです。

読了目安 約7

このリリースで何ができるようになるか

Claude Code v2.1.132は、ターミナル統合まわりの長年の摩擦を解消する修正が中心の運用安定化リリースです。長時間セッションや非対話運用で詰まりやすかった経路がまとめて整理されています。

  • 会話履歴をターミナルのscrollbackに残せるようになった: CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1でフルスクリーンレンダラーのalternate-screen切替をopt-outでき、tmux併用時のscrollback分断も解消
  • IDEのstop / kill -INTで中断したセッションが正常な--resume経路に乗るようになった: 外部の中断シグナル(SIGINT)でgraceful shutdownが走り、ターミナルモードも復元される
  • MCPサーバ(stdio経由)が誤ってログをstdoutに書いてもメモリが膨張しなくなった: 10GB級のRSS暴張バグが止まり、CIや常駐運用での地雷が消える

直前のv2.1.131がVS Code拡張とMantle認証のホットフィックスだったのに対し、本版はさらにターミナル統合の地ならしに寄った位置づけです。

あなたの開発フローはどう変わるか

scrollbackに会話履歴を残したいチーム

CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1を設定すると、フルスクリーン機能を保ったままターミナルのネイティブscrollbackに会話が残ります。

export CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1
claude

これまで「フルスクリーンの機能性を取るか、scrollback保持を取るか」の二択だった構造に、第3の選択肢が加わりました。

設定scrollbackに会話残るフルスクリーン機能
デフォルト(fullscreen + alternate-screen)×
/tui でfullscreen offに切り替え×
CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1○(alternate-screenを除く)

ログ取り・観察・後追い検証を重視する運用や、tmuxを併用しているチームでは、この組み合わせが効くケースが多くなりそうです。

IDE / プロセスマネージャから停止をかける運用

外部からの中断シグナル(SIGINT、IDEのstopボタンやkill -INT)でgraceful shutdownが走るようになりました。これまではターミナルモードが復元されないままClaude Codeが落ち、後続のシェルが壊れた状態で残ることがありました。--resumeのヒントも出ず、復帰経路は手動で再起動するしかなかった状態が解消されています。

本版以降は、外部SIGINTも内部のCtrl+Cと同様にgraceful shutdownの経路に乗ります。terminal modeが復元され、--resumeが表示されるため、「中断 → 再開」のループがIDE経由でも自然に回るようになります。

Bashツール内でセッションIDを参照したいスクリプト

Bashツールが起動するsubprocessの環境変数にCLAUDE_CODE_SESSION_IDが追加されました。値はHookに渡されるsession_idと一致します。

  • Hooksとログ取得スクリプトの相関付け
  • セッション単位のテンポラリディレクトリ作成
  • 外部観測ツールへのコンテキスト伝搬

これらをID渡しの引数を経由せずに書けるようになります。

MCPサーバ(stdio経由)を多数常駐させているチーム

MCPサーバ(stdio経由)がprotocol外のデータをstdoutに書き続けると、RSSが10GB+まで膨張する問題が修正されました。MCPサーバ実装側でうっかりログをstdoutに出してしまうと、Claude Code側がそれを延々とprotocolデータとしてバッファし、メモリが線形に膨らむ構造でした。

  • CIでClaude Codeを長時間走らせる: バックグラウンドで動くstdio MCPの誤出力でmem outにならない
  • デスクトップで複数MCPを常駐: 1つの問題MCPで全体OOMを引き起こさない
  • MCPサーバを開発中: stdoutにdebugログを出してもClaude Code側が壊れない

加えて、MCPサーバが接続成功後にtools/listで失敗した場合に無音で0ツール表示になる問題も同時に修正されています(1回retry + /mcpconnected · tools fetch failed表示)。MCPの「無音で壊れる」経路がまとめて可視化された印象です。

国際化テキストや絵文字を扱うフロー

paste系・絵文字・複合文字のhandlingが3〜4箇所で同時に直っています。Indic conjunctやZWJ絵文字が行をまたぐケースでカーソルがgrapheme途中に着地する問題、vim operatorsがNFD分解された合成濁音文字を破壊する問題、bold headersにkeycap / ZWJ / skin-tone絵文字が含まれているとフルスクリーンモードで末尾文字が消える問題が修正されています。日本語・絵文字を多用するワークフローほど安定性が改善します。

主な変更点

CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1 — フルスクリーンレンダラーのopt-out

ターミナルのalternate screen切替を環境変数でopt-outでき、会話をネイティブscrollbackに残せます。/tui fullscreenの起動バナーも更新され、本版ではfullscreenモードのメリット(メモリ使用量の低減、マウス対応、選択時のauto-copy)が明記されるようになっています。

CLAUDE_CODE_SESSION_ID — Bashツール内でsession_idを参照可能に

Bashツールが起動するsubprocessの環境変数に追加。Hookに渡されるsession_idと一致します。

Ctrl+Vで画像を貼り付けるときに「Pasting…」フッターヒントが表示され、大きな画像を貼った直後の「無反応に見える数秒」が解消されます。

セッション安定性 / Resume

  • 外部SIGINT(IDEのstop / kill -INT)でgraceful shutdownが走らない問題を修正
  • ターミナルがcloseされたりSSHが切れたりしたとき、native buildでuncaught exceptionが出る問題
  • --resumeno low surrogate in stringで失敗する問題(tool error truncationが絵文字をsurrogateの途中で切るケース)。既に壊れたsessionはload時に自動sanitize
  • --permission-modeフラグがplan-mode session resume時(-p --continue/--resume)に無視される問題
  • plan modeがExitPlanMode後の同一session内で再適用されない問題
  • フルスクリーンモードでlaptop sleep/wakeやCtrl+Z/fgの後、次のキー入力やstreamまで画面が真っ白になる問題

入力 / paste / カーソル

  • /で始まるpasteが黙って吸い込まれるか、unknown-commandと誤判定される問題
  • 貼り付け時の特殊文字処理(bracketed paste)中にfocus eventsやmouse-tracking reportが割り込むと、エスケープシーケンスがpromptに混入する問題
  • Ctrl+E / A / K / U / 矢印キーでカーソルがgrapheme途中に着地する問題(Indic conjunctやZWJ絵文字が行をまたぐケース)
  • vim operatorsがNFD分解された合成濁音文字を破壊する問題
  • bold headersにkeycap / ZWJ / skin-tone絵文字が含まれているとき、フルスクリーンモードで末尾文字が消える問題

ターミナル統合 / マウス

  • マウスホイールスクロールが速すぎる問題(Cursor / VS Code 1.92–1.104の上流xterm.jsバグ)
  • JetBrains IDE 2025.2のターミナルでscroll-wheel handling(spurious arrow keys、逆方向イベント、runaway acceleration)
  • /usageのCtrl+S(stats screenshotをclipboardにコピー)がLinux/X11でハングする問題
  • /terminal-setupがWindows TerminalでShift+Enter周りの矛盾エラーを表示する問題
  • macOSターミナル(iTerm2 / Terminal.app)のデフォルト設定でAlt+T(thinking toggle)が効かない問題
  • Windowsでclaude agentsからbackground sessionを再オープンした後、キーボード入力が死ぬ問題

Slash command / 表示

  • slash command autocomplete popupがterminal heightに合わせず~3-5項目で頭打ちになる問題
  • statuslineのcontext_windowトークン数がsession累計を反映していた問題
  • /effort pickerがCLAUDE_CODE_EFFORT_LEVEL環境変数のoverrideを反映しない問題
  • /statusが一部ユーザで誤ったdefaultモデルを表示する問題
  • slash command dialog / /login / /upgrade / /extra-usageの見栄え改善

MCP / 認証

  • MCPサーバ(stdio経由)がprotocol外のデータをstdoutに書き出すと、RSSが10GB+まで膨張する問題
  • MCPサーバが接続成功後にtools/listで失敗した場合、無音で0ツール表示になる問題(1回retry + /mcpconnected · tools fetch failed表示)
  • claude.aiの未認可MCPコネクタがfailed扱いになる問題(needs authに変更)
  • headless -p modeが非transientな4xx connection failureをretryする問題

Bedrock / Vertex

  • Bedrock / Vertex 400エラーがENABLE_PROMPT_CACHING_1H設定下で発生する問題

ターミナル全画面表示を切り替え可能にした意味

CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1の追加は、地味ですがClaude Codeのターミナル統合姿勢が一段階柔らかくなる更新です。

これまでフルスクリーンモードはalternate-screenを使うため、セッションを抜けた瞬間に画面の会話履歴が消える挙動が前提でした。fullscreenを切れば履歴は残りますが、その代わりにマウス対応や選択auto-copy、メモリ効率といったfullscreenの利点を全て失います。

本版で入った環境変数オプションは、この二択を「fullscreenの機能性は維持しつつ、alternate-screenだけ無効化する」という第3の選択肢に開きました。とくにtmuxを併用しているチームでは、alternate-screen切替によるscrollback分断が消えるのは体感が大きい変化と言えそうです。

中断シグナル(SIGINT)対応が示す「外部からの中断を正常経路に取り込む」方向性

外部SIGINTでgraceful shutdownが走るようになった点は、Claude CodeをIDE / プロセスマネージャから制御する運用にとって重要な意味を持ちます。

v2.1.122のPRリンクからのresumev2.1.121のresume堅牢化の流れと合わせると、「中断は日常、再開も日常」を前提にしたセッションモデルへClaude Codeが寄っていく方向性が見えます。長時間Agent運用では、この姿勢の積み重ねが運用コストを下げる側に効いていくはずです。

まとめ

  • IDEやプロセスマネージャ経由でstopをかけているなら即更新推奨: SIGINT gracefulで--resumeがきれいに走る
  • MCPサーバ(stdio経由)を多数常駐させているなら即更新推奨: 10GB級の暴張が止まる
  • scrollbackに会話履歴を残したいケースではCLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1が新しい選択肢: fullscreen機能は保ったままlogを残せる
  • 国際化テキスト・絵文字を扱うケースでは更新推奨: grapheme境界・NFD・bold + 絵文字の表示が安定
  • plan modeで-p --continueを使っているなら更新推奨: --permission-modeが反映され、ExitPlanMode後のplan mode再適用も直る

直前版はv2.1.131で、その間にv2.1.129を経て本版に到達しています。更新はclaude updateで取得できます。

この記事を共有:XLinkedIn