Skip to content

fix: CLI hardcoded defaults override desktop config#1

Open
zhongyang180 wants to merge 1 commit into
next-open-ai:mainfrom
zhongyang180:fix/cli-desktop-config-override
Open

fix: CLI hardcoded defaults override desktop config#1
zhongyang180 wants to merge 1 commit into
next-open-ai:mainfrom
zhongyang180:fix/cli-desktop-config-override

Conversation

@zhongyang180
Copy link
Copy Markdown

Summary

  • Remove hardcoded Commander .option() defaults ("deepseek-chat" / "deepseek") for --model and --provider flags
  • This allows the nullish coalescing (??) fallback to desktopConfig to work correctly, so users who configure a non-deepseek provider via openbot login or desktop settings get their configured model

Problem

Commander.option("--model <id>", "模型 ID", "deepseek-chat") sets opts.model to "deepseek-chat" when the user doesn't pass --model. Since the value is a string (not undefined), the fallback logic on line 75:

const model = opts.model ?? desktopConfig?.model ?? "deepseek-chat";

never reaches desktopConfig?.model. The same issue applies to --provider.

Test plan

  • openbot login dashscope <key> qwen-plus then openbot "test" → should use dashscope/qwen-plus
  • openbot --model deepseek-chat --provider deepseek "test" → should still work with explicit flags
  • openbot "test" with no desktop config → should fallback to deepseek/deepseek-chat

🤖 Generated with Claude Code

Commander's .option() third argument sets a default value, causing
opts.model and opts.provider to never be undefined. This makes the
nullish coalescing (??) fallback to desktopConfig ineffective —
users who configure a non-deepseek provider via `openbot login` or
desktop settings still get deepseek/deepseek-chat.

Remove the hardcoded defaults so opts.model/opts.provider are
undefined when not explicitly passed, allowing desktopConfig to
take effect as intended.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant