Cascade conversations are protobuf: the file is on your disk and the ability to read it is not.
Where this tool keeps its history
~/.codeium/cascade/<uuid>.pbCascade conversations are protobuf: the file is on your disk and the ability to read it is not.
~/.codeium/cascade/<uuid>.pbStart with the part that matters: if your Windsurf history is in Cascade, PromptWake does not capture it today. Cascade conversations are protobuf, the schema is not published, and we do not ship a decoder for it. Anyone telling you they read that format should be asked how.
We would rather say that here than have you install something and discover it three weeks later.
# Cascade conversations, one file per conversation
ls ~/.codeium/cascade/*.pb | wc -l
# per-project chat state, project path encoded in the filename
ls ~/.codeium/chat_state/
# the local index — usually the largest thing in there
du -sh ~/.codeium/databaseOn the machine used to write this: 13 conversation files totalling 32 MB, against a 3.0 GB index. The conversations are the small part, sitting in the directory people eventually delete because of the large part.
DEST="$HOME/Backups/windsurf-$(date +%F)"
mkdir -p "$DEST"
cp -R ~/.codeium/cascade ~/.codeium/chat_state "$DEST/"Be clear about what that gives you: files you cannot open, restorable into Windsurf itself. That is a real recovery and it is worth having. It is not the same as holding the record, and a backup you cannot read is a bet that the product that wrote it will still be able to open it on the day you need it.
Windsurf is a VS Code fork, so where it writes editor-style chat sessions under its own application support directory, the daemon reads those the same way it reads Copilot's. And every other AI tool on the machine — Claude Code, Cursor, Codex, Gemini CLI, OpenCode, Aider — is captured in full, in one timeline.
For most teams that is still the larger share of the record. For a team working entirely inside Cascade, we are honestly not the answer yet, and the useful thing we can offer today is the backup command above.
npx promptwake doctor # what is on this machine and what is at risk