Claude Code Remote Controlは何を直し続けてきたか──changelogの122件から読む実装の裏側
Claude Code公式CHANGELOGを「Remote Control」でgrepすると、v2.1.53からv2.1.248までの間に122件の関連エントリが見つかる。作業ツリーdiffが接続先に届かない不具合(v2.1.247)、パーミッションプロンプトが表示されない不具合(v2.1.248)まで、直近の最新版にも「まだ直っている最中」の項目が残っていた。バージョンごとの実際の記述を追った。

目次
Claude Code Remote Controlは、PC上で動かしているセッションを、外出先のスマホやブラウザから操作できる機能だ。公式ドキュメントには「何ができるか」が書かれているが、「これまで何が壊れていて、どう直されてきたか」は載っていない。それを追う一次資料は、GitHub上の公式CHANGELOG.mdだけになる。2026年8月27日にcurlで取得したこのファイル(5,982行)を「Remote Control」でgrepすると、v2.1.53(比較的古いバージョン)からv2.1.248(最新)までの間に122件の関連エントリが見つかった。当サイトでは以前、Remote Controlが「切れる」ときの切り分け手順を公式ドキュメントから整理したが、この記事はその裏側、つまり実装がどう変わってきたかを追う内容になる。
3行まとめ
- CHANGELOG.mdをRemote Controlでgrepすると122件がヒットする。最新のv2.1.248にも「接続後に最新メッセージが表示されない」という未解決寄りの修正が入っており、機能は現在進行形で直され続けている
- 直近3バージョン(v2.1.246〜v2.1.248)だけで見ても、セッション名の表示タイミング・作業ツリーdiffの報告・パーミッションプロンプトの表示という、基本的な同期に関わる不具合が続けて修正されている
- v2.1.70では「Remote Controlの
/pollの頻度を10分に1回に落とし、サーバー負荷を約300分の1に削減」という運用上の理由での変更もあり、機能追加だけでなく負荷対策の記録も残っている
直近3バージョンだけでも3件
最新のv2.1.248から遡って3バージョン分を見るだけで、次の3件が見つかる。
v2.1.248: Fixed Remote Control sessions occasionally never showing a permission prompt or the latest messages on the connected device after the CLI silently reconnected (CLIが静かに再接続した後、接続先デバイスにパーミッションプロンプトや最新メッセージが一切表示されなくなることがある不具合を修正)
v2.1.247: Fixed Remote Control sessions started with
/remote-controlnot reporting the working-tree diff to connected clients (/remote-controlで開始したセッションが、接続クライアントに作業ツリーのdiffを報告しない不具合を修正)
v2.1.246: Fixed Remote Control sessions keeping their placeholder name in claude.ai and the Claude app until the second prompt; the auto-generated title now appears after the first prompt (claude.aiとClaudeアプリ上でセッションが2回目のプロンプトまでプレースホルダー名のままになる不具合を修正。自動生成タイトルは最初のプロンプトの後に表示されるようになった)
「セッション名が付かない」「作業内容のdiffが届かない」「パーミッションの確認が出ない」という、いずれも「ローカルで起きていることが接続先に正しく伝わらない」系統の不具合が、直近3リリースで立て続けに直されている。これは偶然というより、Remote Controlという機能の性質上、ローカルとリモートの状態同期そのものが最も壊れやすい部分だということを示しているとみられる。
セッションが「消えたように見える」系の不具合が繰り返し出る
CHANGELOGを通して読むと、「セッションは実際には生きているのに、UI上は落ちたり止まったりしたように見える」という種類の不具合が、バージョンを変えて何度も現れる。
v2.1.238: Fixed a Remote Control session whose process crashed staying unavailable until
claude remote-controlwas restarted; it can now be reused when you next message it (プロセスがクラッシュしたRemote Controlセッションが、claude remote-controlを再起動するまで使用不能のままになる不具合を修正。次にメッセージを送ると再利用できるようになった)
v2.1.232: Fixed Remote Control sessions appearing unreachable to newly attached clients while idle (アイドル状態のとき、新しく接続したクライアントからRemote Controlセッションが到達不能に見える不具合を修正)
v2.1.83: Fixed Remote Control sessions showing as Idle in the web session list while actively running (実際には稼働中のRemote Controlセッションが、Webのセッション一覧では「Idle」と表示される不具合を修正)
v2.1.101: Fixed several Remote Control issues: worktrees removed on session crash, connection failures not persisting in the transcript, spurious "Disconnected" indicator in brief mode for local sessions, and
/remote-controlfailing over SSH when onlyCLAUDE_CODE_ORGANIZATION_UUIDis set (セッションクラッシュ時にworktreeが削除される、接続失敗がトランスクリプトに残らない、ローカルセッションでbriefモード時に誤った「Disconnected」表示が出る、CLAUDE_CODE_ORGANIZATION_UUIDのみ設定時にSSH経由の/remote-controlが失敗する、という複数の不具合を修正)
「本当は動いている/止まっている」と「表示上どう見えるか」がズレる不具合が、v2.1.83からv2.1.238まで、実に150バージョン以上の間隔を空けて別の形で繰り返し出ている。ローカルのプロセス状態と、サーバー経由で同期される表示状態という2つの情報源を一致させ続けることが、この機能の恒常的な難しさになっているとみられる。
サーバー負荷を意識した変更もある
すべてが不具合修正というわけではなく、運用上の負荷対策とみられる変更も記録されている。
v2.1.70: Reduced Remote Control
/pollrate to once per 10 minutes while connected (was 1–2s), cutting server load ~300×. Reconnection is unaffected — transport loss immediately wakes fast polling. (接続中のRemote Controlの/poll頻度を10分に1回に削減(それまでは1〜2秒に1回)。サーバー負荷を約300分の1に削減。再接続には影響なく、通信経路が切れると即座に高頻度ポーリングに戻る)
1〜2秒に1回のポーリングを10分に1回まで落として300倍の負荷削減、という具体的な数字が明記されている。この変更以前は、接続中のクライアントがサーバーに対して常時近い頻度で問い合わせを行っていたことになる。
クロスデバイス操作の細かい足並み揃え
セッション名・接続状態以外にも、モデル選択やパーミッションモードといった「設定値」が、複数デバイス間でズレる問題への対処が続いている。
v2.1.238: Fixed Remote Control model picks made on a phone or web not updating the model shown in the terminal (スマホやWebで行ったモデル選択が、ターミナル側の表示に反映されない不具合を修正)
v2.1.234: Remote Control sessions started from Claude Code Desktop or VS Code now keep phones and claude.ai/code updated on the session's permission mode (and claude.ai/code on the model) as they change (Claude Code DesktopやVS Codeから開始したRemote Controlセッションが、パーミッションモードの変更をスマホとclaude.ai/codeに、モデルの変更をclaude.ai/codeに、それぞれリアルタイムで反映するようになった)
こうした「設定は1箇所で変えれば全デバイスに伝わるべき」という前提が、実装上は個別に配線し直す必要があった箇所として、複数バージョンにわたって少しずつ埋められてきたことが分かる。
npmの公開履歴で「バージョン間の実時間」を確認する
CHANGELOG.md自体にはリリース日が書かれていない。そこで、npmレジストリの公開API(registry.npmjs.org/@anthropic-ai/claude-code)から、この記事で扱った各バージョンの実際の公開日時を取得した。
| バージョン | npm公開日時(UTC) |
|---|---|
| 2.1.53 | 2026-02-24 |
| 2.1.70 | 2026-03-06 |
| 2.1.83 | 2026-03-24 |
| 2.1.101 | 2026-04-10 |
| 2.1.232 | 2026-08-13 |
| 2.1.234 | 2026-08-17 |
| 2.1.238 | 2026-08-20 |
| 2.1.246 | 2026-08-25 |
| 2.1.247 | 2026-08-26 |
| 2.1.248 | 2026-08-27 |
| 2.1.251 | 2026-08-28 |
これで分かるのは、「v2.1.83で表示上の不具合が直った後、同種の問題がv2.1.238で再発するまで実に5カ月弱(2026年3月24日〜8月20日)かかっている」という実時間の間隔だ。CHANGELOG.mdのバージョン番号だけを見ていては分からない、リリースの実際のペース(2月末の初出から8月末までの半年で124件がヒットする密度)がここから読み取れる。
v2.1.251でさらに増えていた——記事更新時点で124件
この記事の元になった調査は2026年8月27日時点のCHANGELOG.md(v2.1.248が最新)を対象にしていたが、2026年8月31日に同じファイルを取得し直すと、v2.1.250・v2.1.251という2つの新しいバージョンが追加されており、v2.1.251には次の4件のRemote Control関連エントリが増えていた。
v2.1.251: Added live streaming of a foreground subagent's tool calls and results to Remote Control clients (background subagents, the default, still show status only) (フォアグラウンドのサブエージェントによるツール呼び出しと結果を、Remote Controlクライアントへライブストリーミングする機能を追加。バックグラウンドのサブエージェント〔デフォルト〕はステータスのみ表示のまま)
v2.1.251: Fixed Remote Control reporting a failure when an organization's policy disables it; it now shows a single quiet notice instead (組織のポリシーでRemote Controlが無効化されている場合に失敗として報告されていた不具合を修正。目立たない通知1件を表示するだけになった)
v2.1.251: Fixed
/mcp reconnecton Remote Control showing a generic withheld-detail error instead of the real remedy when a server was disabled in another session (別セッションでサーバーが無効化されている場合、Remote Control上の/mcp reconnectが実際の対処法ではなく汎用の詳細非表示エラーを出していた不具合を修正)
v2.1.251: [VSCode] Changed the Remote Control banner to a footer pill (shown while Remote Control is on or has failed) that opens the session on claude.ai/code; turn it on or off with
/remote-control(VSCode拡張のRemote Controlバナーを、フッターのピル型表示に変更。オン中または失敗時に表示され、claude.ai/code上のセッションを開ける。/remote-controlでオンオフ切り替え)
同じgrep -c "Remote Control"をこの更新版CHANGELOG.mdに対して再実行すると124件だった。元の122件を記録した時点のCHANGELOG.md自体は手元に保存しておらず、この4日間の増分を1件単位で完全に再現できたわけではないが、v2.1.251だけで新たに4行が「Remote Control」を含んでいたことは今回のgrepで直接確認した。組織ポリシーとの連携やサブエージェントのライブストリーミングなど、単純なバグ修正だけでなく機能追加も続いている。
この記事のために読んだ範囲
CHANGELOG.mdは記事更新時点で6,060行あり、Remote Control以外にも大量のエントリを含む。この記事は「Remote Control」という文字列を含む124件のうち、代表的と判断した十数件を抜粋して構成しており、残り100件超の個別の中身までは掘り下げていない。また、各エントリがどのユーザー影響(頻度・深刻度)を持っていたかは、CHANGELOG自体には記載がなく、本記事側でも確認していない。バージョン番号と修正内容の対応は、grepとPythonスクリプトでCHANGELOG.mdの見出し(## x.y.z)と箇条書きを機械的に突き合わせて特定したもので、この突き合わせ自体の誤りがないかは目視で確認した範囲に留まる。npmの公開日時はUTCのタイムスタンプをそのまま日付に丸めており、日本時間とはズレる場合がある。
122件という数字をどう見るか
自分がこのCHANGELOGを実際にgrepしてみて感じたのは、「Remote Control」という1つの機能名だけでこれだけの数がヒットする密度だった。単純計算で、v2.1.53からv2.1.248までの約200バージョンの中で、Remote Control関連の変更が入っていないバージョンの方が少ない。これは機能が不安定であることの裏返しというより、「PC側のローカルプロセス」と「スマホ・Web側のリモートクライアント」という2つの独立したシステムを常時同期させ続けるという設計自体が、継続的な微修正を要求し続けるものだということを示しているように見える。ただしこれは自分の受けた印象であり、Anthropic社内での不具合分類や優先度づけがどうなっているかは、この記事の範囲では確認できていない。
感想・指摘はコメント欄へ。
出典・参照資料
AIニュースの解説を動画でも
YouTubeでは注目ニュースの背景を解説し、Xでは新着記事をお知らせしています。
コメント
まだコメントはありません。最初のコメントを書いてみませんか?
AIについて聞きたいことはありますか?
質問箱で無料で受け付けています。回答は公開され、他の方の参考にもなります。
質問箱を見る →新しい記事をメールで受け取る
AIの新しい発表を、出典付きで整理して届けます。