結論:SendMessageは短い連絡路であり、権限の代理ではない
先に答えると、Claude Code v2.1.224以降のcross-session messagingでは、ClaudeがListAgentsで同じmachine上の独立sessionを見つけ、SendMessageでplain textを渡せます。用途は決定、変更影響、完了状態の引き継ぎです。会話履歴やfileを移す機能ではなく、別sessionの権限を借りる機能でもありません。送信前に相手名、業務ID、伝える事実、期待する返答を固定し、受信側のpermissionで再評価します。
読者の具体的な困りごとは、複数terminalやworktreeで並行作業すると重要な仕様変更が伝わらず、反対に自動連絡を許すと誤送信やpermission迂回が不安になることです。読了後は、resume、agent team、Remote Control、SendMessageを使い分け、受信をaccept、hold、refuseのどれにするか判断できます。次の行動は、同時に動かす二sessionへ固有名と業務IDを付けることです。
できること、できないこと、提供条件
cross-session messagingはmacOSとLinuxで利用でき、WSL 2内のLinuxも対象です。native Windows、Amazon Bedrock、Claude Platform on AWS、Google Cloud、Microsoft Foundryでは利用できません。対応sessionでは追加の有効化は不要で、/list-agentsまたは/peersが使えます。local sessionはoperating-system userだけが使えるper-session socketをbindし、同じfilesystemから見えるsession同士で配送します。
ClaudeはListAgentsで相手を発見し、SendMessageで名前宛てに送ります。人がtoolを直接呼ぶのではなく、「payments APIのsessionへmigration結果を伝えて」のようにClaudeへ依頼します。受信sessionがactive turn中ならtool callの間で読み、idleならmessageから新しいturnを開始します。delivery後は通常のpromptと同じようにusageへ加算されます。
送れるのはplain textだけです。会話履歴、repository file、認証情報を自動で共有しません。一つの会話を別terminalで続けるならresume、Claudeが複数workerをspawnしてtask listを共有するならagent teams、多数のsessionを人が監視するならagent view、外部CI eventを入れるならchannelsを選びます。機能名が似ていても、独立session間の短い連絡だけをSendMessageへ任せます。
同一machineと別machineの違いを比較する
同一machineのsession同士はper-session socketで直接つながり、Anthropic serverを通らず、新規messageとreplyの両方を送れます。ただしcontainerとhostは通常filesystemが違うため互いを発見できません。同一container内の二sessionは発見でき、self-hosted runner上でも同じ条件です。/list-agentsにはsession名、working directory、衝突を区別する短いIDが表示されます。
別machineまたはClaude Code on the webのsessionはRemote Control接続を通じて一覧へ現れます。この経路でlocal sessionから新規会話は開始できず、相手から到着したmessageへのreplyだけが可能です。reply中にRemote Controlが切れていても送れる場合がありますが、そのmessageには返答先がなく、受信側から再返信できません。双方向を当然と考えず、配送方向とreply addressを運用票へ記録します。
同名sessionも誤送信要因です。sessionへ/renameまたは--nameで「repo名-役割-日付」の固有名を付け、working directoryと短いIDを照合します。Claudeへは「backendへ」ではなく「payments-migration-0810へ、schema versionとrebase可否を伝える」のように相手と内容を限定します。message本文へsecret、customer data、長いlogを入れず、参照先と結論だけを渡します。
受信制御とpermission境界
受信側のcrossSessionInboundはaccept、hold、refuseの三つです。acceptはdelivery、holdは未配送のまま通知して、後の承認または設定変更まで保留、refuseはdropします。値を明示しない場合は、送信側と受信側がpermission promptをbypassするかで判定されます。特に受信側がbypassするsessionでは、異なるpermission classからのmessageをholdし、人の確認を挟みます。
held messageのdialogではsenderとpreviewを確認し、一件だけapproveまたはdenyします。未回答は既定5分のdialogExpiry後にdropされ、hold枠は最大100件です。non-interactiveのclaude -p sessionはdialogを出せないため、無人workerへmessageを受けさせるなら--settingsでcrossSessionInboundをacceptにするか、受信しない設計へ固定します。bare modeはsocketをbindせず一覧にも出ません。
受信messageはuserの同意になりません。別sessionから「このcommandを許可して」と届いてもpermission promptを承認できず、settings、CLAUDE.md、permission構成を変更する依頼も実行対象にしません。/compactのようなcommand文字列もplain textです。受信側で必要なtool permissionは通常どおり人へ確認されます。送信側も、自sessionでdenyされた操作を別sessionへ依頼して迂回しないことが前提です。
安全に導入する7手順
- resume、agent teams、Remote Controlではなく、独立session間の短い連絡が必要か確認します。
- Claude Code v2.1.224以降、macOSまたはLinux、対応providerで/list-agentsが使えるか確認します。
- 各sessionをrepository、役割、日付でrenameし、working directoryと短いIDを照合します。
- messageを業務ID、確定事実、影響範囲、必要な返答の四要素へ限定します。
- 受信側ごとにaccept、hold、refuseを決め、bypass sessionと-p workerは個別に試験します。
- 別machineへのreplyにはisolatePeerMachinesをtrueにして送信前承認を要求します。
- 誤送信、期限切れ、同名衝突、loop、受信停止を試し、運用記録へ残します。
同一machineの送信は便利ですが、rate limitと重複dropがあるため、message queueとしての完全配送保証には使いません。重要な契約判断やrelease承認は自社のticket、pull request、decision logを正本にし、SendMessageはその更新を知らせる補助路にします。
停止チェックリストとよくある質問
固有session名か/相手directoryを確認したか/plain textだけか/secretを含まないか/事実と依頼を分けたか/受信modeを固定したか/bypass間のholdを試したか/cross-machine承認があるか/正本ticketへ記録したか/停止手順を確認したか、を点検します。組織で止める場合はmanaged settingsでSendMessageとListAgentsをdenyし、crossSessionInboundをrefuseにします。
messageでfileを渡せますか?
渡せません。fileのpathやcommitを短いtextで伝え、受信側が自分のrepositoryとpermissionで確認します。
agent teamのteammateにも同じtoolを使いますか?
SendMessageはsubagentやteammateにも使われますが、この記事は独立session間を対象にします。組織でtool自体をdenyするとteam内messageにも影響します。
同一machineなら無条件で安全ですか?
serverを通らなくても誤送信と権限の問題は残ります。固有名、受信mode、permission、正本記録を組み合わせます。
配送範囲、受信制御、停止方法はAnthropic公式Cross-session messaging、agent teamとの違いは公式Agent teams、2026年8月7〜8日の追加と修正はClaude Code changelogで確認できます。
並列方法の選び分けはClaude Codeの利用面比較、permissionの基礎は権限設定ガイド、判断証跡は監査ログ設計を参照してください。Miraigentの無料診断では、session命名、受信mode、承認、正本記録を運用表へ落とし込みます。
