ALMA-memory v0.5.0
Added - Phase 2: Vector Database Backends
-
Qdrant Backend (
alma/storage/qdrant.py)- Full
StorageBackendimplementation with 1300+ lines - Vector similarity search using cosine distance
- Metadata filtering for all memory queries
- Optimized
MatchAnyqueries for multi-agent memory sharing - 52 unit tests with full coverage
- Full
-
Pinecone Backend (
alma/storage/pinecone.py)- Full
StorageBackendimplementation for serverless vector DB - Namespace-based organization per memory type
- Serverless spec support for automatic scaling
- Environment variable expansion in configuration
- 45 unit tests
- Full
-
Chroma Backend (
alma/storage/chroma.py)- Full
StorageBackendimplementation for ChromaDB - Support for persistent, client-server, and ephemeral modes
- Native embedding storage and similarity search
- Numpy array handling for edge cases
- Full
-
Graph Database Abstraction (
alma/graph/)GraphBackendabstract base class for pluggable backendsNeo4jBackendwrapping existing Neo4j codeInMemoryBackendfor testing without external dependenciesBackendGraphStoreadapter bridging GraphStore API to backendscreate_graph_backend()factory function for easy setup- 46 unit tests
Added - Phase 1: Core Features
-
Memory Consolidation Engine (
alma/consolidation/)- LLM-powered deduplication that merges similar memories
- Cosine similarity-based grouping with configurable thresholds (default 0.85)
- Provenance tracking via
merged_frommetadata - Dry-run mode for safety previews
- Support for heuristics, domain_knowledge, and anti_patterns
-
Event System (
alma/events/)EventEmitterfor in-process callbacksWebhookManagerfor HTTP delivery with HMAC signatures- Event types: CREATED, UPDATED, DELETED, ACCESSED, CONSOLIDATED
- Retry logic with configurable count and exponential backoff
EventAwareStorageMixinfor automatic event emission
-
TypeScript/JavaScript SDK (
packages/alma-memory-js/)- Full API coverage: retrieve, learn, addPreference, addKnowledge, forget
- Type-safe with comprehensive TypeScript definitions
- Error hierarchy matching Python SDK (ALMAError, ConnectionError, etc.)
- Automatic retry with configurable backoff
- MCP protocol support for direct server communication
-
Multi-Agent Memory Sharing
inherit_fromscope attribute for reading other agents' memoriesshare_withscope attribute for making memories readable- Origin tracking via
metadata['shared_from'] - Optimized
get_*_for_agents()batch queries across all backends include_sharedparameter in retrieval engine
Changed
- Updated version to 0.5.0
- Added CI/CD workflow with GitHub Actions
- Updated architecture diagram in README to show all 6 storage backends
- Expanded troubleshooting section for new backends