Zed AI vs Cursor: a fast editor against an AI fork of VS Code

Zed and Cursor approach AI differently: one builds around its own editor and the ACP protocol, the other extends VS Code. We compare them and connect your own key.

6 min · · IDE · сравнение

Zed and Cursor are often put side by side when choosing an editor with an AI agent, though they are built differently. Cursor is a VS Code fork with an agent built in. Zed is a separate editor with its own agent panel that can also launch other agents through the ACP protocol. Below is a Zed AI vs Cursor comparison on what really affects work: agents, connecting your own models, token spend.

The facts about Zed come from its documentation as of 18 October 2026, and about Cursor from our connection guide. We do not quote either service's plans: they change, so check the current plan on the service's site.

Zed AI vs Cursor: comparison by point

QuestionZedCursor
Basea separate editora VS Code fork
Own agentZed Agent in the agent panelbuilt-in agent and chat
Other agentsExternal Agents over ACP: the docs list Claude, Codex, OpenCode, Copilot, Cursor among the common onesrunning Claude Code and other CLIs in the terminal
Parallel workseveral threads, including across projects and worktreesseveral chats and agents, see Cursor's docs for details
Own models via APIproviders in LLM Providers, including OpenAI-compatible and Anthropic-compatibleoverriding the OpenAI Base URL in model settings
Agent rulesInstructions, Skills, agent profilesrule files in .cursor/rules
Extensionsits own extension system (languages, themes, MCP servers)VS Code-style extensions, check compatibility for your set

We draw no conclusions about speed or the "feel" of the editor: it is subjective and depends on the project. Open your own repository in both and compare yourself.

An interesting detail from Zed's documentation: Cursor is listed among the external agents you can run inside Zed. An either-or choice is not required.

What Zed AI offers

The main parts of Zed's AI layer follow from the documentation:

  • Agent Panel and Threads Sidebar: talking to agents and the list of threads.
  • Zed Agent: its own agent, works with models from LLM Providers (Zed models, provider keys, subscriptions, gateways, local models), uses tools, profiles, Skills, Instructions and MCP servers.
  • External Agents: agents that run as separate processes over ACP. They have their own authentication and settings.
  • Terminal Threads: running a regular CLI agent in a terminal thread.
  • Inline Assistant, Edit Prediction, commit message generation.
  • Parallel Agents: several threads at once.

Claude Code runs in Zed as a terminal thread or as an external agent over ACP and takes its settings from itself, not from Zed. A general introduction to Zed's AI assistant: Zed: setting up the AI assistant on your own key.

Your own key in Zed

In Zed a provider is added in the agent settings (LLM Providers section, Add Provider) or in settings.json. For an OpenAI-compatible gateway, Zed's documentation calls for an address, a model identifier, a context size and a key:

bash
{
  "language_models": {
    "openai_compatible": {
      "zukko": {
        "api_url": "https://api.zukko.pro/v1",
        "available_models": [
          {
            "name": "gpt-6.1-sol",
            "display_name": "GPT-6.1 Sol (Zukko)",
            "max_tokens": 1000000,
            "capabilities": { "tools": true, "images": true }
          },
          {
            "name": "deepseek-v4.1-flash",

Enter the fetch_... key in the provider UI or set it as an environment variable: Zed builds the name from the provider id, which for zukko is ZUKKO_API_KEY. Zed's documentation advises against putting keys in settings.json. Here max_tokens means the context window; per the catalog table the models above have 1M. The other capability flags take their defaults. For the OpenAI format the address is always https://api.zukko.pro/v1 with /v1.

Your own key in Cursor

The setup is described in our Cursor guide:

  1. Open Cursor Settings, the Models section.
  2. Turn on OpenAI API Key and paste your fetch_... key.
  3. Turn on Override OpenAI Base URL and enter https://api.zukko.pro/v1.
  4. Add a model and click Verify.

Important caveats from our guide: as far as we know, overriding the provider requires a paid Cursor plan (Cursor's official help page on own keys does not currently describe the base URL override, so check against your version), and a model whose name Cursor already knows is sent to its own backend rather than to you. That is why some models have second names: for example cursor-opus-55 for claude-opus-5-5 and cursor-sonnet-5 for claude-sonnet-5. The rest (say gpt-6.1-sol, deepseek-v4.1-flash, glm-5.3) have no second names and the regular one works. If answers bypass Zukko, check that the Override switch is on and the address ends with /v1.

What working on your own key costs

The editor does not change the token price: you pay the gateway for what you sent and received. But the request format affects the cache. By Zukko's rules, the cache discount for Claude comes only from the Anthropic format (/v1/messages), while in the OpenAI format (/v1/chat/completions) all input is billed at the input price. Cursor with an overridden Base URL works in the OpenAI format. In Zed you can add an Anthropic-compatible provider with api_url https://api.zukko.pro and prompt_caching enabled.

An illustration at prices as of 18 October 2026. claude-sonnet-5-5: input 0.4, output 2, cache read 0.05, cache write 0.5 dollars per 1M tokens. A day of agent work: 4M input tokens and 0.4M output tokens. Suppose that in the Anthropic format, of the 4M input, 0.8M is fresh, 3M is read from the cache and 0.2M is written to the cache (the shares are assumed for the example).

  • OpenAI format: 4 × 0.4 + 0.4 × 2 = 1.6 + 0.8 = $2.40;
  • Anthropic format: 0.8 × 0.4 + 3 × 0.05 + 0.2 × 0.5 + 0.4 × 2 = 0.32 + 0.15 + 0.10 + 0.8 = $1.37.

The cache shares in your work will differ. For GPT models, cache reads are visible in both formats (prompt_tokens_details.cached_tokens) and writes are not billed separately. If you mostly work with gpt-6.1-sol or cheap deepseek-v4.1-flash and glm-5.3-flash, the format matters less. More on the cache: cache reads and writes and Claude via messages or chat/completions.

So the agent does not get into an expensive loop, create a separate key for the editor and set a daily limit.

How to choose

  1. You want the familiar VS Code interface with extensions: Cursor.
  2. You want a lightweight editor and the ability to run different agents (Claude Code, Codex, OpenCode) via ACP or terminal threads: Zed.
  3. You want spend from one key and one dollar balance in both: connect a Zukko key in both and compare by spend in the dashboard.
  4. Not sure: take one real task, solve it in both editors and compare the result and the cost.

Access from Russia goes through the gateway, with payment by SBP (the payment page adds 8.5% on top), MasterCard, or crypto. A key is created in the dashboard.

FAQ

Can I use Zed and Cursor together?

Yes. Cursor is listed in Zed's documentation among external agents, and in Zed you can also open a terminal thread with any CLI agent. Both editors can use the same Zukko key.

Do I need a paid Cursor plan for my own key?

According to our guide, overriding the provider is not available on Cursor's free plan. Check plan terms on Cursor's site.

Which model is best in Zed or Cursor?

The editor does not determine the model. By the strength index in our catalog, claude-opus-5-5 has 58, gpt-6.1-sol 52, claude-sonnet-5-5 48 and deepseek-v4.1-flash 39. That is a general index, not a result on your code: test on your own tasks.

What if Zed does not see the model?

Check api_url (for the OpenAI format https://api.zukko.pro/v1), the exact model id from GET /v1/models, and the ZUKKO_API_KEY variable or the key in the provider UI.

zukko

Pay 25×
less

for Claude Code & ChatGPT

One fetch_* key and base URL api.zukko.pro — for Cursor, Claude Code, Codex, and any SDK.

Get API keyDocumentation

api.zukko.pro · fetch_*

Zed AI vs Cursor: choice and API setup · Zukko