Claude Codeの複数PC運用における課題を解決:Discord MCPによる分散オーケストレーションの最適解
本記事は、AIエージェント開発における「Claude Code」の複数PC環境での運用課題、特にノード間の「通信手段」の確保と、作業の「引き継ぎ」や「承認フロー」の確立に焦点を当てています。複数のPCでClaude Codeを使用する際、従来のファイルベースの通信では、文脈の欠落、承認の遅延、リアルタイム通知の欠如といった深刻な問題が発生します。本稿では、これらの課題を解決する「Discord MCP (Message Channel Protocol)」を用いた分散オーケストレーションのアーキテクチャを提案しています。
具体的な構成は、Server Node(常時稼働のHTTPサーバー)、Client Node(主作業端末)、Automation Node(自動化ワークフロー)の3ノード構成であり、すべてTailscale VPNで相互接続されます。鍵となるのは、Discordを単なる通知手段ではなく、エージェント間のメッセージバスとして活用する点です。この仕組みにより、以下の機能が実現します。
1. **リアルタイムな承認フロー**: 夜間に稼働するエージェントがDiscordの特定チャンネル(#approval-queue)に承認リクエストを投稿し、ユーザーはスマートフォンから通知を受け取り、✅または❌のリアクションをタップするだけで、本番操作の承認が可能です。これにより、従来のファイルベース通信では不可能だった即時かつ確実な制御が可能になります。
2. **WebSocket接続制限の回避**: 複数のPCから同時に接続する場合、Discord BotのWebSocket接続は1本しか張れないという技術的な制約があります。これを回避するため、Server Nodeを唯一のWebSocket接続保持者とし、Client NodeからはHTTP/SSE(Server-Sent Events)経由で接続することで、複数ノードへのスケールアウトを実現しています。
3. **アクション駆動型通知**: 単なる「情報伝達」に留まらず、レポートに付与された絵文字(例:🧹)をユーザーがタップするだけで、次のClaude Codeセッションでアクションとして検出され、自動修復などの具体的な処理が実行される「リモコン」としての通知が実現します。
このシステムは、追加のインフラコストを一切かけず、Discordの無料機能とオープンソースの`discord-ops`パッケージを活用することで、高度な分散エージェントシステムを構築することを可能にしています。
背景
AIエージェントの複雑化に伴い、単一のPC環境での作業から、複数のノード(PCや自動化ワークフロー)が連携する分散システムへの移行が求められています。従来のノード間通信はファイル共有に依存し、リアルタイム性や確実な制御が課題でした。本記事は、この通信のボトルネックをDiscordという日常的なプラットフォームで解決する手法を提示しています。
重要用語解説
- Claude Code: AIエージェント開発のためのコード実行環境またはフレームワーク。エージェントが自律的にタスクを実行する際に使用される。
- MCP (Message Channel Protocol): エージェント間でメッセージを交換するためのプロトコル。本記事ではDiscordをメッセージバスとして利用する。
- SSE (Server-Sent Events): サーバーからクライアントへ、リアルタイムでデータを一方向送信するためのWeb技術。WebSocketの代替として、複数クライアントへの接続を可能にする。
- 影響: 本技術は、AIエージェントの運用環境を劇的に改善し、単なる自動化から「人間によるリアルタイムな介入と承認」が組み込まれた信頼性の高いシステム構築を可能にします。これにより、AIシステムの信頼性と実用性が飛躍的に向上すると予想されます。特に、夜間や遠隔地での自動運用において、人間の監視と介入が容易になります。