RESEARCH

MemOS

Industrial MemCube abstraction with three-layer architecture.

MemOS: Industrial Memory Operating System

MemOS proposes a three-layer operating system abstraction for agent memory, with the MemCube as its central unit. Designed for industrial/enterprise deployments where multiple agents share and manage large memory pools.

Three-Layer Architecture

Layer 1: Memory Storage Layer

The physical storage substrate. MemOS is storage-agnostic:

  • Vector databases for embedding-based retrieval
  • Relational databases for structured data
  • Key-value stores for fast lookups
  • Object stores for large artifacts

Layer 2: Memory Management Layer

The core OS-like layer that handles:

  • MemCube lifecycle: Create, read, update, delete, merge, split memory units.
  • Access control: Which agents can read/write which memories.
  • Consistency: Ensuring memory updates are atomic and consistent across stores.
  • Scheduling: Prioritizing memory operations under resource constraints.

Layer 3: Memory Application Layer

High-level operations built on top of management:

  • Memory-augmented generation: Inject relevant memories into prompts.
  • Memory consolidation: Periodic summarization and compression.
  • Memory sharing: Cross-agent memory transfer with access policies.
  • Memory analytics: Usage patterns, access frequency, staleness detection.

The MemCube Abstraction

A MemCube is the atomic unit of memory in MemOS:

MemCube {
  id: UUID
  content: string | embedding | structured
  metadata: {
    owner: agent_id
    access_policy: ACL
    created_at: timestamp
    last_accessed: timestamp
    confidence: float
    provenance: source_chain
  }
  links: MemCube[]
  storage_hint: "hot" | "warm" | "cold"
}

Key properties:

  • Self-describing: Each MemCube carries its own metadata and access policies.
  • Tiered storage: Hot/warm/cold hints allow the system to optimize placement.
  • Linked: MemCubes can reference each other for graph-style traversal.
  • Provenance-tracked: Full chain of how the memory was created and modified.

Key Design Decisions

  • Storage abstraction: Applications don't know or care about the physical storage backend.
  • Agent-scoped access: Memory sharing is explicit, not implicit.
  • Resource-aware scheduling: Memory operations are budgeted like OS process scheduling.
  • Tiered lifecycle: Memories move between hot/warm/cold based on access patterns.

Relevance to Memory Platform

MemOS validates several of our architectural choices and suggests extensions:

MemOS ConceptPlatform Equivalent
MemCubeMemory row with JSON context
Access ControlTenant-based isolation (user/org)
Storage LayerPostgres + R2
Management LayerAPI routes + core logic
Application LayerMCP tools + agent integration
Hot/warm/coldCould add access-frequency-based tiering

The main takeaway is that memory management deserves OS-level abstractions - scheduling, access control, and lifecycle management are not afterthoughts but core features.

References

  • MemOS: An Operating System for Memory in LLM Agents
  • Industrial deployment patterns for multi-agent memory systems
  • The MemCube abstraction draws from database tuple and object storage concepts