Zengram
Your AI agents forget everything between sessions. This fixes that.
Your agents don't talk to each other
You don't run one AI agent — you run many. Claude Code on your laptop, an autonomous agent on a server, n8n workflows on another machine. Each one maintains its own context. When one discovers something important, the others never learn about it.
Zengram is the shared brain that connects them all.
Store, search, and share memories
A REST API sits between your agents and a triple-path retrieval layer. Agents store memories with type, importance, and source metadata. Search combines vector similarity, BM25 keyword matching, and entity graph traversal — fused with Reciprocal Rank Fusion. The system handles embeddings, credential scrubbing, deduplication, and decay automatically.
4 memory types, each with different behavior:
| Type | Purpose | Decays? | Example |
|---|---|---|---|
| event | Something happened | No | "Deploy completed at 14:30" |
| fact | Persistent knowledge | Yes | "Client prefers formal tone" |
| status | Current state (supersedes previous) | Yes | "API rate limit: 100/min" |
| decision | Choices made with reasoning | No | "Chose Postgres over MySQL for X" |
How it all connects
Hover over any node to learn what it does. Data flows left to right — agents store and search memories through a central API backed by dual storage.
↑ Hover a node to see details
Up and running in 60 seconds
git clone https://github.com/ZenSystemAI/Zengram.git cd Zengram cp .env.example .env # Edit .env with your API keys docker compose up -d
That's it. Qdrant + the Memory API are running. Point your agents at localhost:8084.
Built in production
This isn't a weekend project. Zengram runs in production coordinating 10+ AI agents across 3 machines, powering client deliverables for a digital agency. It was built because nothing on the market handled cross-machine agent memory well.