SOAT vs Letta
Letta is agent infrastructure (Apache-2.0, self-hosted or managed). SOAT is agent infrastructure (Apache-2.0, self-hosted). Of the 15 capabilities the benchmark tracks, Letta covers 7 natively and SOAT 12.
At a glance
| Letta | SOAT | |
|---|---|---|
| Type | agent infrastructure | agent infrastructure |
| License | Apache-2.0 | Apache-2.0 |
| Deployment | self-hosted or managed | self-hosted |
| Native capabilities | 7 of 15 | 12 of 15 |
| Last verified | 2026-08-14 | 2026-08-14 |
Where each one leads
- Letta is native where SOAT is not: channels, skill learning.
- SOAT is native where Letta is not: identity & governance, observability, data & secrets, evaluation, multi-tenancy, declarative deployment, versioning & rollout.
What Letta is
Open-source server for stateful LLM agents (formerly MemGPT) that persists agent state, memory blocks, and archival passages in PostgreSQL with pgvector, exposed over a REST API and SDKs. Deployable via Docker or usable as a hosted service, with agent state surviving context-window eviction. Letta documentation.
Capability by capability
Agent runtime
Agent loop, sessions, and generation lifecycle.
- Letta: Native. The Letta server runs the agent loop and persists all agent and message state in PostgreSQL, exposed through a REST API. (source)
- SOAT: Native. Agents, sessions, chats, and generations with full lifecycle tracking. (source)
Orchestration
Multi-step pipelines, workflows, and triggers.
- Letta: Native. Multi-agent coordination via shared memory blocks and message-passing tools, plus subagents and Schedules for recurring tasks. (source)
- SOAT: Native. DAG orchestrations, workflow state machines, durable tasks, and triggers (manual, webhook, schedule). (source)
Knowledge & memory
Documents, embeddings, semantic search, and recall.
- Letta: Native. Agents have editable in-context memory blocks plus archival memory with hybrid semantic and full-text search over pgvector. (source)
- SOAT: Native. Documents with per-chunk embeddings, named memories, unified semantic search, and ingestion rules for PDFs, images, and audio. (source)
Tools & integration
Tool calling, MCP, providers, and webhooks.
- Letta: Native. Supports server tools, client-side tools, and MCP servers registered over streamable HTTP, SSE, or stdio transports. (source)
- SOAT: Native. HTTP, MCP, client, and agent-to-agent tools; model routes with failover; webhooks; any LLM provider. (source)
Identity & governance
IAM, guardrails, approvals, quotas, and audit.
- Letta: Partial. Self-hosted access control is a single shared server password; the open-source server documents no role-based access control, approvals, or audit log. (source)
- SOAT: Native. AWS-inspired IAM, actors, scoped API keys, guardrails, human approvals, quotas, and an append-only audit log. (source)
Observability
Traces, activity, usage, and failure queues.
- Letta: Partial. The Agent Development Environment surfaces agent reasoning, tool usage, and state in real time, but there is no documented cost accounting or failure queue. (source)
- SOAT: Native. Traces of every tool call and model response, activity feed, usage/cost tracking, and an exceptions queue. (source)
Data & secrets
File storage and encrypted secrets.
- Letta: Absent. The document/file source system is deprecated and disabled, and no encrypted secrets store is provided; credentials are server environment variables.
- SOAT: Native. File storage over local/S3/GCS backends and encrypted secrets storage. (source)
Evaluation
Datasets, scorers, and eval-gated improvement.
- Letta: Absent. No datasets, scorers, or evaluation-run functionality is documented.
- SOAT: Native. Datasets, scorers, and scored runs; eval-gated promotion of agent versions. (source)
Channels
Built-in gateways to messaging platforms and UIs.
- Letta: Native. Built-in channel adapters connect agents to Telegram, Slack, Discord, WhatsApp, and Signal, plus a web and desktop chat UI. (source)
- SOAT: Absent. Surfaces are REST, MCP, CLI, and SDK — no built-in gateways to messaging platforms like Slack, WhatsApp, or Telegram.
Code execution
Sandboxed code or terminal runtimes for agents.
- Letta: Partial. Custom server tools execute in an E2B sandbox requiring external API credentials; there is no general-purpose code interpreter or terminal runtime built in. (source)
- SOAT: Absent. Tool types are HTTP, MCP, client, and agent-to-agent — no built-in sandboxed code or terminal runtime.
Human-in-the-loop
Pausing a run for human approval, then resuming it.
- Letta: Native. Tools marked requires_approval halt the agent and emit an approval request with tool name and arguments; approving executes and resumes, denying returns an error the agent can work against. (source)
- SOAT: Native. Approvals are a first-class human-decision queue with frozen evidence, and guardrails classify each tool call so risky actions pause for a decision. (source)
Multi-tenancy
Projects or workspaces scoping resources and permissions.
- Letta: Partial. Identity objects and agent tags associate agents with end users, but the open-source server documents no org or project permission boundary and warns against exposing it to untrusted clients. (source)
- SOAT: Native. Projects are multi-tenant namespaces scoping every resource, with IAM policies and quotas enforced per project. (source)
Declarative deployment
Templates that provision agent resources as one stack.
- Letta: Via plugin. Declarative fleet management with version-controlled YAML comes from lettactl, a community-built CLI listed under community guides rather than a first-party feature. (source)
- SOAT: Native. Formations provision providers, memories, tools, agents, orchestrations, and webhooks from one template, resolving refs into a dependency graph with tracked operations. (source)
Versioning & rollout
Agent versions, canary rollout, gated promotion.
- Letta: Via plugin. Official template versioning with migrate and rollback is labeled cloud-only and deprecated, so self-hosted rollout control comes from the community lettactl tool. (source)
- SOAT: Native. Every config change is archived as an append-only agent version, with canary rollout to a slice of traffic and eval-gated promotion. (source)
Skill learning
Agents authoring reusable skills from their own experience.
- Letta: Native. Agents have a built-in skill creator and write skills into their own git-backed memory filesystem, persisting them as part of agent identity across agent, project, and computer scopes. (source)
- SOAT: Absent. Memories and knowledge store retrievable context, but agents do not author or refine reusable skills from their own experience.
How this is rated
Each rating comes from the public documentation linked beside it: Native is built in, Via plugin needs an add-on, Partial covers part of the capability, Absent is not offered. Every solution side by side is on the benchmark. A rating that is out of date is a bug: open an issue.