Multiple remotes in multiple checkouts per same repo, environment selection confusion

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

I have a very peculiar setup:

  • locally cloned public repo with a public repo remote
  • locally cloned private repo that shares the same history, but some of the branches do not exist in the public repo. this repo has two remotes (origin is private repo, and a public repo is referenced as another remote so that I can pull public → private)

I can’t start an agent on my computer for the private repo because it does not recognize it as cloned. It literally says “Clone this repository locally to run on this computer” in the New Chat form.

My hypothesis is that cursor is using repository identity as a checkout identity?

Steps to Reproduce

reproduce the setup I described above, try creating an agent

Expected Behavior

I can create a new agent

Screenshots / Screen Recordings

Operating System

Linux

Version Information

Version: 3.15.6
VS Code Extension API: 1.128.0
Commit: a1f686545fd0ce8917bbd2449f733551a9bce420
Date: 2026-08-06T01:41:03.876Z
Layout: IDE
Build Type: Stable
Release Track: Default
Electron: 40.10.3
Chromium: 144.0.7559.236
Node.js: 24.15.0
V8: 14.4.258.32-electron.0
xterm.js: 6.1.0-beta.291
OS: Linux x64 6.8.0-106-generic

Does this stop you from using Cursor

Yes - Cursor is unusable

Hey, thanks for the detailed report. Your hypothesis is correct. Right now Cursor associates each local checkout with a single remote, so when a checkout has two remotes your private origin plus a public repo, it can match to the public repository instead of the private one. Because of that, the form thinks the private repo isn’t cloned locally. This is an issue we’re tracking, and I shared your multi-remote setup case with the team. It’s a nice clean repro.

For now, a workaround:

  • In the private checkout, temporarily remove the public remote using git remote remove <name>. Reopen the project in Cursor so it re-detects the repo. The local option should show up. You can add the remote back after.
  • Alternatively, open the private checkout directly in a separate Cursor window and run the agent from there. That usually avoids the mismatch.

Let me know if this helped.