How evsio0n/minizep works
minizep is a temporal knowledge-graph memory service for AI agents. An agent submits text through MCP or REST; the service checks access, then ingests an episode, uses an LLM to extract entities, facts, and invalidations, and records time-bounded knowledge with episode provenance. Agents can query current or historical facts through hybrid keyword/vector retrieval with graph-aware reranking. The product also provides asynchronous ingestion, access management, a web UI, persistent memory backends, and a stdio-to-HTTP bridge. Some subsystem links reflect README capabilities because their source was not sampled.
Main entry points: service.ts Memory service · app.ts HTTP application · memory-store.ts Graph store API · index.ts Minizep API
Components 26
Agent interfaces
- MCP server
src/server/mcp.ts - stdio transport
src/server/stdio.ts - stdio HTTP bridge
src/server/stdio-proxy.ts - HTTP application
src/server/app.ts - REST API
src/server/rest.ts - MCP tools
src/server/tools.ts - Web UI
src/server/ui.ts
Service layer
- Memory service
src/server/service.ts - Authentication
src/server/auth.ts - Access control
src/server/access.ts - Ingestion jobs
src/jobs/queue.ts
Memory engine
- Minizep API
src/index.ts - Episode ingestion
src/pipeline/ingest.ts - Hybrid retrieval
src/search/retrieval.ts - Graph reranking
src/search/rerank.ts - Temporal model
src/model/types.ts
Memory storage
- Graph store API
src/store/memory-store.ts - Memory graph
src/store/memory-store.ts - Postgres graph
src/store/postgres-store.ts - Snapshot persistence
src/store/persistence.ts
Model providers
- Provider interfaces
src/provider/interfaces.ts - LLM providers
src/provider/openai-llm.ts - Embedding providers
src/provider/openai-embedder.ts
Other components
- AI agent
- LLM service
- Embedding service
Connections 37
- AI agent → MCP server: sends MCP
- AI agent → HTTP application: sends HTTP
- AI agent → stdio HTTP bridge: uses stdio
- stdio HTTP bridge → HTTP application: forwards requests
- MCP server → stdio transport: uses transport
- MCP server → MCP tools: dispatches tools
- HTTP application → REST API: dispatches REST
- HTTP application → MCP server: dispatches MCP
- HTTP application → Web UI: serves UI
- HTTP application → Memory service: routes requests
- HTTP application → Authentication: checks identity
- MCP tools → Memory service: invokes operations
- REST API → Memory service: invokes operations
- Web UI → REST API: calls UI API
- Memory service → Authentication: resolves groups
- Memory service → Access control: manages access
- Memory service → Minizep API: calls memory API
- Memory service → Ingestion jobs: queues ingestion
- Memory service → Snapshot persistence: persists snapshots
- Minizep API → Episode ingestion: ingests episodes
- Minizep API → Hybrid retrieval: retrieves facts
- Hybrid retrieval → Graph reranking: reranks candidates
- Minizep API → Graph store API: reads and writes
- Episode ingestion → Graph store API: writes graph
- Episode ingestion → LLM providers: extracts facts
- Episode ingestion → Embedding providers: embeds records
- Hybrid retrieval → Graph store API: reads graph
- Hybrid retrieval → Embedding providers: embeds query
- Graph store API → Memory graph: uses memory backend
- Graph store API → Postgres graph: uses database backend
- Snapshot persistence → Memory graph: snapshots graph
- Memory graph → Temporal model: stores temporal records
- Postgres graph → Temporal model: stores temporal records
- LLM providers → Provider interfaces: implements provider
- Embedding providers → Provider interfaces: implements provider
- LLM providers → LLM service: calls completion API
- Embedding providers → Embedding service: requests vectors