
V3 Memory Unification
Consolidate fragmented agent memory backends into AgentDB with HNSW search so multi-agent workflows stay fast and queryable.
Overview
V3 Memory Unification is an agent skill most often used in Build (also Operate infra) that merges six or more memory backends into AgentDB with HNSW search for large vector recall gains.
Install
npx skills add https://github.com/ruvnet/ruflo --skill v3-memory-unificationWhat is this skill?
- Unifies 6+ legacy memory systems into a single AgentDB backend per ADR-006 and ADR-009
- Documents 150x–12,500x search improvements via HNSW vector indexing
- Maps MemoryManager, SwarmMemory, SQLite, Markdown, and Hybrid backends into one query interface
- Quick-start Task prompts for architecture, AgentDB setup, and data migration specialists
- Emphasizes backward compatibility while cutting cross-agent memory fragmentation
- 6+ memory systems targeted for consolidation into AgentDB
- Documented HNSW search improvements: 150x–12,500x
- Implements ADR-006 Unified Memory Service and ADR-009 Hybrid Memory Backend
Adoption & trust: 625 installs on skills.sh; 58.5k GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
Your agents juggle SQLite, markdown files, and several custom memory managers, so retrieval is slow, inconsistent, and painful to operate in production.
Who is it for?
Teams on Ruflo V3 or similar multi-agent codebases ready to execute a structured AgentDB migration.
Skip if: Builders who only need a single-session chat buffer with no vector search or legacy memory sprawl.
When should I use this skill?
You need to design or execute AgentDB unification across legacy Ruflo memory backends with HNSW indexing.
What do I get? / Deliverables
You land a unified AgentDB query surface with HNSW indexing, migrated legacy data, and ADR-aligned hybrid memory behavior across agents.
- AgentDB unification architecture and indexing configuration
- Migration plan from legacy SQLite/Markdown and manager backends
- Unified cross-agent query interface with compatibility guarantees
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Memory unification is foundational backend work while building agent platforms; it is shelved under Build backend as the primary migration milestone. The skill targets AgentDB architecture, legacy backend migration, and vector indexing—not frontend UI or launch distribution.
Where it fits
Design AgentDB schema and HNSW parameters before agents share one memory service.
Replace SwarmMemory and HybridBackend calls with the unified query interface in agent tools.
Run production migration windows from SQLite/Markdown shards into AgentDB without breaking readers.
How it compares
Architecture and migration playbook for AgentDB—not a lightweight note-taking skill or generic SQLite tutorial.
Common Questions / FAQ
Who is V3 Memory Unification for?
Indie builders and small teams operating multi-agent frameworks with several coexisting memory backends who need a single high-performance vector store.
When should I use V3 Memory Unification?
During Build when designing agent persistence, before scale hurts you in Operate when search latency and fragmented stores block reliable cross-agent recall.
Is V3 Memory Unification safe to install?
Migration touches production data paths; review Security Audits on this page, snapshot legacy stores, and test rollback before cutover.
SKILL.md
READMESKILL.md - V3 Memory Unification
# V3 Memory Unification ## What This Skill Does Consolidates disparate memory systems into unified AgentDB backend with HNSW vector search, achieving 150x-12,500x search performance improvements while maintaining backward compatibility. ## Quick Start ```bash # Initialize memory unification Task("Memory architecture", "Design AgentDB unification strategy", "v3-memory-specialist") # AgentDB integration Task("AgentDB setup", "Configure HNSW indexing and vector search", "v3-memory-specialist") # Data migration Task("Memory migration", "Migrate SQLite/Markdown to AgentDB", "v3-memory-specialist") ``` ## Systems to Unify ### Legacy Systems → AgentDB ``` ┌─────────────────────────────────────────┐ │ • MemoryManager (basic operations) │ │ • DistributedMemorySystem (clustering) │ │ • SwarmMemory (agent-specific) │ │ • AdvancedMemoryManager (features) │ │ • SQLiteBackend (structured) │ │ • MarkdownBackend (file-based) │ │ • HybridBackend (combination) │ └─────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────┐ │ 🚀 AgentDB with HNSW │ │ • 150x-12,500x faster search │ │ • Unified query interface │ │ • Cross-agent memory sharing │ │ • SONA learning integration │ └─────────────────────────────────────────┘ ``` ## Implementation Architecture ### Unified Memory Service ```typescript class UnifiedMemoryService implements IMemoryBackend { constructor( private agentdb: AgentDBAdapter, private indexer: HNSWIndexer, private migrator: DataMigrator ) {} async store(entry: MemoryEntry): Promise<void> { await this.agentdb.store(entry); await this.indexer.index(entry); } async query(query: MemoryQuery): Promise<MemoryEntry[]> { if (query.semantic) { return this.indexer.search(query); // 150x-12,500x faster } return this.agentdb.query(query); } } ``` ### HNSW Vector Search ```typescript class HNSWIndexer { constructor(dimensions: number = 1536) { this.index = new HNSWIndex({ dimensions, efConstruction: 200, M: 16, speedupTarget: '150x-12500x' }); } async search(query: MemoryQuery): Promise<MemoryEntry[]> { const embedding = await this.embedContent(query.content); const results = this.index.search(embedding, query.limit || 10); return this.retrieveEntries(results); } } ``` ## Migration Strategy ### Phase 1: Foundation ```typescript // AgentDB adapter setup const agentdb = new AgentDBAdapter({ dimensions: 1536, indexType: 'HNSW', speedupTarget: '150x-12500x' }); ``` ### Phase 2: Data Migration ```typescript // SQLite → AgentDB const migrateFromSQLite = async () => { const entries = await sqlite.getAll(); for (const entry of entries) { const embedding = await generateEmbedding(entry.content); await agentdb.store({ ...entry, embedding }); } }; // Markdown → AgentDB const migrateFromMarkdown = async () => { const files = await glob('**/*.md'); for (const file of files) { const content = await fs.readFile(file, 'utf-8'); await agentdb.store({ id: generateId(), content, embedding: await generateEmbedding(content), metadata: { originalFile: file } }); } }; ``` ## SONA Integration ### Learning Pattern Storage ```typescript class SONAMemoryIntegration { async storePattern(pattern: LearningPattern): Promise<void> { await this.memory.store({ id: pattern.id, content: pattern.data, metadata: { sonaMode: pattern.mode, reward: pattern.reward, adaptationTime: pattern.adaptationTime }, embedding: await this.generateEmbedding(pattern.data) }