_________________________
Issue: Cursor agent history disappeared after switching release channels
Timeline:
Switched from Cursor stable (2.6.20) to nightly (2.7.0-pre)
Nightly showed no history
Switched back to stable — only partial history
Switched to early access — all history gone
Switched back to stable — still no history
Root Cause:
Cursor’s history UI reads from a single index key (composer.composerHeaders in ItemTable of state.vscdb) to populate the history list. When switching between release channels, each channel overwrites this index with only the sessions it recognizes, shrinking it from 451+ entries down to 59 — and eventually showing nothing.
The actual conversation data was never deleted. All 442 sessions with content, 286K+ message bubbles, and 3.4GB of conversation data remained intact in the cursorDiskKV table. The UI just couldn’t find them because the index was truncated.
Fix:
Rebuilt composer.composerHeaders by scanning all composerData:* entries in cursorDiskKV that had conversation content, reconstructing the header metadata, and matching each session to its workspace via file paths found in the bubble data. Recovered 413 of 451 sessions (remaining 38 were sub-agent tasks with no file references).
Suggestions for Cursor team:
Channel switching should not overwrite composer.composerHeaders — it should merge/preserve existing entries
The history UI should be resilient to a missing or partial index — it could rebuild from composerData:* entries on startup
Consider a migration safety check that warns users if switching channels would affect their data
This happened to me as well, and I lost vital chats for all my projects. Can we expect a fix in an upcoming Cursor update that restores the lost chats? This is highly critical as this affects my daily work on a Team plan.