Cursor background agents vs crystl

Cursor’s background agents are now called cloud agents, and the name change tells you the whole story. They run Cursor’s own agent in an isolated VM in Cursor’s cloud, work on a branch in your repo, and open a pull request. crystl runs the agents you already use, locally, on your machine, across every project at once. Different problems, and it’s usually obvious which one is yours.

Checked July 31, 2026. Every claim about Cursor below was read from Cursor’s own documentation on that date and linked to its source. Cursor ships fast, so re-check anything you’re about to depend on.

the name change, first

If you’re searching for “background agents” and landing on dead links, that’s why. Cursor’s docs now live at cursor.com/docs/cloud-agent, and the old background-agent doc path redirects. The API path still uses the old name. Same feature, new label.

what a Cursor cloud agent actually is

Worth stating properly, because this is a well-built feature and a strawman version of it helps nobody.

A cloud agent runs “in isolated VMs in the cloud with full development environments.” Each gets its own virtual machine with your repository, dependencies, secrets, and network access, sandboxed from your local machine. It clones from GitHub, GitLab, Azure DevOps, or Bitbucket, works on a separate branch, pushes, and opens a PR when it finishes, attaching screenshots and logs so you can review without checking the branch out.

You can start one from a lot of places: the Cursor desktop app, the web at cursor.com/agents, the iOS app, Slack with @cursor, a comment on a GitHub or Bitbucket PR, Linear, the Cursor CLI, or the API. There are also automations that fire agents on a cron schedule, on a Slack message, on a Linear issue event, on a GitHub PR event, or on a webhook.

The environment is config as code. A .cursor/environment.json file holds your install command, an optional Dockerfile build, start commands, and terminals, and Cursor caches a snapshot so later agents boot fast. Secrets come in three flavors, including runtime secrets that are “redacted from the agent’s tool call results, chat transcript, commits, and commit messages.”

Cursor’s stated position on concurrency is that you can “run as many agents as you want in parallel,” and they don’t need your laptop online. Cloud agents are listed on Pro and above, and usage draws from Cursor’s normal model usage pools.

Recently they’ve also broadened past pure cloud: you can now pick a worker per run, either a Cursor cloud machine, a self-hosted pool your org runs, or one of your own machines. Cursor still calls its own cloud “the recommended path for most teams.”

That’s a strong product. If your work maps to it, use it.

the actual split

Cursor’s cloud agents send the work away and hand back a PR. crystl keeps the work in front of you while it happens.

Everything else follows from that.

whose agent runs

This is the difference that doesn’t close with a feature release.

Cursor’s cloud agents run Cursor’s agent. There’s no documented way to launch or supervise the Claude Code or Codex CLI inside one. Cursor does read skills from .claude/skills/ and .codex/skills/ for compatibility, and it can execute hooks configured for Claude Code, but it runs those in its own execution environment. It’s config compatibility, not agent supervision. The Cursor CLI is likewise Cursor’s own agent in a terminal, a peer to Claude Code rather than a host for it.

crystl sits above every agent instead of inside one. Claude Code in this shard, Codex in that one, something else next year, all in one window and one queue. No agent vendor will ever show you a competitor’s sessions, which makes this structural rather than a feature race.

Honest caveat on our side: crystl’s deepest surfacing, the approval panels driven by hooks, is Claude Code first. Codex is partial, and other agents are supervised at terminal level.

where your code goes

Cursor is explicit about this, which is to their credit. Code runs in their AWS infrastructure and is stored on VM disks while the agent is accessible. They state they never train on your code and only retain it for running the agent. Conversation history is kept indefinitely by default, with Enterprise able to set 90 days. Legacy Privacy Mode is not supported for cloud agents at all, “due to their cloud storage requirements.” Cloud agents also need read-write access to your repo and any dependent repos.

crystl runs on your Mac. Agents read and edit files in place, in your real working copies. Nothing is shipped anywhere to execute, and crystl never sits between you and your agent’s billing, because it drives the Claude Code or Codex subscription you already pay for.

For client work under NDA, or a repo you can’t grant a vendor write access to, that’s the deciding line rather than a preference.

one repo, or all of them

Cursor’s model is repo-shaped. An agent is started against a repository and hands back a branch. Multi-repo work is supported, but the unit is still the repo and the deliverable is still the PR.

crystl’s unit is your whole machine. Projects are gems, each holding its own sessions, MCP config, and API key selection, and they all live on one rail. The agent activity panel shows every agent’s live state across every project in one view. The question it’s built to answer is “which of my eleven agents, in six repos, needs me right now.”

the review moment

Cursor’s review moment is the pull request. The agent finishes in the cloud, you get a PR with screenshots and logs, you read the diff. That’s a clean, familiar loop, and for well-specified tasks it’s genuinely better than watching.

crystl’s review moment is continuous. Approval requests and questions float as glass panels color-coded by project, without stealing focus, and push to your phone so you can approve a step from the couch. You see the agent go the wrong way at minute two instead of at PR time. Sessions are kept as structured conversation history that survives closing a window or rebooting.

Which one is better depends entirely on how well you can specify the task up front. Tightly specified work wants a PR. Exploratory work in a codebase you know wants supervision.

what Cursor does better

Fair is fair, and this list is real.

  • Your laptop isn’t involved. Cloud agents run without your machine online, and parallel runs cost you no local CPU or memory. crystl’s agents run on your Mac, and a dozen at once is a load your hardware carries.
  • Reach. Slack, Linear, GitHub and Bitbucket comments, web, mobile, API, and event-driven automations. crystl schedules agents and has an iPhone app, but it needs the Mac app running, and it has nothing like @cursor on a Linear issue.
  • Cross-platform. Cursor runs everywhere. crystl is macOS only.
  • The editor. Cursor is a mature IDE with an agent in it. crystl is a terminal and assumes you brought your own editor.
  • Environment reproducibility. environment.json plus snapshots gives every agent an identical, known-good environment. crystl agents inherit whatever your machine happens to be.
  • Team scale. Self-hosted pools, org policies, admin controls. crystl is built for one person’s fleet.

If your problem is “my team should be able to fire well-scoped tasks at a repo from Slack and get PRs back,” Cursor is built for exactly that.

what crystl does better

  • Any CLI agent, side by side. Not one vendor’s.
  • Every project at once, not one repo per run.
  • Local execution. Your code doesn’t leave the machine, and there’s no repo write access to grant.
  • Live supervision. You watch and steer instead of reviewing after the fact.
  • Parallel work on one repo without collisions, via isolated shards backed by real git worktrees.
  • No metering. It runs the subscription you already have. crystl’s own paid tier is a flat $170/year, and there’s a free tier.

picking

  • Cursor cloud agents if you’re already in Cursor, your work decomposes into well-specified repo tasks, you want them running while your laptop is shut, and PR review is how you want to see the result.
  • crystl if you run several CLI agents across several projects on a Mac, you want to watch and steer them live, and you’d rather your code and your agent billing stay where they are.

They’re not really substitutes. Plenty of people will use Cursor as their editor and crystl as the place their agents run.

crystl is free. Sign up at crystl.dev/login.