Repository navigation
OpenCursor 0.1.5
Watch it think
- The reasoning streams into the chat as it happens. No box: it flows in under Thinking, grows with the text, older lines fade upward and new words fade in where they land. The title shows the step the model is on ("Thinking · Planning the fix"). When it is done it folds into "Thought for 6s", and one click opens the full text. The model is not slowed down at all.
- The status line names what it is doing: Reading cart.ts, Searching for removeItem, Running npm test.
Never lose your place when a model hits a limit
- Continue on another model, with everything. A usage or rate limit now offers Continue on the next model you have, Choose a model, or Connect another provider. The next model gets the whole conversation, every file changed, every command run and the to-do list, and picks up where the last one stopped.
- Switching models mid chat keeps context everywhere, between Claude Code, Codex, OpenCode, Gemini CLI, Grok and API models, in both directions.
Run a model on this computer
- Free, private, offline. On this computer in the model menu (or the Run a Model on This Computer command) checks your memory and graphics card, lists the models that fit with the best fit first, and Install does the rest: installs Ollama if needed, downloads the model with live progress and switches the chat to it.
Report a problem
- Report a Problem (command palette, or Report this on any error card) is a short form: what happened, an optional way to reach you, and the app details it sends, listed before you send. No account, and never your code, chats or API keys. GitHub stays available.
Updates
- Updates are automatic now. New versions download in the background and install the next time OpenCursor quits, on macOS, Windows and Linux. When a notice does show, Update and restart is a single click. Turn it off any time in Settings > General > Updates.
- Windows portable copies update themselves and keep their data folder.
- Updates refuse files without a published checksum, clean up after themselves, never leave the app closed after a failed install, and work with non English Windows user names.
Security fixes
Thanks to everyone who reported these.
- A project's own settings could point a custom model at another server while OpenCursor attached your saved API key. Custom models now only come from your own user settings.
- Commands that look allowed could carry another command: PowerShell
( ),@( )and{ }, zsh$'...'quoting, and Windows line separators. These now always ask. - In Auto, a command wrapped in
bash -c,env,python -c, quotes or a full path is judged by what it really runs. Paths outside the project, network shares and drive letters ask too, also for allowlisted readers. - Changing files in
.git,.vscode,.claude,.gemini,.cursor,.open-cursorand CI workflows asks first, and after the agent edits a build file (package.json, Makefile and the like), commands such asnpm testask again for that turn. - A symlink inside the project that points elsewhere counts as outside the project.
- Fetching a web page asks first in Auto, and fetches never reach local or private network addresses.
- Command line agents do not start in a folder in Restricted Mode, since they read that project's own settings. Claude Code's web tools follow your command policy, and your own denylist applies to command line agents too.
- Project MCP server approval shows the environment variables, headers and folder, not just the command.
- Indexing honors nested
.gitignorefiles, never indexes secret files (.env, keys, credentials), never uses a cloud embedder in Restricted Mode, and asks once before sending a project to OpenAI or Google for embeddings. - Tab never sends text from secret files or unsaved scratch buffers; commit messages and terminal Cmd+K skip secret files and strip anything shaped like a key.
Fixes
- With no folder open, command line agents work in their own folder (
~/OpenCursor/<chat name>), never inside OpenCursor's program folder. - OpenCode's "Database is not empty and has no session table" repairs itself: the broken database is renamed aside, nothing is deleted.
- Error messages no longer show terminal color codes.
- Free (auto) moves on when a model hangs; DeepSeek reasoning, whitespace only replies and Gemini to Claude switches no longer break a chat; dead connections stop instead of spinning forever; long chats compact before they overflow.
- A window closed mid task no longer leaves a chat that fails on every message; editing an earlier message resets a command line agent's session; queued messages wait after an error; saves retry instead of being dropped; two empty windows no longer erase each other's history.
- The chat stays smooth in long conversations and while hidden, code blocks no longer slow down streaming, scrolling up while it streams stays put, and clicking a file path in an answer opens it.
- Inline edit (Cmd+K) no longer saves half written code to disk while it streams; Tab no longer duplicates closing lines in Windows line ending files.
Install
macOS and Linux:
curl -fsSL https://opencursor.org/install.sh | shWindows (PowerShell):
irm https://opencursor.org/install.ps1 | iexAlready have OpenCursor? It offers this update by itself, or run Check for Updates from the command palette.
Builds are not signed yet, so a downloaded file needs one extra step the first time (the install commands skip it):
- macOS: open the app once, then System Settings > Privacy & Security > Open Anyway.
- Windows: on the SmartScreen prompt, choose More info > Run anyway.