Skip to content

Concepts Overview

MemForks is built on top of MemWal. The distinction matters:

  • MemWal stores and recalls memories.
  • MemForks versions, branches, and merges them.

MemWal is the filesystem. MemForks is Git.

Layer Responsibilities

LayerResponsibility
MemWalEncrypted Walrus blob storage, embedding, indexing, semantic recall, restore
MemForks CoreBranches, commit payloads, head tracking, merge proposals, delegates
Sui Move contractsMemoryTree, access control, resolver objects, merge settlement
AdaptersVercel AI middleware and LangGraph checkpointer
CLIProvisioning, config, branch operations, status, logs, plugins

Why Branches Matter

A flat semantic memory namespace can answer "what did I remember?"

A branch-aware memory system can answer more:

  • Which branch learned this?
  • Did this fact come from the trusted main path or an abandoned hypothesis?
  • What did the branch inherit at fork time?
  • What did the branch learn after it diverged?
  • Which facts should merge back?
  • Who is allowed to merge them?

Core Objects

MemoryTree

A Sui object representing the versioned memory tree. It owns branch pointers, access rules, and merge state.

Branch

A named line of memory history. A branch points to a head blob and maps to a MemWal namespace.

Commit Blob

A content-addressed Walrus blob containing a JSON payload:

json
{
  "v": 1,
  "type": "commit",
  "branch": "main",
  "parent_blob_ids": ["..."],
  "parent_blob_hashes": ["..."],
  "delta": {
    "facts": ["The actual memory fact"]
  }
}

Merge Proposal

An on-chain object that records intent to merge one branch into another through a resolver. Resolvers can implement policies such as union, last-write-wins, jury reconciliation, or LLM reconciliation.

MemWal vs MemForks

ConcernMemWalMemForks
Store memory textYesDelegates to MemWal
Semantic recallYesDelegates to MemWal per branch
Encrypted storageYesUses MemWal encryption and storage
Flat namespaceYesUses branch-derived namespaces
Branch lineageNoYes
Fork from parentNoYes
Diff related historiesNoYes
Merge governanceNoYes
Delegate permissionsPartial storage authBranch/tree permissions
Sui audit trailStorage/account layerBranches, access, merge settlement

Typical Lifecycle

When To Use MemForks

Use MemForks when memory lineage is product-critical:

  • Agent workspaces
  • Draft variants
  • Hypothesis exploration
  • Multi-agent research
  • Forked user sessions
  • Auditable decisions
  • Merge-reviewed memory
  • Delegated agent permissions

If all you need is a single persistent memory namespace with semantic recall, MemWal alone may be enough. Use MemForks when the history and branch relationships are part of the value.

Built on MemWal, Walrus, and Sui.