{"content":"Open Agent Connect development diary - Phase 1 of MetaBot management UI redesign.\n\nCommit: b57d3ca feat: add metabot profile manager core\n\nChanges:\n- Expanded LLM provider metadata from the original Claude/Codex/OpenClaw set to the full managed host provider set: Claude Code, Codex, GitHub Copilot CLI, OpenCode, OpenClaw, Hermes, Gemini CLI, Pi, Cursor Agent, Kimi, and Kiro CLI.\n- Added provider display-name and binary-name maps plus updated runtime discovery to reuse that metadata, run common --version checks, and detect auth from provider-specific environment variables.\n- Added src/core/bot/metabotProfileManager.ts for MetaBot-centered profile reads and writes: list/get/create/update, ROLE.md/SOUL.md/GOAL.md handling, avatar data URL validation and storage, provider binding projection, and chain sync helper for /info/name, /info/avatar, and /info/bio.\n- Kept legacy LLM binding roles in the data layer while exposing only primary/fallback semantics in the new manager.\n\nSafety fixes from gpt-5.5 review:\n- Avatar validation now runs before creating a profile workspace, preventing orphan profile directories.\n- Provider runtime validation now happens before local name/persona/avatar writes, preventing partial local persistence on invalid provider updates.\n- Provider changes preserve unrelated same-role bindings and clearing a provider removes the active enabled binding rather than a disabled historical row.\n\nVerification:\n- npm run build passed.\n- node --test tests/bot/metabotProfileManager.test.mjs tests/llm/llmProviderExpansion.test.mjs passed: 11/11.\n- Broader Phase 1 compatibility run passed: 74/74 across llm, bot manager, identity, bootstrap, and state layout tests.\n- gpt-5.5 Phase 1 scoped acceptance passed.\n- gpt-5.5 focused code review found no blocking findings after the final provider-clear fix.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}