Archive comparison
This comparison belongs to the older memory-layer positioning. Novyx is now focused on governing production-changing agent actions.
Novyx vs Letta
Novyx is memory-as-a-service. Letta (formerly MemGPT) is a full agent framework. Here's how they compare.
TL;DR
Novyx now focuses on governing production-changing agent actions, with memory, Replay, checkpoint recovery, and audit as supporting infrastructure. Letta (formerly MemGPT) is an opinionated agent framework with built-in self-managing memory. Use this page as archive context for the older memory-layer comparison.
| Feature | Novyx | Letta |
|---|---|---|
| Approach | Governance + supporting memory | Full agent framework |
| Persistent memory | ✓ | ✓ (via MemGPT architecture) |
| Semantic search | ✓ | ✓ |
| Checkpoint recovery | ✓ (supported paths) | — |
| Tamper-evident audit trail | ✓ | — |
| Replay (time-travel debugging) | ✓ | — |
| Self-managing memory | Experimental/supporting | Via MemGPT architecture |
| Knowledge graph | ✓ | — |
| MCP server | Available | — |
| Framework integrations | LangChain, CrewAI, LlamaIndex, MCP | Own framework |
| Python SDK | ✓ | ✓ |
| JS/TS SDK | ✓ | — |
| Free tier | 5,000 memories | Self-hosted free |
| Self-hosted | Roadmap Q2 2026 | ✓ |
| Open source | — | ✓ |
Recovery and Audit Context
Letta's MemGPT architecture gives agents the ability to manage their own memory — deciding what to remember, what to forget, and how to organize context. But this self-management has no safety net. When an agent makes a bad memory decision — storing a hallucination, overwriting a correct fact, or forgetting something important — there's no built-in way to undo it.
Novyx provides checkpoint recovery on supported paths and records the surrounding audit context, but this should not be read as a universal transaction over every context pointer, tool binding, policy state, and external side effect.
The current product path starts earlier than recovery: classify blast radius before an agent changes a live system, route approval when needed, and keep recovery notes with the decision.
Composable Service vs Monolithic Framework
The fundamental architectural difference: Novyx is a memory API that plugs into any stack. Letta is a complete agent framework that includes memory as one component. If you're already using LangChain, CrewAI, LlamaIndex, or custom agent code, Novyx drops in as a memory backend with dedicated integrations for each framework. Letta requires you to adopt its entire agent architecture.
This matters for teams with existing infrastructure. Adding Novyx to a LangChain agent is three lines of code. Migrating to Letta means rewriting your agent from scratch using Letta's framework, its tool definitions, its message format, and its execution model. For new projects starting from zero, Letta's all-in-one approach can be convenient. For teams with existing agents, Novyx's composability avoids a costly rewrite.
Memory Maintenance
Both platforms address the problem of memory quality over time, but with different approaches. Letta's MemGPT architecture lets the agent itself decide when to archive, retrieve, and reorganize memories. This is elegant but unpredictable — the agent's memory management is only as good as its current reasoning.
Novyx keeps memory maintenance as supporting infrastructure for action review and incident reconstruction. Experimental maintenance features should not be treated as the core product promise.
When to Choose Novyx
- ✓You already use LangChain, CrewAI, LlamaIndex, or another framework
- ✓You need a governance layer, not a full agent framework
- ✓You need action audit, checkpoint recovery, and debugging context
- ✓You want a JS/TS SDK alongside Python
- ✓You need MCP integration for Cursor or Claude Code
When to Choose Letta
- ✓You want a complete agent framework with built-in memory management
- ✓You prefer the MemGPT self-managing memory architecture
- ✓You need to self-host and want an open-source solution
- ✓You don't already have a framework and want an all-in-one solution
Code Comparison
from novyx import Novyx
nx = Novyx(api_key="YOUR_API_KEY")
# Works with any framework
nx.remember("User prefers dark mode", tags=["prefs"])
results = nx.recall("user preferences")
# Rollback (Novyx-only)
nx.rollback(target="2026-01-15T10:00:00Z")
# Use with LangChain, CrewAI, LlamaIndex, etc.
from novyx_langchain import NovyxMemory
memory = NovyxMemory(api_key="YOUR_API_KEY")Next protected action
Name the production action your agents cannot perform yet
Start with a 25-minute readiness call for one blocked workflow.