diff --git a/agent/auxiliary_client.py b/agent/auxiliary_client.py index 91523d76f8ee..da49a695180a 100644 --- a/agent/auxiliary_client.py +++ b/agent/auxiliary_client.py @@ -6253,6 +6253,13 @@ def _resolve_task_provider_model( cfg_model = str(task_config.get("model", "")).strip() or None cfg_base_url = str(task_config.get("base_url", "")).strip() or None cfg_api_key = str(task_config.get("api_key", "")).strip() or None + # Resolve key_env → env var when api_key is not set directly + if not cfg_api_key: + cfg_key_env = str( + task_config.get("key_env") or task_config.get("api_key_env") or "" + ).strip() + if cfg_key_env: + cfg_api_key = os.getenv(cfg_key_env, "").strip() or None cfg_api_mode = str(task_config.get("api_mode", "")).strip() or None # 'auto' is a sentinel meaning "inherit from main runtime / auto-detect", not