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) 25 Aug 2026
[ef5cdbf] docs: add end-to-end workflow user prompt -> AI -> Vectorizer -> response Commit: ef5cdbf
Date: 2026-08-24
Author: alfirus
docs: add end-to-end workflow user prompt -> AI -> Vectorizer -> response
View on GitHub
25 Aug 2026
[70c615f] fix: fiber error handler, scope metadata, workspace validation, rate limit JWT, version 25 Aug 2026
[c05d564] chore: remove .agents folder 25 Aug 2026
[a01f80c] chore: bootstrap .agent/AGENTS.md (persistent AI instructions) 25 Aug 2026
[7a38790] chore: move SKILL.md from .agents to skills/vectorizer, fix .gitignore 25 Aug 2026
[8469fd8] chore: remove autonomous honcho sync (detector + scheduler) 25 Aug 2026
[459f2d4] feat: Honcho full parity + autonomous sync 25 Aug 2026
[82b1538] feat: Phase 5 complete — hot-swap + gRPC 25 Aug 2026
[c0c502a] docs: BLUEPRINT 0.2.0 + README + layered config.toml (env>.env>config.toml>defaults) 25 Aug 2026
[df3e137] feat: JWT auth, reasoning levels, eval harness Commit: 70c615f
Date: 2026-08-24
Author: alfirus
fix: fiber error handler, scope metadata, workspace validation, rate limit JWT, version
ErrorHandler respects fiber.Error code (was always 500)
AddMessage propagates scope/peer_id into msg.Metadata + 100k cap
EnsureCollection drops session_id (workspace isolation)
/metrics public, workspace name validation + sanitization
rate limiter key from JWT workspace, 429, query limits
version 0.1.0 -> 0.2.0, grpc port in config.toml.example
View on GitHub
Commit: c05d564
Date: 2026-08-24
Author: alfirus
chore: remove .agents folder
View on GitHub
Commit: a01f80c
Date: 2026-08-24
Author: alfirus
chore: bootstrap .agent/AGENTS.md (persistent AI instructions)
Implements zed agent skill: check .agent first, create missing
instruction files before substantial work. Baseline AGENTS.md with
Vectorizer architecture (Go/Fiber 768d, layered config, store/handler layers)
View on GitHub
Commit: 7a38790
Date: 2026-08-24
Author: alfirus
chore: move SKILL.md from .agents to skills/vectorizer, fix .gitignore
.agents is reserved for AI coder guidelines, not distributable Skills
Fix /vectorizer ignore to not match skills/vectorizer
Add .agents/README.md placeholder
View on GitHub
Commit: 8469fd8
Date: 2026-08-24
Author: alfirus
chore: remove autonomous honcho sync (detector + scheduler)
View on GitHub
Commit: 459f2d4
Date: 2026-08-24
Author: alfirus
feat: Honcho full parity + autonomous sync
Full CRUD parity: workspaces PUT/DELETE/search/queue/dream, peers update/sessions/representation, sessions clone/context, messages PUT/DELETE/GET, conclusions batch/query, scopes full CRUD, keys endpoints, webhooks delete/test
Autonomous: scripts/honcho_sync (route diff vs Honcho), .github/workflows/honcho-sync.yml weekly cron
Fix generate_jwt path to scripts/generate_jwt/main.go
View on GitHub
Commit: 82b1538
Date: 2026-08-24
Author: alfirus
feat: Phase 5 complete — hot-swap + gRPC
hot-swap: embed SetModel/SetBaseURL, POST/GET /admin/embedding
gRPC: proto/vectorizer.proto (AddMessage/Search/Chat/Health), vectorizerpb, internal/grpc, GRPC_PORT 50051, compose+DOCKER expose, config.toml [grpc]
docs: BLUEPRINT Phase 5 all checked
View on GitHub
Commit: c0c502a
Date: 2026-08-24
Author: alfirus
docs: BLUEPRINT 0.2.0 + README + layered config.toml (env>.env>config.toml>defaults)
Honcho-competitive: peers, dialectic, conclusions/dreamer 768d, JWT, eval harness
Fix remaining gap: BurntSushi/toml layered config with sections [app][db][auth][embedding][llm]
View on GitHub
Commit: df3e137
Date: 2026-08-24
Author: alfirus
feat: JWT auth, reasoning levels, eval harness
JWT: internal/security (w/p/ad), AUTH_USE_AUTH/AUTH_JWT_SECRET, scripts/generate_jwt.go (-workspace/-peer/-admin/-expires), fiber middleware with workspace scoping
chat: reasoning_level none/low/medium/high/max -> nResults+temp via ChatWithTemp
evals: evals/run.go + sample LongMemEval-style harness, recall metric
View on GitHub