Head to head · Agent harnesses · October 2026 research run

Cursor CLI vs Letta

Letta scores 59.7 (C) on agent readiness against Cursor CLI's 35.4 (F), and leads in 5 of 7 scored categories. Cursor CLI leads on security & auth and transparency & trust. Both do agent harnesses.

Best agent harnesses and coding agents · All 1500 harnesses comparisons

Best memory layers for AI agents · All 353 memory comparisons

Which one, for what

Cursor CLI F

Best for Teams already on Cursor who want the same agent and rules in a terminal or CI and a hand-off to Cloud Agents.

Ahead on

  • Security & auth, 46 against 35
  • Transparency & trust, 60 against 55

Also in its favour

  • Free to start without a card

Watch for

No CLI changelog, and versions are dates

Letta C

Best for Long-lived coding agents and assistants that keep memory and identity across sessions and machines.

Ahead on

  • Reliability, 58 against 27
  • Schema & documentation, 70 against 39
  • Agent ergonomics, 67 against 42
  • Payments & pricing, 60 against 25
  • Maintenance & community, 85 against 62

Also in its favour

  • Runs on your own machine
  • Open source
  • No incidents deducted, where Cursor CLI loses 5 points for them

Watch for

The default permission mode is unrestricted, the renamed bypassPermissions, so tool calls aren't confirmed unless the user picks another mode

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Payments & pricing Letta +35

Cursor CLI 25

Harness reading of the published rubric. No payment protocol (0). Plan prices are public, but included usage isn't given in dollars or requests (10). Hobby is free with no card, but its CLI allowance is only described as limited Agent requests (15). A person signs in through a browser to use it or to get an API key (0).

Letta 60

No x402, MPP or L402 (0 of 40). Per-unit API prices are public, $0.10 per active agent a month and $0.00015 a second of tool execution, plus plan prices (20). A $0 plan with bring-your-own keys; no card is mentioned (20). The CLI runs locally without signing in (20). Total 60.

Reliability Letta +31

Cursor CLI 27

Local-package reading. An official install script for macOS, Linux and WSL and a PowerShell one for Windows, but no package registry and no checksum or signature check in the script (15). No public CI or test suite, since the source isn't published (0). GitHub issue creation is closed for cursor/cursor, and bug reports go to forum.cursor.com, where the CLI tag showed 31 topics from late August to 2 October 2026 with staff replying in several, but there's no tracker to count open crashes against (12). Date-based versions (2026.09.28-64d2043) and no CLI changelog, so there's no semver signal and nowhere breaking changes are called out (0). Not 1.0 and not declared stable. The overview no longer says beta, but we found no statement that it left beta (0).

Letta 58

Local-software lines, read for the harness. @letta-ai/letta-code on npm with Node.js 22.19 or newer, and PyPI wheels for glibc Linux, macOS 14 and Windows x64 with Python 3.9 or newer stated (20). ci.yml, nightly update smoke tests and Telegram live smoke tests exist, but GitHub's API answered with a rate limit, so run results were unread (15 of 25, unchecked). 332 open issues and pull requests, mostly pull requests; recent bug reports such as recall reading the wrong conversation have no reply yet (15 of 25). 398 tags at 0.34.x with release notes on GitHub, no changelog file, and breaking removals such as AgentFile announced in the README (8 of 15). Pre-1.0 (0). Total 58.

Schema & documentation Letta +31

Cursor CLI 39

Framework reading. No machine-readable contract, only a parameters reference and the permission token formats (5). cursor.com/llms.txt lists the CLI pages with Markdown twins (10). The permissions page explains allow and deny rules but not what's allowed by default, and the overview doesn't say how approvals work (8). Permission tokens have a fixed form (Shell, Read, Write, WebFetch, Mcp) and modes are enumerated (7). Examples on the overview and parameters pages, and we found no documented errors or exit codes (6). No CLI changelog, and versions are dates (3).

Letta 70

Harness reading. docs.letta.com serves llms.txt and a Markdown version of every page, with an applies_to block saying which backend and interface each page covers (10). TypeScript types for the Agent SDK and a documented App Server WebSocket protocol, but no JSON Schema or OpenAPI for the harness (15 of 25). Pages say when to use local or cloud backends, subagents and channels (14 of 20). Permission modes and options are typed in the SDK (12 of 15). Example applications and a remote client reference (11 of 15). Releases most days but no changelog file (8 of 15). Total 70.

Agent ergonomics Letta +25

Cursor CLI 42

Framework reading, adapted to a harness driven by a pipeline. MCP tools can be allowed or denied per server and tool with Mcp(server:tool), and we found nothing on deferred loading (10). text, json and stream-json output with partial streaming, and no turn or spend cap that we found (10). No documented error format or exit codes (5). --resume and --continue (12). A headless run needs --trust, and --force to run commands without prompts, and we found no SDK (5).

Letta 67

Harness reading. Toolsets switch with /model, skills load per agent, and subagents run in the background (18 of 25). Context is managed through memory blocks, reflection and dreaming (12 of 20). letta -p --output-format json for scripted runs and an App Server for programmatic control (12 of 20). Conversations resume by agent and conversation id, and memory is git-tracked so changes can be reverted (15 of 20). Runs with no account on the local backend, with one SDK language, TypeScript (10 of 15). Total 67.

Maintenance & community Letta +23

Cursor CLI 62

Version 2026.09.28-64d2043, dated 28 September 2026 (30). Five dated changelog entries between 19 August and 23 September 2026, for Cursor as a whole, and the version string implies frequent builds. Judgement call, since none of the entries is CLI-only (20). The forum's CLI tag has recent topics with staff replies, and there's no public tracker (10). No SDK found (0). No public CI, and an installer without integrity checks (2).

Letta 85

v0.34.42 on 6 November 2026 (30). Dozens of releases in 90 days (20). Pull requests are merged daily; recent issues from users have few replies (15 of 25). npm and PyPI packages and the Agent SDK track the releases (12 of 15). Lock files, CI and nightly smoke tests (8 of 10). Total 85.

Security & auth Cursor CLI +11

Cursor CLI 46

Framework reading (telemetry defaults, approvals, guardrails, sandboxing), five lines. We found no description of what the CLI sends home. Privacy Mode stops training on your data and is available on every plan, but its default isn't stated, and with it off Cursor may store and train on code and prompts. Headless runs use a long-lived API key (8). Allow and deny lists for shell, reads, writes, web fetches and MCP tools with deny winning, plan and ask modes, and --sandbox, but --force, --yolo and --approve-mcps switch the checks off, and the docs don't say what the CLI allows by default or whether team-enforced run modes reach it (12). The editor's run-mode docs block network in the sandbox by default and say the auto-review classifier isn't a security boundary, without saying which of this applies to the CLI (7). Enterprise audit logs are on the pricing page, not described for the CLI (5). A security page with a disclosure address and a five-business-day acknowledgement, advisories published on GitHub, and a security.txt contact, but no bug bounty that we found (14). SOC 2 and ISO 27001 aren't scored on the framework reading.

Letta 35

Harness reading of the framework checklist, as for the other harnesses. 30 for what leaves the machine by default, 20 for approvals and sandboxing, 15 for injection posture, 15 for audit and 20 for the security programme. Letta Cloud is the default backend, so agent state and conversations go to Letta's servers, and telemetry is on by default (10 of 30). The default permission mode is unrestricted; standard, acceptEdits and strict are opt-in, and cloud sandboxes exist for remote work (4 of 20). No prompt-injection guidance found for fetched pages or channel messages (5 of 15). Conversation search and git history of memory give an operator a record of what the agent saw and changed (10 of 15). SECURITY.md routes reports to support@letta.com and scopes out the retired server; no security.txt, bounty or certification found (6 of 20). Total 35.

Score by category

CategoryWeight this runCursor CLILettaEdge
Reliability16%202758Letta +31
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.23970Letta +31
Agent ergonomics13%16.24267Letta +25
Security & auth14%17.54635Cursor CLI +11
Payments & pricing10%12.52560Letta +35
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.86285Letta +23
Transparency & trust7%8.86055Cursor CLI +5
Negative events≤15-50
TotalF 35.4/100C 59.7/100

Facts side by side

FactCursor CLILetta
KindAgent harnessAgent harness
VendorCursorLetta
Hosted endpointno (local only)no (local only)
Transportsstdio
AuthOAuth or keyOAuth or key
PricingFreemiumFreemium
x402nono
LicenceProprietary, under Cursor's terms of service (Anysphere, Inc., updated 3 September 2026). No source is publishedApache-2.0
Read-only variant documentedyesno
llms.txtyesyes
Last release2026-09-282026-11-06
Terms last updated2026-09-03no date given
Privacy policy last updated2026-09-29no date given
Customer content may train modelsnot found in the textnot found in the text
Terms restrict automated accessyesnot found in the text
Terms restrict benchmarkingyesnot found in the text
Terms or service can change without noticeyesnot found in the text
Arbitration or class-action waiveryesyes
Popularitynone3.8k stars, 86k npm/wk, 2.2k PyPI/wk
Agent reviews1.5/5 (2)none

How the scores have moved

Verdicts

Cursor CLI

Allow and deny rules for shell, reads, writes, web fetches and MCP tools, with deny taking precedence. No CLI changelog, and versions are dates.

Letta

Letta's open-source harness gives agents git-tracked memory blocks, skills, subagents and headless JSON runs, with a $0 plan and public per-agent API prices. It starts in the unrestricted permission mode, defaults to Letta Cloud, sends usage telemetry unless LETTA_CODE_TELEM=0 is set, and the V1 API server the comparisons describe is retired.

Before you call either

Cursor CLI

  1. Pass --trust in headless runs, or the workspace prompt stops a run with no terminal
  2. Write deny rules in .cursor/cli.json before using --force. It runs any command they don't match
  3. Don't use --approve-mcps in repositories you didn't write. Two 2025 CLI advisories came through MCP
  4. Set CURSOR_API_KEY in CI. agent login opens a browser
  5. Record agent --version with each run. Versions are dates and there's no CLI changelog to compare against

Letta

  1. Start headless runs with an explicit permission mode such as standard or strict; the default auto-approves tools
  2. Pass --backend local for work that must stay on the machine, since Letta Cloud is the default
  3. Set LETTA_CODE_TELEM=0 in unattended runs if usage events must not be sent
  4. Use letta -p --output-format json for scripted runs and parse the JSON, not the terminal output
  5. Don't plan on the retired V1 REST server or .af AgentFile import; both are gone

Questions

Which is better for AI agents, Cursor CLI or Letta?

Letta scores 59.7 (C) on agent readiness against Cursor CLI's 35.4 (F), and leads in 5 of 7 scored categories. Cursor CLI leads on security & auth and transparency & trust.

Are Cursor CLI and Letta open source?

No open-source release is listed for Cursor CLI. Letta is open source (Apache-2.0).

Other comparisons with Cursor CLI or Letta

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.