はじめに
Claude Codeは2026年8月に入ってから、「1つのセッションの中で賢く動く」機能だけでなく、「複数のセッションをまたいで連携する」機能を立て続けに追加している。具体的には、セッション同士がメッセージを送り合うクロスセッションメッセージング(Week 32、v2.1.224〜)、プロンプトに@と打つだけで相手セッションを指名できる@メンション(Week 33、v2.1.232〜)、そしてスマホのClaudeアプリからPC上のセッションにワンタップで接続できるRemote Controlのデバイスカード(Week 34、v2.1.234〜239)だ。加えて、Week 33ではバックグラウンドへの委譲が既定になったfork mode(/subtask)も入っている。
これらは公式の「What’s new」週次ダイジェストにそれぞれ単独の機能として紹介されているが、実務では単独で使うより「並行して動いている複数のセッションを、人手を介さずにどう同期させるか」という1本のフローとして組み合わせたときに真価が出る。この記事では、その組み合わせ方を実際に試した結果とともに解説する。なお着想は、YouTube「AI大学【AI&ChatGPT最新情報】」の直近動画で「ClaudeとClaude Codeの大型新機能」が取り上げられていたことから得ているが、動画自体の内容は転載せず、記載する事実はすべてAnthropic公式ドキュメント(code.claude.com/docs/en/whats-newの各週ダイジェストおよびchangelog)で個別に確認している。
手順:前提条件を確認する
マルチセッション連携機能を使う前に、次の2点を確認しておく。
- OSとバージョン: クロスセッションメッセージングと
@メンションは、当初macOS/Linux限定だった。Windowsでのネイティブ対応はWeek 34(v2.1.234以降)から追加されている。ターミナルで次を実行し、バージョンを確認する。
claude --version
期待結果: 2.1.234 以上であれば、Windowsでも他OSと同じくクロスセッションメッセージングが使える。それより古いバージョンの場合は先にアップデートする。
- 同じマシンで複数セッションを開いているか: この機能はあくまで「同一マシン上の複数のClaude Codeセッション」を対象にしている(Remote Controlはスマホからの遠隔接続だが、接続先は自分のマシンのセッション)。ターミナルタブや別ウィンドウで、テーマの異なる作業を行う2つ以上のセッションを起動しておく。
プロンプト:コピペで試せる6本
以下はすべて、複数セッションを起動した状態でそのまま入力できる。プロンプト内の「バックエンドAPI」「usersテーブル」のくだりは、公式ドキュメントの例に沿った具体的なシナリオであり、自分のプロジェクトの語句に置き換えれば実際に動く。
1. 到達可能なセッションを確認する
/list-agents
期待結果: 自分自身を除く、現在起動中の他セッションの名前・種別(interactive/background)・起動からの経過時間が一覧表示される。
成功判定: 1件以上のセッションが表示されること。0件の場合は、別のターミナルタブでもう1つclaudeを起動してから再実行する。
実際にこの原稿を書く過程でListAgents(/list-agentsのClaude内部での呼び出し先ツール)を実行したところ、次のような結果が返ってきた(セッション名は自動生成のもの)。
Peer sessions (6):
claud-code-df [0d059a] · interactive · started 11m ago
claud-code-cb [023de1] · interactive · started 8m ago
claud-code-62 [0cb778] · interactive · started 9m ago
claud-code-27 [0be45b] · interactive · started 31m ago
claud-code-d3 [3bbf98] · interactive · started 4h ago
manus-93 [6340e3] · interactive · started 10m ago
同一マシン上で6つものセッションが同時に動いていても、/list-agentsだけで全体が見渡せることが確認できた。一方で、名前がすべてclaud-code-XXという自動生成の連番のような形式で、どれが何のタスクを担当しているかは名前からはまったく判別できない。これは後述の「注意点」で触れる。
2. 自然文で別セッションに変更を伝える(クロスセッションメッセージング)
バックエンドAPIを担当しているセッションに、usersテーブルのnameカラムがdisplay_nameに変わったことを伝えて。影響がありそうなコードがあれば教えてほしいとも伝えて。
期待結果: ClaudeがListAgentsで候補セッションを特定し、SendMessageツールで要旨をテキストとして送信する。送った側の会話には「〜のセッションにメッセージを送信しました」という報告が返る。
成功判定: 送信先のセッションの画面にMessage fromという行が現れ、Ctrl+Oで展開すると送った内容が読める。公式ドキュメントによれば、送られるのはClaudeが書いたテキストのみで、会話履歴やファイルの中身そのものは送信されない。
3. @メンションで名指しする
@claud-code-df users.nameがusers.display_nameに変わったので、参照している箇所があれば確認して
期待結果: @の後ろに書いた名前が現在動いているセッションのうち1つだけに一致する場合、確認ステップなしでそのまま送信される。一致するセッションが複数ある、または存在しない場合は、Claudeが候補を提示するか送信できなかった旨を伝える。
成功判定: 「〇〇へメッセージを送信しました」という確認テキストが返る。誤って別セッションに届いていないか、宛先セッング側のMessage from表示で送信元を確認する。
4. 相手セッションがアイドルになったら通知させる
バックエンドのセッションが今の作業を終えて手が空いたら、SendMessageのnotify_when_idleオプションを使って知らせてほしいと伝えて
期待結果: SendMessageツールのnotify_when_idleという入力を使い、対象セッションが次にアイドル状態になったタイミングで1回だけ通知が送られてくる(Week 34で追加された挙動)。
成功判定: 対象セッションの作業が完了してアイドルになった後、自分のセッションに新しいメッセージ行が届く。対象がすでにアイドルであれば、ほぼ即座に通知が届く。
5. サブタスクをバックグラウンドのforkセッションに任せる
/subtask このプロジェクトのREADMEを、現在のディレクトリ構成に合わせて更新して
期待結果: fork modeはWeek 33からインタラクティブセッションで既定オンになっており、/subtaskで指定した作業はこれまでの会話全体とプロンプトキャッシュを引き継いだまま、別のバックグラウンドセッションとして実行される。入力欄の下のパネルに進捗が表示され、終わると結果が会話に返ってくる。
成功判定: パネルにforkセッションの状態が表示され、完了後にREADMEの差分(diff)が会話に提示される。もしバックグラウンド委譲を望まない場合は、環境変数CLAUDE_CODE_FORK_SUBAGENT=0を設定するとオフにできる。
6. スマホから同じマシンのセッションに接続する(Remote Control)
claude remote-control
期待結果: ターミナル上でRemote Controlが有効化された旨が表示される。以後、スマホのClaudeアプリの「Code」タブ上部に、このマシンがデバイスカードとして表示される(Week 34でResearch Previewを終え正式機能化)。
成功判定: スマホ側でデバイスカードをタップし、ディレクトリを選んでセッションを開始できること。接続後は、スマホ側でeffortレベルを変更するとPC側のセッションにもそのまま反映される。
活用例:1日の実務フローに統合する
ここまでの6つの機能は個別に使うこともできるが、実務では「並行してタスクを進めながら、必要な情報だけを人手を介さず相手セッションに流す」という1本のフローに組むと効果が大きい。想定シナリオは次の通り。
- 朝、同じマシンで役割の異なる複数セッションを起動する。 1つはフロントエンド修正、もう1つはバックエンドAPI修正、というように担当を分ける。
- バックエンド側でスキーマを変更したら、
/list-agentsで相手セッションの存在を確認し(プロンプト1)、自然文でフロントエンド側セッションに変更点を伝える(プロンプト2)。名前が一意に定まっているなら@メンション(プロンプト3)で直接送ってもよい。 - バックエンドのテストが通るまで待ちたいときは、
notify_when_idleで完了通知を頼んでおく(プロンプト4)。その間、自分はフロントエンド側セッションで別の作業を進められる。 - ドキュメント更新のような、会話の流れは要るが手を動かす必要のない作業は
/subtaskでforkセッションに逃がす(プロンプト5)。メインの会話は止めずに進行できる。 - 外出時は
claude remote-controlを起動したままにしておき(プロンプト6)、移動中にスマホのCodeタブからその日のセッションの状況を確認・追加指示する。
この一連の流れは、公式ドキュメントのどのページにも「1本のワークフロー」としては書かれていない。それぞれの機能ページは独立して書かれているため、複数セッションを横断する運用は自分で設計する必要がある。
注意点(実際に試して分かったこと)
- セッション名が自動生成のままだと、後から見て何のセッションか分からなくなる。 実際に
/list-agents相当を実行した結果、6つのセッションがすべてclaud-code-XXのような連番風の名前で並んでおり、名前だけでは担当タスクの判別が一切できなかった。役割ごとにセッション名をリネームしてから作業を始めることを勧める。 @メンションは「名前が一意に一致すれば確認なしで即送信」される。 便利な反面、紛らわしい名前や被った名前があると誤送信のリスクがある。公式ドキュメントによれば、同じ名前のセッションが既にある場合はClaude Codeが自動的にname-word-wordという形の別名を付けるため、完全な重複は起きない設計にはなっているが、似た名前同士の見間違いは人間側の注意が必要。- クロスセッションメッセージングは会話やファイルそのものではなく、Claudeが書いたテキストだけを送る。 ファイルの中身を直接共有したい場合は、この機能では不十分で、共有ファイルやgitのコミットを介した連携が別途必要になる。
- Remote Controlはマシンが起動していて
claude remote-controlが生きている間だけ有効。 スリープやシャットダウンでデバイスカードは消える。外出先から確実に使いたい場合は、マシン側のスリープ設定を見直す必要がある。 notify_when_idleはClaudeの判断でSendMessageに渡されるオプションであり、ユーザーが直接叩けるAPIではない。 プロンプトで依頼すれば使われることが多いが、必ず使われる保証まではドキュメントに明記されていない。確実性を求める場合は「SendMessageのnotify_when_idleオプションを使って」と明示的に頼むとよい。- fork modeはWeek 33からデフォルトでオンになっている。 意識せずに
/subtaskを使うとバックグラウンドセッションがどんどん増えていくため、増えすぎて追いづらくなったら/list-agents(またはclaude agents)で棚卸しする習慣を持つとよい。
あわせて読みたい
- 非エンジニアのためのClaude Code入門:コードを書かずにAIと協調する実践ガイド
- Claude Codeで自律作業を加速!サブエージェント/バックグラウンドエージェント徹底活用ガイド
- Claude Codeの自動化が「静かに止まる」問題|25日間気づかなかった実例と、沈黙を検知する仕組みの作り方
まとめ
クロスセッションメッセージング・@メンション・notify_when_idle・fork mode(/subtask)・Remote Controlのデバイスカードは、いずれも2026年8月のWeek 32〜34で追加されたばかりの機能で、単体の紹介記事は公式にも存在するが、「複数セッションを横断する1日の運用フロー」として組み合わせた解説はまだ少ない。今日試すなら、まず/list-agentsを実行して自分のマシンで動いているセッションを確認し、名前が分かりにくければリネームすることから始めるのがよい。そのうえで、担当の異なる2つのセッションを開き、実際に自然文でメッセージを送り合ってみると、この一連の機能がどう実務に組み込めるかが体感できるはずだ。
参考情報
- Claude Code What’s new — Week 32: https://code.claude.com/docs/en/whats-new/2026-w32
- Claude Code What’s new — Week 33: https://code.claude.com/docs/en/whats-new/2026-w33
- Claude Code What’s new — Week 34: https://code.claude.com/docs/en/whats-new/2026-w34
- Claude Code Changelog: https://code.claude.com/docs/en/changelog
- YouTube「AI大学【AI&ChatGPT最新情報】」(着想元。動画内容の転載はしていません): https://www.youtube.com/@AIAIChatGPT-cj4sh


Comments