Code Insights version
4.11.0
Source tool (provider)
Cursor
Operating system
macOS
Node.js version
Not provided for the affected machine (the proposed fix was built and tested with v24.14.0)
pnpm version (if applicable)
11.15.1 used to build and test the proposed fix
What happened?
Recent Cursor versions write Agent sessions to:
~/.cursor/projects/<encoded-cwd>/agent-transcripts/<session-id>/<session-id>.jsonl
The Cursor provider currently discovers only legacy state.vscdb databases under Cursor's VS Code-style workspace/global storage. As a result, modern Agent sessions can exist on disk but are not discovered by code-insights sync --source cursor.
The JSONL records use { role, message: { content } } for user/assistant messages, with separate lifecycle records such as { type: "turn_ended", status: "success" }. Message content can be a string or an array of text, thinking, and tool-use blocks.
No private transcript content is included in this report.
Steps to reproduce
- Use a recent Cursor version and create an Agent conversation.
- Confirm that a transcript exists under
~/.cursor/projects/*/agent-transcripts/*/*.jsonl.
- Run
code-insights sync --source cursor --dry-run --verbose.
- Observe that the JSONL session is not discovered unless a corresponding legacy SQLite session also exists.
Expected behavior
The Cursor provider should discover and parse modern Agent transcript JSONL files while retaining backward compatibility with legacy SQLite storage.
When the same session UUID exists in both stores, the richer SQLite representation should take precedence.
Relevant logs or output
$ find ~/.cursor/projects -path '*/agent-transcripts/*' -type f | head
/Users/<user>/.cursor/projects/Users-<user>/agent-transcripts/<session-id>/<session-id>.jsonl
Code Insights version
4.11.0
Source tool (provider)
Cursor
Operating system
macOS
Node.js version
Not provided for the affected machine (the proposed fix was built and tested with v24.14.0)
pnpm version (if applicable)
11.15.1 used to build and test the proposed fix
What happened?
Recent Cursor versions write Agent sessions to:
The Cursor provider currently discovers only legacy
state.vscdbdatabases under Cursor's VS Code-style workspace/global storage. As a result, modern Agent sessions can exist on disk but are not discovered bycode-insights sync --source cursor.The JSONL records use
{ role, message: { content } }for user/assistant messages, with separate lifecycle records such as{ type: "turn_ended", status: "success" }. Message content can be a string or an array of text, thinking, and tool-use blocks.No private transcript content is included in this report.
Steps to reproduce
~/.cursor/projects/*/agent-transcripts/*/*.jsonl.code-insights sync --source cursor --dry-run --verbose.Expected behavior
The Cursor provider should discover and parse modern Agent transcript JSONL files while retaining backward compatibility with legacy SQLite storage.
When the same session UUID exists in both stores, the richer SQLite representation should take precedence.
Relevant logs or output