Skip to main content

Cursor Plugin

The cursor-opensync-plugin syncs your Cursor AI coding sessions to OpenSync. It reads Cursor’s agent transcripts and conversation history, then pushes them to your dashboard. Source identifier: cursor

Installation

Install globally with npm:
Or with yarn:
Verify the installation:

Setup

1

Generate an API key

Log in to opensync.dev, go to Settings, and click Generate API Key. Copy the key (starts with osk_).
2

Run login

Enter your Convex URL and API key when prompted:
  • Convex URL: https://polished-penguin-622.convex.cloud (for hosted) or your self-hosted URL
  • API Key: The key you copied from Settings
3

Verify the connection

Config file

Credentials are stored in ~/.cursor-sync/config.json:

Commands

cursor-sync login

Stores your Convex URL and API key.

cursor-sync status

Shows connection info and sync stats:

cursor-sync sync

Manually triggers a sync of all sessions.

cursor-sync logout

Clears stored credentials.

How syncing works

  1. Cursor stores conversation data in its workspace and agent transcript files.
  2. The plugin reads Cursor’s session data, parsing prompts, responses, tool calls, and model metadata.
  3. Each session is pushed to /sync/session with source: "cursor".
  4. Messages are pushed to /sync/message preserving the full conversation flow.
  5. Deduplication uses externalId from Cursor’s internal session identifiers.

What gets synced

File contents referenced in conversations are not synced to protect sensitive code. Only file paths and the conversational text are sent.

Supported models

Cursor supports multiple models. All are synced with their respective pricing:

Troubleshooting

Sessions not syncing

  1. Make sure Cursor is not actively writing to the session files during sync. Close Cursor or wait for a pause.
  2. Check plugin status: cursor-sync status
  3. Verify the Cursor data directory is accessible.
  4. Run cursor-sync sync to force a manual push.

Partial sessions

Very long Cursor sessions may be truncated during sync. This is a known limitation for sessions with hundreds of messages. The most recent messages are prioritized.

Authentication errors

  1. Re-run cursor-sync login with your current API key.
  2. Check that the API key is still active in the dashboard Settings.

Updating

Uninstalling

Synced sessions remain in your dashboard after uninstalling.