OpenViSTAI · Agents · Blockchain · Crypto
Menu
Agent Memory & RAG

Membrane

Membrane is a Go-based memory substrate for LLM agents that stores persistent, structured records with entity links, bounded retrieval, revision history, decay, competence learning and trust-aware access controls.

Independent OpenViST project profile, based on linked sources.

Membrane — OpenViST project profile in Agent Memory & RAG.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Membrane when an agent needs persistent structured memory rather than session-only context, especially when stored knowledge changes, successful procedures should be reused, or retrieval must respect scope and sensitivity rules.

Who it is for

  • Developers building autonomous or LLM-based agents
  • Go developers embedding memory in an agent process
  • TypeScript, JavaScript or Python developers connecting through the gRPC daemon
  • Teams that need self-hosted memory infrastructure for changing agent knowledge

Documented uses

  • Carry agent work and context across sessions
  • Store events, observations, facts, procedures and plans as linked records
  • Revise, supersede, contest, fork or retract changing knowledge
  • Retrieve bounded context using salience, vectors and access rules
  • Track which procedures have worked and apply memory decay over time
Before you choose

Requirements & limits

The repository is public and MIT-licensed. The documented deployment is self-hosted and requires PostgreSQL with pgvector. Go, TypeScript, JavaScript, Python and protobuf-based integration paths are described.

  • PostgreSQL with pgvector is required for both embedded-library and daemon deployments.
  • Go is the native implementation language; TypeScript, JavaScript and Python connect through the gRPC daemon.
  • Embedding providers are needed for automatic vector population and hybrid vector-and-salience ranking.
  • LLM providers are optional for capture interpretation and semantic consolidation.
  • The memory model includes episodic, working, semantic, competence, plan and entity layers.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Set up the Membrane daemon locally

Build Membrane, start its PostgreSQL and pgvector dependency, and launch the daemon.

Before you start

  • A fresh Membrane checkout
  • The Go toolchain declared in go.mod
  • Docker Compose and Make
  • PostgreSQL with pgvector
  • OpenSSL for generating the documented database password

Steps

  1. Clone the repository and change into its directory.

  2. Run make build.

  3. Set MEMBRANE_POSTGRES_PASSWORD and MEMBRANE_POSTGRES_DSN as documented.

  4. Start the database with docker compose up -d and wait for pg_isready to report readiness.

  5. Launch ./bin/membraned with the PostgreSQL DSN.

Expected outcome

A local Membrane daemon is started with its database schema applied and the documented local listener.

Guide limitations

  • This setup guide does not configure TLS, authentication, scopes beyond the documented default, embedding providers or LLM providers.
  • PostgreSQL with pgvector remains required even when the Go library is embedded.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
3 October 2026
Original website title
BennettSchwartz/membrane · Official homepage title · retained in its source language