SSH リモートワークスペース
SSH ホストに接続し、リモートのプロジェクト、エージェント、ファイル、Git、ターミナルで作業します。
Dream では、ローカルプロジェクトと並べて、SSH 経由でリモートマシンのプロジェクトを開けます。ファイル、Git コマンド、エージェントのプロセス、ターミナルはプロジェクトのホスト上で動作します。ホストのラベルで作業先を確認できます。
SSH ワークスペースは Dream v0.25.0 から利用できます。このリリースには、Linux x64、Linux ARM64、macOS Apple silicon(ARM64)向けの管理対象ホストランタイムが含まれます。これらはリモートホストの対応プラットフォームです。Dream デスクトップアプリは Windows、macOS、Linux で動作します。
v0.28.0から、Linuxホストランタイムはglibc 2.31以降のシステムをサポートします。
ホストの追加と接続#
- システムのターミナルで
ssh devboxが動作することを確認します。devboxは SSH 設定のエイリアスまたはuser@hostに置き換えてください。Dream はシステムの SSH クライアント、設定、鍵を使用します。 - 設定 → SSH ホストを開き、SSH ホストを追加を選択します。SSH の接続先と、必要に応じて名前を入力します。
- ランタイムを自動インストールする場合は、ホストコマンドを空欄にします。保存、接続の順にクリックします。
- ホスト鍵、パスワード、パスフレーズ、二要素認証の要求には Dream 内で回答します。要求を拒否またはキャンセルすると、その接続試行は停止します。
管理対象のランタイムは、バージョンごとに ~/.dream/host/versions/ にインストールされます。ホストがランタイムをダウンロードできない場合は、Dream がローカルにダウンロードして SSH 経由で転送できます。エージェントの CLI もリモートマシンにインストールし、そこでサインインしてください。CLI はそのマシンの環境で動作します。
手動でインストールしたランタイムを使う場合は、リモートマシンで dream-host を実行するコマンドをホストコマンドに設定します。
リモートプロジェクトを開く#
まだホストを追加していない場合、SSH ホストで開くを選択すると設定 → SSH ホストに直接移動します。そこでホストを追加し、開始画面に戻ってフォルダーを開いてください。
- 開始画面でSSH ホストで開くを選択します。プロジェクトの + ボタンでこの画面に戻れます。
- ホストを選択し、必要に応じて接続します。ホームフォルダ、1 つ上のフォルダ、隠しフォルダを表示でフォルダーを参照するか、フォルダのパスを直接入力します。
- 開くをクリックします。リモートフォルダーが、専用のチャットとツールを持つプロジェクトタブとして開きます。
閉じたリモートプロジェクトは、ホストとパス付きで最近閉じた項目に表示されます。再び開くと、そのホストに接続します。リモートパスはリモートマシン上の場所です。Dream の外でファイルを開くときは、そのマシンに接続したエディターを使用してください。
ホストの再接続と削除#
Dream は中断された接続を再試行します。ホストが利用できなくてもプロジェクトタブは表示されたままで、再接続までメッセージ送信は無効になります。再接続が停止した場合は、表示されたエラーを確認し、再接続、または 接続(設定 → SSH ホスト内)を使用します。
編集でホスト名、接続先、コマンドを変更します。接続先またはコマンドを変更すると、接続中のホストに再接続します。切断ではプロジェクトタブが残ります。削除では、この Dream ワークスペースからホストとそのプロジェクトが除かれますが、リモートファイルやホストのカタログは削除されません。
接続の問題#
まずシステムのターミナルで同じ SSH 接続先を確認します。認証やホスト鍵の問題を解決してから再接続してください。ホストのランタイムが起動しない場合は、設定 → SSH ホストのエラーを読み、設定したホストコマンドや、そのプラットフォーム向けのランタイムの有無を確認します。
開発ビルドにはダウンロード可能な公開済みランタイムがありません。Dream アプリのリポジトリから pnpm host:install-dev devbox を実行し、ホストコマンドを空欄にして再接続してください。リモートビルドには Node.js 22 以降、pnpm または Corepack、make、Python 3、C++ ツールチェーン(g++ 10 以降)が必要です。インストーラーは、ランタイムを置き換える前に既存の開発ホストデーモンを停止します。