Cursor Origin
How to Create a Cursor Origin Repository and Push Code to It
Create an Origin repository from cursor.com/codebase with New, or ask a Cursor agent to create one through the Origin CLI. Then clone it over HTTPS at origin.cursor.com/{owner}/{repo}.git and push with ordinary git after origin auth login. Code that already lives on GitHub should use Sync from GitHub instead.
On this page
How do you create a repository on Cursor Origin?
From the codebase home at cursor.com/codebase, select New, name the repo in the New repo dialog, pick Internal or Private, and select Create Repo. That is the whole flow, and Cursor's docs describe it in three steps. Once the empty repo exists, open it and the green Code button gives you the clone URL to push against from your machine.
Before you do that, one fork in the road. The New button creates an empty repository, which is right for a fresh project. If the code already lives on GitHub, the same codebase home has a Sync from GitHub button, and that is the one to press; the docs route existing GitHub repos through the mirror path rather than a manual push, because the sync keeps GitHub as the source of truth and carries pull requests both ways. Creating an empty repo and pushing a GitHub clone into it works, but you lose the sync.
- 1Open cursor.com/codebase and select New.
- 2In the New repo dialog, enter a Repo Name and choose Internal or Private visibility.
- 3Select Create Repo.
- 4Open the new repo and copy the clone URL from the green Code button.
The visibility choice is the part I would slow down on, because the two words do not mean what they mean on GitHub. Internal means visible to anyone with access to your team's codebase. Private means visible only to members granted access directly or through codebase permissions. There is no public option in the early beta, and team access in general follows your Cursor team and codebase access, so a repo's audience is bounded by the codebase before its own setting applies.
- Repo Name
- The last segment of the clone URL: https://origin.cursor.com/{owner}/{repo}.git
- Internal
- Visible to anyone with access to your team's codebase
- Private
- Visible only to members granted access directly or through codebase permissions
- Settings after creation
- General, Permissions, Rules and Protections, and Apps, on the repo's Settings tab
From cursor.com/docs/origin/create-repository. Team-level access lives in codebase settings, not on the repo.
Per-repository settings land after creation, on the repo's own Settings tab: General, Permissions, Rules and Protections, and Apps. Codebase-wide controls, including who may create repositories at all, sit one level up in codebase settings, and it is worth knowing which level you are looking at before you go hunting for a missing permission.
This is covered hands-on in Cursor Compile 2026 — 1 short Unit, free to read.
Rather do it than read about it? Run 11 interactive Cursor walkthroughs in a simulated editor. Free, no account needed.
Can a Cursor agent create the Origin repo for you?
Yes. Cursor's docs say agents can create Origin repositories as part of a task: ask the agent in Cursor to create a repo on Origin and it can install the Origin CLI, sign in, create the repo, set the remote and push. The command underneath is origin repo create, and the docs name that explicitly on the integrations page.
The permission model is the thing to hold onto. Agents use the same permissions as your Cursor account, so an agent can only create a repo if your account has access to Origin code storage, and it inherits whatever your team's codebase permissions allow. There is no separate agent identity on Origin in the beta, at least not one the docs describe, which means an agent asked to create a repo in a codebase you cannot create repos in will fail the same way you would.
Cloud agents are a slightly different case, and the distinction is easy to miss. The create-repository page says cloud agents can work against existing Origin repositories: clone, branch, commit, push and open pull requests. The create step is described for a local agent with the CLI installed. I read that as a current boundary rather than a rule, but it is the boundary the docs draw today, so plan on creating the repo first and handing the cloud agent an existing one.
Whether a person or an agent runs it, the repo is created with your account's access and lands in the same codebase, with the same Internal or Private choice and the same Settings tab. Review what an agent created the way you would review what it pushed.
How do you clone, push and pull an Origin repo?
Origin works with standard git, and the docs are careful to put it that plainly. Open a repo at cursor.com/codebase, select the green Code dropdown, and copy the clone URL from the HTTPS tab. The URL format is fixed: https://origin.cursor.com/{owner}/{repo}.git. Clone it the way you would clone anything else.
git clone https://origin.cursor.com/acme/checkout.git
Credentials are where the Origin CLI comes in, even if you never type another origin command. Install it with Cursor's script and run origin auth login; that signs you in through the browser and, per the command reference, also installs the git credential helper, so git push and git pull against Origin remotes work without further setup. Sign in before your first git operation, then fetch, pull and push as normal.
curl -fsSL https://downloads.cursor.com/origin/install.sh | sh origin auth login
For a brand-new empty repo, the push-your-first-commit sequence is the standard one. Clone the empty repo, add files, commit, push with -u so the upstream is set. If the project already exists locally, skip the clone and add Origin as a remote instead.
cd your-project
git remote add origin https://origin.cursor.com/{owner}/{repo}.git
git push -u origin mainPulling is git pull origin main, and there is nothing Origin-specific about it. The CLI also offers origin repo clone, which clones over HTTPS using your saved login, and which I would reach for only when I am already in a terminal session that is using the CLI for something else. Plain git clone with the credential helper in place does the same job.
Can you push to GitHub and Origin at the same time?
You can, and the docs show the exact incantation: add both hosts as push URLs on one remote, so a single git push updates both. Fetches keep coming from the first URL. It is a plain git feature, not an Origin one, and it is the quickest way to keep a second copy while you decide whether Origin is where you want to live.
git remote set-url --add --push origin git@github.com:acme/checkout.git git remote set-url --add --push origin https://origin.cursor.com/acme/checkout.git
The docs add a sentence right after that block which is, I think, the more important one: for complete GitHub history migration, mirroring is recommended. The dual-push trick copies commits you push from this machine from now on. It does not copy pull requests, and it does not copy anything a teammate pushes from a laptop without the second URL configured, because remote configuration lives in each clone's own .git/config. The mirroring page covers what the documented sync carries and what no git command ever will.
So the honest guidance is a bit narrower than the command suggests. Use two push URLs for a repo you created on Origin and want a standing copy of elsewhere, or for a solo trial. Use Sync from GitHub for anything a team already works on, and treat the two-URL setup as a personal convenience rather than a team policy.
What do you do when clone or push fails?
The docs list two failure shapes, and between them they cover most of what goes wrong in the first hour. A clone or push that is rejected almost always means the credential helper is not signed in; a command not found after installation means the install location is not on your PATH. Both are one command to fix.
- Symptom
- git clone or git push fails against origin.cursor.com
- Fix from the docs
- Confirm authentication with origin auth login. It re-runs the browser sign-in and reinstalls the git credential helper.
- Symptom
- origin: command not found after the install script
- Fix from the docs
- Add ~/.local/bin to PATH. For zsh, append export PATH="$HOME/.local/bin:$PATH" to ~/.zshrc, then run source ~/.zshrc.
- Symptom
- Push works from one machine, not another
- Fix from the docs
- Each clone has its own config. Run origin auth login on the second machine; the credential helper is per-machine, like the remote URLs.
- Symptom
- Create Repo is missing or disabled
- Fix from the docs
- Repository creation is a codebase permission an admin grants. Check codebase settings, not the repo.
| Symptom | Fix from the docs |
|---|---|
| git clone or git push fails against origin.cursor.com | Confirm authentication with origin auth login. It re-runs the browser sign-in and reinstalls the git credential helper. |
| origin: command not found after the install script | Add ~/.local/bin to PATH. For zsh, append export PATH="$HOME/.local/bin:$PATH" to ~/.zshrc, then run source ~/.zshrc. |
| Push works from one machine, not another | Each clone has its own config. Run origin auth login on the second machine; the credential helper is per-machine, like the remote URLs. |
| Create Repo is missing or disabled | Repository creation is a codebase permission an admin grants. Check codebase settings, not the repo. |
The first two rows are the documented troubleshooting steps; the last two follow from the per-clone and per-codebase model the docs describe.
One more thing that reads like a bug and is not. If you configured the credential helper with the --local flag, it applies to that repository's git config only, so a second clone on the same machine will prompt or fail until you sign in there too. The CLI reference lists the global and local variants; global is the default, and for a personal machine it is the one to keep.
Frequently asked questions
How do I create a new repository on Cursor Origin?
Open cursor.com/codebase, select New, enter a Repo Name in the New repo dialog, choose Internal or Private, and select Create Repo. Then copy the HTTPS clone URL from the green Code button and push from your machine. A Cursor agent can run the same flow for you through the Origin CLI.
What is the clone URL format for an Origin repo?
https://origin.cursor.com/{owner}/{repo}.git, shown on the HTTPS tab of the Code menu. Sign in first with origin auth login so the git credential helper is installed; after that, ordinary git clone, push and pull work against the URL.
What is the difference between Internal and Private on Origin?
Internal repos are visible to anyone with access to your team's codebase. Private repos are visible only to members granted access directly or through codebase permissions. Both sit inside your team's codebase; there is no public visibility in the early beta.
Should I create an empty Origin repo and push my GitHub code into it?
Usually not. Cursor's docs point code that already lives on GitHub at Sync from GitHub on the codebase home, which keeps GitHub as the source of truth and syncs pull requests both ways. A manual push into an empty repo copies history but not the pull requests, and gives you no sync.
Why does git push to Origin fail with an authentication error?
The Origin git credential helper is installed by origin auth login, per machine. Run origin auth login on the machine that is failing; if the origin command itself is not found, add ~/.local/bin to your PATH first.
Sources & last verified
- Cursor Docs: Create an Origin repository
- Cursor Docs: Clone, Push & Pull
- Cursor Docs: Install the Origin CLI
- Cursor Docs: Origin CLI commands
- Cursor Docs: Mirror a GitHub repository
- Cursor Docs: Origin
Cursor ships frequently. Facts verified against primary sources on August 22, 2026.