cc_server CLI
すべてのプロセスフラグは CLI フラグまたは環境変数で指定します。優先されるのはフラグ、 次に環境変数、最後にデフォルトです。サードパーティの資格情報は例外です — 以下を参照してください。
| フラグ | 環境変数 | デフォルト | 意味 |
|---|---|---|---|
--data-dir |
CC_SERVER_DATA_DIR |
OS のユーザー単位のアプリケーションデータディレクトリ(以下を参照) | データベース、シークレット、モデル、キャッシュ済みメディア |
--port |
CC_SERVER_PORT |
9030 |
TCP ポート(0 = 一時ポート) |
--bind |
CC_SERVER_BIND |
loopback |
loopback、またはすべてのインターフェースを対象にする any/all/0.0.0.0(TLS または --insecure が必要) |
--repo-roots |
CC_SERVER_REPO_ROOTS |
サーバーユーザーのホームディレクトリ | リポジトリを登録するときにクライアントが参照できる、カンマ区切りのベースディレクトリ。ルートより上への参照は拒否される |
--log-level |
CC_SERVER_LOG_LEVEL |
warning |
debug、info、warning、error。起動中/準備完了の行は常に出力される |
--server-name |
CC_SERVER_NAME |
マシンのホスト名 | ピッカー、検出、ペアリングの各画面に表示される名前 |
到達性と TLS
「到達性と TLS」というセクション| フラグ | 環境変数 | デフォルト | 意味 |
|---|---|---|---|
--tls-cert |
CC_SERVER_TLS_CERT |
未設定 | PEM 証明書チェーン。鍵とあわせて設定すると、インプロセスで wss:// を提供する |
--tls-key |
CC_SERVER_TLS_KEY |
未設定 | 証明書に対応する PEM 秘密鍵 |
--insecure |
CC_SERVER_INSECURE |
オフ | 平文の非ループバックバインドを許可する。信頼できるネットワーク上の TLS 終端プロキシの背後でのみ使用すること。TLS が設定されている場合は無視される |
--public-url |
CC_SERVER_PUBLIC_URL |
バインドから導出 | このサーバーがペアリング済みクライアントに通知する RPC URL。プロキシ、NAT、トンネルの背後ではこれを明示的に設定すること — デフォルトはローカルのバインドからの推測にすぎない |
--allowed-origins |
CC_SERVER_ALLOWED_ORIGINS |
https://app.usectrl.dev |
クロスオリジンで /rpc に接続できるブラウザーオリジンのカンマ区切りリスト。ループバックとネイティブクライアントは常に許可される |
--web-client-url |
CC_SERVER_WEB_CLIENT_URL |
未設定 | シングルサインオンのコールバックが戻る先となる、ホストされた Web クライアントのオリジン |
--signaling-url |
CC_SERVER_SIGNALING_URL |
wss://signaling.usectrl.dev |
直接経路のないスマートフォンから到達できるよう、このサーバーが参加するリレーブローカー |
--mdns |
CC_SERVER_MDNS |
auto |
LAN へのアドバタイズ: auto(ループバック以外にバインドされている場合のみ)、on、off。検出がアドバタイズするのは存在だけで — 参加には依然としてペアリングが必要 |
--tunnel |
CC_SERVER_TUNNEL |
off |
管理対象のトンネルプロバイダー: off、cloudflared、ngrok、tailscale。公開はオプトイン |
--tunnel-binary |
CC_SERVER_TUNNEL_BINARY |
PATH から解決 |
トンネルバイナリの明示的なパス |
--tunnel-sha256 |
CC_SERVER_TUNNEL_SHA256 |
未設定 | そのバイナリの期待される SHA-256。スポーンごとに検証される |
--tunnel-args |
CC_SERVER_TUNNEL_ARGS |
空 | トンネル起動に渡す追加引数のカンマ区切りリスト |
インデックス作成とサードパーティの資格情報
「インデックス作成とサードパーティの資格情報」というセクション| フラグ | 環境変数 | デフォルト | 意味 |
|---|---|---|---|
--sandbox |
CC_SERVER_SANDBOX |
on |
利用可能な場合に、エージェントの実行をホストの OS ネイティブサンドボックスで包むかどうか。有効化ではなくオプトアウト — 以下を参照 |
--code-index |
CC_SERVER_CODE_INDEX |
on |
バックグラウンドのコードグラフインデックス作成に対するフィールドのキルスイッチ。off にすると、再ビルドなしでクリーンに起動する |
--code-index-defer |
CC_SERVER_CODE_INDEX_DEFER |
15 |
準備完了バナー後に最初のインデックススイープを保留する秒数(0〜300 にクランプ) |
--tool-deferral |
CC_SERVER_TOOL_DEFERRAL |
on |
ハーネスの実行が、少数の常駐ツールセットと名前インデックスを送信し、残りは初回使用時に読み込むかどうか。以下を参照 |
--credential-gate |
CC_SERVER_CREDENTIAL_GATE |
900 |
資格情報がその実行に使えないときに、人間が修正するのを待って実行がパークする秒数(0〜3600 にクランプ)。以下を参照 |
資格情報に空の値を指定すると未設定として扱われるため、組み込みのフォールバックが引き続き 適用されます。ソースからのビルドには、組み込みの資格情報が一切含まれません。
Google Calendar と Klipy GIF ピッカーは環境変数のみです — --google-client-id /
--klipy-app-key というフラグはありません(不明なフラグは無視されます)。
GOOGLE_OAUTH_CLIENT_ID と GOOGLE_OAUTH_CLIENT_SECRET、および KLIPY_APP_KEY を
環境(またはサーバーの隣の .env)で設定してください。空にすると、ブートを失敗させる
のではなくその機能が無効になります。
--sandbox
「--sandbox」というセクションサーバーは起動時に一度だけホストをプローブし、バックエンドが利用できる場合はエージェントの
コマンド実行を OS ネイティブのサンドボックスで包みます。macOS では sandbox-exec(Seatbelt)、
Linux と WSL2 では bwrap と socat です。バックエンドが存在しない場合 — Windows、または
これらのツールを欠く Linux ホスト — は、実行は環境のサニタイズ、コマンドポリシー、
アクションガードレールにフォールバックし、起動ログがどちらの状態が当てはまるかを示します。
--sandbox off は、プローブでは見えないケース — サンドボックスプロファイル自体が誤動作する
ホスト — に対するフィールドのキルスイッチです。再ビルドは不要で、サーバーはプロセスの
存続中ずっと警告をログに記録するため、その状態が黙っていることはありません。
--tool-deferral
「--tool-deferral」というセクション内蔵ハーネスの実行は、少数の常駐ツール定義と、残りの名前だけのインデックスを送信し、
それらは初回使用時にスキーマを読み込みます。これによりツールブロックはおよそ 78% 削減され、
常に表示されるセットは、モデルがツールを確実に選択できる範囲内に収まります。遅延された
ツールは実行を通じて名前で呼び出し可能なままで、search_tools が意図からそれらを見つけます。
ツールコンテキストとプロンプトキャッシュを参照してください。
--tool-deferral off は、許可されたすべてのツールを再び常駐させ、遅延が存在する前に
サーバーが発行していたリクエストを再現します。これは、二層のサーフェスをうまく扱えない
モデルに対するキルスイッチです — 再ビルドではなくフラグです。影響するのは内蔵ハーネス
だけです。外部クライアントが見る MCP の tools/list は常に完全なカタログです。
--credential-gate
「--credential-gate」というセクションプロバイダーの資格情報が欠けているか使い果たされている実行は、失敗させるのではなく パークされます。オペレーターに修正を促すプロンプトが表示され、修正すれば実行は 再開します。既定の期限は 900 秒(15 分)で、0〜3600 にクランプされます。
この期限は、承認プロンプトのものより意図的にずっと長く設定されています。承認は誰かが 数秒で下す判断ですが、資格情報の修正はターミナルを開き、サインインし、戻ってくることを 意味します。この上限があるおかげで、無人で走る実行 — パイプラインのステップ、cron トリガー、webhook — が眠っている誰かを待ち続けることを防げます。期限が切れると、実行は どのみち失敗していたはずのメッセージとともに失敗します。
--credential-gate=0 はキルスイッチです。何もパークされず、不正な資格情報はこのゲートが
存在する前とまったく同じようにターンを終わらせます。
サブコマンド
「サブコマンド」というセクション| コマンド | 動作 |
|---|---|
cc_server |
SIGINT/SIGTERM までサーバーを実行する |
cc_server pair |
デバイスをプロビジョニングし、その id とペアリングキーを出力する。サーバーがすでに提供中のデータディレクトリに対しても安全 — 実行中のサーバーは再起動なしでそのデバイスを拾い上げる |
cc_server calendar connect --workspace <id> |
デバイスコードフローで Google アカウントをワークスペースに接続し、終了する |
cc_server update |
新しいスタンドアロンリリースを確認し、ダウンロードして検証する |
cc_server --version |
ビルドバージョンと git SHA を出力する — /healthz と RPC ハンドシェイクが通知するのと同じ識別情報 |
pair
「pair」というセクション| フラグ | デフォルト | 意味 |
|---|---|---|
--device |
web-client |
デバイス id。プラットフォームはこれから推測されるため、--device desktop はデスクトップの行を、--device ios/android はスマートフォンの行を生成し、それ以外は Web として扱われる |
--label |
プラットフォーム名とこのマシンのホスト名 | デバイス一覧に表示される名前 |
--host |
localhost、任意のインターフェースにバインドされている場合は <this-host> |
出力される URL に埋め込むホスト。クライアントが実際に接続する LAN IP またはトンネルホストに設定する |
--client-url |
未設定 | ホストされた Web クライアントのオリジン。スキャン可能なディープリンクとターミナル QR を追加する |
pair はコアの --data-dir、--port、--bind フラグも受け付けます。これらは書き込む
データディレクトリを選び、出力されるサーバー URL を形作ります(ループバックでは ws、
--bind any の場合は wss)。同じ --device に対して pair を再実行すると、そのキーが
ローテーションされ、そのデバイスのライブセッションが切断されます。ここで発行された資格情報
には有効期限がありません。アプリ内のペアリングが設定する 30 日とは異なります。
update
「update」というセクション--apply はインストールを置き換えます。設定されたポートでサーバーがまだ応答している間は、
--force を渡さない限り拒否されます。--allow-downgrade は古いリリースを許可します。
このコマンドは、自身が所有していないインストールに対しては、エラーではなく説明とともに 明確に拒否します:
| 環境 | 検出方法 | 表示内容 |
|---|---|---|
| デスクトップの組み込みサーバー | CC_EMBEDDED=1 または CC_BOOTSTRAP_DEVICE_ID |
代わりにアプリを更新してください — インストーラーがツリー全体を入れ替えます |
dart run のソースチェックアウト |
スクリプトパスが .dart で終わる |
git で更新してください |
| Docker | コンテナのマーカー | 新しいイメージを取得してください |
プロセスのライフサイクル
「プロセスのライフサイクル」というセクションcc_server は SIGINT / SIGTERM まで実行されます。これを制御する環境変数がもう 1 つあり、
それはあなたではなくデスクトップが設定します:
| 変数 | 効果 |
|---|---|
CC_EXIT_WITH_PARENT=1 |
親プロセスが終了するとサーバーも終了します。これは親が自身の stdin パイプの書き込み側を閉じることで検出されます。デスクトップがこれを設定するのは、クラッシュしたアプリがデータディレクトリを握ったままの孤児サーバーを残さないようにするためです |
自分で設定するのは、cc_server を子プロセスとして監督していて、同じ保証が欲しい場合
だけにしてください。
データディレクトリのレイアウト
「データディレクトリのレイアウト」というセクション既定のデータディレクトリは、macOS では ~/Library/Application Support/control-center、
Windows では %APPDATA%\control-center、それ以外では $XDG_DATA_HOME/control-center
(なければ ~/.local/share/control-center)です。cwd 相対の .cc_server が使われるのは、
ホームディレクトリもアプリデータディレクトリも解決できない場合だけです。
| パス | 内容 |
|---|---|
global.db |
ワークスペースレジストリ、ユーザー、ペアリング済みデバイス、ニュースフィード、フリートキュー |
<workspaceId>/workspace.db |
ワークスペースごとに 1 つのデータベース — エージェント、スペース、チケット、メモリ、コードグラフ |
<workspaceId>/chat_credentials/ |
チャットボットのトークン。プレーンな JSON なので、ワークスペースと一緒に移動する |
secrets.json |
ペアリングキー、プロバイダーのアプリ ID、ユーザー単位および Google のトークン、SSO(0600) |
backups/<timestamp>/ |
1 回分のインストールスナップショット — manifest.json、global.db、各ワークスペースのコピー |
backups/exports/ |
単一ワークスペースのエクスポート、<workspaceId>-<timestamp>.db |
backups/transfer/ |
バックアップのダウンロードとアップロードのステージング。書き込んだルートによって掃除される |
models/ |
オンデバイスの埋め込み、話者分離、音声モデル |
meetings/<meetingId>/ |
保持されたミーティング音声 |
rigs/images/ |
インポートされたリグのディスクイメージ(QEMU デスクトップサーフェス) |
rigs/smolvm/<rigId>/ |
リグごとの microVM ランタイム状態(ブローカーのシークレット、0600) |
rigs/smolvm-packs/ |
展開済みのマシンパック — 同じリグの再起動を高速にするキャッシュ |
rigs/tls/ |
リグの HTTPS 用の開発ドメイン認証局(鍵は 0600) |
rigs/run/<rigId>/ |
QEMU のオーバーレイ、シードイメージ、VM ごとの鍵(0600) |
関連項目
「関連項目」というセクション- ヘッドレスサーバーを実行 — これらのフラグが属するセットアップ手順
- フリートワーカーを実行 — このサーバーに登録する別個の
cc_workerバイナリ - バックアップと復元 — このディレクトリを安全な場所にコピーする
- バックアップ、エクスポート、インポート — スナップショットのレイアウトとすべてのバックアップ操作
- リモートサーバーに接続 — クライアントをサーバーに向ける
- デプロイメントとクライアント — サーバーがすべてを所有する理由