agent-knowledge
English | 简体中文
Long-term knowledge for AI agents. Conversations, documents, and decisions are auto-compiled into a structured knowledge base with source provenance, confidence tracking, and contradiction detection. Drop-in MCP server — Claude Code, Cursor, Codex, and any MCP-aware client connect with one config line.
Why
LLM memory today is either flat RAG chunks or a key-value preference cache. Neither answers "how did we get here?".
agent-knowledge adds a knowledge-compilation layer: raw material is decomposed into Claims and Evidence, claims about the same entity are merged into a Compiled Truth, and a timeline is kept append-only — rewritten holistically when new evidence arrives. Every fact is traceable to its source, timestamp, and confidence.
Before / After
Scenario: over 10 weeks the team revisits its frontend stack three times — Week 1 picks Vue, Week 6 evaluates React, Week 10 switches to React. All three meeting notes are in the agent's conversation history.
A new teammate asks the agent "what frontend are we on, and why?"
Without — RAG over chat history
The team decided to use Vue as the frontend framework.
Vector search returns the highest-similarity chunk (the earliest meeting note). No temporal awareness → stale answer.
With agent-knowledge — ak_query returns the entity (real vault YAML)
name: Frontend stack
entity_type: concept
compiled_truth:
claims:
- text: use React for the dashboard
status: active
confidence: 0.85
evidence:
- source_id: c3a9d1f2
weight: 1.0
- text: use Vue for the dashboard
status: superseded
confidence: 0.65
evidence:
- source_id: a1b2c3d4
weight: 0.7
timeline:
- date: 2026-02-01
title: Decided on Vue
source_id: a1b2c3d4
- date: 2026-03-12
title: Evaluated React
source_id: b5e6f7a8
- date: 2026-04-09
title: Switched to React; Vue ecosystem limits
source_id: c3a9d1f2
The agent now sees the current fact, the timeline, the sources, and the superseded prior claim in one call. Its answer naturally becomes "we're on React — switched from Vue in April due to ecosystem limits," with every fact traceable to a source.
Quick Start
pip install compiled-memory # PyPI package; the Python module is `agent_knowledge`
ak init ~/my-knowledge
ak ingest ~/my-knowledge --file ./meeting-notes.md
ak query ~/my-knowledge "why did we pick React?"
ak dream ~/my-knowledge # offline consolidation
ak lint ~/my-knowledge # health check
Or run it as an MCP server, plugged into any MCP-aware client:
ak mcp ~/my-knowledge
Copy-paste configs for Claude Code / Cursor / Codex live in examples/mcp/; the full tool list is in docs/mcp-integration.md. Agents picking up this repo should read AGENTS.md first.
Architecture
┌─────────────────────────────────┐
│ Adapter Layer │ CLI · MCP · pull adapters
├─────────────────────────────────┤
│ UMSF Boundary │ unified data contract
├─────────────────────────────────┤
│ Knowledge Layer (core) │ Compiler · Compiled Truth · Hooks · Dream
├─────────────────────────────────┤
│ Storage │ Vault (YAML) + EventIndex (SQLite)
├─────────────────────────────────┤
│ Search Layer │ Exact + BM25 + Graph + RRF + Reranker
└─────────────────────────────────┘
- Knowledge Layer — pure Python over local files, no external services
- Search Layer — zero dependencies by default; optional embedding model for stronger semantic recall
- Adapter Layer — UMSF unifies the boundary; a new agent adapter is ~80 lines
See docs/architecture.md.
Benchmark
LongMemEval-S (ICLR 2025) — 500 questions, ~48 sessions/question, ~115K tokens/question:
| Metric | Score |
|---|---|
| R@5 | 96.6% |
| R@10 | 98.2% |
| MRR | 0.9031 |
| NDCG@10 | 0.9218 |
Zero vector dependencies — BM25 + Exact Match + RRF only. Full per-type breakdown in BENCHMARK.md.
Documentation
AGENTS.md— project guide for AI agentsdocs/architecture.md— five-layer architecture and data flowdocs/adapters.md— writing a new adapterdocs/mcp-integration.md— MCP server integrationBENCHMARK.md— benchmark reproductionexamples/mcp/— ready-to-use MCP client configs
License
MIT
Metadata
Release files for compiled-memory 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| compiled_memory-0.3.1.tar.gz | 153.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| compiled_memory-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 258.8 kB
Release files / compiled_memory-0.3.1.tar.gz
| Download URL | compiled_memory-0.3.1.tar.gz |
|---|---|
| Size | 153.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b3565196b55bda5828b8a040d3ecd90fcc852650ab80e531ec6ab7df63897de1
|
|
BLAKE2b-256 checksum How to use checksums |
01d9fc530e832587954c038752c8a750ea36e21bc8e8b24bcd17e6a484125a46
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 16, 2026.
Transparency logRelease files / compiled_memory-0.3.1-py3-none-any.whl
| Download URL | compiled_memory-0.3.1-py3-none-any.whl |
|---|---|
| Size | 105.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
141496dedd56e5a147dbbb5fe8a528ee7d8ec34623c480ed3ed22fc704707a88
|
|
BLAKE2b-256 checksum How to use checksums |
d75d7079a6cddd5f54491fd9b6a9e3f3ca16b72f83b2829d9e8828f8e1fcd701
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 16, 2026.
Transparency log