diff --git a/packages/cli/src/utils/modelConfigUtils.test.ts b/packages/cli/src/utils/modelConfigUtils.test.ts index a8d5337cff..fc9c5b3368 100644 --- a/packages/cli/src/utils/modelConfigUtils.test.ts +++ b/packages/cli/src/utils/modelConfigUtils.test.ts @@ -55,6 +55,17 @@ describe('modelConfigUtils', () => { expect(getAuthTypeFromEnv()).toBe(AuthType.USE_OPENAI); }); + it('should return USE_OPENAI when the model is given via QWEN_MODEL', () => { + // QWEN_MODEL is a valid USE_OPENAI model var (see AUTH_ENV_MODEL_VARS), + // so a config that sets it instead of OPENAI_MODEL must still resolve. + process.env['OPENAI_API_KEY'] = 'test-key'; + process.env['QWEN_MODEL'] = 'qwen3-coder-plus'; + process.env['OPENAI_BASE_URL'] = + 'https://dashscope.aliyuncs.com/compatible-mode/v1'; + + expect(getAuthTypeFromEnv()).toBe(AuthType.USE_OPENAI); + }); + it('should return undefined when OpenAI env vars are incomplete', () => { process.env['OPENAI_API_KEY'] = 'test-key'; process.env['OPENAI_MODEL'] = 'gpt-4'; diff --git a/packages/cli/src/utils/modelConfigUtils.ts b/packages/cli/src/utils/modelConfigUtils.ts index 3f6b52903e..4ca1bbd4f7 100644 --- a/packages/cli/src/utils/modelConfigUtils.ts +++ b/packages/cli/src/utils/modelConfigUtils.ts @@ -102,7 +102,7 @@ export function getAuthTypeFromEnv(): AuthType | undefined { if ( process.env['OPENAI_API_KEY'] && - process.env['OPENAI_MODEL'] && + (process.env['OPENAI_MODEL'] || process.env['QWEN_MODEL']) && process.env['OPENAI_BASE_URL'] ) { return AuthType.USE_OPENAI;