How openmemind/memind works
Memind is a self-evolving memory and context engine for AI applications and agents. Its documented workflow ingests conversations and other context, turns it into structured memories and evolving insights, graphs, and threads, then retrieves relevant context through REST, MCP, SDKs, and integrations. The graph preserves these distinct domain stages and the admin UI and benchmark capability. Edges are based on README descriptions or visible source calls; unsampled subsystems are represented only where the README supports them.
Main entry points: OpenMemoryQueryController.java Memind server · App.tsx Admin UI · MemoryItem.java Memory items · MemoryRawData.java Raw context
Components 19
Product interfaces
- Memind server
memind-server/src/main/java/com/openmemind/ai/memory/server/controller/openapi/OpenMemoryQueryController.java - MCP tools
memind-server/src/main/java/com/openmemind/ai/memory/server/mcp/MemindMcpToolService.java
Memory processing
- Raw context
memind-core/src/main/java/com/openmemind/ai/memory/core/data/MemoryRawData.java - Extraction
memind-core/src/main/java/com/openmemind/ai/memory/core/extraction/DefaultMemoryExtractor.java - Memory items
memind-core/src/main/java/com/openmemind/ai/memory/core/data/MemoryItem.java - Insight trees
memind-core/src/main/java/com/openmemind/ai/memory/core/extraction/insight/InsightLayer.java - Memory graph
memind-core/src/main/java/com/openmemind/ai/memory/core/retrieval/graph/GraphExpansionEngine.java - Memory threads
memind-core/src/main/java/com/openmemind/ai/memory/core/extraction/thread/ThreadDecisionEngine.java
Context retrieval
- Context retrieval
memind-core/src/main/java/com/openmemind/ai/memory/core/builder/MemoryRetrievalAssembler.java - Memory assets API
memind-server/src/main/java/com/openmemind/ai/memory/server/service/memory/OpenMemoryAssetQueryService.java
Operations and evaluation
- Admin UI
memind-ui/src/App.tsx - Dashboard queries
memind-server/src/main/java/com/openmemind/ai/memory/server/service/dashboard/DashboardQueryService.java - Insight queries
memind-server/src/main/java/com/openmemind/ai/memory/server/service/insight/InsightQueryService.java - Graph queries
memind-server/src/main/java/com/openmemind/ai/memory/server/service/itemgraph/ItemGraphQueryService.java - Thread queries
memind-server/src/main/java/com/openmemind/ai/memory/server/service/memorythread/MemoryThreadQueryService.java - Benchmark pipeline
memind-evaluation/src/main/java/com/openmemind/ai/memory/evaluation/pipeline/BenchmarkPipeline.java
Client ecosystem
- API clients
memind-clients/go/client.go - Agent plugins
memind-integrations/openclaw/src/client.ts
Other components
- AI application
Connections 18
- AI application → Memind server: submits context
- AI application → Memind server: requests recall
- Memind server → Raw context: ingests sources
- Raw context → Extraction: extracts memories
- Extraction → Memory items: structures context
- Memory items → Insight trees: distills insights
- Memory items → Memory graph: materializes links
memind-core/src/main/java/com/openmemind/ai/memory/core/retrieval/graph/GraphExpansionEngine.java - Memory items → Memory threads: groups episodes
memind-core/src/main/java/com/openmemind/ai/memory/core/extraction/thread/ThreadDecisionEngine.java - Memind server → Context retrieval: assembles context
- Context retrieval → AI application: returns context
- MCP tools → Memory assets API: exposes assets
- API clients → Memind server: calls API
- Agent plugins → Memind server: integrates API
- Admin UI → Dashboard queries: views dashboard
- Admin UI → Insight queries: views insights
- Admin UI → Graph queries: explores graph
- Admin UI → Thread queries: views threads
- Benchmark pipeline → AI application: evaluates answers
memind-evaluation/src/main/java/com/openmemind/ai/memory/evaluation/pipeline/BenchmarkPipeline.java