-
Notifications
You must be signed in to change notification settings - Fork 3.2k
AgentDB: 4 controllers unimplemented (ContextSynthesizer, ReasoningBank, BatchOperations, CausalMemoryGraph bridge) #1492
Description
Environment
- ruflo@3.5.48 (npm install -g ruflo@latest)
- Node v20.19.4, Linux x64
- MCP server with
CLAUDE_FLOW_TOOL_GROUPS=memory,agentdb,embeddings,hooks - Database: ~/.swarm/memory.db with 1005 entries, 34 tables
Issue
agentdb_controllers reports 5 controllers, 4 active. However, several MCP tools that depend on agentdb controllers return errors because the backing controllers are never registered in the controller registry.
Working controllers (4/5)
| Controller | Status | Tools it powers |
|---|---|---|
| hierarchicalMemory | enabled | hierarchical-store, hierarchical-recall |
| tieredCache | enabled | (internal caching) |
| memoryGraph | enabled | (registered but causal-edge still fails) |
| memoryConsolidation | enabled | session-end |
Failing tools
| MCP Tool | Error | Expected Controller |
|---|---|---|
agentdb_context-synthesize |
"ContextSynthesizer not available" |
contextSynthesizer — never registered in any initializer |
agentdb_pattern-search |
"controller": "unavailable" |
reasoningBank — registered but enabled: false |
agentdb_batch |
"BatchOperations not available" |
Never registered |
agentdb_causal-edge |
"AgentDB bridge not available" |
memoryGraph is registered/enabled but bridge doesn't route to it |
Root cause analysis
-
contextSynthesizer:memory-bridge.js:1427callsregistry.get('contextSynthesizer')but no code in memory-initializer.js or anywhere else ever registers this key. The ContextSynthesizer class exists inagentdb/dist/src/controllers/ContextSynthesizer.jsbut is never imported or instantiated. -
reasoningBank: Registered at level 1 butenabled: false.memory-initializer.js:1300attemptsimport('agentic-flow/reasoningbank')— unclear if this import path resolves correctly with the current package structure. -
BatchOperations:memory-bridge.js:1381returns"BatchOperations not available"— no controller provides this capability. -
causal-edge:memoryGraphcontroller is registered and enabled, butmemory-bridge.jsfor causal-edge falls through to the "bridge not available" error instead of routing to memoryGraph.
Reproduction
# Install
npm install -g ruflo@3.5.48
# Start MCP and call tools
ruflo mcp start
# Via MCP client:
agentdb_controllers # → shows 5 controllers, 4 active
agentdb_context-synthesize(query: "test") # → ContextSynthesizer not available
agentdb_pattern-search(query: "test") # → controller: unavailable
agentdb_batch(operation: "insert", entries: [...]) # → BatchOperations not available
agentdb_causal-edge(sourceId: "a", targetId: "b", relation: "references") # → bridge not availableImpact
These 4 tools are exposed in the MCP tool list (users see them and expect them to work) but silently fail. This blocks use cases that depend on:
- Context synthesis from stored memories
- Pattern search with confidence scoring
- Bulk memory operations
- Knowledge graph edges between entries
Suggested fix
- Register ContextSynthesizer from agentdb controllers package during initialization
- Investigate why reasoningBank is disabled — enable or document requirements
- Implement BatchOperations (or route batch calls through existing memory_store in a loop)
- Fix causal-edge routing to use the already-registered memoryGraph controller