MAGNEMO

Magnemo vs Letta

Magnemo 0.6.7Letta, from their docs
Where memory lives

Your memory lives on your computer, in plain files you can open.

IN THE TREE: test_the_network_line_passes_on_the_package_and_fails_on_a_planted_import · test_free_tier_stdlib_only

Both. "Memory itself is part of the agent's state, held in a git repository that belongs to the agent — hosted by Letta for cloud agents." Self-hosted server: PostgreSQL, "Your database must have the pgvector vector extension installed"; local memory repos at /root/.letta/memfs.

[2][3]

Who writes an entry

The only write verb. Lands in _staging/ as a memory candidate; never touches canon.

IN THE TREE: test_lists_exactly_four_tools · test_promotion_is_not_a_tool · test_the_author_is_the_seat_and_a_keyholder_claim_is_refused

The agent: "Your agent updates memory when it learns something durable." Also background subagents: "Dreaming uses background subagents to review recent conversations, consolidate useful lessons, and update memory." Developers can edit via API.

[4][5]

What is kept without your yes

Agent writes NEVER reach canonical stores directly — staging only, always.

IN THE TREE: test_staging_is_the_only_note_write_path · test_retrieve_excludes_staged

No for memory by default. Option "Agent reviews before applying" is agent review, and "does not ask you for approval".

[4]

What an entry carries (who, when, approved)

Every note is markdown with provenance frontmatter (author, written, source, status, reviewed_by, supersedes, strength).

IN THE TREE: test_stage_lands_in_staging_with_provenance_and_salience · test_paperless_and_malformed_notes_refused · governance.promote

"Every memory edit is committed to the MemFS git repository." Files are "Markdown with YAML frontmatter" (name, description). Author and timestamp fields: not stated in their docs (read 2026-10-02); they come from git commits but the docs do not say so.

[5][7]

Portable across clients

Anything that speaks MCP over stdio mounts the same way.

IN THE TREE: test_connect_and_list_over_stdio

Export: "import and export agents to and from any Letta server ... using the .af file format" (open standard; includes memory blocks, message history, tools). Clients: desktop app, CLI, web, Slack/Telegram/Discord, SDKs. MemFS clone/export: not stated in their docs (read 2026-10-02).

[1][8]

License

Python 3.11+, zero dependencies, Apache-2.0.

IN THE TREE: LICENSE

"Apache-2.0 license"

[1]

THEIR PAGES, READ 2026-10-02. EVERY PHRASE IN QUOTATION MARKS WAS FOUND ON ONE OF THEM, CHECKED 2026-10-02.

  1. https://github.com/letta-ai/letta
  2. https://docs.letta.com/concepts/memfs
  3. https://docs.letta.com/v1-sdk/docker
  4. https://docs.letta.com/configuration/memory
  5. https://docs.letta.com/concepts/shared-memory
  6. https://docs.letta.com/concepts/stateful-agents
  7. https://docs.letta.com/guides/agents/agent-file

Corrections welcome: open an issue.