io.github.AlekseiMarchenko/central-intelligence
Persistent memory for AI agents. Store, recall, and share knowledge across sessions.
Ask AI about io.github.AlekseiMarchenko/central-intelligence
Powered by Claude Β· Grounded in docs
I know everything about io.github.AlekseiMarchenko/central-intelligence. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Central Intelligence
Agents forget. CI remembers.
Persistent memory for AI agents. Store, recall, and share information across sessions. Works with Claude Code, Cursor, LangChain, CrewAI, and any agent that supports MCP.
CI never rewrites your memories. Facts are extracted for search, but your content is always returned verbatim. No junk memories, no hallucinated rewrites, no data loss.
Quick Start (30 seconds)
# One command β gets API key + auto-configures your AI tools
npx central-intelligence-local signup
# Done. Your agent now has persistent memory.
# Restart Claude Code / Cursor / Windsurf to activate.
Or run locally with no cloud:
npm i -g central-intelligence-local && ci dashboard
# Installs and opens the dashboard at localhost:3141
When to Use Central Intelligence
Heuristic: If you would write it in a note to your future self, store it in Central Intelligence.
| Scenario | What to do |
|---|---|
| Starting a new session, need context from before | recall or context |
| Discovered something important (architecture, preferences, fixes) | remember |
| Multiple agents working on the same project | share with user/org scope |
| You keep re-learning the same things each session | remember once, recall forever |
| Handing off a task to another agent or session | remember key decisions, next agent calls context |
| User tells you the same preferences repeatedly | remember them, check with recall next time |
Don't store: secrets, passwords, API keys, PII, large binary files, or ephemeral scratch data.
The Problem
Every AI agent session starts from zero. Your agent learns your preferences, understands your codebase, figures out your architecture β then the session ends and it forgets everything. Next session? Same questions. Same mistakes. Same context-building from scratch.
Central Intelligence fixes this.
What It Does
Five MCP tools give your agent a long-term memory:
| Tool | Description | Example |
|---|---|---|
remember | Store information for later | "User prefers TypeScript and deploys to Fly.io" |
recall | Semantic search across past memories | "What does the user prefer?" |
context | Auto-load relevant memories for the current task | "Working on the auth system refactor" |
forget | Delete outdated or incorrect memories | forget("memory_abc123") |
share | Make memories available to other agents | scope: "agent" β "org" |
Benchmarks
LifeBench (2026) β Long-Term Multi-Source Memory
CI scores 52.2% on LifeBench, the hardest published memory benchmark (2,003 questions across 10 users, 51K real-world events including messages, calendar, health records, notes, and calls).
| Overall | Info Extraction | Multi-hop | Temporal | Nondeclarative |
|---|---|---|---|---|
| 52.2% | 47.2% | 52.9% | 46.4% | 64.1% |
Answer model: gpt-5.4-mini. Judge: gpt-4.1-mini. Evaluation harness: lifebench-eval.
LongMemEval (ICLR 2025) β Conversational Memory
CI scores 75.0% on LongMemEval, testing conversational memory across 500 questions spanning single-session recall, multi-session reasoning, temporal reasoning, knowledge updates, and preference tracking.
| Overall | Single-session | Multi-session | Temporal | Preference |
|---|---|---|---|---|
| 75.0% | 91.9% | 66.2% | 69.9% | 76.7% |
Answer model: gpt-5.4-mini. Judge: gpt-4o. Evaluation harness: lifebench-eval.
Agent Memory Benchmark (AMB) β Infrastructure Testing
Test CI against other providers using the open-source Agent Memory Benchmark:
npx agent-memory-benchmark --provider central-intelligence --api-key $CI_API_KEY
Note: AMB is maintained by the same author as Central Intelligence. Run it yourself and verify the results. PRs with new provider adapters are welcome.
Roadmap
Advanced retrieval β fact extraction, entity graph, multi-hop reasoning, temporal inference, explainability traces β is prototyped in the codebase and coming to Enterprise. Architecture details: v1.0.0 prototype release. Commercial availability: pricing.
Cross-Tool Memory
CI Local reads config files from 5 AI coding platforms and makes them searchable alongside your stored memories:
| Platform | Config file | How it's parsed |
|---|---|---|
| Claude Code | CLAUDE.md | Section-based (## headings) |
| Cursor | .cursor/rules | Paragraph-based |
| Windsurf | .windsurf/rules | Paragraph-based |
| Codex | codex.md | Section-based |
| GitHub Copilot | .github/copilot-instructions.md | Section-based |
Memories stored via Claude Code are discoverable when using Cursor, and vice versa. Your AI memory works everywhere, not just in one tool.
Recall responses now include source (which tool the memory came from), freshness_score (how recent), and duplicate_group (near-duplicate detection across tools).
How It Works
Agent (Claude, Cursor, Windsurf, Copilot, Codex)
β MCP protocol
Central Intelligence MCP Server (local, thin client)
β
SQLite + vector embeddings + config file parsing
β
Hybrid search: vector + FTS5 + fuzzy + temporal decay
β
Central Intelligence API (hosted)
β
PostgreSQL + pgvector + fact decomposition + entity graph
β
4-way retrieval: vector + BM25 + graph traversal + temporal
β
Local ONNX cross-encoder reranker (zero API cost)
Every memory is decomposed into structured facts with entities, temporal info, and causal relations. Recall runs a dual-path architecture: both fact-based 4-way search (vector, BM25, graph traversal, temporal) and memory-based 2-way search run in parallel. A query type classifier routes each question to the best retrieval path, and results are fused with Reciprocal Rank Fusion and reranked with a local cross-encoder model. Config files from all supported platforms are parsed, embedded, and cached locally.
Memory Scopes
| Scope | Visible to | Use case |
|---|---|---|
agent | Only the agent that stored it | Personal context, session continuity |
user | All agents serving the same user | User preferences, cross-tool context |
org | All agents in the organization | Shared knowledge, team decisions |
MCP Server Setup
Claude Code
Add to ~/.claude/settings.json under mcpServers:
{
"central-intelligence": {
"command": "npx",
"args": ["-y", "central-intelligence-mcp"],
"env": {
"CI_API_KEY": "your-api-key"
}
}
}
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"central-intelligence": {
"command": "npx",
"args": ["-y", "central-intelligence-mcp"],
"env": {
"CI_API_KEY": "your-api-key"
}
}
}
}
Any MCP-Compatible Client
The MCP server is published as central-intelligence-mcp on npm. Point your MCP client to it with the CI_API_KEY environment variable set.
CLI Usage
# Install globally
npm install -g central-intelligence-local
# Get API key + auto-configure AI tools
ci signup
# Open local memory dashboard
ci dashboard
# Sync local memories to cloud
ci sync
# Audit memory health (duplicates, staleness, health score)
ci audit
# Import from ChatGPT data export
ci chatgpt-import conversations.json
# Export/import memory bundles
ci export -o memories.json
ci import memories.json
REST API
Base URL: https://central-intelligence-api.fly.dev
All endpoints require Authorization: Bearer <api-key> header.
Create API Key
curl -X POST https://central-intelligence-api.fly.dev/keys \
-H "Content-Type: application/json" \
-d '{"name": "my-key"}'
POST /memories/remember
{
"agent_id": "my-agent",
"content": "User prefers TypeScript over Python",
"tags": ["preference", "language"],
"scope": "agent"
}
POST /memories/recall
{
"agent_id": "my-agent",
"query": "what programming language does the user prefer?",
"limit": 5
}
Response:
{
"memories": [
{
"id": "uuid",
"content": "User prefers TypeScript over Python",
"relevance_score": 0.434,
"tags": ["preference", "language"],
"scope": "agent",
"created_at": "2026-03-22T21:42:34.590Z"
}
]
}
POST /memories/context
{
"agent_id": "my-agent",
"current_context": "Setting up a new web project for the user",
"max_memories": 5
}
DELETE /memories/:id
POST /memories/:id/share
{
"target_scope": "org"
}
GET /usage
Returns memory counts, usage events, and active agents for the authenticated API key.
Self-Hosting
# Clone and install
git clone https://github.com/AlekseiMarchenko/central-intelligence.git
cd central-intelligence
npm install
# Set up PostgreSQL
createdb central_intelligence
psql -d central_intelligence -f packages/api/src/db/schema.sql
# Configure
cp .env.example .env
# Edit .env: set DATABASE_URL and OPENAI_API_KEY
# Run
npm run dev:api
Deploy to Fly.io
fly apps create my-ci-api
fly postgres create --name my-ci-db
fly postgres attach my-ci-db
fly secrets set OPENAI_API_KEY=sk-...
fly deploy
Then point the MCP server to your instance:
{
"env": {
"CI_API_KEY": "your-key",
"CI_API_URL": "https://your-app.fly.dev"
}
}
Architecture
central-intelligence/
βββ packages/
β βββ api/ # Backend API (Hono + PostgreSQL + pgvector)
β β βββ src/
β β β βββ db/ # Schema, migrations (facts, entities, pgvector, hybrid)
β β β βββ middleware/ # Auth, rate limiting, billing, x402 payments
β β β βββ routes/ # REST endpoints, dashboard, docs, demo
β β β βββ services/ # Core logic:
β β β βββ memories.ts # Store + v2 hybrid recall (pgvector + BM25 + RRF + reranker)
β β β βββ rerank.ts # bge-reranker-v2-m3 (local ONNX), Cohere API fallback
β β β βββ embeddings.ts # OpenAI text-embedding-3-small
β β β βββ encryption.ts # AES-256-GCM at rest
β β β βββ date-parser.ts # Temporal extraction from memory content
β β β βββ auth.ts # API key validation
β β β βββ fact-extraction.ts # [Enterprise] Structured fact decomposition via GPT-4o-mini
β β β βββ entity-resolution.ts # [Enterprise] Trigram + co-occurrence entity merging
β β β βββ observations.ts # [Enterprise] Auto-synthesized higher-level facts
β β β βββ query-decompose.ts # [Enterprise] Query expansion via GPT-4o-mini
β β βββ tests/ # Vitest
β βββ mcp-server/ # MCP server (npm: central-intelligence-mcp)
β βββ cli/ # Cloud CLI (npm: central-intelligence-cli, legacy)
β βββ local/ # Local memory with cross-tool config parsing
β βββ node-sdk/ # Node.js/TypeScript SDK (npm: central-intelligence-sdk)
β βββ python-sdk/ # Python SDK (PyPI: central-intelligence)
β βββ openclaw-skill/ # OpenClaw skill file
βββ .github/workflows/ # CI (typecheck + test) + Deploy (Fly.io)
βββ benchmark/ # LifeBench VM (self-contained Fly machine)
βββ db/ # Custom Postgres image with pgvector baked in
βββ landing/ # Landing page
βββ Dockerfile # API container (non-root, ONNX model pre-cached)
βββ fly.toml # Fly.io config (iad region, health checks)
βββ README.md
Pricing
| Tier | Price | Memories | Agents |
|---|---|---|---|
| Free | $0 | 500 | Unlimited |
| Pro | $29/mo | 50,000 | Unlimited |
| Team | $99/mo | 500,000 | Unlimited |
See centralintelligence.online/#pricing for the latest.
Contributing
Contributions welcome. Open an issue or PR.
