Cursor and Ivy Tendril solve different problems. Cursor is an AI code editor. It makes an individual developer faster while they type, read, and edit code, with completions, chat, and agent modes inside the IDE. Ivy Tendril is a desktop application that orchestrates coding agents through a full lifecycle: plan, human review, execution in isolated git worktrees, verification, human review of the diff, and pull request. If you want help while you write code, choose Cursor. If you want to delegate whole tickets to agents, run many of them in parallel, and keep two review gates before every merge, choose Tendril. Many teams use both.
What each tool is for
Cursor
Cursor is a fork of VS Code with AI features built in. You open a repository and Cursor indexes it so completions and chat can reference your files. The main modes are inline completions, a chat panel with codebase context, and an agent mode that applies multi-file edits, runs terminal commands, and iterates on errors. At the time of writing, Cursor also offers background agents that run in cloud environments and return branches for review. Cursor is a hosted, closed-source product with subscription pricing. Model requests are routed through Cursor's backend, and Cursor documents a privacy mode for teams that need stricter data handling.
The unit of work in Cursor is the editing session. A developer is present, accepting or rejecting changes as they appear.
Ivy Tendril
Ivy Tendril is a local-first desktop application for macOS, Windows, and Linux from Ivy Interactive AB. It works with any editor and runs the workflow the product calls a software factory: an idea or ticket becomes a plan, a human reviews the plan, agents execute it in isolated git worktrees, tests and lint run, a human reviews the diff, and a pull request is opened. It is free and source-available under the Functional Source License, with paid Pro and Enterprise plans for team features.
Tendril is agent-agnostic. It drives Claude Code, OpenAI Codex CLI, GitHub Copilot CLI, Google Gemini CLI, OpenCode, or any other CLI agent, and you bring your own API keys. The unit of work is the plan, not the editing session.
Side by side
| Aspect | Ivy Tendril | Cursor |
|---|---|---|
| Category | Agent orchestration, plan to pull request | AI code editor |
| Unit of work | A plan tied to a ticket or idea | An editing session |
| Where the agent runs | On your machine, in a git worktree per plan | In the IDE, or in Cursor's cloud for background agents |
| Model access | Your own API keys, any documented provider | Cursor subscription, routed through Cursor's backend |
| Agents supported | Claude Code, Codex CLI, Copilot CLI, Gemini CLI, OpenCode, any CLI agent | Models selected inside Cursor |
| Human checkpoints | Two, the plan and the diff | Continuous, the developer watches each edit |
| Parallelism | Many plans at once, each on its own branch | One developer's attention per session |
| Cost tracking | Per plan and per job | Per subscription seat |
| Source | Source-available under FSL-1.1-ALv2 | Closed source |
| Price | Free core, Pro at $59 per user per month | Subscription tiers, see Cursor's site |
Execution model
The most important difference is what happens between the request and the result.
In Cursor, you type an instruction, the agent edits files, and you read the output as it appears. If it goes wrong you stop it and adjust the prompt. This loop is fast and works well for tasks small enough to follow in real time. It requires your attention for the whole task.
In Tendril, the request first becomes a written plan. The CreatePlan promptware drafts it. You read it, and you can expand it, split it into smaller plans, or annotate it inline so the plan is rewritten. Only after you approve does the ExecutePlan promptware start an agent in a git worktree on its own branch. When it finishes, the Verify step runs tests, lint, and a diff summary, and the result appears in the Review surface. You read the diff, approve, and Tendril opens the pull request. The plans documentation lists the plan operations.
Your attention is needed at two points. Between them you can review another plan, start one, or write code in Cursor.
Where code and data go
Cursor is a hosted service. Model requests leave your machine through Cursor's infrastructure, and the codebase index is part of that service. For teams with client contracts or regulated code, it is a procurement question.
Tendril is local-first. Plans, agent memory, and execution logs are stored on your machine. The only external calls are to the LLM API you chose and to GitHub. Tendril does not proxy your traffic, and no Tendril account holds your code. If your company already has an agreement with Anthropic, OpenAI, or Google, you point Tendril at that key. We explain the reasoning in why code stays on your machine.
Parallelism and review
A developer in Cursor supervises one agent at a time. Background agents raise that number, but each result comes back as a branch to review with no shared record of what was planned or how it was verified.
Tendril is built for many plans at once. Each agent has its own worktree, so the main branch stays clean until review. The Dashboard shows plan status, cost, and git activity across all of them. The Review surface shows the diff and the verification results next to each other, so the reviewer sees test output beside the change. Ivy reports that its own team went from roughly 10 to more than 100 pull requests per day after adopting this workflow. The number depends on the team, but the direction is the same: the slowest step moves from writing code to reviewing it. Our article on verification gates covers how to keep review quality up as volume rises.
Cost control and lock-in
Cursor bundles model access into a subscription. That is simple to budget. You do not see the per-task cost, and the model choice is what Cursor offers.
Tendril charges nothing for the core application. You pay your model provider directly and Tendril records tokens and cost per plan and per job. If one class of task is expensive, you can switch that plan to a cheaper model or a different agent without changing the workflow. Because the workflow is agent-agnostic and the code is source-available, leaving Tendril later means your repository, branches, and pull requests stay exactly as they are.
When Cursor is the right choice
- You write code yourself most of the day and want completions and chat with repository context.
- Your tasks are small and interactive, and you want to see each edit as it happens.
- You prefer one subscription over managing API keys.
- Your team has not yet defined how tasks are planned and verified.
Nothing in Tendril replaces it for hands-on work.
When Ivy Tendril is the right choice
- You have a backlog of well-defined tickets and want agents to work them in parallel while you review.
- You need code, plans, and logs to stay on your machine, with model traffic going only to a provider you have a contract with.
- You want to use more than one agent or model and compare them on real work.
- You want a written plan and a verified diff before every merge, not a chat transcript.
- You want per-task cost data.
In Steve Yegge's "8 Levels of AI-Assisted Development" (2025), the IDE assistant is levels 2 to 3. Orchestration with parallel agents, memory, and review gates is level 8. Installation is one command; see the installation guide.
Frequently asked questions
Can I use Cursor and Ivy Tendril together?
Yes. Tendril runs agents in git worktrees and opens pull requests. Cursor is where you write code by hand, and you can open a Tendril worktree in it to inspect or finish a change.
Does Tendril need a subscription to use a model?
No. Tendril uses your own API keys from Anthropic, OpenAI, Google, OpenRouter, Vercel AI Gateway, and other documented providers. The core application is free; Pro adds team features at $59 per user per month.
Can Tendril run without the desktop window?
Yes. tendril --web runs it headless, and a Cloudflare Quick Tunnel lets you steer runs from a phone. Plans can also come from GitHub issues, jam.dev reports, the CLI, the REST API, or the MCP server.