Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Releases: y3zai/memio

v0.3.1

03 Apr 15:46
@DavyMorgan DavyMorgan
80123ea
This commit was created on GitHub.com and signed with GitHub’s verified signature.
GPG key ID: B5690EEEBB952194
Verified
Learn about vigilant mode.

Choose a tag to compare

What's Changed

  • Bump version to 0.3.1

Full Changelog: v0.3.0...v0.3.1

Assets 2
Loading

v0.3.0

31 Mar 02:24
@DavyMorgan DavyMorgan
f7d4f45
This commit was created on GitHub.com and signed with GitHub’s verified signature.
GPG key ID: B5690EEEBB952194
Verified
Learn about vigilant mode.

Choose a tag to compare

What's New

REST API Server

memio now includes an optional HTTP server so any language (JavaScript, TypeScript, Go, etc.) can use memio over HTTP.

pip install memio[server]
memio-server
# Open http://localhost:8080/docs for interactive API docs
  • 28 versioned endpoints under /v1 mirroring all 4 store protocols (facts, history, documents, graph)
  • YAML config with ${ENV_VAR} interpolation
  • Optional Bearer token authentication
  • Typed provider factories for all 6 providers
  • Dockerfile for containerized deployment
  • memio-server CLI entry point

Core Improvements

  • NotFoundError — new exception for missing resources, maps to HTTP 404 instead of generic provider errors
  • Updated Mem0, Letta, Chroma, and Qdrant adapters to raise NotFoundError on missing resources
  • Added __version__ to the memio package

Full Changelog

v0.2.1...v0.3.0

Loading

v0.2.1

30 Mar 21:05
@DavyMorgan DavyMorgan

Choose a tag to compare

What's Changed

Scoping & data isolation

  • HistoryStore.add() now accepts user_id to establish session ownership, enabling correct scoping for get_all/delete_all across Zep and Letta adapters
  • Zep search() derives owner from thread metadata on cache miss for cross-restart correctness
  • LettaFactAdapter raises NotSupportedError for user_id/agent_id-scoped get_all, search, and delete_all instead of silently ignoring scope
  • SupermemoryFactAdapter caches fact_id → container_tag (LRU-bounded) so update/delete target the correct scope

Performance

  • ChromaDocumentAdapter wraps all sync chromadb calls in asyncio.to_thread() to avoid blocking the event loop

CI

  • Added GitHub Actions CI workflow running pytest on Python 3.10 and 3.12

Docs

  • All history examples updated to show user_id parameter
  • Letta fact docs clarified with scoping limitation section
  • Zep docs corrected to use user_id consistently
Loading

v0.2.0

30 Mar 03:27
@DavyMorgan DavyMorgan

Choose a tag to compare

What's New

New Providers

  • Letta — FactStore, HistoryStore, and DocumentStore adapters supporting Letta Cloud and self-hosted deployments (pip install memio[letta])
  • Qdrant — DocumentStore adapter with built-in fastembed for automatic embeddings; supports in-memory, on-disk, and Qdrant Cloud (pip install memio[qdrant])
  • Supermemory — FactStore and DocumentStore adapters for the Supermemory cloud API (pip install memio[supermemory])

Fixes

  • Mem0 adapter updated for mem0ai v1.0.8 SDK breaking changes:
    • Uses AsyncMemoryClient for cloud API, AsyncMemory for local
    • add() now polls until the memory is fully processed, so callers always receive a usable Fact with a real ID
    • Handles v2 filters API for search/get_all and text= parameter for update
  • Supermemory datetime parsing now handles RFC 3339 Z suffix correctly

Docs & Tests

  • Full documentation, API reference pages, and MkDocs nav entries for all three new providers
  • README and quickstart updated with all six supported providers
  • 168 tests total (150 unit + 18 integration), all passing

Full Changelog: v0.1.2...v0.2.0

Loading

v0.1.2

27 Mar 18:14
@DavyMorgan DavyMorgan

Choose a tag to compare

Improvements

  • Consistent CRUD method ordering across all protocols (add → get → get_all → search → update → delete → delete_all)
  • Added module docstring with known quirks to Mem0 fact adapter
  • Handle None return from Mem0 client.get with clear error
  • Removed unreachable dict fallback in Zep history adapter
  • Added PyPI and docs badges to README
Loading

v0.1.1

27 Mar 04:36
@DavyMorgan DavyMorgan

Choose a tag to compare

Fix: add project description (README) to PyPI listing.

Loading

v0.1.0

27 Mar 04:33
@DavyMorgan DavyMorgan

Choose a tag to compare

v0.1.0 — Initial Release

Unified memory gateway for AI agents. One interface, multiple memory providers.

Highlights

  • Protocol-based architecture — four memory store protocols (FactStore, HistoryStore, DocumentStore, GraphStore) using Python's @runtime_checkable Protocol
  • Three providers — Mem0, Zep, and Chroma supported out of the box
  • Composable — mix and match providers in a single Memio client
  • Async-first — all operations use async/await
  • Zero production dependencies — install only the providers you need

Providers

Store Mem0 Zep Chroma
FactStore -
HistoryStore - -
DocumentStore - -
GraphStore -

Install

pip install memio # core
pip install memio[mem0] # + Mem0 provider
pip install memio[zep] # + Zep provider
pip install memio[chroma] # + Chroma provider
pip install memio[all] # all providers

Quick Example

from memio import Memio, Message
from memio.providers.mem0 import Mem0FactAdapter
from memio.providers.zep import ZepHistoryAdapter
from memio.providers.chroma import ChromaDocumentAdapter
import chromadb
client = Memio(
 facts=Mem0FactAdapter(api_key="..."),
 history=ZepHistoryAdapter(api_key="..."),
 documents=ChromaDocumentAdapter(
 client=chromadb.EphemeralClient(),
 collection_name="my-docs",
 ),
)
fact = await client.facts.add(content="likes coffee", user_id="alice")
results = await client.facts.search(query="coffee", user_id="alice")

Documentation

Full documentation at y3zai.github.io/memio

License

MIT

Loading

AltStyle によって変換されたページ (->オリジナル) /