diff --git a/src/cron/isolated-agent/run.ts b/src/cron/isolated-agent/run.ts index 29d3e629f7c..b52e9594aa4 100644 --- a/src/cron/isolated-agent/run.ts +++ b/src/cron/isolated-agent/run.ts @@ -124,7 +124,10 @@ export async function runCronIsolatedAgentTurn(params: { ? resolveAgentConfig(params.cfg, normalizedRequested) : undefined; const { model: overrideModel, ...agentOverrideRest } = agentConfigOverride ?? {}; - const agentId = agentConfigOverride ? (normalizedRequested ?? defaultAgentId) : defaultAgentId; + // Use the requested agentId even when there is no explicit agent config entry. + // This ensures auth-profiles, workspace, and agentDir all resolve to the + // correct per-agent paths (e.g. ~/.openclaw/agents//agent/). + const agentId = normalizedRequested ?? defaultAgentId; const agentCfg: AgentDefaultsConfig = Object.assign( {}, params.cfg.agents?.defaults,