A powerful web application for browsing, searching, and managing chat histories from the Cursor editor's AI chat feature. View, search, and export your AI conversations in various formats.
This fork adds enhanced global search capabilities - search across all your projects and conversations instantly with a command palette interface.
- βK / Ctrl+K - Open search from anywhere with keyboard shortcut
- Command Palette UI - Modern, sleek search interface inspired by VS Code
- Real-time Search - Instant results as you type with smart debouncing
- Filter by Type - Search All, Ask Logs only, or Agent Logs only
- Keyboard Navigation - Arrow keys to navigate, Enter to open, Esc to close
- Contextual Snippets - See matching text with surrounding context
- Cross-Project Search - Find conversations across all your workspaces
- π Browse and search all workspaces with Cursor chat history
- π Support for both workspace-specific and global storage (newer Cursor versions)
- π€ View both AI chat logs and Composer logs
- π Organize chats by workspace
- π Full-text search with filters for chat/composer logs
- π± Responsive design with dark/light mode support
- β¬οΈ Export chats as:
- Markdown files
- HTML documents (with syntax highlighting)
- PDF documents
- π¨ Syntax highlighted code blocks
- π Bookmarkable chat URLs
- βοΈ Automatic workspace path detection
- Node.js 18+ and npm
- A Cursor editor installation with chat history
- Clone the repository:
git clone https://github.com/fulviofreitas/cursor-chat-browser.git
cd cursor-chat-browser- Install dependencies:
npm install- Start the development server:
npm run dev- Open http://localhost:3000 in your browser
The global search feature allows you to find any conversation across all your projects:
- Open Search: Click the search button in the navbar or press
βK(Mac) /Ctrl+K(Windows/Linux) - Type Your Query: Start typing to search across all conversations
- Filter Results: Use the filter tabs to show only Ask Logs or Agent Logs
- Navigate Results: Use
β/βarrow keys or mouse to select - Open Conversation: Press
Enteror click to open the selected result - Close: Press
Escor click outside to close
| Feature | Description |
|---|---|
| Real-time | Results appear as you type (300ms debounce) |
| Cross-project | Searches all workspaces simultaneously |
| Title search | Matches conversation titles |
| Content search | Searches within message content |
| Snippets | Shows context around matching text |
| Sorted | Results sorted by most recent first |
The application automatically detects your Cursor workspace storage location based on your operating system:
| Platform | Path |
|---|---|
| Windows | %APPDATA%\Cursor\User\workspaceStorage |
| WSL2 | /mnt/c/Users/<USERNAME>/AppData/Roaming/Cursor/User/workspaceStorage |
| macOS | ~/Library/Application Support/Cursor/User/workspaceStorage |
| Linux | ~/.config/Cursor/User/workspaceStorage |
| Linux (SSH) | ~/.cursor-server/data/User/workspaceStorage |
If automatic detection fails, you can manually set the path in the Configuration page (βοΈ).
- View all workspaces on the home page
- Browse AI chat logs by workspace
- Access Composer logs from the navigation menu
- Navigate between different chat tabs within a workspace
- View combined logs with type indicators
- See chat and composer counts per workspace
- Use
βK/Ctrl+Kfor global search across all projects - Use the search bar in the navigation to search across all logs
- Filter results by chat logs, composer logs, or both
- Search results show:
- Type badge (Chat/Composer)
- Matching text snippets
- Workspace location
- Title
- Timestamp
Each log can be exported as:
- Markdown: Plain text with code blocks
- HTML: Styled document with syntax highlighting
- PDF: Formatted document suitable for sharing
Built with:
- Next.js 14 (App Router)
- TypeScript
- Tailwind CSS
- shadcn/ui components
- Radix UI (Dialog)
- SQLite for reading Cursor's chat database
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
See CHANGELOG.md for a list of changes.
- β¨ Added global search with command palette UI (
βK/Ctrl+K) - π§ Updated search API to support new Cursor data format (cursorDiskKV)
- π¦ Added @radix-ui/react-dialog dependency
- π¨ Added dialog UI component
- π Added .cursor/ to .gitignore
This project is licensed under the MIT License - see the LICENSE file for details.
- Original project by thomas-pedersen
- Enhanced with global search by fulviofreitas