Sondra wanted everything from her Claude.ai (Claude Desktop) account — all projects + conversations — pulled into Claude Code, organized, and permanently findable ("find it without a shadow of a doubt"), then surfaced on her CEO Dashboard. Constraints that emerged: she's voice-first/non-technical, reads HTML not markdown, and — critically — when she shows a reference page she likes, replicate it EXACTLY; do not redesign (she got furious when the dashboard page kept getting re-fonted instead of matching the MASTER-INDEX she pointed to).
data-...batch-0000.zip → 577 conversations, 28 projects (18 with content). She confirmed only one export email (no other batches).GET /api/organizations/{org}/chat_conversations (returns project_uuid per conversation) — driven through a logged-in Playwright browser.C:\Users\srver\AIOS-Workspace\aios-starter-kit\PROJECTS\Brain Migration\_projects-rebuilt\.INDEX.md, searchable conversation-catalog.html, and a two-pane _library/ app (sidebar A–Z/Recent/drag-reorder, resizable divider, persisted search/category, scoped search, ?cat= deep-link, 577 readable per-conversation pages).claude-desktop-projects.html built to EXACT MASTER-INDEX styling (navy #0d1b2a header, Georgia gold #c9a227 h1, bordered alternating-row table, #8a6d00 links — do NOT redesign). Library copied to site/claude-desktop/library/. Home button "Claude Desktop Projects" added to both build/home-base.template.html and site/index.html.SOPs/ with the first SOP + an HTML generator.C:\Users\srver\AIOS-Workspace\aios-starter-kit\PROJECTS\Brain Migration\ — all migration scripts: parse_export.py, file_all_projects.py, build_master_index.py, build_library.py, match_project_conversations.py, file_project.pyC:\Users\srver\AIOS-Workspace\aios-starter-kit\PROJECTS\Brain Migration\_matches\all_conversations_mapping.json — the project->conversation map from Claude's API (THE key artifact; re-pull this to do a future re-sweep)C:\Users\srver\AIOS-Workspace\aios-starter-kit\PROJECTS\Brain Migration\INDEX.md — agent-facing master index (grep it to find any past conversation)C:\Users\srver\AIOS-Workspace\aios-starter-kit\PROJECTS\Brain Migration\_projects-rebuilt\MASTER-INDEX.html — the exact style Sondra approved; reference for any related pageC:\Users\srver\AIOS-Workspace\aios-starter-kit\ceo-dashboard\build\build_claude_projects.py — builds the dashboard page (matches MASTER-INDEX; do not restyle). NOTE: NOT wired into deploy.bat — must run it manually before deploying.C:\Users\srver\AIOS-Workspace\aios-starter-kit\SOPs\sop-migrate-claude-desktop-to-claude-code.md + SOPs\build_sops.pyC:\Users\srver\.claude\projects\c--Users-srver-AIOS-Workspace-aios-starter-kit\memory\feedback_readable_html_large_high_contrast.md, ...\feedback_offer_sop_after_notable_work.md, and MEMORY.mdrun_in_background shells): nonemain; nothing committed this session)cd "C:\Users\srver\AIOS-Workspace\aios-starter-kit\PROJECTS\Brain Migration" && python -X utf8 build_master_index.py — prints indexed 577 conversations / loose filed: 339 / archived: 49grep -i "veronica" "C:\Users\srver\AIOS-Workspace\aios-starter-kit\PROJECTS\Brain Migration\INDEX.md" — returns the Veronica conversations (retrieval works)C:\Users\srver\AIOS-Workspace\aios-starter-kit\ceo-dashboard\site\claude-desktop-projects.html in Edge — must look identical to MASTER-INDEX (clean table)build_claude_projects.py FIRST, then ceo-dashboard\deploy.bat (refresh.py -> build_handoffs.py -> wrangler). Consider adding build_claude_projects.py to deploy.bat.CLAUDE.md telling future sessions to grep PROJECTS/Brain Migration/INDEX.md before saying a past conversation can't be found.feedback_free_website_means_herenow) or PDF export. Not yet done.Once Sondra says "deploy it": run python ceo-dashboard\build\build_claude_projects.py then ceo-dashboard\deploy.bat to publish; then add the CLAUDE.md router rule and make the SOP shareable. Never restyle claude-desktop-projects.html — it must stay identical to MASTER-INDEX.
Generated for the CEO Dashboard · source: PROJECTS/Brain Migration/handoffs/claude-desktop-migration-2026-06-29.md 🤍