Vectorizer — alfirus.my
← ~/projects 2026 · Creator & maintainer
Vectorizer A lightweight, self-hosted semantic memory server for AI agents — stores messages as embeddings in ChromaDB with optional LLM-powered summarization, agentic dialectic chat, and reasoning graphs.
Go ChromaDB Docker gRPC MCP Qwen Embeddings TypeScript SDK Python SDK
Vectorizer — Semantic Memory Server
A lightweight, self-hosted memory server for AI agents. Stores messages as embeddings in ChromaDB with optional LLM-powered summarization and Q&A. Each agent gets isolated memory via workspace namespaces.
Features
Workspace isolation — ws_ collections, no cross-talk between agents
Semantic + hybrid search — vector cosine (HNSW) + BM25 RRF, temporal filters, grep
Peers + peer cards — agent identity management within workspaces
Agentic dialectic chat — observer/observed modes, reasoning levels, SSE streaming, 5 built-in tools
Reasoning graph + deriver — premise edges, BFS reasoning chains, async derivation
Conclusions + surprisal dreamer — offline summarization with surprisal gating
Optional LLM brain — summarization & RAG Q&A via /chat/completions
Auth — API key or JWT with peer scoping
Layered config — env > .env > config.toml > defaults
Docker-ready — one docker compose up (ChromaDB + Qwen embeddings + Vectorizer)
MCP + Skills + SDKs — 13 MCP tools, TypeScript & Python SDKs
Evals — LongMemEval-style recall + reasoning-grounded benchmarks
Architecture
Agent → Vectorizer API → ChromaDB (vectors) + Embedding Service
│
├─ Qwen3-Embedding-4B (1536d MRL)
├─ nomic-embed-text (768d fallback)
└─ text-embedding-3-small (OpenAI)
Tech Stack
Language: Go
Storage: ChromaDB
Embeddings: Qwen3-Embedding-4B (1536d), nomic-embed-text, OpenAI
Communication: REST API, gRPC, MCP
Deployment: Docker Compose
LLM Integration: OpenAI-compatible endpoints (qwen3:8b, gpt-4o-mini, etc.)
news (89) 05 Sept 2026
fix: chunkText byte-vs-rune panic on multibyte text (LastIndex byte offset misused as rune index) Date: 2026-09-04T13:48:59Z
New commit by alfirus: "fix: chunkText byte-vs-rune panic on multibyte text (LastIndex byte offset misused as rune index)" (998858a)
05 Sept 2026
fix: skip exports/ dir in code index (vault dumps are not code) 05 Sept 2026
fix: chroma volume mount /data in both compose files (persist_path overrides env) 05 Sept 2026
docs: proper server install/config — chroma /data mount gotcha, live .env, cron topology 05 Sept 2026
docs(skill): 25 tools — splice sections, provenance + code trios, metadata pitfall 05 Sept 2026
docs: README — provenance/splice/tokenizer/codeindex features, 25 MCP tools, RAG floors, /data/repo mount 05 Sept 2026
fix(codeindex): Callers handler reads nested metadata (GetReasoningChain nests under metadata key) 05 Sept 2026
fix(codeindex): case-insensitive CallEdges matching + surface edge errors 05 Sept 2026
feat(codeindex,mcp): phase 2 — POST /code/index + symbols/callers + 3 MCP tools 05 Sept 2026
feat(store,mcp,codeindex): splice updates, identifier-aware tokenizer, code-index prototype Date: 2026-09-04T13:04:01Z
New commit by alfirus: "fix: skip exports/ dir in code index (vault dumps are not code)" (b3e27d1)
Date: 2026-09-04T11:54:53Z
New commit by alfirus: "fix: chroma volume mount /data in both compose files (persist_path overrides env)" (c3e8615)
Date: 2026-09-04T10:08:12Z
New commit by alfirus: "docs: proper server install/config — chroma /data mount gotcha, live .env, cron topology" (179672c)
Date: 2026-09-04T09:35:23Z
New commit by alfirus: "docs(skill): 25 tools — splice sections, provenance + code trios, metadata pitfall" (84e926c)
Date: 2026-09-04T09:17:06Z
New commit by alfirus: "docs: README — provenance/splice/tokenizer/codeindex features, 25 MCP tools, RAG floors, /data/repo mount" (226259d)
Date: 2026-09-04T08:52:40Z
New commit by alfirus: "fix(codeindex): Callers handler reads nested metadata (GetReasoningChain nests under metadata key)" (0b5eb9f)
Date: 2026-09-04T08:39:53Z
New commit by alfirus: "fix(codeindex): case-insensitive CallEdges matching + surface edge errors" (8ee258c)
Date: 2026-09-04T08:04:02Z
New commit by alfirus: "feat(codeindex,mcp): phase 2 — POST /code/index + symbols/callers + 3 MCP tools" (52116d0)
Date: 2026-09-04T07:43:58Z
New commit by alfirus: "feat(store,mcp,codeindex): splice updates, identifier-aware tokenizer, code-index prototype" (01cdfcd)