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

Omnimemory

OmniMemory is an open-source Python framework for persistent AI-agent memory. It synthesizes conversations into structured notes, evolves memories when information changes or conflicts, and retrieves relevant items using relevance, recency and importance scoring. It provides a REST API, Python SDK and CLI, with multi-tenant isolation across app, user and session tiers.

Independent OpenViST project profile, based on linked sources.

Omnimemory — 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 OmniMemory when an agent needs evolving memory synthesized from conversation flows, rather than only storing and retrieving static text chunks. The SDK supports Python integrations; the REST API is positioned in the README for production and multi-language teams.

Who it is for

  • Developers building AI agents that need persistent conversation memory.
  • Teams integrating agent memory through a REST API or Python SDK.
  • SaaS developers who need app-, user- and session-level memory separation.

Documented uses

  • Extract behavioral preferences and narrative facts from a conversation flow.
  • Update, delete, skip or consolidate memories when new information conflicts with existing knowledge.
  • Retrieve memories using relevance with recency and importance boosts.
  • Separate stored memory by application, user and session.
Before you choose

Requirements & limits

The repository is public and identifies the project as MIT-licensed. The README specifies Python 3.10 or later.

  • Conversation synthesis via add_memory requires 10 messages by default and returns a task ID for background processing.
  • The separate quick-save operation accepts structured or unstructured messages but bypasses conflict resolution.
  • The REST API and Python SDK are distinct integration routes; the README recommends the API for production and multi-language teams and the SDK for Python development and prototyping.
  • An LLM provider, embedding provider and vector database must be configured; the selected database determines the relevant connection settings.

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

Prepare the REST API server with a vector-store backend

Install and configure OmniMemory, then start its API server with a documented backend.

Before you start

  • Python 3.10 or later
  • An LLM provider API key and provider name
  • An embedding provider API key and provider name
  • One supported vector backend: Qdrant, ChromaDB, PostgreSQL with pgvector, or MongoDB

Steps

  1. Install the package with the command below or the command below.

    Documented command
    uv add omnimemory
    Documented command
    pip install omnimemory
  2. Configure the LLM, embedding and vector-store environment variables in a .env file.

  3. For Qdrant, ChromaDB or PostgreSQL, start the corresponding documented Docker Compose profile.

  4. Start the server with the command below; for MongoDB, configure MONGO_URI separately first.

    Documented command
    uv run uvicorn omnimemory.api.server:app --host 0.0.0.0 --port 8001 --reload

Expected outcome

The README's documented setup starts the OmniMemory REST API server using the selected vector backend.

Guide limitations

  • MongoDB requires a separately configured MongoDB Atlas connection string.
  • The guide documents server startup, not a successful API request or deployment verification.
Source-based practical guide

Initialize the Python SDK for memory operations

Install and configure OmniMemory, then initialize the SDK connection pools.

Before you start

  • Python 3.10 or later
  • An LLM provider and API key
  • An embedding provider and API key
  • A configured vector database backend

Steps

  1. Install OmniMemory with the command below or the command below.

    Documented command
    uv add omnimemory
    Documented command
    pip install omnimemory
  2. Set the required model, embedding and vector-database environment variables.

  3. Create an OmniMemorySDK instance and call await sdk.warm_up() before making requests.

Expected outcome

The SDK connection pools are initialized for subsequent requests when warm-up succeeds.

Guide limitations

  • The guide covers initialization only; memory operations require additional request code.
  • The README says add_memory needs 10 messages by default and processes asynchronously.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
16 October 2026
Original website title
omnirexflora-labs/omnimemory · Official homepage title · retained in its source language