OpenCode サーバー
OpenChamber は OpenCode サーバーの上で動作します。デフォルトでは OpenChamber がサーバーを起動するため、何もする必要はありません。このページが必要なのは、すでに実行しているサーバーに OpenChamber を向けたい場合、または OpenChamber が起動するサーバーを管理したい場合だけです。
OpenChamber がサーバーを見つける順序
OpenChamber の起動時、次の順序でサーバーを探します。
- すでに起動済みのサーバーを再利用する
- 指定されていれば外部サーバーに接続する(下記参照)
- デフォルトポート(
4096)のサーバーを自動検出する - それ以外の場合は、自分でサーバーを起動して管理する
何も設定されていなければ、手順 4 が自動的に実行され、そのまま使えるようになります。
すでに実行しているサーバーに接続する
OpenChamber を起動する前に次を設定します。
OPENCODE_HOST=http://localhost:4096 OPENCODE_SKIP_START=true openchamberOPENCODE_HOST— ポートを含む OpenCode サーバーの完全なアドレスです(http://localhost:4096のような値)。末尾にパスを付けてはいけません。OPENCODE_SKIP_START=true— OpenChamber に自分のサーバーを起動しないよう伝えます。
ポートだけを変えたい場合は、OPENCODE_HOST ではなく OPENCODE_PORT を設定します。
OPENCODE_HOST にポートがない、またはパスが含まれている場合、OpenChamber はそれを無視し、自分のサーバー起動にフォールバックします。期待した接続が行われなかった場合は、起動ログの [config] 警告を確認してください。
CLI からサーバーを管理する
openchamber statusopenchamber logsopenchamber restartopenchamber stopopenchamber だけを実行すると、サーバーはバックグラウンドで起動します。ターミナルに接続したままにするには --foreground を追加します。
ログイン時に OpenChamber を起動する
startup enable を使うと、ネイティブのユーザーサービスをインストールできます。OpenChamber は macOS では launchd、Linux では systemd --user、Windows では Task Scheduler を使います。
openchamber startup enableopenchamber startup statusopenchamber startup disableUI を保護するには、サービスを有効化するときにパスワードを設定します。
OPENCHAMBER_UI_PASSWORD='secret' openchamber startup enableログイン時に起動し、デスクトップまたはモバイルクライアント向けに使うヘッドレスサーバーでは、--api-only と到達可能な host を含めます。
openchamber startup enable --port 3000 --api-only --host 0.0.0.0 --ui-password secretstartup enable は現在の環境をサービスにスナップショットするため、同じシェルから openchamber を起動した場合に近い動作になります。これにより、プロバイダートークン、PATH、SSH agent 設定、その他の CLI 認証/設定変数が利用できます。最小限のサービス環境にしたい場合は --no-env-snapshot を使ってください。
スタートアップサービスは --port、--host、--ui-password、--api-only を記憶します。CLI の restart と update restart は保存済み設定を再利用します。
別の OpenChamber アプリ向けに接続リンクを作成するには、次を使います。
openchamber connect-url --port 3000 --server http://your-host:3000 --qropenchamber connect-url --help を実行すると、--name、--lan、--server、--api-only、--ui-password、--qr など、すべてのリンクオプションを確認できます。
その実行中サービスに対して、トンネルは独立して管理できます。
openchamber tunnel start --port 3000openchamber tunnel stop --port 3000トンネルを停止しても、サービスやアプリは再起動されません。
“OpenCode is restarting”
サーバーの起動中または再起動中、OpenChamber は “OpenCode is restarting” 状態を表示し、準備が整うまでリクエストを一時停止します。これは起動直後や再起動直後には正常です。いつまでも消えない場合は、OpenCode 接続 を参照してください。
関連
- プロバイダー、モデル、エージェント — サーバーの接続先を設定する
- OpenCode 接続 — 接続できない場合