
Claude Code v2.1.238〜v2.1.239 の主要アップデート - Remote Control の集中改善と keybindingFlavor 設定の追加
クラウド事業統括本部の石川です。Claude Code の v2.1.238 〜 v2.1.239のアップデートをまとめてご紹介します。Remote Control の信頼性の改善され、実際にこの 2 バージョンにも Remote Control 関連の変更がまとまって入っており、地味ながら実務で効いてくる内容が多いと感じます。本日は、Remote Controlを試してみました。ステップバイステップで解説します。
前回のアップデート記事はこちらです。
アップデートサマリー
対象は 2 バージョン(v2.1.238 〜 v2.1.239、2026 年 8 月 20 日 〜 8 月 21 日)、変更点は合計 98 件です。内訳は修正 59 件、改善 20 件、新機能 8 件、セキュリティ 8 件、パフォーマンス 2 件、破壊的変更 1 件で、新機能よりも既存機能の安定性に寄った構成になっています。テーマとしては Remote Control とクロスセッションメッセージング、フルスクリーンモード、プラグインマーケットプレイスの 3 領域に変更が集中しています。
また、公式の X アカウント(@ClaudeDevs)は、先月ユーザーから最も直してほしいと挙げられたのが Remote Control だったため信頼性の改善に取り組んできた、と投稿しています。
注目のアップデート
フルスクリーンでの Ctrl+L / Cmd+K 二度押しによる /clear が削除(v2.1.238)
対象範囲で唯一の破壊的変更です。フルスクリーンモードでの Ctrl+L と Cmd+K が、常に画面の再描画のみを行うよう変更されました。
この操作を習慣にしていた方は、アップデート前に /clear へ手を慣らしておくとよいと感じます。変更前後の対比は後述の「破壊的変更」に記載します。
Remote Control の接続まわりを集中的に改善(v2.1.238 / v2.1.239)
Remote Control の接続耐性が改善され、ネットワークエッジ・VPN・プロキシによる一時的な HTTP 403 拒否を最大 3 分許容し、ブロックが継続する場合は拒否元を名指しするようになりました(v2.1.238)。また、短時間のネットワーク瞬断でサインインの更新が遅れたときに「login expired」で切断されてしまう問題も修正されています(v2.1.238)。
接続が切れやすいネットワーク環境で Remote Control を使う方には、体感がかなり変わる修正だと感じます。
このほか、スマートフォンや Web からの操作がターミナル側に届かない・反映されない類の不具合も、v2.1.238 でまとまって解消されています(個別の内容は後述の「修正」に記載します)。
スマートフォンから作業を続ける前提で使っている方は、モデル選択やタスク停止が思ったとおりに効くようになった点を確認しておくとよいと感じます。
Bedrock ストリーミングの二重課金を修正(v2.1.239)
レスポンスの Content-Type ヘッダーを削除するプロキシ経由で、Bedrock のストリーミングが毎ターン非ストリーミングで再実行され、課金対象の API 呼び出しが黙って倍増していた問題が修正されました。同じく Bedrock 関連では、HTTPS プロキシ配下で SSO プロファイルと awsAuthRefresh を使うと起動時にハングする問題も修正されています(認証情報の事前チェックが HTTPS_PROXY を尊重するようになりました)。
プロキシ経由で Bedrock を使っている環境では、気づかないうちに請求が膨らんでいた可能性があるため、早めのアップデートを検討する価値があると感じます。
keybindingFlavor 設定の追加(v2.1.238 / v2.1.239)
keybindingFlavor 設定が追加され、"readline" にするとプロンプトの Ctrl+W が Bash と同様に直前の空白まで削除するようになりました(v2.1.238)。既定値は "classic" で、こちらの挙動は変わりません。v2.1.239 では単語単位のキー操作にも適用範囲が広がり、Alt+F と Ctrl/Option+→ は単語の末尾で止まり、Alt+D はそこまで削除し(Ctrl+Y で貼り戻せます)、句読点が単語の区切りとして扱われるようになりました。
普段 Bash のキー操作に慣れている方ほど、設定 1 行で入力のストレスが減ると感じます。
設定は ~/.claude/settings.json に次のように書きます。
{
"keybindingFlavor": "readline"
}
公式ドキュメントでは、プロンプトに fix the bug in src/utils/foo.ts と入力して Ctrl+W を押すと、"readline" では src/utils/foo.ts が、"classic" では foo.ts だけが消える、という確認方法が紹介されています。
マスク入力とフルスクリーン操作のセキュリティ修正(v2.1.239)
ログインコード欄などのマスク入力(パスワード形式)のテキストが、他の場所で Ctrl+Y により貼り戻せたり、Esc の二度押しでクリアした際にプロンプト履歴へ保存されたりする問題が修正されました。また、フルスクリーンモードでウィンドウをフォーカスに戻すためにターミナルをクリックしただけで、パーミッションプロンプトに回答したりボタンを押したりしてしまう問題も修正されています。組織のポリシーチェックで拒否されたリクエストが、拒否が表示される前に再送されていた問題も解消されました。
フルスクリーンモードを使っている方は、意図しない操作が減る修正なので効いてくると感じます。
プラグインマーケットプレイスの headersHelper(v2.1.238)
URL マーケットプレイスやカタログエントリに headersHelper を指定できるようになりました。指定したコマンドが HTTP ヘッダー(短命トークンなど)を生成し、カタログ取得と同一オリジンのアーカイブ取得に使われます。カタログエントリの headersHelper は、そのプラグインのインストール/更新時にのみ、コマンド内容を表示したうえで実行され、claude plugin install/update は [y/N] で確認します(-y で省略可)。
プラグインを配布する側・利用する側のどちらにも関わる変更のため、社内マーケットプレイスを運用している方は挙動を確認しておきたいところだと感じます。
/remote-control を試してみた
手元の Mac でセッションを走らせたまま iPhone から様子を見られるのは、長時間のビルドやテストを回すときに効いてくると感じます。特にプッシュ通知と組み合わせると、ターミナルの前で待つ時間を減らせるのではないでしょうか。ここでは Mac の Claude Code から /remote-control を有効にし、iPhone の Claude アプリで接続するまでの手順を整理します。
利用条件
接続してしまえば手順自体は数ステップですが、つまずくとしたら利用条件の方だと感じます。先に確認しておきます。
| 項目 | 条件 |
|---|---|
| プラン | Pro / Max / Team / Enterprise。API キー認証は非対応。Team / Enterprise は Owner が管理画面で Remote Control のトグルを有効にする必要がある |
| 認証 | /login による claude.ai へのサインイン。claude setup-token や CLAUDE_CODE_OAUTH_TOKEN の長期トークンでは接続できない |
| エンドポイント | api.anthropic.com への直接接続のみ。Amazon Bedrock / Google Cloud の Agent Platform / Microsoft Foundry、および ANTHROPIC_BASE_URL を他ホストに向けている構成は対象外 |
| 環境変数 | DISABLE_TELEMETRY / DO_NOT_TRACK / CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC / DISABLE_GROWTHBOOK が設定されていないこと(いずれも機能フラグ評価を止めるため) |
| ワークスペース信頼 | プロジェクトディレクトリで一度 claude を実行し、信頼ダイアログを承認しておくこと |
なお、Remote Control をそもそも無効化したい場合は disableRemoteControl 設定を、すべての対話セッションで自動接続したい場合は remoteControlAtStartup 設定を使います。
Mac から iPhone へつなぐ手順
私のPCはMacBook、携帯はiPhoneですが、WindowsとAndroidno組み合わせでも大きく変わらないはずです。すでに、スマートフォンにClaudeアプリのインストールとログインがお済みの方は手順3から進めてください。
- iPhone に Claude アプリが入っていない場合は、Apple Storeからインストールしてください。
なお、Androidに関してもストアからダウンロードして同様に利用できるはずです。
-
インストールした後、Claude アプリを起動して、ログインします。私の場合は、メールアドレスを入力すると、
Your secure link to Claude.ai is hereというサブジェクトのメールを届き、本文の[Sign in]ボタンを押すと表示される番号をClaudeアプリに入力するとログインできます。 -
Mac のプロジェクトディレクトリで
claudeを起動します。初回はワークスペース信頼ダイアログを承認します。以下の例では、Mac のターミナルでclaudeコマンドを起動しています。
-
Mac のターミナルで
/remote-controlコマンドを(省略形は/rc)を実行します。
-
メニューが表示され、↓ キーで
Show QR codeを選択して Enter を押すます。
セッション URL と QR コードのステータスパネルが開きます。

-
iPhone の カメラアプリで QR コードをスキャンします。Claude アプリの Code タブを開き、セッション一覧から名前で選びます。オンラインのセッションにはコンピューターアイコンと緑のドットが付きます。

-
iPhone からプロンプトを送ります。ここでは「ハノイの等のプログラムを作成して」と送ります。するとMacのターミナル上のClaude Codeの画面に直ちに反映されます。

プッシュ通知を使う場合は、Mac 側で
/configを開き Push when Claude decides(Claude の判断による通知)と Push when actions required(パーミッションプロンプトや質問の通知)を有効にします。
注意点
Remote Control はローカルプロセスとして動作するため、ターミナルを閉じたり claude プロセスを止めたりするとセッションはオフラインになります。SSH 接続先のマシンでセッションを維持したい場合は、tmux や screen の中で起動します。
なお、ここで扱った接続まわりは今回の 2 バージョンで集中的に手当てされています。個別の内容は後述の「修正」に記載します。
対象バージョンと期間
| バージョン | 公開日 |
|---|---|
| v2.1.238 | 2026-08-20 |
| v2.1.239 | 2026-08-21 |
新機能
keybindingFlavor設定が追加され、"readline"にするとプロンプトのCtrl+Wが Bash と同様に直前の空白まで削除するようになりました。既定値"classic"の挙動は変わりません(v2.1.238)- プラグインマーケットプレイスで、URL マーケットプレイスやカタログエントリに
headersHelperを指定できるようになりました。指定したコマンドが HTTP ヘッダー(短命トークンなど)を生成し、カタログ取得と同一オリジンのアーカイブ取得に使われます(v2.1.238) claude self-hosted-runner --defer-shutdown-max-min <minutes>が追加されました。SIGTERM を受けても接続中のセッションの処理を続け、指定分数の経過後に残りを退避してから終了します(v2.1.238)claude self-hosted-runner --proxy-authorization-command/--proxy-authorization-fileが追加されました。接続ごとに新しいProxy-Authorizationヘッダーを要求する egress プロキシに対応します(v2.1.238)/claude-api upgradeが追加され、Python プロジェクトをanthropic0.x から 1.x へ移行できるようになりました。あわせてスキルの Python リファレンスが 1.x 向けに更新されました(タイムアウトはhttpx.Timeoutではなくanthropic.Timeoutを使用)(v2.1.239)- Windows でクロスセッションメッセージングが利用できるようになりました。macOS・Linux と同様に、複数マシンにまたがる Claude Code セッション同士が
SendMessageでメッセージを送り合い、ListAgentsで互いを見つけられます(v2.1.239) - Bedrock・Vertex・Foundry など、これまで対象外だった構成でもフルスクリーンレンダラーの初回案内が表示されるようになりました。これらの環境での新規インストールはフルスクリーンで起動します(v2.1.239)
- クラウドセッションで、claude.ai から同期されたプラグインが
name@syncedとして表示されるようになりました。claude plugin enable/disable <name>@syncedで操作でき、自分でインストールした同名プラグインを上書きしません(v2.1.239)
セキュリティ
- カタログエントリの
headersHelperは、そのプラグインのインストール/更新時にのみ、コマンド内容を表示したうえで実行されるようになりました。claude plugin install/updateは[y/N]で確認します(-yで省略可)(v2.1.238) - プロジェクトの
.mcp.jsonに書かれた MCP のheadersHelperと、プロジェクトや--add-dirのエージェントファイル内のインライン MCP サーバーは、そのフォルダの信頼ダイアログを承認済みであることが必須になりました(claude -pでも同様)(v2.1.238) - プロジェクトの
.mcp.json・プラグイン・エージェントファイル由来の MCPheadersHelperは、認証情報の環境変数を引き継がずに実行されるようになりました。ユーザー・managed・claude.ai スコープのヘルパーは Claude の設定ディレクトリから実行されます(v2.1.238) - シェルの条件式における zsh 固有の構文について、Bash ツールのパーミッションチェックが改善されました(v2.1.238)
- ログインコード欄などのマスク入力(パスワード形式)のテキストが、他の場所で
Ctrl+Yにより貼り戻せたり、Escの二度押しでクリアした際にプロンプト履歴へ保存されたりする問題を修正しました(v2.1.239) - フルスクリーンモードで、ウィンドウをフォーカスに戻すためにターミナルをクリックしただけでパーミッションプロンプトに回答したりボタンを押したりしてしまう問題を修正しました(v2.1.239)
- 組織のポリシーチェックで拒否されたリクエストが、拒否が表示される前に再送されていた問題を修正しました(v2.1.239)
- Claude Code on the web で、Bash などのツールから anthropic.com の非 API ホスト(www・docs など)へのリクエストがセッションのネットワークプロキシを経由するようになりました。環境の許可ドメイン設定が適用されます(v2.1.239)
改善
- Remote Control の接続耐性が改善されました。ネットワークエッジ・VPN・プロキシによる一時的な HTTP 403 拒否を最大 3 分許容し、ブロックが継続する場合は拒否元を名指しします(v2.1.238)
- Remote Control がアカウントで有効になっていない場合のメッセージと
claude doctorの文言が明確になりました(v2.1.239) - リモートセッションは、長時間の
SessionStartやSetupフックの実行中もキープアライブを送り続けるようになりました。フックの途中でコンテナがアイドル回収されません(v2.1.239) - リモートセッションで、モバイルからアップロードした画像に保存先のファイルパスが含まれるようになりました。Claude が作成するファイルへコピーできます(v2.1.239)
keybindingFlavor: "readline"が単語単位のキー操作でも Bash に合うようになりました。Alt+FとCtrl/Option+→は単語の末尾で止まり、Alt+Dはそこまで削除し(Ctrl+Yで貼り戻せます)、句読点が単語の区切りになります(v2.1.239)- クロスセッションメッセージングで、受信を拒否する設定(
crossSessionInbound: "refuse"など)の同一マシン上のセッション宛てに送った場合、送信側に「refused」が返るようになりました。従来は成功したように見えていました(v2.1.238) - クロスセッションメッセージングで、受信側がメッセージを破棄した場合(レート制限やキュー満杯)に送信側のセッションへ通知されるようになりました。従来は無言で消えていました(v2.1.238)
ListAgentsがそのセッション自身の名前(ピアがメッセージ送信に使う名前)を返すようになりました。また自分の名前宛てのSendMessageは「no agent named …」ではなくその旨を返します(v2.1.239)ListAgentsと/list-agentsが、稼働中のチームメイトも一覧するようになりました。従来はサブエージェントと他のセッションしか出ず、到達可能なチームメイトが不在に見えていました(v2.1.239)claude mcp listとclaude mcp getが、無効化されたサーバーにヘルスチェックのために接続する代わりに⊘ Disabledと表示するよう変更されました(v2.1.238)- コスト見積り(
/cost・ステータスライン・--max-budget-usd)が、データレジデンシー対応ワークスペースの US-only-inference プレミアム 1.1 倍を含むようになりました(v2.1.239) - 永続リトライモード(
CLAUDE_CODE_RETRY_WATCHDOG)が、組織の支出上限エラーとクレジット切れエラーではリセットを無期限に待たず即座に失敗するようになりました(v2.1.239) - コンパクション後に表示されるリマインダーが改善され、スキルの元の引数が新しいリクエストとして再実行されないようになりました(v2.1.239)
/goalの長時間バックグラウンド作業に対する繰り返しのチェックインが、30 分ごとの固定ではなく段階的に間隔を広げる(30 分 → 1 時間 → 以降 2 時間ごと)ようになりました(v2.1.239)claude --resumeのピッカーからセッションを再開したときに、/goalのアクティブなゴールが復元されるようになりました(v2.1.239)- 起動が改善され、macOS で引数なしの
claudeがより早く立ち上がるようになりました(v2.1.238) - 起動時の応答性が改善されました。自動アップデートチェックが、起動と CPU を奪い合う代わりに起動から約 10 秒後に実行されるようになりました(v2.1.238)
- このほか、ツール実行行の長いファイルパスの中央省略、利用上限メッセージへのリセット時刻の追加、Claude in Chrome のタブグループの後始末、同梱
claude-apiスキルの更新、VSCode の利用上限バナーの表示調整といった細かな改善が入っています(v2.1.238 / v2.1.239)
修正(主要なもの)
安定性・操作性に関わる修正を中心に抜粋します。
- Remote Control が瞬断で切断される問題を修正: 短時間のネットワーク瞬断でサインインの更新が遅れたときに「login expired」で切断されてしまう問題を修正しました。リトライして接続を維持します(v2.1.238)
- Remote Control のモデル選択がターミナルに反映されない問題を修正: スマートフォンや Web で選んだ Remote Control のモデルが、ターミナル側の表示に反映されない問題を修正しました(v2.1.238)
- Remote Control のタスク単位 Stop が効かない問題を修正: タスクパネルからのタスク単位の Stop が、CLI ホストのセッションでは何も起きない問題を修正しました(v2.1.238)
- Remote Control のメッセージがトランスクリプトから消える問題を修正: Claude の応答中に Web や Desktop から送ったメッセージが、ターン終了後にトランスクリプトから消える問題を修正しました(v2.1.238)
- クラッシュした Remote Control セッションが再利用できない問題を修正: プロセスがクラッシュした Remote Control セッションが、
claude remote-controlを再起動するまで利用不能なままだった問題を修正しました。次にメッセージを送った時点で再利用できます(v2.1.238) - Remote Control セッションの環境変数の引き継ぎを修正:
claude remote-controlで開始したセッションが、起動元シェルのセッションスコープの環境変数を引き継いでしまう問題を修正しました(v2.1.238) - サーバーモードで
ListAgents/SendMessageが Remote Control ピアを見つけられない問題を修正:claude remote-control(サーバーモード)や Desktop/IDE ホストで動くセッションで「Remote Control is not connected」と報告されていた問題を修正しました(v2.1.238) - Remote Control へのセッションタイトル同期の暴走を修正: 2 つの Claude Code プロセスが 1 つのバックグラウンドジョブの状態を共有したときにタイトル同期が暴走する問題(v2.1.232 のリグレッション)を修正しました。タイトル更新は重複排除とレート制限が行われます(v2.1.239)
- 長時間セッションのメモリ増加を修正: 長時間の対話セッションでメモリが際限なく増えていた問題を修正しました。サブエージェントのツール結果が、直近の表示ウィンドウから外れた時点で解放されるようになりました(v2.1.238)
- Bedrock ストリーミングの二重課金を修正: レスポンスの Content-Type ヘッダーを削除するプロキシ経由で、Bedrock のストリーミングが毎ターン非ストリーミングで再実行され、課金対象の API 呼び出しが黙って倍増していた問題を修正しました(v2.1.239)
- Bedrock + SSO + HTTPS プロキシでの起動ハングを修正: 認証情報の事前チェックが
HTTPS_PROXYを尊重するようになりました(v2.1.239) - 出力スタイルが既定に戻る問題を修正: カスタム/プロジェクト/プラグインの出力スタイルが、セッション途中で既定の口調に戻ってしまう問題を修正しました(v2.1.238)
- Esc とキュー済みプロンプトの競合状態を修正: プロンプトをキューに入れた状態で Esc を押すと、次のターンが早期終了扱いになり、Claude がまだ作業中なのにセッションがアイドル表示になったうえ、後の再送信で同じ操作が繰り返される問題を修正しました(v2.1.239)
- WebFetch のページ内容がセッション中保持され続ける問題を修正: 期限切れのページ内容を、本来の 15 分ではなくセッション全体にわたってメモリに保持し続ける問題を修正しました(v2.1.239)
claude -cが別ディレクトリのセッションを拾う問題を修正:_・-・.などの文字だけが異なるパスのセッションを拾ってしまう問題を修正しました(v2.1.239)- Linux サンドボックスで git コマンドが壊れる問題を修正: 存在しない
.git/config.worktreeを読み取り不能にし、extensions.worktreeConfigが設定されたリポジトリでサンドボックス下の git コマンドがすべて壊れる問題を修正しました(v2.1.239) - 地味に嬉しい修正:
.mdファイルが UTF-8 BOM で始まるエージェント・スキル・コマンドが、何も告げずに無視される問題を修正しました(v2.1.239)。Windows 側で作成したファイルなどで踏みやすく、原因に気づきにくい類の不具合だと感じます。 - このほか、
/resumeとセッション管理、MCP サーバーの接続とダイアログ表示、フルスクリーンモードの描画、キー入力とテキスト編集、フック実行やテーマ表示など、多数の細かな不具合が修正されています。
破壊的変更
フルスクリーンモードでの Ctrl+L と Cmd+K が、常に画面の再描画のみを行うよう変更されました。二度押しによる /clear ショートカットは削除されています。あわせて、1 行の nvim ターミナルで自動的に /clear ループが起きることもなくなりました(v2.1.238)。
変更前(〜v2.1.237)
フルスクリーンモードで Ctrl+L(または Cmd+K)を押す
→ 1 回目: 画面を再描画
→ 2 回目(続けて押す): 会話がクリアされる(/clear 相当)
変更後(v2.1.238〜)
フルスクリーンモードで Ctrl+L(または Cmd+K)を押す
→ 何回押しても画面の再描画のみ
→ 会話をクリアするには /clear を実行する
なお、非推奨(deprecated)の告知は対象範囲にはありませんでした。
最後に
Remote Control が実用段階に入ったと感じられる 2 バージョンでした。瞬断での切断、スマートフォンで選んだモデルがターミナルに反映されない、タスクパネルの Stop が効かないといった「使い続けると必ず当たる」類の不具合がまとめて解消されており、以前に一度離れた方こそ再訪する価値があるのではないでしょうか。
気になる変更があれば、アップデートして手元の環境で確認してみてはいかがでしょうか。
参考文献







