diff --git a/src/services/api/agentRouting.test.ts b/src/services/api/agentRouting.test.ts index 33eecc148..0ce37693c 100644 --- a/src/services/api/agentRouting.test.ts +++ b/src/services/api/agentRouting.test.ts @@ -892,3 +892,20 @@ test.each([undefined, 'parent-orca-key'])( expect(env.OPENAI_API_KEY).toBe('custom-key') }, ) + +test.each([undefined, 'parent-requesty-key'])( + 'spawned Requesty override owns its key with ambient %s', ambient => { + const env: NodeJS.ProcessEnv = { REQUESTY_API_KEY: ambient } + applyAgentProviderOverrideToEnv({ + model: 'openai/gpt-5-mini', baseURL: 'https://router.requesty.ai/v1', + apiKey: 'configured-agent-key', + }, env) + expect(env.REQUESTY_API_KEY).toBe('configured-agent-key') + expect(env.OPENAI_API_KEY).toBe('configured-agent-key') + applyAgentProviderOverrideToEnv({ + model: 'custom', baseURL: 'https://custom.example/v1', apiKey: 'custom-key', + }, env) + expect(env.REQUESTY_API_KEY).toBeUndefined() + expect(env.OPENAI_API_KEY).toBe('custom-key') + }, +) diff --git a/src/services/api/agentRouting.ts b/src/services/api/agentRouting.ts index 6919c9413..11d1b1a10 100644 --- a/src/services/api/agentRouting.ts +++ b/src/services/api/agentRouting.ts @@ -57,6 +57,7 @@ const PROVIDER_ENV_VARS_TO_CLEAR_FOR_OVERRIDE = [ 'OPENAI_AUTH_SCHEME', 'OPENAI_AUTH_HEADER_VALUE', 'MERGE_GATEWAY_API_KEY', + 'REQUESTY_API_KEY', 'ORCAROUTER_API_KEY', 'RUNCRATE_API_KEY', 'CMD_API_KEY', @@ -380,4 +381,8 @@ export function applyAgentProviderOverrideToEnv( if (resolveRouteIdFromBaseUrl(providerOverride.baseURL) === 'commandcode') { env.CMD_API_KEY = providerOverride.apiKey } + if (resolveRouteIdFromBaseUrl(providerOverride.baseURL) === 'requesty') { + const key = sanitizeApiKey(providerOverride.apiKey) + if (key) env.REQUESTY_API_KEY = key + } }