opencode or Cursor: a console agent or an editor with AI

One lives in the terminal and works with any provider, the other brings a whole editor. A comparison by scenarios, model setup and price.

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

The comparison "opencode vs Cursor" looks odd at first: they are tools of different shapes. opencode is an open-source terminal agent that does not care which editor you use. Cursor is a standalone editor based on VS Code with an agent inside. Yet you have to choose between them, because they solve one task: bringing a code change to completion with a model. Below is a breakdown by scenarios, by connecting your own models and by price; check exact capabilities and versions in the tools' own documentation.

What opencode and Cursor are

opencode runs in a terminal in the project directory, shows the conversation with the agent and applies edits to files on disk. It offers neither its own editor nor its own model: you connect providers yourself. If you ask "what is opencode ai", the short answer is: a console AI agent for development that can work with different model providers.

Cursor is an editor: you open a project in it, and the chat, agent, autocomplete and edits are inside the window. It is sold by subscription; plans and limits change, so look at the current plan on the service's website. Your own keys can be connected, but not every feature necessarily runs on them, so check Cursor's documentation.

Scenarios: what is more convenient when

ScenarioMore convenientWhy
Work on a remote server over sshopencoderuns in the terminal, no editor needed
Editing inside a familiar visual editorCursordiff and files in one window
Automation and scriptsopencodeconsole launch is easier to embed in processes
Fast autocomplete while typingCursorit is an editor feature
Working in your favourite editor (Vim, JetBrains, etc.)opencodeno need to change environment
Small edits with visual review of the resultCursorhighlighting and code navigation

The table describes typical preferences, not absolutes. Many people use both: Cursor for daily typing, a terminal agent for big tasks and server work. There is no conflict; they have different settings directories.

A shared caveat: for both it is important to keep the project in git, read the diff before committing and let the agent run only safe commands.

Connecting your own models

In both cases it comes down to an address, a key and a model name. For the Zukko gateway:

ToolBase URLNote
opencode (Anthropic provider)https://api.zukko.pro/v1with /v1, otherwise requests go to an unversioned path and return 404
Cursorhttps://api.zukko.pro/v1OpenAI-compatible address

Note the trap: for Claude Code and the official Anthropic SDK the address is written without /v1, while opencode through the Anthropic provider needs it. The article on base URL with or without /v1 explains why. The exact configuration and field names are in the documentation: opencode and Cursor; we do not duplicate them here to avoid drifting from current versions.

Take model names from GET https://api.zukko.pro/v1/models. Two caveats from the Zukko documentation: in opencode the Anthropic provider works with Claude models, and in Cursor some popular models have second names (for example cursor-sonnet-5 instead of claude-sonnet-5), because Cursor sends names it already knows to its own backend. For example: claude-sonnet-5-5 (strength index 48), gpt-6.1-sol (52), claude-opus-5-5 (58), deepseek-v4.1-flash (39). We do not claim in advance what suits your project: compare on one and the same task.

The price of work per token

With both tools, using your own key means paying for tokens. The calculation is simple. Assumptions (illustrative): a session of 30 requests, on average 40,000 input tokens and 1,500 output tokens each. Total 1.2M input and 0.045M output. Formula without cache: input × input price + output × output price. Zukko prices as of October 18, 2026, $ per 1M tokens:

ModelInput / outputCalculationSession
deepseek-v4.1-flash0.013 / 0.0381.2 × 0.013 + 0.045 × 0.038$0.017
gpt-6.1-sol0.27 / 1.321.2 × 0.27 + 0.045 × 1.32$0.383
claude-sonnet-5-50.4 / 21.2 × 0.4 + 0.045 × 2$0.57
claude-opus-5-50.8 / 41.2 × 0.8 + 0.045 × 4$1.14

Check: 1.2 × 0.013 = 0.0156, plus 0.045 × 0.038 = 0.00171, total $0.01731; 1.2 × 0.27 = 0.324, plus 0.045 × 1.32 = 0.0594, total $0.3834; 1.2 × 0.4 = 0.48, plus 0.09, total $0.57; 1.2 × 0.8 = 0.96, plus 0.18, total $1.14.

This is an estimate without cache. In the Anthropic format, which opencode uses with the Anthropic provider, the repeating part of the context is read from cache more cheaply (for claude-sonnet-5-5 $0.05 versus $0.4 for input, for claude-opus-5-5 $0.08 versus $0.8), while in the OpenAI format that Cursor uses all Claude input is billed at the input price. So the connection format affects spend. For GPT models a cache read is visible in both formats. More: calculating an agent session with cache.

An honest comparison with a Cursor subscription is impossible, because we do not know and do not quote its price and limits. Calculate your own load: how many sessions a day and which model, multiply by working days and compare with the plan on the service's website. For control, set a daily limit in dollars on the key.

How to choose

  • You live in the terminal, work over ssh or want to embed an agent in scripts: opencode.
  • You want a visual editor out of the box with autocomplete: Cursor.
  • Not sure: take one small task with a verification command and run it in both. A day of work tells more than a table.

To connect either one, create a key in the dashboard. Access from Russia goes through the gateway; the balance is topped up via SBP (the payment page adds an 8.5% fee), MasterCard card or cryptocurrency.

FAQ

Is opencode free?

The tool itself, as far as we know, is open and needs no subscription, but you pay the provider for model tokens. Check the licence terms in the project's repository.

Can I use opencode and Cursor on the same key?

Yes. A fetch_... key works in both tools and in both formats. Create separate keys if you want to see spend for each tool separately.

Why does opencode return 404 after setup?

Most often the base URL is given without /v1. For the Anthropic provider in opencode the address must be https://api.zukko.pro/v1.

What if Cursor does not respond on my key?

First check the same request via curl, then the address, the model name (keeping Cursor's second names in mind) and the key limits.

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_*

opencode vs Cursor: terminal agent or AI editor · Zukko