diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e7cf641f01..13883e8e65c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ Docs: https://docs.openclaw.ai ### Fixes +- Gateway/Agents: stop injecting a phantom `main` agent into gateway agent listings when `agents.list` explicitly excludes it. (#11450) Thanks @arosstale. - Agents/Heartbeat: stop auto-creating `HEARTBEAT.md` during workspace bootstrap so missing files continue to run heartbeat as documented. (#11766) Thanks @shadril238. - Telegram: cap bot menu registration to Telegram's 100-command limit with an overflow warning while keeping typed hidden commands available. (#15844) Thanks @battman21. - CLI: lazily load outbound provider dependencies and remove forced success-path exits so commands terminate naturally without killing intentional long-running foreground actions. (#12906) Thanks @DrCrinkle. diff --git a/src/gateway/session-utils.ts b/src/gateway/session-utils.ts index fe13f78b0d0..178d4e7697d 100644 --- a/src/gateway/session-utils.ts +++ b/src/gateway/session-utils.ts @@ -394,7 +394,7 @@ export function listAgentsForGateway(cfg: OpenClawConfig): { let agentIds = listConfiguredAgentIds(cfg).filter((id) => allowedIds ? allowedIds.has(id) : true, ); - if (mainKey && !agentIds.includes(mainKey)) { + if (mainKey && !agentIds.includes(mainKey) && (!allowedIds || allowedIds.has(mainKey))) { agentIds = [...agentIds, mainKey]; } const agents = agentIds.map((id) => {