mirror of
https://github.com/openclaw/openclaw.git
synced 2026-08-24 11:25:50 -06:00
bb55d44840
Three fabrication points told clients the assistant agent was "main" before any roster/config resolution: DEFAULT_ASSISTANT_IDENTITY in src/gateway/assistant-identity.ts, the Control UI store's initial snapshot (ui/src/app/gateway-store.ts:65), and its hello fallback (:336). On installs whose implicit main agent is retired, every page reload fired sessions.catalog.list for the nonexistent agent and flashed 'unknown agent id "main"' in the sidebar. The no-roster state now carries no agent id: DEFAULT_ASSISTANT_IDENTITY drops agentId, resolveAssistantIdentity returns ResolvedAssistantIdentity (agentId required) for config-backed paths, the bootstrap omits the optional assistantAgentId field without config, the UI store starts null, and agent selection adopts the roster default once agents.list arrives.