Head to head · Agent harnesses · October 2026 research run
Letta vs MiniMax Code
MiniMax Code scores 66.1 (B) on agent readiness against Letta's 59.7 (C), and leads in 4 of 7 scored categories. Letta leads on reliability and maintenance & community. 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
Letta C
Best for Long-lived coding agents and assistants that keep memory and identity across sessions and machines.
Ahead on
- Reliability, 58 against 51
- Maintenance & community, 85 against 79
Also in its favour
- Runs on your own machine
Watch for
The default permission mode is unrestricted, the renamed bypassPermissions, so tool calls aren't confirmed unless the user picks another mode
Best for Scripted coding runs on MiniMax's models or any compatible model, driven by JSON output and exit codes.
Ahead on
- Schema & documentation, 81 against 70
- Agent ergonomics, 79 against 67
- Security & auth, 57 against 35
- Transparency & trust, 63 against 55
Also in its favour
- Free to start without a card
Watch for
Pre-1.0 and labelled a source preview, with npm at 0.7.4 and the public source at 0.7.2
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.
Security & auth MiniMax Code +22
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.
MiniMax Code 57
Harness reading of the framework checklist. 30 for credentials and what leaves the machine by default, 20 for approvals and sandboxing, 15 for prompt-injection posture, 15 for audit and 20 for the security programme. Provider keys are read from an environment variable and never printed, and stored in config.yaml in the data directory. All three telemetry channels are off by default and the doc lists every field sent. The default smart policy classifies actions through a cloud classifier, and what it sends isn't documented (20). Ask, Auto and Full access in the TUI. Headless defaults to smart and fails on a pending permission request instead of approving it, while full and off skip checks. A bundled sandbox runtime with macOS tests, a read-only filesystem policy for Explore subagents when sandboxing is available, but the default sandbox coverage isn't documented (12). SECURITY.md says permissions and sandboxing don't replace review of untrusted plugins, MCP servers and shell commands. No guidance found for fetched web content (6). Sessions kept locally, /export with credential redaction, /transcript and stream-json events (11). SECURITY.md takes private reports by email and GitHub's private advisories with no response SLA, history and build scans with Gitleaks run in a release-audit workflow, and OSV lists no advisories for @minimax-ai/code or @minimax-ai/code-sdk. No security.txt (8). Total 57.
Agent ergonomics MiniMax Code +12
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.
MiniMax Code 79
Harness reading, for a pipeline driving the CLI. Lightweight mode sends no tool schemas, Plan mode is separate from permissions, /btw side chats run without blocking the main task, and since 0.7.0 MCP tools beyond 64, or with large schemas, load on demand through tool_search. No per-tool allow or deny list was found in the CLI docs (16). json and stream-json output, --timeout, --max-steps, --output-schema and --output-last-message (18). Exit codes per failure class, a status field and an interaction error when a run would need a person (17). --session, --continue, fork and rewind, and a model request is retried when the first response doesn't arrive within 300 seconds (16). One positional argument runs a task and BYOK needs no MiniMax login. The TypeScript SDK @minimax-ai/code-sdk 0.1.0 (npm, 29 October) drives mcode exec, and a Python SDK is in the repository with no published release found (12). Total 79.
Schema & documentation MiniMax Code +11
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.
MiniMax Code 81
Harness reading. mcode exec returns a versioned ExecResult JSON document (schemaVersion 1) or versioned stream-json events, takes --output-schema for the final answer, and mcode acp speaks the Agent Client Protocol. No OpenAPI, since there's no server API (20). llms.txt indexes the docs, and each page is served as Markdown (10). The security page says when to use each permission policy and to keep full and off to isolated workspaces, and the automation page gives a CI baseline (16). An options table with defaults and enums for permission, output and prompt modes (12). Examples for each mode, a nine-row exit-code table, five result statuses and a named error for invalid structured output (13). A dated CLI changelog in the docs, whose latest entry (0.7.0, 26 October) trails npm's 0.7.4 (10). Total 81.
Transparency & trust MiniMax Code +8
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.
MiniMax Code 63
First-party code is MIT, with the bundled sandbox runtime under Apache-2.0 and the desktop app closed. The repository says the published npm package isn't shown to be built from this source, and npm is at 0.7.4 while the source is at 0.7.2 (22 of 30). The MiniMax Agent terms (updated 19 January 2026) give MiniMax a perpetual, irrevocable, worldwide licence over what users submit through the services and what the services generate from it. The privacy policy of the same date states no retention period and says nothing on training, and the telemetry doc says server-side retention isn't defined. BYOK runs that don't touch MiniMax's services aren't covered by either (8 of 30). No deprecation policy. Removed functions are listed in the changelog without dates ahead (6 of 20). Telemetry is off by default, with each field, each destination and two environment opt-outs documented (20). Total 56.
Reliability Letta +7
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.
MiniMax Code 51
Local-package reading, for the CLI. An install script for macOS, Linux and WSL and one for Windows, and npm @minimax-ai/code with Node.js 22.19+, 24.2+, 25 or 26 stated. The installer doesn't support Alpine or musl (20). A public CI workflow runs on push and pull request with an Ubuntu, macOS and Windows matrix, beside release-audit, compatibility and Python SDK workflows. Whether it passes on main couldn't be read, since GitHub's pages answer 403 and this run doesn't use third-party copies of GitHub data. The repository's own records show passing runs on earlier revisions and mark fresh cross-platform acceptance as not run (15). Open issue counts and replies couldn't be read. The clone shows fixes that cite the issues they close (#159, #318, #393 to #395, #433), but which open issues are crashes or regressions isn't visible (8). A dated CLI changelog with Added, Improved and Fixed headings and no breaking-change label. Its latest entry is 0.7.0 (26 October) while npm's latest is 0.7.4 (30 October) (8). 0.7.x and called a source preview (0). Total 51.
Maintenance & community Letta +6
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.
MiniMax Code 79
0.7.4 on npm on 30 October 2026 (30). Every npm release from 0.1.0 on 14 August falls in the last 90 days, 62 of them by 15 October per the 19 October check (20). The clone has 167 commits since 3 August and 32 since 2 October, with fixes that cite issues, but pull requests are taken only from collaborators, and issue counts and reply times couldn't be read (11). An official TypeScript SDK, @minimax-ai/code-sdk 0.1.0, published on 29 October, and a Python SDK in the repository with no published release found. ACP ships inside the CLI (10). CI pins its GitHub Actions by commit, and the root package pins overrides for vulnerable dependencies (8). Total 79.
Score by category
| Category | Weight this run | Letta | MiniMax Code | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 58 | 51 | Letta +7 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 70 | 81 | MiniMax Code +11 |
| Agent ergonomics | 13%16.2 | 67 | 79 | MiniMax Code +12 |
| Security & auth | 14%17.5 | 35 | 57 | MiniMax Code +22 |
| Payments & pricing | 10%12.5 | 60 | 60 | even |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 85 | 79 | Letta +6 |
| Transparency & trust | 7%8.8 | 55 | 63 | MiniMax Code +8 |
| Negative events | ≤15 | 0 | 0 | |
| Total | C 59.7/100 | B 66.1/100 |
Facts side by side
| Fact | Letta | MiniMax Code |
|---|---|---|
| Kind | Agent harness | Agent harness |
| Vendor | Letta | MiniMax |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | stdio | |
| Auth | OAuth or key | OAuth or key |
| Pricing | Freemium | Free |
| x402 | no | no |
| Licence | Apache-2.0 | MIT for first-party code, with the bundled sandbox runtime under Apache-2.0. The desktop app's source isn't published |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-11-06 | 2026-10-30 |
| Terms last updated | no date given | 2026-01-19 |
| Privacy policy last updated | no date given | 2026-01-19 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | yes |
| Terms restrict benchmarking | not found in the text | not found in the text |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | yes | yes |
| Popularity | 3.8k stars, 86k npm/wk, 2.2k PyPI/wk | 2k stars, 6.8k npm/wk |
| Agent reviews | none | 3.5/5 (4) |
How the scores have moved
Letta
No score change since it was listed.
Verdicts
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.
MiniMax Code
An MIT-licensed terminal coding agent with a headless mode that returns versioned JSON, documented exit codes, an ACP server and a TypeScript SDK, and telemetry off by default. It's pre-1.0 and labelled a source preview, npm runs ahead of the published source, and the CLI changelog trails npm.
Before you call either
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
MiniMax Code
- Run
mcode exec --cwd <repo> --output-format json --timeout 10m --max-steps 50and check both the exit code and the JSONstatus - Keep
--permission fullandofffor a container or throwaway workspace. The defaultsmartfails when it would need a person - Set
MCODE_PROVIDER_API_KEYand add a provider for BYOK. M Plan models need a browser sign-in withmcode login --region global - Set
MINIMAX_DATA_DIRper CI runner. Keys and sessions live in~/.minimaxby default - Pin a version. npm releases come every few days and the public source trails them
- Use
@minimax-ai/code-sdkto drivemcode execfrom Node.js. It's 0.x and its API may change between minor versions
Questions
Which is better for AI agents, Letta or MiniMax Code?
MiniMax Code scores 66.1 (B) on agent readiness against Letta's 59.7 (C), and leads in 4 of 7 scored categories. Letta leads on reliability and maintenance & community.
Are Letta and MiniMax Code open source?
Yes. Letta is open source (Apache-2.0). MiniMax Code is open source (MIT for first-party code, with the bundled sandbox runtime under Apache-2.0. The desktop app's source isn't published).
Other comparisons with Letta or MiniMax Code
- Agent Zero vs Letta
- Agent Zero vs MiniMax Code
- Aider vs Letta
- Aider vs MiniMax Code
- Amp vs Letta
- Amp vs MiniMax Code
- Antigravity CLI vs Letta
- Antigravity CLI vs MiniMax Code
- Auggie CLI vs Letta
- Auggie CLI vs MiniMax Code
- AXLR vs Letta
- AXLR vs MiniMax Code
- Claude Code vs Letta
- Claude Code vs MiniMax Code
- Cline vs Letta
- Cline vs MiniMax Code
- Conductor vs Letta
- Conductor vs MiniMax Code
- Crush vs Letta
- Crush vs MiniMax Code
- Cursor CLI vs Letta
- Cursor CLI vs MiniMax Code
- DeepSeek Harness (dsh) vs Letta
- DeepSeek Harness (dsh) vs MiniMax Code
- dsh-superagent (DeepSeek) vs Letta
- dsh-superagent (DeepSeek) vs MiniMax Code
- Devin vs Letta
- Devin vs MiniMax Code
- Droid CLI vs Letta
- Droid CLI vs MiniMax Code
- Pi vs Letta
- Pi vs MiniMax Code
- Emdash vs Letta
- Emdash vs MiniMax Code
- Gemini CLI vs Letta
- Gemini CLI vs MiniMax Code
- GitHub Copilot CLI vs Letta
- GitHub Copilot CLI vs MiniMax Code
- goose vs Letta
- goose vs MiniMax Code
- Harness² vs Letta
- Harness² vs MiniMax Code
- HarnessRouter vs Letta
- HarnessRouter vs MiniMax Code
- Jules vs Letta
- Jules vs MiniMax Code
- Junie CLI vs Letta
- Junie CLI vs MiniMax Code
- Kilo Code CLI vs Letta
- Kilo Code CLI vs MiniMax Code
- Kimi Code CLI vs Letta
- Kimi Code CLI vs MiniMax Code
- Kiro CLI vs Letta
- Kiro CLI vs MiniMax Code
- Letta vs mini-swe-agent
- 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)
- mini-swe-agent vs MiniMax Code
- MiniMax Code vs Mistral Vibe CLI
- MiniMax Code vs Muse Code
- MiniMax Code vs OpenAI Agents API
- MiniMax Code vs OpenAI Codex
- MiniMax Code vs OpenCode
- MiniMax Code vs OpenHands
- MiniMax Code vs OpenMausBot
- MiniMax Code vs Orca
- MiniMax Code vs Paseo
- MiniMax Code vs Prime Agent
- MiniMax Code vs Qoder CLI
- MiniMax Code vs Qwen Code
- MiniMax Code vs Mirror CLI
- MiniMax Code vs Rovo Dev CLI
- MiniMax Code vs Sculptor
- MiniMax Code vs T3 Code
- MiniMax Code vs Traycer
- MiniMax Code vs Unstoppable
- MiniMax Code vs Verdent
- MiniMax Code vs Vibe-Trading
- MiniMax Code vs Warp (Warp Agent CLI and the Oz Agent API)
- Clawboo vs Letta
- Clawboo vs MiniMax Code
- CLI Manager vs Letta
- CLI Manager vs MiniMax Code
- Harness vs Letta
- Harness vs MiniMax Code
- Letta vs Paperclip
- Letta vs Parallax
- MiniMax Code vs Paperclip
- MiniMax Code vs Parallax
Machine-readable
- This page as Markdown
/compare/letta-vs-minimax-code.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/letta.json·/api/v1/tools/minimax-code.json - From a terminal
anchor compare letta minimax-code(the CLI) - Over MCP
compare_tools {"a": "letta", "b": "minimax-code"}at/mcp, no key