LearnNewsExamplesServices
Frontmatter
titlefeat: Implement Neo-to-Chroma memory migration bridge (#9922)
authortobiu
stateClosed
createdAtApr 12, 2026, 5:48 PM
updatedAtApr 12, 2026, 5:51 PM
closedAtApr 12, 2026, 5:51 PM
mergedAt
branchesdevagent/9922-neo-to-chroma-bridge
urlhttps://github.com/neomjs/neo/pull/9927
Closed
tobiu
tobiu commented on Apr 12, 2026, 5:48 PM

Resolves #9922

Neo-to-Chroma Vector Extraction Bridge

Following the Two-Pillar Hybrid RAG architecture rollout, access to SQLiteVectorManager was completely restricted. This created an amnesia fault line where episodic vectors (qwen3-8b) maintained in .neo-ai-data/neo-sqlite were orphaned from .neo-ai-data/chroma.

This PR introduces a standalone migration script: syncMemoryNeoToChroma.mjs.

  • Connects to SQLite natively via better-sqlite3 and sqlite-vec.
  • Extracts Float32Array buffers stored in neo_agent_memory_vec mapping 1:1 hardware buffer floats into Javascript arrays.
  • Sub-batches 1000 items at a time and forcefully bridges data seamlessly to ChromaManager avoiding completely memory overflow and redundant TextEmbeddingService calls.