Skip to content

This release adds 3 notable features for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Summary

AI summary

pgvector HNSW indexing replaces the 500‑row in‑app scan, making all memories searchable by semantic similarity.

Full changelog

Headline

Central Intelligence scores 44.4% on LifeBench, the hardest published memory benchmark (2026, Nanjing University + Huawei). The key: pgvector HNSW indexing replaced the 500-row in-app vector scan, making all memories searchable by semantic similarity.

What Changed

pgvector ANN Search

The retrieval engine now uses PostgreSQL's pgvector extension with an HNSW index instead of fetching the 500 most recent memories and computing cosine similarity in JavaScript. This means all memories are searchable, not just the most recent 500.

  • migrate-pgvector.ts: enables extension, adds embedding_vec vector(1536) column, backfills from JSONB, creates HNSW index
  • Graceful fallback: if pgvector isn't installed, the old in-app cosine similarity still works
  • store() now writes both JSONB and native vector columns

Cross-Encoder Reranking (optional)

New rerank.ts service calls the Cohere Rerank API to re-score the top 100 retrieval candidates. Disabled by default — add COHERE_API_KEY as a Fly secret to enable. Falls back to passthrough scoring without the key.

Temporal Filtering

The /memories/recall endpoint now accepts date_from and date_to parameters. Both vector search and BM25 search apply the date range as a WHERE clause before scoring.

LifeBench Results on Landing Page & README

  • New benchmark section on centralintelligence.online with CI's per-category scores
  • LifeBench and AMB badges on GitHub README
  • Links to the arxiv paper and the open-source evaluation harness

LifeBench Scores

| Category | Accuracy |
|----------|----------|
| Information Extraction | 50.0% |
| Multi-hop Reasoning | 45.6% |
| Temporal & Knowledge Updating | 28.6% |
| Nondeclarative | 43.6% |
| Overall | 44.4% |

Tested on 1 user (14,910 memories, 207 questions). Evaluation harness: lifebench-eval

Files Changed

  • packages/api/src/db/migrate-pgvector.tsNEW pgvector migration
  • packages/api/src/services/rerank.tsNEW Cohere reranking service
  • packages/api/src/services/memories.ts — pgvector search path, reranking integration, temporal filtering
  • packages/api/src/routes/memories.tsdate_from/date_to params on recall
  • packages/api/src/index.ts — register pgvector migration on startup
  • README.md — LifeBench + AMB badges, benchmark results
  • landing/index.html — LifeBench results section

Upgrade Notes

  • pgvector migration runs automatically on startup. If the extension isn't available, the API falls back to the previous retrieval method.
  • Existing memories are backfilled from JSONB to native vector format on first startup (~30s for 15K memories).
  • No breaking API changes. date_from/date_to are optional new parameters.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track AlekseiMarchenko/central-intelligence

Get notified when new releases ship.

Sign up free

About AlekseiMarchenko/central-intelligence

Persistent memory for AI agents. Five tools (remember, recall, context, forget, share) with semantic search via vector embeddings and agent/user/org scoping. Works with Claude Code, Cursor, Windsurf, and any MCP client.

All releases →

Beta — feedback welcome: [email protected]