ARTICLE

Claude Code VMリモート実行の本番運用ガイド【2026年版】— WebSocket+PTYでブラウザから安全に利用する実装パターン

2026/9/16 (更新: 2026/9/17)

SHARE

Claude Code VMリモート実行の本番運用ガイド。WebSocket+PTYでブラウザから安全に利用する実装【2026年版】

Cl

Claude Code VMリモート実行の本番運用ガイド【2026年版】— WebSocket+PTYでブラウザから安全に利用する実装パターン

ARTICLE株式会社renue
renue

株式会社renue

2026/9/16 公開2026/9/17 更新

renueについて

renueは、AIで業務を実装する会社です

AIコンサルティングから図面AI・広告運用エージェント・コールセンターAIまで、実際に動いているサービスをご覧いただけます。renueが何をしている会社か、まずはサービス一覧からご確認ください。

Claude Code VMリモート実行とは

Claude Code VMリモート実行とは、Claude Code(Anthropicのターミナルベースコーディングエージェント)をクラウドVM上で実行し、WebSocket + PTY(擬似端末)経由でブラウザからリモートアクセスする実装パターンです。コード実行に必要なリソースをVM側に配置し、認証・権限・通信先を設計することで、組織のセキュリティポリシーに合わせた運用を目指せます。WebSocketとPTYだけで安全性が確保されるものではありません(xterm.jsのセキュリティガイド)。

AnthropicのClaude Code v2.1.51公式リリースノートでは、Remote Controlを開始するclaude remote-controlコマンドの追加が案内されています。公式Remote Controlは、手元やVMで動くセッションをclaude.ai/codeやiOS/Androidアプリから操作する機能です。本記事のWebSocket + PTYによる独自実装とは接続方式が異なります。

アーキテクチャ概要

ブラウザ(xterm.js) ←→ WebSocket ←→ サーバー(node-pty/PTY) ←→ Claude Code プロセス
                                              ↓
                                         Azure VM / AWS EC2

3層構成

レイヤー技術役割
フロントエンドxterm.js + WebSocketブラウザ上にターミナルUIを表示し、入出力を中継
サーバーサイドnode-pty / Python pty擬似端末を生成し、Claude Codeプロセスの入出力を管理
実行環境Azure VM / AWS EC2Claude Codeが実際に動作するクラウドVM

なぜVM上で実行するのか

  • セキュリティ:クライアントPCではなく管理されたVM上でコード実行。ファイルシステムの分離、ネットワークポリシーの適用を設計する。VM化してもモデルとの通信でデータが外部送信される点は変わらない
  • リソース管理:CPU/メモリ、必要に応じてGPUをVM単位で割り当てる。ビルド・テスト等のローカルツールの処理はVM側で実行するが、Claudeのモデル推論は接続先サービスで行う。VMにGPUを追加してもClaudeの推論をVM内で実行する構成にはならない
  • マルチユーザー対応:各ユーザーに独立したVM環境を割り当て、データの分離を図りやすい
  • どこからでもアクセス:ブラウザがあれば、PC/タブレット/スマートフォンからアクセス可能
  • 環境の統一:開発環境のセットアップをVM側で完了させ、「自分のPCでは動く」問題を解消

WebSocket + PTYの実装ポイント

PTY(擬似端末)の生成

PTYはプロセスにターミナルを提供する仕組みです。node-ptyやPythonのptyモジュール(Unix向け)でClaude Codeプロセスを起動し、その入出力をWebSocketで中継する構成が考えられます。node-ptyの子プロセスは親と同じ権限で動くため、PTY自体を権限分離の仕組みとみなさず、実行ユーザーや隔離環境を設計します。

WebSocketの設計

  • 双方向通信:ユーザーのキー入力をサーバーへ、Claude Codeの出力をブラウザへリアルタイムに中継
  • 認証:WebSocket接続時に認証し、未認証接続を拒否する。JWTを使う場合は署名・有効期限等を検証する。接続後の操作権限、Originの許可リスト、セッション失効も設計する(OWASP WebSocket Security Cheat Sheet)
  • 再接続ロジック:独自構成の再接続間隔やタイムアウトは、プロキシとセッションの要件に合わせて決める。公式Remote Controlの約10分という制限は、マシンが起動中でもネットワークへ到達できないサーバーモードの説明。対話セッションは再試行を続けるため、WebSocket共通の制限ではない
  • セキュリティ:WSS(WebSocket Secure)で通信を暗号化する。暗号化とは別に、認証・認可と端末出力の扱いを検証する(xterm.jsの注意事項)

環境変数の注入

APIキー・認証トークン等をVMに渡す際は、ハードコードを避け、シークレットマネージャーと最小限のアクセス権を使います。起動時に環境変数へ注入する方式もありますが、プロセスから参照でき、ログ等へ漏れる可能性もあります。OWASPのシークレット管理の説明に沿って受け渡し方法を選びます。Vault等に保存するだけでエージェントから隠せるわけではなく、秘密を持つ処理の分離や、必要な操作だけを許す代理処理等が別途必要です。

Claude Code Remote Control(2026年9月確認)

Anthropic公式のRemote Controlでは、ローカルまたはVMで動くClaude Codeセッションをclaude.ai/codeから操作できます。コード実行とファイルアクセスは実行元に残りますが、会話を同期するための記録はAnthropic側にも保存されます。

  • アウトバウンド接続のみ:公式Remote Controlは実行元からのHTTPS接続を使い、リモート操作用のインバウンドポートを開く必要がない。独自WebSocketサーバーの公開・接続設計には、この条件をそのまま適用できない
  • セッション同期:PCで開始した作業をモバイルで継続可能
  • 実装前の計画レビュー:Plan modeで変更前に計画を確認する。Remote ControlはセッションをWebから操作する仕組みで、Plan on the Webという独立機能を指すものではない。実行場所は接続元のまま
  • 制約:公式の利用要件はPro/Max/Team/Enterprise。Team/Enterpriseは管理者による有効化が必要で、APIキー認証は対象外。実行元のプロセスを動かし続ける必要がある。対話セッションは1インスタンス1リモートセッションだが、サーバーモードは複数セッションに対応する。プラン・モードごとの最新条件は公式資料を確認する

Claude Code VM実行基盤の構成例

専用ラッパーによる実行環境管理

VM実行環境では、環境変数の受け渡し・起動時設定・セッション管理をラッパー層に集約する設計が考えられます。その場合も、ラッパーがあるだけで安全になるわけではなく、秘密情報を参照できる主体と子プロセスの権限を明示して設計します。

WebSocket統合によるブラウザアクセス

バックエンドにWebSocketエンドポイントを置き、xterm.jsと組み合わせるとブラウザ上にターミナルUIを提供できます。xterm.js公式ガイドは、デモ実装のWebSocket接続を本番でそのまま使わず、TLSや認証等を設計する必要性を説明しています。

Slack経由のVM起動

チャット操作を起点にクラウドVM上のセッションを起動する構成も考えられます。SlackのスラッシュコマンドはアプリへHTTPリクエストを送る仕組みです。VM起動との連携はアプリ側で実装し、Slackからのリクエスト検証に加えて、操作したユーザーが対象VMを起動できるかも確認する設計にします。

本番運用のベストプラクティス

  • 認証の一貫性:ブラウザ→API→WebSocketの認証チェーンを統一し、バイパスしない
  • タイムアウト管理:アイドル状態のセッションを自動停止してリソースを回収
  • ログと監査:監査に必要な範囲で操作ログを記録し、機密情報のマスキングと保持期間を定める
  • コスト管理:VMの起動/停止を自動化し、未使用時のコストを削減
  • 企業ファイアウォール対応:WSS接続がブロックされる場合は、承認された接続経路や代替手段を管理者と確認する。フォールバックでも認証・暗号化の要件を維持する

よくある質問(FAQ)

Q1: ローカル実行とVM実行どちらがよい?

個人開発ではローカル、統一環境や集中管理が必要なチームではVMが候補です。ただし機密コードだからVM一択ということではありません。管理された端末や隔離環境の選択肢を公式セキュリティ資料と照らし、アクセス権・モデルへの送信範囲・保存条件が要件に合うかを確認して選びます。

Q2: VMのコストは?

小規模なインスタンスであれば低コストに抑えられますが、料金は提供元や地域・稼働時間により変動します。必要な時だけ起動する運用ならさらに削減可能です。

AI開発環境・リモート実行基盤のご相談

renueでは、Claude Code VMリモート実行環境の構築からWebSocket統合、セキュリティ設計まで支援しています。

無料相談はこちら →
SHARE

FAQ

よくある質問

Claude CodeをローカルPCではなくクラウドVM(仮想マシン)上で実行し、WebSocket+PTYを介してブラウザからリモートアクセスする運用パターンです。コードを管理された環境に置くこと、チームで環境を統一すること、ツール実行用の計算資源を調整できることが利点です。ユーザー間の分離や認証は別途設計し、モデルとの外部通信も考慮します。

WebSocketはブラウザとサーバー間の双方向通信プロトコルで、PTY(Pseudo Terminal)はプロセスへ端末入出力を提供する仕組みです。組み合わせるとリモートVMのターミナルをブラウザから操作できます。安全に運用するには、WSS、認証・認可、Origin検証、プロセスの権限分離等を別途実装する必要があります。

コードを管理されたVMに置く要件、ビルド・テスト等に使うCPUやメモリの割り当て、複数エージェントのリソース管理、チームで統一された実行環境を提供する要件が主な理由です。GPUが必要なローカル処理があればVMへ割り当てられますが、Claudeのモデル推論は接続先サービスで行われ、VM内で完結するものではありません。

WSSによる通信暗号化、認証・認可、ネットワークのアクセス制御、機密情報を含めない操作ログと保持期間の設定を設計します。APIキー等はVault等で管理しても、環境変数として渡した実行プロセスからは参照できます。エージェントに秘密を渡さない設計には、秘密を持つ処理の分離や権限を限定した代理処理等が別途必要です。

セキュリティ要件が厳しい企業(金融・医療等)、リモートチームでの共同開発環境が必要な企業、大規模なコードベースでClaude Codeを運用する企業、AIエージェントの複数同時実行が必要な企業に向いています。ローカル実行で十分な小規模チームにはオーバースペックな場合があります。

renueについて

renueは、AIで業務を実装する会社です

AIコンサルティングから図面AI・広告運用エージェント・コールセンターAIまで、実際に動いているサービスをご覧いただけます。renueが何をしている会社か、まずはサービス一覧からご確認ください。

関連記事

AI導入・DXの悩みをプロに相談してみませんか?

AIやDXに関する悩みがありましたら、お気軽にrenueの無料相談をご利用ください。renueのAI支援実績、コンサルティングの方針や進め方をご紹介します。

無料資料をダウンロード