Releases: y3zai/memio
Releases · y3zai/memio
v0.3.1
v0.3.0
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
/v1mirroring 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-serverCLI 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
NotFoundErroron missing resources - Added
__version__to thememiopackage
Full Changelog
v0.2.1
What's Changed
Scoping & data isolation
HistoryStore.add()now acceptsuser_idto establish session ownership, enabling correct scoping forget_all/delete_allacross Zep and Letta adapters- Zep
search()derives owner from thread metadata on cache miss for cross-restart correctness LettaFactAdapterraisesNotSupportedErrorforuser_id/agent_id-scopedget_all,search, anddelete_allinstead of silently ignoring scopeSupermemoryFactAdaptercachesfact_id → container_tag(LRU-bounded) soupdate/deletetarget the correct scope
Performance
ChromaDocumentAdapterwraps all sync chromadb calls inasyncio.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_idparameter - Letta fact docs clarified with scoping limitation section
- Zep docs corrected to use
user_idconsistently
v0.2.0
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
mem0aiv1.0.8 SDK breaking changes:- Uses
AsyncMemoryClientfor cloud API,AsyncMemoryfor local add()now polls until the memory is fully processed, so callers always receive a usableFactwith a real ID- Handles v2
filtersAPI forsearch/get_allandtext=parameter forupdate
- Uses
- Supermemory datetime parsing now handles RFC 3339
Zsuffix 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
v0.1.2
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
Nonereturn from Mem0client.getwith clear error - Removed unreachable dict fallback in Zep history adapter
- Added PyPI and docs badges to README
v0.1.1
Fix: add project description (README) to PyPI listing.
v0.1.0
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_checkableProtocol - Three providers — Mem0, Zep, and Chroma supported out of the box
- Composable — mix and match providers in a single
Memioclient - 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 providersQuick 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