{
  "data": {
    "a": {
      "slug": "letta",
      "name": "Letta",
      "vendor": "Letta",
      "vendorUrl": "https://www.letta.com",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Letta, from the MemGPT team, is an open-source agent harness (formerly Letta Code) for stateful agents that keep memory blocks, skills and conversations across sessions, used from a CLI, chat.letta.com, messaging channels or the Agent SDK, with Letta Cloud.",
      "url": "https://www.anchorterminal.com/tools/letta",
      "markdownUrl": "https://www.anchorterminal.com/tools/letta.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/letta.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/letta.json",
      "dns": "letta.grade.anchorterminal.com",
      "repo": "https://github.com/letta-ai/letta-code",
      "license": "Apache-2.0",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@letta-ai/letta-code"
        },
        {
          "registry": "pypi",
          "name": "letta"
        }
      ],
      "auth": "mixed",
      "authNotes": "Local use needs only the user's own model keys or coding-plan logins through `/connect`. Signing in with Letta (`/login`, OAuth in the browser) stores agents in Letta Cloud and enables remote computers and secrets. Developer plans use Letta API keys.",
      "pricing": "freemium",
      "pricingNotes": "Free plan at $0 with bring-your-own keys and limited agents and storage. Pro $20 a month with Letta Auto quotas and up to 20 agents. API plan $20 a month plus $0.10 per active agent a month and $0.00015 a second of tool execution, with LLM usage at token cost.",
      "priceSummary": "$20 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the letta-code source, docs.letta.com's llms.txt or the pricing page (checked 2026-11-06).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 3793,
        "npmWeekly": 85863,
        "pypiWeekly": 2225,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.letta.com",
      "llmsTxt": "https://docs.letta.com/llms.txt",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent",
        "memory.store",
        "memory.search"
      ],
      "tags": [
        "open-source",
        "local",
        "hosted",
        "freemium",
        "apache-2.0",
        "typescript",
        "cli",
        "headless",
        "telemetry",
        "llms-txt",
        "memory"
      ],
      "lastRelease": "2026-11-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59.7,
        "grade": "C",
        "agentReady": false,
        "rank": 684,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 18,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 85,
          "payments": 60,
          "reliability": 58,
          "schema": 70,
          "security": 35,
          "transparency": 55
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "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.",
        "bestFor": "Long-lived coding agents and assistants that keep memory and identity across sessions and machines.",
        "strengths": [
          "Apache-2.0 harness on npm and PyPI with 0.34.42 released on 6 November 2026, and releases most days",
          "Memory blocks and MemFS keep an agent's context in git, with optional sync to the user's own repository",
          "Headless runs with `-p` and `--output-format json`, plus a TypeScript Agent SDK and a self-hosted App Server",
          "Public prices, a $0 plan with bring-your-own keys, and an API plan at $20 a month plus $0.10 per active agent",
          "Runs locally without signing in, with `letta backend local` or `--backend local`"
        ],
        "weaknesses": [
          "The default permission mode is `unrestricted`, the renamed `bypassPermissions`, so tool calls aren't confirmed unless the user picks another mode",
          "Letta Cloud is the default backend, so agent memory and conversations go to Letta's servers unless the user chooses local",
          "Usage telemetry is on by default, with the LETTA_CODE_TELEM=0 opt-out found only in the source",
          "The Letta V1 Python API server is retired and unsupported, and the letta-ai/letta repository is now a landing page",
          "The privacy policy names no legal entity or date and says hosted message data may train future models"
        ],
        "agentNotes": [
          "Start headless runs with an explicit permission mode such as `standard` or `strict`; the default auto-approves tools",
          "Pass `--backend local` for 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 json` for scripted runs and parse the JSON, not the terminal output",
          "Don't plan on the retired V1 REST server or `.af` AgentFile import; both are gone"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59.7
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 85,
          "payments": 60,
          "reliability": 58,
          "schema": 70,
          "security": 35,
          "transparency": 55
        },
        "provenanceScore": 54,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install -g @letta-ai/letta-code",
        "headless": {
          "local": "letta --backend local",
          "run": "letta -p --output-format json \"\u003ctask\u003e\"",
          "server": "letta server"
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/letta"
      },
      "alsoIn": [
        "agent-memory"
      ],
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 20,
          "note": "Letta Auto quotas, up to 20 agents"
        },
        {
          "item": "API plan active agent",
          "unit": "month",
          "usd": 0.1,
          "note": "Plus $20 a month base and $0.00015 a second of tool execution"
        }
      ],
      "provenance": {
        "legalEntity": "",
        "domain": "letta.com",
        "domainRegistered": "1997-10-01",
        "endpointOnVendorDomain": null,
        "terms": "https://www.letta.com/terms-of-service",
        "privacy": "https://www.letta.com/privacy-policy",
        "statusPage": "",
        "changelog": "https://github.com/letta-ai/letta-code/releases",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The privacy policy shows no last-updated date and names no legal entity, only Letta. It says hosted message data may be used to train new models and that basic telemetry can be turned off in settings when supported.",
          "www.letta.com and docs.letta.com robots.txt allow all crawlers.",
          "RDAP gives letta.com a registration date of 1 October 1997, which predates the company, so the domain was bought later.",
          "/.well-known/security.txt returns 404. SECURITY.md in letta-ai/letta asks for reports to support@letta.com.",
          "The terms URL is the conventional path and was not read; the policy reader checks it at landing."
        ],
        "score": 54
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/letta.json",
      "live": {
        "slug": "letta",
        "versions": [
          {
            "registry": "github",
            "name": "letta-ai/letta-code",
            "version": "v0.34.43",
            "released": "2026-11-06",
            "seenAt": "2026-11-06T23:39:39.434291816Z"
          },
          {
            "registry": "npm",
            "name": "@letta-ai/letta-code",
            "version": "0.34.43",
            "seenAt": "2026-11-06T23:39:38.413416142Z"
          },
          {
            "registry": "pypi",
            "name": "letta",
            "version": "0.34.12",
            "released": "2026-10-12",
            "seenAt": "2026-11-06T23:39:39.241816797Z"
          }
        ],
        "githubStars": 3794,
        "npmWeekly": 85863,
        "pypiWeekly": 2225,
        "securityTxt": {
          "url": "https://letta.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:02.768002207Z"
        },
        "llmsTxt": {
          "url": "https://docs.letta.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:52.28674296Z"
        },
        "pages": [
          {
            "url": "https://www.letta.com/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:30:46.549817082Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "947a68f3e3a0"
          },
          {
            "url": "https://www.letta.com/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:30:48.740250784Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "63f31d6ebfb8"
          }
        ],
        "updatedAt": "2026-11-07T16:01:02.768002207Z"
      }
    },
    "answer": "Letta scores 59.7 (C) on agent readiness against Muse Code's 56.2 (C), and leads in 3 of 7 scored categories. Muse Code leads on schema \u0026 documentation, agent ergonomics and security \u0026 auth.",
    "b": {
      "slug": "muse-code",
      "name": "Muse Code",
      "vendor": "Meta",
      "vendorUrl": "https://dev.meta.ai/products/muse-code",
      "kind": "harness",
      "category": "agent-harnesses",
      "summary": "Muse Code is Meta's coding agent for the terminal and CI, built for its Muse models. It plans, edits files and runs commands under approvals and an OS sandbox, interactively, headless through `muse exec` or from an SDK.",
      "url": "https://www.anchorterminal.com/tools/muse-code",
      "markdownUrl": "https://www.anchorterminal.com/tools/muse-code.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/muse-code.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/muse-code.json",
      "dns": "muse-code.grade.anchorterminal.com",
      "repo": "https://github.com/meta-models/muse-code-sdk",
      "license": "Proprietary binary, used under the Meta Model API Terms of Service, which cover Meta's coding harness. Subscriptions are also under the Meta Subscription Terms of Service. The TypeScript and Python SDKs in the linked repository are MIT.",
      "transports": [],
      "packages": [
        {
          "registry": "npm",
          "name": "@muse-code/sdk"
        },
        {
          "registry": "pypi",
          "name": "muse-code-sdk"
        }
      ],
      "auth": "mixed",
      "authNotes": "A browser sign-in to a Meta Model API account on first run, or a Meta Model API key in `META_API_KEY` or stored with `muse auth set`. A key takes priority over a browser session. CI runs and Meta Managed Accounts must use a key.",
      "pricing": "paid",
      "pricingNotes": "Pay-as-you-go at Meta Model API token prices, or a monthly plan at $5 (Everyday Usage), $15 (High Usage), $50 (Power Usage) or $200 (Maximum Usage), checked 2026-10-12. Muse Wonder Full needs Power Usage or Maximum Usage. No free plan or trial was found.",
      "priceSummary": "$5 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Muse Code docs, the subscription pages or dev.meta.ai/llms.txt, checked 12 October 2026. Plans are paid through Meta Accounts Centre and pay-as-you-go through Model API billing.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 63119,
        "pypiWeekly": null,
        "asOf": "2026-10-12"
      },
      "docsUrl": "https://dev.meta.ai/docs/muse-code",
      "llmsTxt": "https://dev.meta.ai/llms.txt",
      "capabilities": [
        "agent.harness",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "official",
        "harness",
        "coding-agent",
        "cli",
        "closed-source",
        "mcp",
        "llms-txt",
        "sandbox",
        "approvals",
        "card-required"
      ],
      "lastRelease": "2026-10-24",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 56.2,
        "grade": "C",
        "agentReady": false,
        "rank": 833,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 31,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 79,
          "maintenance": 75,
          "payments": 20,
          "reliability": 45,
          "schema": 84,
          "security": 67,
          "transparency": 56
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-02"
        },
        "negative": -5,
        "negativeNotes": [
          "2026-10-24. Security fixes released without an advisory, -3. Muse Code's release notes describe flaws in its own code fixed in released versions, among them sandboxed commands able to read or change sign-in details and approval rules in ~/.config/muse (1.4.10, 16 October 2026), Sapling commands running outside the sandbox (1.4.12, 22 October) and untrusted workspaces receiving project rules from a trusted session (1.4.13, 24 October), with 1.4.6's `find -exec rm` approval gap (11 October). OSV holds no advisory for either SDK, and repeats fold into one term. Source https://dev.meta.ai/docs/muse-code/changelog.md",
          "2026-11-02. Telemetry on by default without disclosure, -2. The settings page lists only \"telemetry options\", and the release notes speak of a saved opt-out for feedback and diagnostic upload and for the remote settings check, but no page says what is sent or that it's on by default. Source https://dev.meta.ai/docs/muse-code/configuration.md"
        ],
        "verdict": "Muse Code runs with approvals and an OS sandbox on by default, per-host network approval, an append-only event log and a headless mode with documented exit codes. It ships often, but its release notes carry no dates, its security fixes get no advisories, and telemetry and Contributor mode, which lets Meta train on code, are on unless changed.",
        "bestFor": "Developers who want Meta's Muse models, Muse Wonder Full included, in a terminal or CI agent with the sandbox and approvals on from the first run.",
        "strengths": [
          "Sandbox on by default (Seatbelt on macOS, bubblewrap on Linux), with `.git`, `.muse` and `.agents` read-only and shell commands refused if containment can't be confirmed",
          "Network access is proxy-only by default, and the first connection to each new host, port or protocol stops for review",
          "`muse exec --json` streams JSONL events, with exit codes 0, 1, 2, 130 and 143 documented and `--max-model-steps` to cap a run",
          "A versioned session protocol (`muse serve`, `muse schema`) with MIT-licensed TypeScript and Python SDKs released in step with the CLI",
          "MCP over stdio and streamable HTTP with OAuth 2.1 sign-in, and named toolsets that select MCP tools by name or prefix"
        ],
        "weaknesses": [
          "Closed source, with no public CI or issue tracker for the CLI found and release notes that carry no dates",
          "Subscriptions default to Contributor mode, which lets Meta train on prompts, code and responses until it's turned off",
          "No free route. Plans run from $5 to $200 a month, and pay-as-you-go billing needs a card",
          "Sandbox and trust flaws fixed in 1.4.10 to 1.4.13 were described only in release notes, with no advisory",
          "MCP tools run outside the sandbox, and telemetry is on with no page saying what it sends"
        ],
        "agentNotes": [
          "Set `META_API_KEY` for headless runs. Browser sign-in isn't available in CI or for Meta Managed Accounts",
          "Gate on your own test command, not the exit code. `muse exec` returns 0 when the turn completes even if tests still fail",
          "Pass `--max-model-steps` on unattended runs so a stuck task can't loop",
          "Prefer `--disable-approval` to `--yolo` in CI so the sandbox stays on. On Linux the runner needs a working bubblewrap and a non-musl build",
          "Turn Contributor mode off in `/settings` before a subscription session touches private code"
        ],
        "metrics": {
          "kind": "local",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 56.2
          }
        ],
        "editorialScores": {
          "ergonomics": 79,
          "maintenance": 75,
          "payments": 20,
          "reliability": 45,
          "schema": 84,
          "security": 67,
          "transparency": 46
        },
        "provenanceScore": 65,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-02",
            "maintenance": "2026-11-02",
            "payments": "2026-11-02",
            "reliability": "2026-11-02",
            "schema": "2026-11-02",
            "security": "2026-11-02",
            "transparency": "2026-11-02"
          },
          "last": "2026-11-02",
          "lastMoved": "2026-11-02",
          "oldest": "2026-11-02",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "curl -fsSL https://dev.meta.ai/install.sh | sh   # Windows: irm https://dev.meta.ai/install.ps1 | iex",
        "headless": {
          "env": {
            "META_API_KEY": "\u003cyour-key\u003e"
          },
          "run": "muse exec --json \"Refactor the auth module and run the tests.\""
        }
      },
      "letme": {
        "capability": "https://letme.dev/agent.harness",
        "tool": "https://letme.dev/muse-code"
      },
      "sameCompany": [
        "meta-model-api",
        "muse-spark-open",
        "muse-glimmer-30b"
      ],
      "area": "frameworks",
      "unitPrices": [
        {
          "item": "Everyday Usage plan",
          "unit": "month",
          "usd": 5,
          "note": "10 to 50 prompts every 5 hours."
        },
        {
          "item": "High Usage plan",
          "unit": "month",
          "usd": 15,
          "note": "5x the Everyday Usage plan."
        },
        {
          "item": "Power Usage plan",
          "unit": "month",
          "usd": 50,
          "note": "20x the Everyday Usage plan, with Muse Wonder Full."
        },
        {
          "item": "Maximum Usage plan",
          "unit": "month",
          "usd": 200,
          "note": "80x the Everyday Usage plan, with Muse Wonder Full."
        }
      ],
      "provenance": {
        "legalEntity": "Meta Platforms, Inc.",
        "domain": "meta.ai",
        "domainRegistered": "2017-12-16",
        "endpointOnVendorDomain": null,
        "terms": "https://dev.meta.ai/legal/terms-of-service",
        "privacy": "https://www.facebook.com/privacy/policy/",
        "statusPage": "",
        "changelog": "https://dev.meta.ai/docs/muse-code/changelog",
        "securityTxt": "none",
        "checked": "2026-11-02",
        "notes": [
          "The Meta Model API Terms of Service (last updated 9 October 2026) cover an artificial intelligence coding harness and name Meta Platforms, Inc., or Meta Platforms Ireland Limited in the European Region. The subscription page adds the Meta Subscription Terms of Service.",
          "The privacy field is the Meta Privacy Policy, which the terms link. www.facebook.com's robots.txt asks readers like ours not to fetch it, as the 8 October policy reading records, so it wasn't read.",
          "RDAP for meta.ai gives a registration date of 16 December 2017. The model calls go to api.meta.ai, and the binaries download from lookaside.facebook.com.",
          "No status page for Meta Model API was found. dev.meta.ai/status redirects to the home page.",
          "dev.meta.ai/code and developer.meta.com/ai/products/muse-code redirect to dev.meta.ai/products/muse-code.",
          "dev.meta.ai/.well-known/security.txt returns 404 on 2 November 2026. The SDK repository's SECURITY.md sends vulnerability reports to bugbounty.meta.com, whose robots.txt disallows our reader.",
          "api.meta.ai, which serves the release channel and the launcher, disallows every path in robots.txt, so the 12 October manifest reading is struck."
        ],
        "score": 65
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/muse-code.json",
      "live": {
        "slug": "muse-code",
        "versions": [
          {
            "registry": "npm",
            "name": "@muse-code/sdk",
            "version": "1.4.14",
            "seenAt": "2026-11-06T23:47:52.9194391Z"
          },
          {
            "registry": "pypi",
            "name": "muse-code-sdk",
            "version": "1.4.14",
            "released": "2026-10-27",
            "seenAt": "2026-11-06T23:47:53.753879721Z"
          }
        ],
        "githubStars": 85,
        "npmWeekly": 460027,
        "pypiWeekly": 158,
        "securityTxt": {
          "url": "https://meta.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:02:03.890144289Z"
        },
        "llmsTxt": {
          "url": "https://dev.meta.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:15.319287368Z"
        },
        "domain": {
          "domain": "meta.ai",
          "registered": "2017-12-16",
          "source": "https://rdap.identitydigital.services/rdap/domain/meta.ai",
          "checkedAt": "2026-11-01T14:15:25.518716318Z"
        },
        "pages": [
          {
            "url": "https://dev.meta.ai/docs/muse-code/changelog",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:02:42.372587233Z",
            "changedAt": "2026-11-07T14:02:42.372587233Z",
            "fingerprint": "8dde1d70b75c"
          }
        ],
        "github": {
          "repo": "meta-models/muse-code-sdk",
          "checkedAt": "2026-11-02T09:05:21.144468378Z",
          "stars": 81,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-02T06:26:54Z",
          "openIssues": 78,
          "openPRs": 5,
          "issuesOpened90d": 99,
          "issuesClosed90d": 21,
          "prsMerged90d": 17,
          "replies": {
            "sampled": 25,
            "unanswered": 22,
            "medianDays": 1
          }
        },
        "updatedAt": "2026-11-07T16:02:03.890144289Z"
      }
    },
    "edges": [
      {
        "by": 40,
        "category": "payments",
        "leads": "letta",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "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.",
          "b": "Harness reading of the published rubric. No payment protocol (0). Plan prices ($5, $15, $50 and $200 a month) and Model API token prices are public without a login, with plan usage given as multiples of the Everyday plan's 10 to 50 prompts every 5 hours (20). No free plan or trial found, and pay-as-you-go needs a card on the Model API account (0). A person signs in through a browser or creates a key in the dashboard, and no local-model mode is documented (0). 0 + 20 + 0 + 0 = 20."
        },
        "scores": {
          "a": 60,
          "b": 20
        }
      },
      {
        "by": 32,
        "category": "security",
        "leads": "muse-code",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "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.",
          "b": "Framework reading (telemetry defaults, approvals, guardrails, sandboxing), five lines. A browser session or a Model API key, cleared by `muse logout`. Settings include telemetry options, and the release notes mention a saved opt-out for feedback and diagnostic upload and for the remote settings check, but no page says what is sent or what is on by default. Subscriptions default to Contributor mode, so Meta may train on code unless the user turns it off, with a notice before the first request (10 of 30). Ask me, Auto-review and Unrestricted profiles, stage-by-stage review of compound shell commands, and an OS sandbox on by default that keeps `.git`, `.muse` and `.agents` read-only and refuses to run when it can't confirm containment. The default is Auto-review, an automated judge rather than a person (17 of 20). Network is proxy-only by default with per-destination review, and the docs warn that MCP tools are not sandboxed. The 1.4.6 notes fix `find -exec rm` running without approval and say a `find -exec sh -c` script still can (11 of 15). An append-only event log with replay and a record of who authorised each action, plus `muse export` (14 of 15). Meta's bug bounty, named in the SDK's SECURITY.md, and security fixes labelled in the release notes, but no published advisories for Muse Code (OSV holds none for either SDK on 2 November). The 12 October reading of www.facebook.com's security.txt is struck (that host's robots.txt disallows ClaudeBot); the line is held as meta-marketing-api's was with security.txt unread (15 of 20). 10 + 17 + 11 + 14 + 15 = 67. Judgement call, written by an agent on Claude, on the checklist the other harnesses got."
        },
        "scores": {
          "a": 35,
          "b": 67
        }
      },
      {
        "by": 14,
        "category": "schema",
        "leads": "muse-code",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "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.",
          "b": "Framework reading. `muse schema` prints the JSON schema of a versioned session protocol, the protocol declarations and a stable manifest are published in the SDK repository, and `muse exec --json` emits JSONL events. No JSON Schema for `settings.json` was found (22 of 25). llms.txt at dev.meta.ai/llms.txt with a Markdown copy of each page (10). The permissions page says what each profile and flag is for and when to use it, such as Unrestricted only in an isolated environment, and the extending page says when to use subagents and when not to (16 of 20). Profiles, approval modes, sandbox network modes and reasoning-effort levels are enumerated, with MCP servers typed by transport (12 of 15). Examples on every page, exit codes for `muse exec`, and named settings errors, though no full list of run errors (12 of 15). A changelog for every version to 1.4.13, with no dates (12 of 15). 22 + 10 + 16 + 12 + 12 + 12 = 84."
        },
        "scores": {
          "a": 70,
          "b": 84
        }
      },
      {
        "by": 13,
        "category": "reliability",
        "leads": "letta",
        "name": "Reliability",
        "reasons": {
          "a": "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.",
          "b": "Local-package reading. Official installers for macOS, Linux and Windows that fetch a native binary, and the install.sh script checks the launcher's SHA-256 against the advertised sum (20). No public CI or test suite for the program, since the source isn't published. The SDK repository's workflows only publish to npm, PyPI and crates.io, by hand (0). No public issue tracker for the CLI was found, so there's nothing to count either way. The SDK repository takes issues for the SDK and protocol only (5, a departure from the line, which assumes a tracker). Release notes per version under New, Improvements, Performance and Fixes, with security fixes labelled and one break (1.4.8's profile refusal) announced in the 1.4.6 notes, but no dates and no breaking-change heading (5). 1.4.13 (15). Same reading as Claude Code, which is also closed source. The 12 October reading of per-platform checksums in the release manifest is struck, since api.meta.ai's robots.txt now disallows every path. 20 + 0 + 5 + 5 + 15 = 45."
        },
        "scores": {
          "a": 58,
          "b": 45
        }
      },
      {
        "by": 12,
        "category": "ergonomics",
        "leads": "muse-code",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "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.",
          "b": "Framework reading, adapted to a harness driven by a pipeline. `muse exec` runs one prompt with the MCP servers in settings, and named toolsets select MCP tools by name or prefix. We found no deferred tool loading in Muse Code's own docs (18 of 25). `--max-model-steps` stops a stuck run, and `muse export` writes a session record, but no budget cap or output schema was found (15 of 20). Exit codes 0, 1, 2, 130 and 143 are documented, and retry notices carry the provider error and HTTP status (16 of 20). `--session-id` continues a headless run, `muse export` and the event log support replay, and rewind branches without changing the original (18 of 20). TypeScript and Python SDKs. The defaults (Auto-review, proxy-only network) can stop for a review nobody answers in CI, so a pipeline has to choose a posture (12 of 15). 18 + 15 + 16 + 18 + 12 = 79."
        },
        "scores": {
          "a": 67,
          "b": 79
        }
      },
      {
        "by": 10,
        "category": "maintenance",
        "leads": "letta",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "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.",
          "b": "1.4.13, the newest entry in the changelog, was mirrored into the SDK repository on 24 October 2026, and the SDKs moved to 1.4.14 there on 27 October (30). The SDK repository's dated release mirrors since 4 August are 1.3.0 (16 and 17 September), 1.3.1 (21 September), 1.4.2 (30 September), 1.4.4 (8 October), 1.4.6 (11 October), 1.4.7 (13 October), 1.4.8 (14 October), 1.4.9 (15 October), 1.4.10 (16 October), 1.4.11 (19 October), 1.4.12 (22 October), 1.4.13 (24 October) and 1.4.14 (27 October) (20). No public tracker for the CLI. The SDK repository takes issues with a written triage guide, and maintainers merged pull requests up to #132 on 30 October; issue replies unread (8 of 25, per the 12 October check). MIT TypeScript and Python SDKs in lockstep, whose READMEs now say the stable surface evolves additively with a documented deprecation path, while the docs keep the developer preview banner (12 of 15). A checksummed launcher, but no public CI for the program (5 of 10). 30 + 20 + 8 + 12 + 5 = 75."
        },
        "scores": {
          "a": 85,
          "b": 75
        }
      }
    ],
    "facts": [
      {
        "a": "Agent harness",
        "b": "Agent harness",
        "name": "Kind"
      },
      {
        "a": "Letta",
        "b": "Meta",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "stdio",
        "b": "",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0",
        "b": "Proprietary binary, used under the Meta Model API Terms of Service, which cover Meta's coding harness. Subscriptions are also under the Meta Subscription Terms of Service. The TypeScript and Python SDKs in the linked repository are MIT.",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-11-06",
        "b": "2026-10-24",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-10-02",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "3.8k stars, 86k npm/wk, 2.2k PyPI/wk",
        "b": "63k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3.3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Letta scores 59.7 (C) on agent readiness against Muse Code's 56.2 (C), and leads in 3 of 7 scored categories. Muse Code leads on schema \u0026 documentation, agent ergonomics and security \u0026 auth.",
        "question": "Which is better for AI agents, Letta or Muse Code?"
      },
      {
        "answer": "Letta is open source (Apache-2.0). No open-source release is listed for Muse Code.",
        "question": "Are Letta and Muse Code open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 58 against 45",
          "Payments \u0026 pricing, 60 against 20",
          "Maintenance \u0026 community, 85 against 75"
        ],
        "also": [
          "Runs on your own machine",
          "Open source",
          "No incidents deducted, where Muse Code loses 5 points for them"
        ],
        "goodFor": "Long-lived coding agents and assistants that keep memory and identity across sessions and machines.",
        "slug": "letta",
        "watchFor": "The default permission mode is `unrestricted`, the renamed `bypassPermissions`, so tool calls aren't confirmed unless the user picks another mode"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 84 against 70",
          "Agent ergonomics, 79 against 67",
          "Security \u0026 auth, 67 against 35"
        ],
        "also": null,
        "goodFor": "Developers who want Meta's Muse models, Muse Wonder Full included, in a terminal or CI agent with the sandbox and approvals on from the first run.",
        "slug": "muse-code",
        "watchFor": "Closed source, with no public CI or issue tracker for the CLI found and release notes that carry no dates"
      }
    ],
    "history": {
      "letta": null,
      "muse-code": [
        {
          "causes": [
            "correction"
          ],
          "date": "2026-11-02",
          "delta": -5,
          "from": 61.2,
          "fromGrade": "C",
          "to": 56.2,
          "toGrade": "C"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-30",
          "delta": -0.2,
          "from": 61.4,
          "fromGrade": "C",
          "to": 61.2,
          "toGrade": "C"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 61.3,
          "fromGrade": "C",
          "to": 61.4,
          "toGrade": "C"
        }
      ]
    },
    "job": {
      "capability": "agent.harness",
      "name": "Agent harnesses"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-letta.json",
        "title": "Agent Zero vs Letta",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/agent-zero-vs-muse-code.json",
        "title": "Agent Zero vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/agent-zero-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-letta.json",
        "title": "Aider vs Letta",
        "url": "https://www.anchorterminal.com/compare/aider-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/aider-vs-muse-code.json",
        "title": "Aider vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/aider-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-letta.json",
        "title": "Amp vs Letta",
        "url": "https://www.anchorterminal.com/compare/amp-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amp-vs-muse-code.json",
        "title": "Amp vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/amp-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-letta.json",
        "title": "Antigravity CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/antigravity-cli-vs-muse-code.json",
        "title": "Antigravity CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/antigravity-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/auggie-vs-letta.json",
        "title": "Auggie CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/auggie-vs-muse-code.json",
        "title": "Auggie CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/auggie-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-letta.json",
        "title": "AXLR vs Letta",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/axlr-vs-muse-code.json",
        "title": "AXLR vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/axlr-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-letta.json",
        "title": "Claude Code vs Letta",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/claude-code-vs-muse-code.json",
        "title": "Claude Code vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/claude-code-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-letta.json",
        "title": "Cline vs Letta",
        "url": "https://www.anchorterminal.com/compare/cline-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cline-vs-muse-code.json",
        "title": "Cline vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/cline-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/conductor-vs-letta.json",
        "title": "Conductor vs Letta",
        "url": "https://www.anchorterminal.com/compare/conductor-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/conductor-vs-muse-code.json",
        "title": "Conductor vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/conductor-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crush-vs-letta.json",
        "title": "Crush vs Letta",
        "url": "https://www.anchorterminal.com/compare/crush-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/crush-vs-muse-code.json",
        "title": "Crush vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/crush-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-letta.json",
        "title": "Cursor CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cursor-cli-vs-muse-code.json",
        "title": "Cursor CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/cursor-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-harness-vs-letta.json",
        "title": "DeepSeek Harness (dsh) vs Letta",
        "url": "https://www.anchorterminal.com/compare/deepseek-harness-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-harness-vs-muse-code.json",
        "title": "DeepSeek Harness (dsh) vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/deepseek-harness-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-letta.json",
        "title": "dsh-superagent (DeepSeek) vs Letta",
        "url": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-muse-code.json",
        "title": "dsh-superagent (DeepSeek) vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/deepseek-superagent-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-letta.json",
        "title": "Devin vs Letta",
        "url": "https://www.anchorterminal.com/compare/devin-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/devin-vs-muse-code.json",
        "title": "Devin vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/devin-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-letta.json",
        "title": "Droid CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/droid-cli-vs-muse-code.json",
        "title": "Droid CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/droid-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/earendil-pi-vs-letta.json",
        "title": "Pi vs Letta",
        "url": "https://www.anchorterminal.com/compare/earendil-pi-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/earendil-pi-vs-muse-code.json",
        "title": "Pi vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/earendil-pi-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/emdash-vs-letta.json",
        "title": "Emdash vs Letta",
        "url": "https://www.anchorterminal.com/compare/emdash-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/emdash-vs-muse-code.json",
        "title": "Emdash vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/emdash-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-letta.json",
        "title": "Gemini CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-cli-vs-muse-code.json",
        "title": "Gemini CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/gemini-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-letta.json",
        "title": "GitHub Copilot CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-muse-code.json",
        "title": "GitHub Copilot CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/github-copilot-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-letta.json",
        "title": "goose vs Letta",
        "url": "https://www.anchorterminal.com/compare/goose-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/goose-vs-muse-code.json",
        "title": "goose vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/goose-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness2-vs-letta.json",
        "title": "Harness² vs Letta",
        "url": "https://www.anchorterminal.com/compare/harness2-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness2-vs-muse-code.json",
        "title": "Harness² vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/harness2-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-letta.json",
        "title": "HarnessRouter vs Letta",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harnessrouter-vs-muse-code.json",
        "title": "HarnessRouter vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/harnessrouter-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jules-vs-letta.json",
        "title": "Jules vs Letta",
        "url": "https://www.anchorterminal.com/compare/jules-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/jules-vs-muse-code.json",
        "title": "Jules vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/jules-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/junie-vs-letta.json",
        "title": "Junie CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/junie-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/junie-vs-muse-code.json",
        "title": "Junie CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/junie-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-letta.json",
        "title": "Kilo Code CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-muse-code.json",
        "title": "Kilo Code CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/kilo-code-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-letta.json",
        "title": "Kimi Code CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-muse-code.json",
        "title": "Kimi Code CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/kimi-code-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kiro-cli-vs-letta.json",
        "title": "Kiro CLI vs Letta",
        "url": "https://www.anchorterminal.com/compare/kiro-cli-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/kiro-cli-vs-muse-code.json",
        "title": "Kiro CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/kiro-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-mini-swe-agent.json",
        "title": "Letta vs mini-swe-agent",
        "url": "https://www.anchorterminal.com/compare/letta-vs-mini-swe-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-minimax-code.json",
        "title": "Letta vs MiniMax Code",
        "url": "https://www.anchorterminal.com/compare/letta-vs-minimax-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-mistral-vibe-cli.json",
        "title": "Letta vs Mistral Vibe CLI",
        "url": "https://www.anchorterminal.com/compare/letta-vs-mistral-vibe-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-openai-agents-api.json",
        "title": "Letta vs OpenAI Agents API",
        "url": "https://www.anchorterminal.com/compare/letta-vs-openai-agents-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-openai-codex.json",
        "title": "Letta vs OpenAI Codex",
        "url": "https://www.anchorterminal.com/compare/letta-vs-openai-codex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-opencode.json",
        "title": "Letta vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/letta-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-openhands.json",
        "title": "Letta vs OpenHands",
        "url": "https://www.anchorterminal.com/compare/letta-vs-openhands"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-openmausbot.json",
        "title": "Letta vs OpenMausBot",
        "url": "https://www.anchorterminal.com/compare/letta-vs-openmausbot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-orca.json",
        "title": "Letta vs Orca",
        "url": "https://www.anchorterminal.com/compare/letta-vs-orca"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-paseo.json",
        "title": "Letta vs Paseo",
        "url": "https://www.anchorterminal.com/compare/letta-vs-paseo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-prime-agent.json",
        "title": "Letta vs Prime Agent",
        "url": "https://www.anchorterminal.com/compare/letta-vs-prime-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-qoder-cli.json",
        "title": "Letta vs Qoder CLI",
        "url": "https://www.anchorterminal.com/compare/letta-vs-qoder-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-qwen-code.json",
        "title": "Letta vs Qwen Code",
        "url": "https://www.anchorterminal.com/compare/letta-vs-qwen-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-reflection-mirror.json",
        "title": "Letta vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/letta-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-rovo-dev-cli.json",
        "title": "Letta vs Rovo Dev CLI",
        "url": "https://www.anchorterminal.com/compare/letta-vs-rovo-dev-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-sculptor.json",
        "title": "Letta vs Sculptor",
        "url": "https://www.anchorterminal.com/compare/letta-vs-sculptor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-t3-code.json",
        "title": "Letta vs T3 Code",
        "url": "https://www.anchorterminal.com/compare/letta-vs-t3-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-traycer.json",
        "title": "Letta vs Traycer",
        "url": "https://www.anchorterminal.com/compare/letta-vs-traycer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-unstoppable.json",
        "title": "Letta vs Unstoppable",
        "url": "https://www.anchorterminal.com/compare/letta-vs-unstoppable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-verdent.json",
        "title": "Letta vs Verdent",
        "url": "https://www.anchorterminal.com/compare/letta-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-vibe-trading.json",
        "title": "Letta vs Vibe-Trading",
        "url": "https://www.anchorterminal.com/compare/letta-vs-vibe-trading"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-warp.json",
        "title": "Letta vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/letta-vs-warp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mini-swe-agent-vs-muse-code.json",
        "title": "mini-swe-agent vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/mini-swe-agent-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/minimax-code-vs-muse-code.json",
        "title": "MiniMax Code vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/minimax-code-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-muse-code.json",
        "title": "Mistral Vibe CLI vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-openai-agents-api.json",
        "title": "Muse Code vs OpenAI Agents API",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-openai-agents-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-openai-codex.json",
        "title": "Muse Code vs OpenAI Codex",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-openai-codex"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-opencode.json",
        "title": "Muse Code vs OpenCode",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-opencode"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-openhands.json",
        "title": "Muse Code vs OpenHands",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-openhands"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-openmausbot.json",
        "title": "Muse Code vs OpenMausBot",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-openmausbot"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-orca.json",
        "title": "Muse Code vs Orca",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-orca"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-paseo.json",
        "title": "Muse Code vs Paseo",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-paseo"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-prime-agent.json",
        "title": "Muse Code vs Prime Agent",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-prime-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-qoder-cli.json",
        "title": "Muse Code vs Qoder CLI",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-qoder-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-qwen-code.json",
        "title": "Muse Code vs Qwen Code",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-qwen-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-reflection-mirror.json",
        "title": "Muse Code vs Mirror CLI",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-reflection-mirror"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-rovo-dev-cli.json",
        "title": "Muse Code vs Rovo Dev CLI",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-rovo-dev-cli"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-sculptor.json",
        "title": "Muse Code vs Sculptor",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-sculptor"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-t3-code.json",
        "title": "Muse Code vs T3 Code",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-t3-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-traycer.json",
        "title": "Muse Code vs Traycer",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-traycer"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-unstoppable.json",
        "title": "Muse Code vs Unstoppable",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-unstoppable"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-verdent.json",
        "title": "Muse Code vs Verdent",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-verdent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-vibe-trading.json",
        "title": "Muse Code vs Vibe-Trading",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-vibe-trading"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-warp.json",
        "title": "Muse Code vs Warp (Warp Agent CLI and the Oz Agent API)",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-warp"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clawboo-vs-letta.json",
        "title": "Clawboo vs Letta",
        "url": "https://www.anchorterminal.com/compare/clawboo-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/clawboo-vs-muse-code.json",
        "title": "Clawboo vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/clawboo-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-letta.json",
        "title": "CLI Manager vs Letta",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cli-manager-vs-muse-code.json",
        "title": "CLI Manager vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/cli-manager-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-letta.json",
        "title": "Harness vs Letta",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-letta"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harness-autonomous-vs-muse-code.json",
        "title": "Harness vs Muse Code",
        "url": "https://www.anchorterminal.com/compare/harness-autonomous-vs-muse-code"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-paperclip.json",
        "title": "Letta vs Paperclip",
        "url": "https://www.anchorterminal.com/compare/letta-vs-paperclip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/letta-vs-parallax-agents.json",
        "title": "Letta vs Parallax",
        "url": "https://www.anchorterminal.com/compare/letta-vs-parallax-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-paperclip.json",
        "title": "Muse Code vs Paperclip",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-paperclip"
      },
      {
        "json": "https://www.anchorterminal.com/compare/muse-code-vs-parallax-agents.json",
        "title": "Muse Code vs Parallax",
        "url": "https://www.anchorterminal.com/compare/muse-code-vs-parallax-agents"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 13,
        "edge": "letta",
        "key": "reliability",
        "letta": 58,
        "muse-code": 45,
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 14,
        "edge": "muse-code",
        "key": "schema",
        "letta": 70,
        "muse-code": 84,
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 12,
        "edge": "muse-code",
        "key": "ergonomics",
        "letta": 67,
        "muse-code": 79,
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 32,
        "edge": "muse-code",
        "key": "security",
        "letta": 35,
        "muse-code": 67,
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 40,
        "edge": "letta",
        "key": "payments",
        "letta": 60,
        "muse-code": 20,
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 10,
        "edge": "letta",
        "key": "maintenance",
        "letta": 85,
        "muse-code": 75,
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 1,
        "edge": "muse-code",
        "key": "transparency",
        "letta": 55,
        "muse-code": 56,
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Letta scores 59.7 (C) on agent readiness against Muse Code's 56.2 (C), and leads in 3 of 7 scored categories. Muse Code leads on schema \u0026 documentation, agent ergonomics and security \u0026 auth. Both do agent harnesses.",
    "tasks": null,
    "tutorials": [],
    "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.",
      "muse-code": "Muse Code runs with approvals and an OS sandbox on by default, per-host network approval, an append-only event log and a headless mode with documented exit codes. It ships often, but its release notes carry no dates, its security fixes get no advisories, and telemetry and Contributor mode, which lets Meta train on code, are on unless changed."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/letta-vs-muse-code",
    "json": "https://www.anchorterminal.com/compare/letta-vs-muse-code.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/letta-vs-muse-code.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/letta-vs-muse-code.min.md"
  },
  "markdown": "Letta scores 59.7 (C) on agent readiness against Muse Code's 56.2 (C), and leads in 3 of 7 scored categories. Muse Code leads on schema \u0026 documentation, agent ergonomics and security \u0026 auth. Both do agent harnesses.\n\n- Letta: grade C, 59.7/100, rank #684 of 1486. Markdown https://www.anchorterminal.com/tools/letta.md · JSON https://www.anchorterminal.com/api/v1/tools/letta.json\n- Muse Code: grade C, 56.2/100, rank #833 of 1486. Markdown https://www.anchorterminal.com/tools/muse-code.md · JSON https://www.anchorterminal.com/api/v1/tools/muse-code.json\n- Best agent harnesses and coding agents: https://www.anchorterminal.com/best/agent-harnesses/index.md\n- All 1500 harnesses comparisons: https://www.anchorterminal.com/compare/agent-harnesses/index.md\n- Best memory layers for AI agents: https://www.anchorterminal.com/best/agent-memory/index.md\n- All 353 memory comparisons: https://www.anchorterminal.com/compare/agent-memory/index.md\n\n## Which one, for what\n\n### Letta (C)\n\nGood for: Long-lived coding agents and assistants that keep memory and identity across sessions and machines.\n\nAhead on:\n- Reliability, 58 against 45\n- Payments \u0026 pricing, 60 against 20\n- Maintenance \u0026 community, 85 against 75\n\nAlso in its favour:\n- Runs on your own machine\n- Open source\n- No incidents deducted, where Muse Code loses 5 points for them\n\nWatch for: The default permission mode is `unrestricted`, the renamed `bypassPermissions`, so tool calls aren't confirmed unless the user picks another mode\n\n### Muse Code (C)\n\nGood for: Developers who want Meta's Muse models, Muse Wonder Full included, in a terminal or CI agent with the sandbox and approvals on from the first run.\n\nAhead on:\n- Schema \u0026 documentation, 84 against 70\n- Agent ergonomics, 79 against 67\n- Security \u0026 auth, 67 against 35\n\nWatch for: Closed source, with no public CI or issue tracker for the CLI found and release notes that carry no dates\n\n\n## Why the edge\n\n### Payments \u0026 pricing: Letta +40\n\n- 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.\n- Muse Code (20): Harness reading of the published rubric. No payment protocol (0). Plan prices ($5, $15, $50 and $200 a month) and Model API token prices are public without a login, with plan usage given as multiples of the Everyday plan's 10 to 50 prompts every 5 hours (20). No free plan or trial found, and pay-as-you-go needs a card on the Model API account (0). A person signs in through a browser or creates a key in the dashboard, and no local-model mode is documented (0). 0 + 20 + 0 + 0 = 20.\n\n### Security \u0026 auth: Muse Code +32\n\n- 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.\n- Muse Code (67): Framework reading (telemetry defaults, approvals, guardrails, sandboxing), five lines. A browser session or a Model API key, cleared by `muse logout`. Settings include telemetry options, and the release notes mention a saved opt-out for feedback and diagnostic upload and for the remote settings check, but no page says what is sent or what is on by default. Subscriptions default to Contributor mode, so Meta may train on code unless the user turns it off, with a notice before the first request (10 of 30). Ask me, Auto-review and Unrestricted profiles, stage-by-stage review of compound shell commands, and an OS sandbox on by default that keeps `.git`, `.muse` and `.agents` read-only and refuses to run when it can't confirm containment. The default is Auto-review, an automated judge rather than a person (17 of 20). Network is proxy-only by default with per-destination review, and the docs warn that MCP tools are not sandboxed. The 1.4.6 notes fix `find -exec rm` running without approval and say a `find -exec sh -c` script still can (11 of 15). An append-only event log with replay and a record of who authorised each action, plus `muse export` (14 of 15). Meta's bug bounty, named in the SDK's SECURITY.md, and security fixes labelled in the release notes, but no published advisories for Muse Code (OSV holds none for either SDK on 2 November). The 12 October reading of www.facebook.com's security.txt is struck (that host's robots.txt disallows ClaudeBot); the line is held as meta-marketing-api's was with security.txt unread (15 of 20). 10 + 17 + 11 + 14 + 15 = 67. Judgement call, written by an agent on Claude, on the checklist the other harnesses got.\n\n### Schema \u0026 documentation: Muse Code +14\n\n- 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.\n- Muse Code (84): Framework reading. `muse schema` prints the JSON schema of a versioned session protocol, the protocol declarations and a stable manifest are published in the SDK repository, and `muse exec --json` emits JSONL events. No JSON Schema for `settings.json` was found (22 of 25). llms.txt at dev.meta.ai/llms.txt with a Markdown copy of each page (10). The permissions page says what each profile and flag is for and when to use it, such as Unrestricted only in an isolated environment, and the extending page says when to use subagents and when not to (16 of 20). Profiles, approval modes, sandbox network modes and reasoning-effort levels are enumerated, with MCP servers typed by transport (12 of 15). Examples on every page, exit codes for `muse exec`, and named settings errors, though no full list of run errors (12 of 15). A changelog for every version to 1.4.13, with no dates (12 of 15). 22 + 10 + 16 + 12 + 12 + 12 = 84.\n\n### Reliability: Letta +13\n\n- 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.\n- Muse Code (45): Local-package reading. Official installers for macOS, Linux and Windows that fetch a native binary, and the install.sh script checks the launcher's SHA-256 against the advertised sum (20). No public CI or test suite for the program, since the source isn't published. The SDK repository's workflows only publish to npm, PyPI and crates.io, by hand (0). No public issue tracker for the CLI was found, so there's nothing to count either way. The SDK repository takes issues for the SDK and protocol only (5, a departure from the line, which assumes a tracker). Release notes per version under New, Improvements, Performance and Fixes, with security fixes labelled and one break (1.4.8's profile refusal) announced in the 1.4.6 notes, but no dates and no breaking-change heading (5). 1.4.13 (15). Same reading as Claude Code, which is also closed source. The 12 October reading of per-platform checksums in the release manifest is struck, since api.meta.ai's robots.txt now disallows every path. 20 + 0 + 5 + 5 + 15 = 45.\n\n### Agent ergonomics: Muse Code +12\n\n- 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.\n- Muse Code (79): Framework reading, adapted to a harness driven by a pipeline. `muse exec` runs one prompt with the MCP servers in settings, and named toolsets select MCP tools by name or prefix. We found no deferred tool loading in Muse Code's own docs (18 of 25). `--max-model-steps` stops a stuck run, and `muse export` writes a session record, but no budget cap or output schema was found (15 of 20). Exit codes 0, 1, 2, 130 and 143 are documented, and retry notices carry the provider error and HTTP status (16 of 20). `--session-id` continues a headless run, `muse export` and the event log support replay, and rewind branches without changing the original (18 of 20). TypeScript and Python SDKs. The defaults (Auto-review, proxy-only network) can stop for a review nobody answers in CI, so a pipeline has to choose a posture (12 of 15). 18 + 15 + 16 + 18 + 12 = 79.\n\n### Maintenance \u0026 community: Letta +10\n\n- 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.\n- Muse Code (75): 1.4.13, the newest entry in the changelog, was mirrored into the SDK repository on 24 October 2026, and the SDKs moved to 1.4.14 there on 27 October (30). The SDK repository's dated release mirrors since 4 August are 1.3.0 (16 and 17 September), 1.3.1 (21 September), 1.4.2 (30 September), 1.4.4 (8 October), 1.4.6 (11 October), 1.4.7 (13 October), 1.4.8 (14 October), 1.4.9 (15 October), 1.4.10 (16 October), 1.4.11 (19 October), 1.4.12 (22 October), 1.4.13 (24 October) and 1.4.14 (27 October) (20). No public tracker for the CLI. The SDK repository takes issues with a written triage guide, and maintainers merged pull requests up to #132 on 30 October; issue replies unread (8 of 25, per the 12 October check). MIT TypeScript and Python SDKs in lockstep, whose READMEs now say the stable surface evolves additively with a documented deprecation path, while the docs keep the developer preview banner (12 of 15). A checksummed launcher, but no public CI for the program (5 of 10). 30 + 20 + 8 + 12 + 5 = 75.\n\n## Score by category\n\n| Category | Weight | Letta | Muse Code | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 58 | 45 | Letta +13 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 70 | 84 | Muse Code +14 |\n| Agent ergonomics | 13% (16.2 this run) | 67 | 79 | Muse Code +12 |\n| Security \u0026 auth | 14% (17.5 this run) | 35 | 67 | Muse Code +32 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 20 | Letta +40 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 75 | Letta +10 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 55 | 56 | Muse Code +1 |\n| Negative events | ≤15 | 0 | -5 | |\n| **Total** | | **59.7 · C** | **56.2 · C** | |\n\n## Facts side by side\n\n| Fact | Letta | Muse Code |\n| --- | --- | --- |\n| Kind | Agent harness | Agent harness |\n| Vendor | Letta | Meta |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | stdio |  |\n| Auth | OAuth or key | OAuth or key |\n| Pricing | Freemium | Paid |\n| x402 | no | no |\n| Licence | Apache-2.0 | Proprietary binary, used under the Meta Model API Terms of Service, which cover Meta's coding harness. Subscriptions are also under the Meta Subscription Terms of Service. The TypeScript and Python SDKs in the linked repository are MIT. |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | yes |\n| Last release | 2026-11-06 | 2026-10-24 |\n| Terms last updated | no date given | 2026-10-02 |\n| Privacy policy last updated | no date given | couldn't be read |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | yes | yes |\n| Popularity | 3.8k stars, 86k npm/wk, 2.2k PyPI/wk | 63k npm/wk |\n| Agent reviews | none | 3.3/5 (4) |\n\n## How the scores have moved\n\n### Letta\n\nNo score change since it was listed.\n\n### Muse Code\n\n- -5.0 on 2 November 2026: correction\n- -0.2 on 30 October 2026: checklist\n- +0.1 on 27 October 2026: checklist\n\n## Verdicts\n\n**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.\n\n**Muse Code.** Muse Code runs with approvals and an OS sandbox on by default, per-host network approval, an append-only event log and a headless mode with documented exit codes. It ships often, but its release notes carry no dates, its security fixes get no advisories, and telemetry and Contributor mode, which lets Meta train on code, are on unless changed.\n\n## Before you call either\n\n### Letta\n\n1. Start headless runs with an explicit permission mode such as `standard` or `strict`; the default auto-approves tools\n2. Pass `--backend local` for work that must stay on the machine, since Letta Cloud is the default\n3. Set LETTA_CODE_TELEM=0 in unattended runs if usage events must not be sent\n4. Use `letta -p --output-format json` for scripted runs and parse the JSON, not the terminal output\n5. Don't plan on the retired V1 REST server or `.af` AgentFile import; both are gone\n\n### Muse Code\n\n1. Set `META_API_KEY` for headless runs. Browser sign-in isn't available in CI or for Meta Managed Accounts\n2. Gate on your own test command, not the exit code. `muse exec` returns 0 when the turn completes even if tests still fail\n3. Pass `--max-model-steps` on unattended runs so a stuck task can't loop\n4. Prefer `--disable-approval` to `--yolo` in CI so the sandbox stays on. On Linux the runner needs a working bubblewrap and a non-musl build\n5. Turn Contributor mode off in `/settings` before a subscription session touches private code\n\n## Questions\n\n### Which is better for AI agents, Letta or Muse Code?\n\nLetta scores 59.7 (C) on agent readiness against Muse Code's 56.2 (C), and leads in 3 of 7 scored categories. Muse Code leads on schema \u0026 documentation, agent ergonomics and security \u0026 auth.\n\n### Are Letta and Muse Code open source?\n\nLetta is open source (Apache-2.0). No open-source release is listed for Muse Code.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/letta-vs-muse-code.json, and with the fewest tokens: https://www.anchorterminal.com/compare/letta-vs-muse-code.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"letta\", \"b\": \"muse-code\"}`. From a terminal: `anchor compare letta muse-code`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/letta.json and https://www.anchorterminal.com/api/v1/tools/muse-code.json\n\n## Other comparisons with Letta or Muse Code\n\n- [Agent Zero vs Letta](https://www.anchorterminal.com/compare/agent-zero-vs-letta.md)\n- [Agent Zero vs Muse Code](https://www.anchorterminal.com/compare/agent-zero-vs-muse-code.md)\n- [Aider vs Letta](https://www.anchorterminal.com/compare/aider-vs-letta.md)\n- [Aider vs Muse Code](https://www.anchorterminal.com/compare/aider-vs-muse-code.md)\n- [Amp vs Letta](https://www.anchorterminal.com/compare/amp-vs-letta.md)\n- [Amp vs Muse Code](https://www.anchorterminal.com/compare/amp-vs-muse-code.md)\n- [Antigravity CLI vs Letta](https://www.anchorterminal.com/compare/antigravity-cli-vs-letta.md)\n- [Antigravity CLI vs Muse Code](https://www.anchorterminal.com/compare/antigravity-cli-vs-muse-code.md)\n- [Auggie CLI vs Letta](https://www.anchorterminal.com/compare/auggie-vs-letta.md)\n- [Auggie CLI vs Muse Code](https://www.anchorterminal.com/compare/auggie-vs-muse-code.md)\n- [AXLR vs Letta](https://www.anchorterminal.com/compare/axlr-vs-letta.md)\n- [AXLR vs Muse Code](https://www.anchorterminal.com/compare/axlr-vs-muse-code.md)\n- [Claude Code vs Letta](https://www.anchorterminal.com/compare/claude-code-vs-letta.md)\n- [Claude Code vs Muse Code](https://www.anchorterminal.com/compare/claude-code-vs-muse-code.md)\n- [Cline vs Letta](https://www.anchorterminal.com/compare/cline-vs-letta.md)\n- [Cline vs Muse Code](https://www.anchorterminal.com/compare/cline-vs-muse-code.md)\n- [Conductor vs Letta](https://www.anchorterminal.com/compare/conductor-vs-letta.md)\n- [Conductor vs Muse Code](https://www.anchorterminal.com/compare/conductor-vs-muse-code.md)\n- [Crush vs Letta](https://www.anchorterminal.com/compare/crush-vs-letta.md)\n- [Crush vs Muse Code](https://www.anchorterminal.com/compare/crush-vs-muse-code.md)\n- [Cursor CLI vs Letta](https://www.anchorterminal.com/compare/cursor-cli-vs-letta.md)\n- [Cursor CLI vs Muse Code](https://www.anchorterminal.com/compare/cursor-cli-vs-muse-code.md)\n- [DeepSeek Harness (dsh) vs Letta](https://www.anchorterminal.com/compare/deepseek-harness-vs-letta.md)\n- [DeepSeek Harness (dsh) vs Muse Code](https://www.anchorterminal.com/compare/deepseek-harness-vs-muse-code.md)\n- [dsh-superagent (DeepSeek) vs Letta](https://www.anchorterminal.com/compare/deepseek-superagent-vs-letta.md)\n- [dsh-superagent (DeepSeek) vs Muse Code](https://www.anchorterminal.com/compare/deepseek-superagent-vs-muse-code.md)\n- [Devin vs Letta](https://www.anchorterminal.com/compare/devin-vs-letta.md)\n- [Devin vs Muse Code](https://www.anchorterminal.com/compare/devin-vs-muse-code.md)\n- [Droid CLI vs Letta](https://www.anchorterminal.com/compare/droid-cli-vs-letta.md)\n- [Droid CLI vs Muse Code](https://www.anchorterminal.com/compare/droid-cli-vs-muse-code.md)\n- [Pi vs Letta](https://www.anchorterminal.com/compare/earendil-pi-vs-letta.md)\n- [Pi vs Muse Code](https://www.anchorterminal.com/compare/earendil-pi-vs-muse-code.md)\n- [Emdash vs Letta](https://www.anchorterminal.com/compare/emdash-vs-letta.md)\n- [Emdash vs Muse Code](https://www.anchorterminal.com/compare/emdash-vs-muse-code.md)\n- [Gemini CLI vs Letta](https://www.anchorterminal.com/compare/gemini-cli-vs-letta.md)\n- [Gemini CLI vs Muse Code](https://www.anchorterminal.com/compare/gemini-cli-vs-muse-code.md)\n- [GitHub Copilot CLI vs Letta](https://www.anchorterminal.com/compare/github-copilot-cli-vs-letta.md)\n- [GitHub Copilot CLI vs Muse Code](https://www.anchorterminal.com/compare/github-copilot-cli-vs-muse-code.md)\n- [goose vs Letta](https://www.anchorterminal.com/compare/goose-vs-letta.md)\n- [goose vs Muse Code](https://www.anchorterminal.com/compare/goose-vs-muse-code.md)\n- [Harness² vs Letta](https://www.anchorterminal.com/compare/harness2-vs-letta.md)\n- [Harness² vs Muse Code](https://www.anchorterminal.com/compare/harness2-vs-muse-code.md)\n- [HarnessRouter vs Letta](https://www.anchorterminal.com/compare/harnessrouter-vs-letta.md)\n- [HarnessRouter vs Muse Code](https://www.anchorterminal.com/compare/harnessrouter-vs-muse-code.md)\n- [Jules vs Letta](https://www.anchorterminal.com/compare/jules-vs-letta.md)\n- [Jules vs Muse Code](https://www.anchorterminal.com/compare/jules-vs-muse-code.md)\n- [Junie CLI vs Letta](https://www.anchorterminal.com/compare/junie-vs-letta.md)\n- [Junie CLI vs Muse Code](https://www.anchorterminal.com/compare/junie-vs-muse-code.md)\n- [Kilo Code CLI vs Letta](https://www.anchorterminal.com/compare/kilo-code-cli-vs-letta.md)\n- [Kilo Code CLI vs Muse Code](https://www.anchorterminal.com/compare/kilo-code-cli-vs-muse-code.md)\n- [Kimi Code CLI vs Letta](https://www.anchorterminal.com/compare/kimi-code-cli-vs-letta.md)\n- [Kimi Code CLI vs Muse Code](https://www.anchorterminal.com/compare/kimi-code-cli-vs-muse-code.md)\n- [Kiro CLI vs Letta](https://www.anchorterminal.com/compare/kiro-cli-vs-letta.md)\n- [Kiro CLI vs Muse Code](https://www.anchorterminal.com/compare/kiro-cli-vs-muse-code.md)\n- [Letta vs mini-swe-agent](https://www.anchorterminal.com/compare/letta-vs-mini-swe-agent.md)\n- [Letta vs MiniMax Code](https://www.anchorterminal.com/compare/letta-vs-minimax-code.md)\n- [Letta vs Mistral Vibe CLI](https://www.anchorterminal.com/compare/letta-vs-mistral-vibe-cli.md)\n- [Letta vs OpenAI Agents API](https://www.anchorterminal.com/compare/letta-vs-openai-agents-api.md)\n- [Letta vs OpenAI Codex](https://www.anchorterminal.com/compare/letta-vs-openai-codex.md)\n- [Letta vs OpenCode](https://www.anchorterminal.com/compare/letta-vs-opencode.md)\n- [Letta vs OpenHands](https://www.anchorterminal.com/compare/letta-vs-openhands.md)\n- [Letta vs OpenMausBot](https://www.anchorterminal.com/compare/letta-vs-openmausbot.md)\n- [Letta vs Orca](https://www.anchorterminal.com/compare/letta-vs-orca.md)\n- [Letta vs Paseo](https://www.anchorterminal.com/compare/letta-vs-paseo.md)\n- [Letta vs Prime Agent](https://www.anchorterminal.com/compare/letta-vs-prime-agent.md)\n- [Letta vs Qoder CLI](https://www.anchorterminal.com/compare/letta-vs-qoder-cli.md)\n- [Letta vs Qwen Code](https://www.anchorterminal.com/compare/letta-vs-qwen-code.md)\n- [Letta vs Mirror CLI](https://www.anchorterminal.com/compare/letta-vs-reflection-mirror.md)\n- [Letta vs Rovo Dev CLI](https://www.anchorterminal.com/compare/letta-vs-rovo-dev-cli.md)\n- [Letta vs Sculptor](https://www.anchorterminal.com/compare/letta-vs-sculptor.md)\n- [Letta vs T3 Code](https://www.anchorterminal.com/compare/letta-vs-t3-code.md)\n- [Letta vs Traycer](https://www.anchorterminal.com/compare/letta-vs-traycer.md)\n- [Letta vs Unstoppable](https://www.anchorterminal.com/compare/letta-vs-unstoppable.md)\n- [Letta vs Verdent](https://www.anchorterminal.com/compare/letta-vs-verdent.md)\n- [Letta vs Vibe-Trading](https://www.anchorterminal.com/compare/letta-vs-vibe-trading.md)\n- [Letta vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/letta-vs-warp.md)\n- [mini-swe-agent vs Muse Code](https://www.anchorterminal.com/compare/mini-swe-agent-vs-muse-code.md)\n- [MiniMax Code vs Muse Code](https://www.anchorterminal.com/compare/minimax-code-vs-muse-code.md)\n- [Mistral Vibe CLI vs Muse Code](https://www.anchorterminal.com/compare/mistral-vibe-cli-vs-muse-code.md)\n- [Muse Code vs OpenAI Agents API](https://www.anchorterminal.com/compare/muse-code-vs-openai-agents-api.md)\n- [Muse Code vs OpenAI Codex](https://www.anchorterminal.com/compare/muse-code-vs-openai-codex.md)\n- [Muse Code vs OpenCode](https://www.anchorterminal.com/compare/muse-code-vs-opencode.md)\n- [Muse Code vs OpenHands](https://www.anchorterminal.com/compare/muse-code-vs-openhands.md)\n- [Muse Code vs OpenMausBot](https://www.anchorterminal.com/compare/muse-code-vs-openmausbot.md)\n- [Muse Code vs Orca](https://www.anchorterminal.com/compare/muse-code-vs-orca.md)\n- [Muse Code vs Paseo](https://www.anchorterminal.com/compare/muse-code-vs-paseo.md)\n- [Muse Code vs Prime Agent](https://www.anchorterminal.com/compare/muse-code-vs-prime-agent.md)\n- [Muse Code vs Qoder CLI](https://www.anchorterminal.com/compare/muse-code-vs-qoder-cli.md)\n- [Muse Code vs Qwen Code](https://www.anchorterminal.com/compare/muse-code-vs-qwen-code.md)\n- [Muse Code vs Mirror CLI](https://www.anchorterminal.com/compare/muse-code-vs-reflection-mirror.md)\n- [Muse Code vs Rovo Dev CLI](https://www.anchorterminal.com/compare/muse-code-vs-rovo-dev-cli.md)\n- [Muse Code vs Sculptor](https://www.anchorterminal.com/compare/muse-code-vs-sculptor.md)\n- [Muse Code vs T3 Code](https://www.anchorterminal.com/compare/muse-code-vs-t3-code.md)\n- [Muse Code vs Traycer](https://www.anchorterminal.com/compare/muse-code-vs-traycer.md)\n- [Muse Code vs Unstoppable](https://www.anchorterminal.com/compare/muse-code-vs-unstoppable.md)\n- [Muse Code vs Verdent](https://www.anchorterminal.com/compare/muse-code-vs-verdent.md)\n- [Muse Code vs Vibe-Trading](https://www.anchorterminal.com/compare/muse-code-vs-vibe-trading.md)\n- [Muse Code vs Warp (Warp Agent CLI and the Oz Agent API)](https://www.anchorterminal.com/compare/muse-code-vs-warp.md)\n- [Clawboo vs Letta](https://www.anchorterminal.com/compare/clawboo-vs-letta.md)\n- [Clawboo vs Muse Code](https://www.anchorterminal.com/compare/clawboo-vs-muse-code.md)\n- [CLI Manager vs Letta](https://www.anchorterminal.com/compare/cli-manager-vs-letta.md)\n- [CLI Manager vs Muse Code](https://www.anchorterminal.com/compare/cli-manager-vs-muse-code.md)\n- [Harness vs Letta](https://www.anchorterminal.com/compare/harness-autonomous-vs-letta.md)\n- [Harness vs Muse Code](https://www.anchorterminal.com/compare/harness-autonomous-vs-muse-code.md)\n- [Letta vs Paperclip](https://www.anchorterminal.com/compare/letta-vs-paperclip.md)\n- [Letta vs Parallax](https://www.anchorterminal.com/compare/letta-vs-parallax-agents.md)\n- [Muse Code vs Paperclip](https://www.anchorterminal.com/compare/muse-code-vs-paperclip.md)\n- [Muse Code vs Parallax](https://www.anchorterminal.com/compare/muse-code-vs-parallax-agents.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Letta vs Muse Code",
        "url": ""
      }
    ],
    "description": "Letta scores 59.7 (C) to Muse Code's 56.2 (C) for agent harnesses. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Letta C 59.7",
      "Muse Code C 56.2",
      "scores"
    ],
    "h1": "Letta vs Muse Code",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/letta-vs-muse-code",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Letta vs Muse Code for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/letta-vs-muse-code"
  },
  "tokens": {
    "markdown": 6800,
    "slim": 3080
  },
  "version": 1
}
