Repository navigation
Releases: noah-thing/open-cursor
Release list
OpenCursor 0.1.7
OpenCursor 0.1.7
A big round of fixes. Most of it comes from a full audit of the chat, the model providers, the command line agents and the updater.
Faster models
- Thinking is lighter by default. Auto no longer asks every model for its longest thinking, so answers start sooner. Pick High or Max yourself when a task needs it.
- The thinking effort picker now works for more models: DeepSeek V4, Kimi K2.6, Nemotron 3 Super, GLM 4.7 and GLM 5 to 5.2, and the gpt-oss and Qwen models on Groq. Off really turns thinking off for them.
- Free (auto) now uses all 18 free models, not a part of them. When one hits its limit or hangs, it moves to the next.
- Summaries that shorten a long chat no longer think.
- Models that only work through a batch service no longer show up in the model menu, where they used to fail with a 404.
OpenCode
- The thinking effort button works with OpenCode models. If a model does not have the level you picked, it runs once at its default level and OpenCursor remembers that for the model.
- OpenCode is told up front which commands it may run in your current permission level. Before, it could try one blocked command after another and spend the free limit on each try.
- A stuck OpenCode run now ends after 30 minutes of silence instead of waiting forever.
- Restricted Mode errors now have a Trust this folder button.
Windows fixes
- Command line agents that ship as a plain program file (not a script) start correctly.
- Files with Windows line endings keep them when the agent edits them.
- Changing folders in PowerShell stops when it fails, instead of running the next command in the wrong place.
- A terminal that hung on a command is replaced by a fresh one.
Chat
- Ctrl+L (Cmd+L on Mac) and New Chat open the chat side bar again when you had closed it.
- Retry goes back to the turn that failed, and editing a message after a failed turn cuts the chat at the right place.
- Follow up messages you queued while the agent was working are kept if the turn is stopped.
- Chats save when you close the window, and a chat that cannot be read is listed instead of silently missing.
- The review bar now belongs to its own chat, and a restored review clears after you keep or undo it.
- Revert files says plainly that later messages are removed, and it no longer overwrites what you were typing.
- Per minute rate limit errors are retried. Clearer messages for bad keys, HTML error pages, gateway problems, and a 402 offers you another model.
- Tool calls keep working when you switch between providers halfway through a chat.
Files
- Very large files and files in other text encodings are refused before any change, instead of being damaged.
- A save that fails is now reported.
- Folders you rename are followed, and folders without git are tracked too, so the review bar lists the right files.
- Tab completion keeps closing brackets that were already in your code.
Setup
- API keys are checked before they are saved. A keychain error now shows up as a message.
- Signing in with a command line agent uses the copy you installed, and a failed sign in check no longer locks its models.
- Gemini CLI uses the key you saved, but not on top of a Google sign in.
- Import from VS Code or Cursor works behind a proxy and says so when you are offline.
- LM Studio can be started from the app. Ollama no longer spins forever when it is not running, and a local server that is down is not retried over and over.
- Custom endpoints keep their address, login details and query exactly as you typed them.
Updates and reports
- No more windows popping up on Windows while an update waits. The waiting step now runs completely hidden. This takes effect from the next update on: the update from an older version to 0.1.7 may still show those windows until you restart OpenCursor.
- The update notice has at most three buttons, so nothing is cut off. A copy that cannot update itself gets a Download button.
- If a background update fails twice, a notice says why and offers Try again. After that OpenCursor waits longer between attempts instead of retrying every few hours.
- Two windows can no longer install an update at the same time.
- Clear messages when GitHub's rate limit is reached or GitHub cannot be reached through your proxy.
- Report a Problem removes more private details before sending: your user name in file paths, long keys and tokens. The form lists everything it sends, including the random ID of this install.
- The install count has limits per network, so a script cannot inflate it. The server keeps a one way hash of the address for about three days to do this, and nothing else about it.
Install
macOS and Linux:
curl -fsSL https://opencursor.org/install.sh | shWindows (PowerShell):
irm https://opencursor.org/install.ps1 | iexAlready have OpenCursor? Macs, Windows and unpacked Linux folders update by themselves. On a .deb or .rpm install, click Update and enter your password once. You can also 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.
OpenCursor 0.1.6
Fixes for Windows
- Install commands work on Windows everywhere. Settings > Subscriptions and the "not found" message showed the macOS and Linux command (
curl ... | bash), which PowerShell cannot run. They now show the Windows command, the same one the Install button uses. Grok installs with its PowerShell installer. - No more black windows flashing when you @ mention git changes, search, index a project or open the local models page.
- Shortcuts say Ctrl on Windows and Linux in Help answers and Cmd+K messages, instead of Cmd.
- Chats without a project folder now show an Open this folder button, and their folders get clean names instead of a copy of your first message.
- Windows style
~\paths and backslash paths in multi folder workspaces resolve correctly.
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.
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.
OpenCursor 0.1.4
Thinking effort, auto updates
- Pick how hard the model thinks. A new effort button sits in the chat box next to the model: Auto, Off, Low, Medium, High or Max. It works for API models that can think, and for Claude Code (
--effort) and Codex (model_reasoning_effort). Auto keeps what happened before: API models think at high, Claude Code and Codex use their own default. Also in Settings > General, and as Set Thinking Effort in the command palette. - Auto updates. The update notice now has Enable auto updates. With it on, new versions download in the background and install the next time OpenCursor quits; a status bar item lets you restart right away. Change it any time in Settings > General > Updates. Linux .deb and .rpm installs still ask, since they need your password.
- The anonymous install count works. It was silent in every release so far, because it read the editor's default telemetry setting, which OpenCursor ships as off. It now only stops when you turn telemetry off yourself, or turn the count off in Settings > General > Privacy. What it sends is unchanged: a random ID, the version and the OS.
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.
OpenCursor 0.1.3
Security fixes
Please update. Both fixes protect you when you open a project you did not write, such as a repository you just cloned.
- Project MCP servers now ask first. Before, an
mcp.jsoninside a project (.cursor/mcp.jsonor.open-cursor/mcp.json) could start programs on your computer without asking. Now OpenCursor shows the exact command or address and where it came from, and starts the server only after you choose Allow. Your answer is remembered, and you are asked again if the file changes. In a folder you have not trusted, project servers never start. Servers in your own home folder config work as before. - A project can no longer change risky settings. Before, a project's
.vscode/settings.jsoncould change where requests are sent (and with them your API key) or loosen what the agent runs without asking. Provider addresses, the run without asking level, the command allow and deny lists, and the CLI paths and extra arguments now only come from your own user settings.
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.
OpenCursor 0.1.2
What's new
- Anonymous install count. Once a day OpenCursor sends a random ID it made on your computer, its version and your OS, so we know how many people use it. Nothing about you, your code, chats or keys is sent, and IP addresses are not stored. Turn it off in Settings > General > Privacy, or set
openCursor.privacy.anonymousCounttofalse. It is also off whenever the editor's telemetry is off. The counter's full code is instats/.
Install
macOS and Linux:
curl -fsSL https://raw.githubusercontent.com/noah-thing/open-cursor/main/install.sh | shWindows (PowerShell):
irm https://raw.githubusercontent.com/noah-thing/open-cursor/main/install.ps1 | iexAlready on 0.1.0 or 0.1.1? OpenCursor 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.
OpenCursor 0.1.1
What's new
- Codex that you already have is found. OpenCursor now finds the Codex that comes with the ChatGPT app and the one from Codex's own installer, on macOS and Windows. It shows as ready to use instead of offering to install it again.
- Installing Codex or Gemini CLI no longer needs Node.js. On a computer without it, OpenCursor downloads a private copy of Node.js from nodejs.org, checks it, and installs the CLI with it. No admin password needed.
- Claude Code installs with its own native installer.
Install
macOS and Linux:
curl -fsSL https://raw.githubusercontent.com/noah-thing/open-cursor/main/install.sh | shWindows (PowerShell):
irm https://raw.githubusercontent.com/noah-thing/open-cursor/main/install.ps1 | iexAlready on 0.1.0? OpenCursor 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.
OpenCursor 0.1.0
The first public release of OpenCursor, an AI code editor built on Code - OSS that runs on the model you choose: a Claude Code, Codex, Grok or Gemini CLI subscription you already have, a local model through Ollama or LM Studio, your own API key, or free models with no account.
Install
macOS and Linux:
curl -fsSL https://raw.githubusercontent.com/noah-thing/open-cursor/main/install.sh | shWindows (PowerShell):
irm https://raw.githubusercontent.com/noah-thing/open-cursor/main/install.ps1 | iexDownloads
This release has the Apple Silicon Mac build. Windows, Linux and Intel Mac builds come with 0.1.1, which the install commands above pick up automatically.
Builds are not signed yet, so a downloaded file needs one extra step the first time (the install commands above skip it):
- macOS: open the app once, then System Settings > Privacy & Security > Open Anyway.
- Windows: on the SmartScreen prompt, choose More info > Run anyway.
From this version on, OpenCursor tells you when a new version is out and installs it in one click.