Head to head · Agent harnesses · October 2026 research run
Devin vs Letta
Letta scores 59.7 (C) on agent readiness against Devin's 57.3 (C), and leads in 4 of 7 scored categories. Devin leads on schema & documentation, 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
Devin C
Best for A team that wants to hand whole tasks to a cloud agent and collect pull requests, driven from a pipeline or another agent.
Ahead on
- Schema & documentation, 80 against 70
- Security & auth, 72 against 35
- Transparency & trust, 75 against 55
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
www.devinstatus.com lists two outages on 13 August and the web app down for about two hours on 24 September 2026
Letta C
Best for Long-lived coding agents and assistants that keep memory and identity across sessions and machines.
Ahead on
- Reliability, 58 against 35
- Agent ergonomics, 67 against 62
- Payments & pricing, 60 against 20
- Maintenance & community, 85 against 63
Also in its favour
- Runs on your own machine
- Open source
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 +40
Devin 20
Published rubric. No payment protocol (0). Plan prices are public, $20, $200 and $40 a seat with an $80 team minimum, but usage past the quota is billed at an unpublished rate (10). A Free plan exists. The pricing page lists cloud agents from Pro upward, and we couldn't confirm API use on Free or whether a card is needed (10). A person signs up in a browser and provisions the service user in settings (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.
Security & auth Devin +37
Devin 72
Hosted reading. Service-user keys with roles and named permissions per endpoint, revocable, with rotation endpoints in beta for Enterprise and expiring personal tokens. Custom roles are an Enterprise option, and Teams has Admin and Member only (25). Security profiles restrict network, MCP servers, git and the Devin MCP to read-only, and read-only API permissions exist. They are opt-in, and session creation accepts bypass_approval (16). AI Guardrails screen user messages and pull request comments for prompt injection, on Enterprise only, and they don't cover web pages or repository content Devin reads (8). Audit logs through the API need an enterprise-level permission. Session events and insights are available on all plans (10). SOC 2 Type II and ISO/IEC 27001:2022, a disclosure address at security@cognition.ai, no security.txt, and the trust centre answers No to having a bug bounty (13).
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.
Reliability Letta +23
Devin 35
Hosted reading. Status page at www.devinstatus.com (Atlassian Statuspage) with 14 components, among them Cloud Agent and Cloud Web Client, read from the page itself on 4 November 2026 (20). Its history feed for the 90 days from 6 August 2026 lists Devin unavailable on 13 August (20 minutes), Devin Cloud unavailable on 13 August (2 hours 40 minutes) and the web app down on 24 September (about 2 hours), with minor session and Ask Devin incidents on 10 and 11 August, 3 and 17 September and 26 October. Both 13 August entries report the service unavailable. The 24 September entry names only the web app, not the API or the MCP server, so it is read as partial, as dashboard outages are on other listings. Two majors (5). Two scheduled maintenance entries (7 and 17 August) are read as maintenance. 429 is a documented response, but no rate limit figures were found (0). No Retry-After or backoff guidance found, and v3 session creation has no idempotency key (0). The platform terms give no guarantee of availability, and enterprise terms weren't read (0). The v3 API is the current, recommended surface, with 27 of 274 operations under /v3beta1 (10).
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.
Maintenance & community Letta +22
Devin 63
Closed service. Newest release note dated 2 November 2026 (30). Thirty dated release notes between 7 August and 2 November 2026, and API notes for August, September, October and November (20). Public release notes and a support address, with no public tracker or forum found (10). No official SDK for the Devin API found (a Python SDK in the federal docs covers analytics and ACU limits for air-gapped Desktop), and the Devin MCP server didn't appear in the official MCP registry per the 8 October check (0). No public CI or packages to assess, with the docs and three OpenAPI specs kept current (3).
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.
Transparency & trust Devin +20
Devin 75
Editorial half. Closed source with clear terms from Cognition AI, Inc. (15). Terms (30 June 2026), privacy policy, security page and data processing agreement agree with each other. Customer data may be used for model training by default on self-serve plans, with an opt-out on paid plans that also turns on zero data retention at model providers, and Enterprise data isn't trained on without written consent. Retention is stated as the length of the customer relationship, with no periods (18). The API versioning policy on the release notes page says breaking changes are announced at least 7 days in advance and a deprecated endpoint stays available through a deprecation period. Dated notices followed it for the schedules endpoints (announced 10 September, creation refused from 24 September 2026), and others cover the v2 clone endpoint and Playbooks moving to Skills (23 October). v1 and v2 are marked legacy with no end date (20). Sub-processors listed with purpose and country, and 15 days' notice of additions, per the 8 October check (18).
Letta 55
Apache-2.0 (30). The privacy policy has no date, no legal entity and no retention periods, and says hosted message data may train future models (8 of 30). The README and docs mark AgentFile, the Electron app and the V1 server as deprecated or retired, without dated notice periods (12 of 20). Telemetry is described in the privacy policy only as basic and opt-out when supported; the LETTA_CODE_TELEM=0 switch appears only in the source (5 of 20). Total 55.
Schema & documentation Devin +10
Devin 80
API reading. Public OpenAPI 3.1 spec for v3 with 182 paths and 274 operations on 4 November 2026, and separate v1 and v2 specs (25). llms.txt with 393 lines and a Markdown twin of every page (10). Each endpoint page names its required permission, but 63 of 274 operations have no description and the MCP tool descriptions are one line each (10). Enums on fields such as devin_mode, origin and category, with most strings unconstrained and nullable (9). curl examples in the quick starts, and 401, 403, 404, 409, 422 and 429 declared on all 274 operations, without a catalogue of error_code values (11). Versioned paths (v1, v2, v3, v3beta1) and an API release notes page dated by month, newest November 2026 (15).
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.
Score by category
| Category | Weight this run | Devin | Letta | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 35 | 58 | Letta +23 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 80 | 70 | Devin +10 |
| Agent ergonomics | 13%16.2 | 62 | 67 | Letta +5 |
| Security & auth | 14%17.5 | 72 | 35 | Devin +37 |
| Payments & pricing | 10%12.5 | 20 | 60 | Letta +40 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 63 | 85 | Letta +22 |
| Transparency & trust | 7%8.8 | 75 | 55 | Devin +20 |
| Negative events | ≤15 | 0 | 0 | |
| Total | C 57.3/100 | C 59.7/100 |
Facts side by side
| Fact | Devin | Letta |
|---|---|---|
| Kind | Agent harness | Agent harness |
| Vendor | Cognition AI, Inc. | Letta |
| Hosted endpoint | https://mcp.devin.ai/mcp | no (local only) |
| Transports | HTTP | stdio |
| Auth | API key | OAuth or key |
| Pricing | Freemium | Freemium |
| x402 | no | no |
| Licence | Proprietary service under Cognition's Platform Terms of Service | Apache-2.0 |
| Tools exposed | 13 | none |
| Read-only variant documented | yes | no |
| llms.txt | yes | yes |
| Last release | 2026-11-02 | 2026-11-06 |
| Terms last updated | 2026-06-30 | no date given |
| Privacy policy last updated | 2026-03-09 | no date given |
| Customer content may train models | yes, with an opt-out | not found in the text |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | yes | not found in the text |
| Terms or service can change without notice | not found in the text | not found in the text |
| Arbitration or class-action waiver | yes | yes |
| Popularity | none | 3.8k stars, 86k npm/wk, 2.2k PyPI/wk |
How the scores have moved
Letta
No score change since it was listed.
Verdicts
Devin
The v3 API is well specified, with a public OpenAPI 3.1 file covering 274 operations, problem+json errors, cursor pagination and service-user keys tied to roles. The status page records two outages on 13 August and a two-hour web app outage on 24 September 2026, and no rate limit figures or retry guidance were found in the reviewed documentation.
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
Devin
- Use a
cog_service-user key with the Member role. Legacyapk_keys fail against v3 and the MCP server with 401 or 403 - Set
max_acu_limiton every session you create. Usage is metered by the work done and has no published unit rate - Session creation is not idempotent in v3. After a timeout, list sessions by tag before creating again
- Enterprise keys and personal access tokens must send
X-Org-Idto the MCP server. Organisation-scoped keys resolve it automatically - Create scheduled work as an automation. POST to the schedules endpoint returns 403 for migrated organisations since 24 September 2026
Letta
- Start headless runs with an explicit permission mode such as
standardorstrict; the default auto-approves tools - Pass
--backend localfor work that must stay on the machine, since Letta Cloud is the default - Set LETTA_CODE_TELEM=0 in unattended runs if usage events must not be sent
- Use
letta -p --output-format jsonfor scripted runs and parse the JSON, not the terminal output - Don't plan on the retired V1 REST server or
.afAgentFile import; both are gone
Questions
Which is better for AI agents, Devin or Letta?
Letta scores 59.7 (C) on agent readiness against Devin's 57.3 (C), and leads in 4 of 7 scored categories. Devin leads on schema & documentation, security & auth and transparency & trust.
Are Devin and Letta open source?
No open-source release is listed for Devin. Letta is open source (Apache-2.0).
Other comparisons with Devin or Letta
- Agent Zero vs Devin
- Agent Zero vs Letta
- Aider vs Devin
- Aider vs Letta
- Amp vs Devin
- Amp vs Letta
- Antigravity CLI vs Devin
- Antigravity CLI vs Letta
- Auggie CLI vs Devin
- Auggie CLI vs Letta
- AXLR vs Devin
- AXLR vs Letta
- Claude Code vs Devin
- Claude Code vs Letta
- Cline vs Devin
- Cline vs Letta
- Conductor vs Devin
- Conductor vs Letta
- Crush vs Devin
- Crush vs Letta
- Cursor CLI vs Devin
- Cursor CLI vs Letta
- DeepSeek Harness (dsh) vs Devin
- DeepSeek Harness (dsh) vs Letta
- dsh-superagent (DeepSeek) vs Devin
- dsh-superagent (DeepSeek) vs Letta
- Devin vs Droid CLI
- Devin vs Pi
- Devin vs Emdash
- Devin vs Gemini CLI
- Devin vs GitHub Copilot CLI
- Devin vs goose
- Devin vs Harness²
- Devin vs HarnessRouter
- Devin vs Jules
- Devin vs Junie CLI
- Devin vs Kilo Code CLI
- Devin vs Kimi Code CLI
- Devin vs Kiro CLI
- Devin vs mini-swe-agent
- Devin vs MiniMax Code
- Devin vs Mistral Vibe CLI
- Devin vs Muse Code
- Devin vs OpenAI Agents API
- Devin vs OpenAI Codex
- Devin vs OpenCode
- Devin vs OpenHands
- Devin vs OpenMausBot
- Devin vs Orca
- Devin vs Paseo
- Devin vs Prime Agent
- Devin vs Qoder CLI
- Devin vs Qwen Code
- Devin vs Mirror CLI
- Devin vs Rovo Dev CLI
- Devin vs Sculptor
- Devin vs T3 Code
- Devin vs Traycer
- Devin vs Unstoppable
- Devin vs Verdent
- Devin vs Vibe-Trading
- Devin vs Warp (Warp Agent CLI and the Oz Agent API)
- Droid CLI vs Letta
- Pi vs Letta
- Emdash vs Letta
- Gemini CLI vs Letta
- GitHub Copilot CLI vs Letta
- goose vs Letta
- Harness² vs Letta
- HarnessRouter vs Letta
- Jules vs Letta
- Junie CLI vs Letta
- Kilo Code CLI vs Letta
- Kimi Code CLI vs Letta
- Kiro CLI vs Letta
- Letta vs mini-swe-agent
- Letta vs MiniMax Code
- Letta vs Mistral Vibe CLI
- Letta vs Muse Code
- Letta vs OpenAI Agents API
- Letta vs OpenAI Codex
- Letta vs OpenCode
- Letta vs OpenHands
- Letta vs OpenMausBot
- Letta vs Orca
- Letta vs Paseo
- Letta vs Prime Agent
- Letta vs Qoder CLI
- Letta vs Qwen Code
- Letta vs Mirror CLI
- Letta vs Rovo Dev CLI
- Letta vs Sculptor
- Letta vs T3 Code
- Letta vs Traycer
- Letta vs Unstoppable
- Letta vs Verdent
- Letta vs Vibe-Trading
- Letta vs Warp (Warp Agent CLI and the Oz Agent API)
- Clawboo vs Devin
- Clawboo vs Letta
- CLI Manager vs Devin
- CLI Manager vs Letta
- Devin vs Harness
- Devin vs Paperclip
- Devin vs Parallax
- Harness vs Letta
- Letta vs Paperclip
- Letta vs Parallax
Machine-readable
- This page as Markdown
/compare/devin-vs-letta.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/devin.json·/api/v1/tools/letta.json - From a terminal
anchor compare devin letta(the CLI) - Over MCP
compare_tools {"a": "devin", "b": "letta"}at/mcp, no key