Embedding model defaults across the CLI use bare names (e.g. all-mpnet-base-v2) instead of prefixed names (Xenova/all-mpnet-base-v2). Additionally, ControllerRegistry does not pass embedding config to AgentDB, causing it to fall back to a different default model. Both issues cause @xenova/transformers to silently fail, and all semantic search degrades to hash pseudo-embeddings.
Bug 1: Bare model names in defaults
| File |
Value |
Should be |
init/types.ts FULL_INIT_OPTIONS |
all-mpnet-base-v2 |
Xenova/all-mpnet-base-v2 |
init/types.ts DEFAULT/CODEX_INIT_OPTIONS |
all-MiniLM-L6-v2 |
Xenova/all-MiniLM-L6-v2 |
commands/init.ts wizard choices + CLI flags |
bare names |
prefixed names |
mcp-tools/embeddings-tools.ts enum + default |
bare names |
prefixed names |
mcp-tools/hooks-tools.ts status model |
bare name |
prefixed name |
Bug 2: ControllerRegistry does not pass embedding config to AgentDB
@claude-flow/memory/src/controller-registry.ts line 723:
this.agentdb = new AgentDBClass({ dbPath }); // missing embeddingModel + dimension
The registry reads getEmbeddingConfig() at line 713-715 and caches the dimension, but never passes the model to AgentDB. AgentDB falls back to its own default (MiniLM 384-dim) instead of the configured model (mpnet 768-dim). The bridge then rejects the 384-dim result because config expects 768.
Fix
- Prefix all bare model defaults with
Xenova/
- Pass
embeddingModel and dimension from registry to new AgentDBClass()
Verification
After fix: memory store writes 768-dim Xenova/all-mpnet-base-v2 embeddings, memory search returns semantically relevant results.
Embedding model defaults across the CLI use bare names (e.g.
all-mpnet-base-v2) instead of prefixed names (Xenova/all-mpnet-base-v2). Additionally,ControllerRegistrydoes not pass embedding config toAgentDB, causing it to fall back to a different default model. Both issues cause@xenova/transformersto silently fail, and all semantic search degrades to hash pseudo-embeddings.Bug 1: Bare model names in defaults
init/types.tsFULL_INIT_OPTIONSall-mpnet-base-v2Xenova/all-mpnet-base-v2init/types.tsDEFAULT/CODEX_INIT_OPTIONSall-MiniLM-L6-v2Xenova/all-MiniLM-L6-v2commands/init.tswizard choices + CLI flagsmcp-tools/embeddings-tools.tsenum + defaultmcp-tools/hooks-tools.tsstatus modelBug 2: ControllerRegistry does not pass embedding config to AgentDB
@claude-flow/memory/src/controller-registry.tsline 723:The registry reads
getEmbeddingConfig()at line 713-715 and caches the dimension, but never passes the model to AgentDB. AgentDB falls back to its own default (MiniLM 384-dim) instead of the configured model (mpnet 768-dim). The bridge then rejects the 384-dim result because config expects 768.Fix
Xenova/embeddingModelanddimensionfrom registry tonew AgentDBClass()Verification
After fix:
memory storewrites 768-dimXenova/all-mpnet-base-v2embeddings,memory searchreturns semantically relevant results.