-
Notifications
You must be signed in to change notification settings - Fork 3.4k
Settings default assistant save is masked by DEFAULT_AI_ASSISTANT in Docker #1171
Copy link
Copy link
Closed
Closed
Copy link
Labels
P1High priority - Address soon, next in queueHigh priority - Address soon, next in queuearea: configConfiguration loadingConfiguration loadingarea: serverHTTP server (packages/server) - API routes, SSE, adaptersHTTP server (packages/server) - API routes, SSE, adaptersarea: webWeb UI (packages/web) - React frontendWeb UI (packages/web) - React frontendbugSomething is brokenSomething is brokeneffort/lowSingle file or function, one responsibility, isolated changeSingle file or function, one responsibility, isolated change
Metadata
Metadata
Assignees
Labels
P1High priority - Address soon, next in queueHigh priority - Address soon, next in queuearea: configConfiguration loadingConfiguration loadingarea: serverHTTP server (packages/server) - API routes, SSE, adaptersHTTP server (packages/server) - API routes, SSE, adaptersarea: webWeb UI (packages/web) - React frontendWeb UI (packages/web) - React frontendbugSomething is brokenSomething is brokeneffort/lowSingle file or function, one responsibility, isolated changeSingle file or function, one responsibility, isolated change
Summary
Default Assistant = Claudein Settings persists the YAML change, but reloading still showscodexbecause the runtime config resolves the env value instead.majorSteps to Reproduce
DEFAULT_AI_ASSISTANT=codexin.env.Claudeand save./api/config.Expected vs Actual
claude.claude, but the UI/API still resolveassistant: "codex".User Flow
Environment
NoLogs
Impact
NoScope
core|server|webcore:config/config-loader,server:routes/api,web:SettingsPagePotential Root Cause
PATCH /api/config/assistantswritesdefaultAssistantinto the global config successfully.loadConfig()then applies environment overrides last, andapplyEnvOverrides()overwritesconfig.assistantfromprocess.env.DEFAULT_AI_ASSISTANT.DEFAULT_AI_ASSISTANTis set in.env.