Skip to Content
デベロッパーガイドDaemon設定リファレンス

設定リファレンス

概要

このページでは、qwen serve デーモンとそのアダプターに影響するすべての設定をまとめています。対象は環境変数、CLI フラグ、settings.json のキー、およびプログラム的なオプションです。機能固有のページは、横断的な設定の詳細が必要な場合にここへリンクします。

CLI フラグ (qwen serve)

フラグデフォルト効果
--hostname <host>string127.0.0.1バインドアドレス。ループバック値: 127.0.0.1localhost::1[::1]。非ループバックの場合は起動時にベアラートークンが必要。host:port 形式の入力は拒否され、--port の使用が案内されます。
--port <n>number4170リッスンポート。0 はエフェメラルポートを意味します。
--token <s>stringenvベアラートークン。QWEN_SERVER_TOKEN を上書きし、起動時にトリムされます。プロセスのコマンドラインに表示されるため、デプロイ環境では env の使用を推奨します。
--require-authbooleanfalseループバックおよび /health にもベアラー認証を適用します。トークンなしでは起動を拒否します。
--workspace <dir>absolute pathprocess.cwd()バインドするワークスペース。絶対パスかつディレクトリである必要があり、起動時に一度正規化されます。
--max-sessions <n>number20アクティブセッションの上限。0 / Infinity は無制限を意味します。NaN や負の値はエラーになります。
--max-pending-prompts-per-session <n>number5セッションごとに受け付けるペンディング/実行中プロンプトの上限。超過した場合は 503 を返します。0 / Infinity は無制限。負の値や非整数はエラーになります。
--max-connections <n>number256HTTP リスナーの server.maxConnections0 / Infinity は無制限。
--enable-session-shellbooleanfalsePOST /session/:id/shell の直接実行を有効にします。ベアラートークンが必要で、各リクエストはセッションにバインドされた X-Qwen-Client-Id を持つ必要があります。
--event-ring-size <n>number8000セッションごとの SSE リプレイリング。ソフト上限は 1_000_000
--http-bridgebooleantrueStage 1 ブリッジモード。--no-http-bridge でも http-bridge にフォールバックし、stderr に出力します。
--mcp-client-budget <n>positive integerunsetWorkspaceMcpBudget.clientBudget を設定し、childEnvOverrides 経由で ACP 子プロセスに転送します。
--mcp-budget-mode <m>off / warn / enforceバジェット設定時は warn、それ以外は offWorkspaceMcpBudget.mode を設定します。enforce には --mcp-client-budget が必要です。
--allow-origin <pattern>repeatable stringunsetデフォルトの CORS 拒否を置き換えるクロスオリジン許可リスト。* はすべてのオリジンを許可しますが、トークンが必要です。
--allow-private-auth-base-urlbooleanfalse/workspace/auth/provider がローカルホスト / プライベートネットワークの認証プロバイダー baseUrl をインストールできるようにします。信頼できるローカル開発環境でのみ使用してください。
--prompt-deadline-ms <n>positive integerunsetサーバー側のプロンプトウォールクロック制限(ミリ秒)。タイムアウト時はプロンプトを中断してエラーを返します。
--writer-idle-timeout-ms <n>positive integerunsetSSE 接続ごとのアイドルタイムアウト(ミリ秒)。この期間イベントが送信されなかった場合、デーモンは SSE 接続を閉じます。
--channel-idle-timeout-ms <n>non-negative integer0最後のセッションが閉じられた後、ACP 子プロセスを保持する時間。0 は即時解放を意味します。
--session-reap-interval-ms <n>non-negative integer60000セッションリーパーのスキャン間隔。0 で無効化します。
--session-idle-timeout-ms <n>non-negative integer1800000切断済みセッションのアイドル回収時間。0 で無効化します。
--rate-limit / --no-rate-limitbooleanenv / offプロンプト、ミューテーション、読み取りルートに対してティアごとの HTTP レート制限を有効にします。
--rate-limit-prompt <n>positive integer10ウィンドウあたりのプロンプトリクエスト上限。レート制限が有効な場合に適用されます。
--rate-limit-mutation <n>positive integer30ウィンドウあたりのミューテーションリクエスト上限。レート制限が有効な場合に適用されます。
--rate-limit-read <n>positive integer120ウィンドウあたりの読み取りリクエスト上限。レート制限が有効な場合に適用されます。
--rate-limit-window-ms <n>integer >= 100060000レート制限ウィンドウの長さ。レート制限が有効な場合に適用されます。
no flag--QWEN_SERVE_NO_MCP_POOL=1 でプールを完全に無効化します。

環境変数

runQwenServe / Express ミドルウェアが読み取る変数

環境変数効果
QWEN_SERVER_TOKENベアラートークン。起動時にトリムされます。
QWEN_SERVE_DEBUG1 / true / on / yes(大文字小文字を問わない)で詳細な stderr ログを有効にします。19-observability.md を参照してください。
QWEN_SERVE_NO_MCP_POOL1 でワークスペース MCP トランスポートプールを無効化し、セッションごとの McpClientManager にフォールバックします。機能として mcp_workspace_pool / mcp_pool_restart のアドバタイズが停止します。
QWEN_SERVE_PROMPT_DEADLINE_MS--prompt-deadline-ms の環境変数フォールバック。
QWEN_SERVE_WRITER_IDLE_TIMEOUT_MS--writer-idle-timeout-ms の環境変数フォールバック。
QWEN_SERVE_RATE_LIMIT1 / true でティアごとの HTTP レート制限を有効化します。CLI の --rate-limit / --no-rate-limit が優先されます。
QWEN_SERVE_RATE_LIMIT_PROMPT--rate-limit-prompt の環境変数フォールバック。
QWEN_SERVE_RATE_LIMIT_MUTATION--rate-limit-mutation の環境変数フォールバック。
QWEN_SERVE_RATE_LIMIT_READ--rate-limit-read の環境変数フォールバック。
QWEN_SERVE_RATE_LIMIT_WINDOW_MS--rate-limit-window-ms の環境変数フォールバック。

BridgeOptions.childEnvOverrides 経由で ACP 子プロセスに転送される変数

runQwenServe はハンドルごとにこれらを構築するため、1 つのプロセスで 2 つのデーモンが process.env で競合することはありません。バジェット変数は qwen serve の親プロセス環境変数フォールバックではなく、CLI パスが --mcp-client-budget / --mcp-budget-mode から生成する必要があります。

環境変数効果
QWEN_SERVE_MCP_CLIENT_BUDGETACP 子プロセスの readBudgetFromEnv() が消費する正の整数文字列。
QWEN_SERVE_MCP_BUDGET_MODEoff / warn / enforce
QWEN_SERVE_MCP_POOL_TRANSPORTSカンマ区切りのトランスポート許可リスト。デフォルトのプールトランスポートは stdio,websockethttp,sse を明示的に含めることも可能です。
QWEN_SERVE_MCP_POOL_DRAIN_MSプールエントリのアイドルドレイン遅延。デフォルトは 300001000..600000 ms にクランプされます。

SDK / アダプターが読み取る変数

環境変数効果
QWEN_DAEMON_URLCLI TUI アダプター、チャンネル、IDE コンパニオン用のデーモンベース URL。
QWEN_DAEMON_TOKENベアラートークン。
QWEN_DAEMON_WORKSPACEPOST /session に送信される cwd を上書きします。

settings.json のキー

デーモンは runQwenServe 内の loadSettings(boundWorkspace) を通じて起動時に設定を一度読み込みます。不正な設定は try/catch ガードによってデフォルト値にフォールバックします。

キー効果
policy.permissionStrategy'first-responder' | 'designated' | 'consensus' | 'local-only'BridgeOptions.permissionPolicy を設定します。アクティブな値は /capabilitiespolicy.permission として表示されます。起動時に validatePolicyConfig() を通じて SERVE_CAPABILITY_REGISTRY.permission_mediation.modes に対してバリデーションが行われます。未知のリテラルは InvalidPolicyConfigError をスローし、起動が明示的に失敗します。
policy.consensusQuorumpositive integerconsensus ポリシーの N 値。デフォルトvotersAtIssue.size に対して floor(M/2) + 1(M=2 の場合は全会一致、M が偶数の大きな値の場合は過半数超え)。コンセンサスポリシー以外で設定された場合は無視され、起動時に stderr 警告が出力されます。非正の整数は InvalidPolicyConfigError をスローします。04-permission-mediation.md を参照してください。
context.fileNamestringBridgeOptions.contextFilename を通じて getCurrentGeminiMdFilename() を上書きします。
tools.disabledstring[]次の ACP 子プロセス起動時に無効化するツール。normalizeDisabledToolList() (packages/cli/src/config/normalizeDisabledTools.ts) を通じて正規化されます(配列でない場合は []、文字列以外のエントリはスキップ、空白はトリム、空エントリは除去、重複は最初の出現を保持して除去)。起動時と restartMcpServer の設定更新時の両方でこの関数が実行されます。ToolRegistry.has(name) は完全一致かつ大文字小文字を区別します。POST /workspace/tools/:name/enabletool_toggled はこのキーを更新します。
tools.approvalMode'default' | 'auto' | ...デフォルトのセッション承認モード。persist: true の場合、POST /session/:id/approval-mode がここに書き込みます。
telemetryobjectOTel 設定。キーには enabledotlpEndpointotlpProtocolotlpTracesEndpointotlpLogsEndpointotlpMetricsEndpointtargetoutfileincludeSensitiveSpanAttributesresourceAttributesmetrics.includeSessionId が含まれます。resolveTelemetrySettings() が起動時に読み込み、initializeTelemetry() を初期化します。

ServeOptions(プログラム的な埋め込み)

packages/cli/src/serve/types.ts では、runQwenServecreateServeApp の両方が受け付ける型付きオプションオブジェクトを定義しています。上記の CLI フラグを反映し、以下を追加します。

フィールド効果
eventRingSizeデフォルトのセッションごとのリングサイズを上書きします。
maxPendingPromptsPerSessionセッションごとのペンディングプロンプト上限。0 / Infinity は無制限。
mcpPoolActiveプログラム的なスイッチ。QWEN_SERVE_NO_MCP_POOL からデフォルト値が設定されます。
allowOriginsクロスオリジン許可リスト(string[])。--allow-origin に対応します。
allowPrivateAuthBaseUrlプライベート / ローカルホストの認証プロバイダー baseUrl のインストールを許可します。
enableSessionShellセッションシェル実行を有効にします。ベアラートークンとセッションバインドのクライアント ID は引き続き必要です。
promptDeadlineMsプロンプトのウォールクロック制限。
writerIdleTimeoutMsSSE ライターのアイドルタイムアウト。
channelIdleTimeoutMs最後のセッションが閉じられた後、ACP 子プロセスをウォームな状態で保持する時間。
sessionReapIntervalMsセッションリーパーのスキャン間隔。
sessionIdleTimeoutMs切断済みセッションのアイドル回収時間。
rateLimit*ティアごとの HTTP レート制限スイッチ、しきい値、ウィンドウ。

BridgeOptions(プログラム的なブリッジ埋め込み)

packages/acp-bridge/src/bridgeOptions.ts でブリッジオプションを定義しています。完全なテーブルは 03-acp-bridge.md を参照してください。主なフィールド:

フィールド効果
boundWorkspace必須の正規化されたワークスペース。
sessionScope'single'(デフォルト)または 'thread'
initializeTimeoutMsmaxSessionseventRingSizepermissionResponseTimeoutMsmaxPendingPermissionsPerSessionリソース上限の制御。
channelFactoryプラガブルな ACP 子ファクトリー。デフォルトは defaultSpawnChannelFactory
fileSystemBridgeFileSystem アダプター。07-workspace-filesystem.md を参照してください。
permissionPolicypermissionConsensusQuorumpermissionAuditメディエーターの配線。
statusProviderデーモンホストのプリフライトセル。
childEnvOverridesハンドルごとの環境変数の追加または削除。
contextFilenamegetCurrentGeminiMdFilename() を上書きします。
channelIdleTimeoutMs最後のセッションが閉じられた後、ACP 子プロセスを生かし続ける時間(ミリ秒)。デフォルトは 0

重要なデフォルト値

定数ファイル意味
DEFAULT_MAX_SESSIONSbridge.ts20SessionLimitExceededError が発生するまでのセッション上限。
MAX_EVENT_RING_SIZEbridge.ts1_000_000BridgeOptions.eventRingSize のソフト上限。タイプミスを防ぎます。
DEFAULT_RING_SIZEeventBus.ts8000セッションごとの SSE リプレイリング深度。
DEFAULT_MAX_QUEUEDeventBus.ts256サブスクライバーごとのキュー上限。
DEFAULT_MAX_SUBSCRIBERSeventBus.ts64バスごとのサブスクライバー上限。
WARN_THRESHOLD_RATIOeventBus.ts0.75slow_client_warning のトリガー。
WARN_RESET_RATIOeventBus.ts0.375ヒステリシスの再アーム閾値。
DEFAULT_INIT_TIMEOUT_MSbridge.ts10_000ACP initialize ハンドシェイクタイムアウト。
MCP_RESTART_TIMEOUT_MSbridge.ts300_000/workspace/mcp/:server/restart のブリッジタイムアウト。
DEFAULT_PERMISSION_TIMEOUT_MSbridge.ts5 * 60_000許可リクエストごとのウォールクロック。
DEFAULT_MAX_PENDING_PER_SESSIONbridge.ts64DEFAULT_MAX_SUBSCRIBERS に合わせた値。
MAX_RESOLVED_PERMISSION_RECORDSpermissionMediator.ts512最近解決された許可の FIFO。
KILL_HARD_DEADLINE_MSspawnChannel.ts10_000チャンネルごとのグレースフルシャットダウンウィンドウ。
SHUTDOWN_FORCE_CLOSE_MSrun-qwen-serve.ts5_000HTTP サーバーの強制クローズタイマー。
MAX_READ_BYTESfs/policy.ts256 * 1024読み取り上限。
MAX_WRITE_BYTESfs/policy.ts5 * 1024 * 1024書き込み上限。
MAX_DISPLAY_NAME_LENGTHbridge.ts256セッション displayName の上限。

クロスリファレンス

Last updated on