WanYi Memory Core 万忆中枢
永不遗忘的全量记忆系统 — Event-sourced long-term memory for AI agents: process memory, mistake books, experience crystallization, confidence-based decision blocking, counterfactual branches, cross-domain analogy, trajectory replay, proactive partner, semantic vector retrieval, reranker, memory graph, time decay and metacognitive knowledge-gaps. Ships as a local-first MCP server with 23 tools. Your data never leaves your machine.
Why
LLM agents forget. Every chat window is amnesia: preferences, lessons, and hard-won experience evaporate when the session ends. Existing memory systems either store in the cloud (privacy risk), require heavy infrastructure, or only do keyword search (missing semantic recall).
WanYi Memory Core is a local-first, full-quantity, self-evolving memory system:
- Event sourcing — an append-only WAL is the single source of truth. Nothing is ever deleted; decay only affects retrieval ranking.
- Semantic recall — hybrid retrieval: BM25 keywords + local Chinese embedding (BAAI/bge-small-zh-v1.5) + reranker (BAAI/bge-reranker-base) + knowledge-graph expansion + explicit time decay.
- Metacognition — when recall is weak, the system admits it and records a knowledge-gap instead of hallucinating an answer.
- Decision guardrails — high-risk actions (all-in, revenge-trading, force-push, rm -rf) trigger confidence-based blocking with counterfactual branches: you see what would have happened if you had listened.
- Zero-participation evolution — no need to say "remember this"; the system decides what to store, consolidates overnight, and surfaces weekly trajectory reviews.
Install
pip install wanyimem # core
pip install "wanyimem[all]" # + vector & reranker models deps
Requires Python 3.10+. Models (embedding ~95MB, reranker ~1.1GB) are downloaded on first use from HuggingFace; set HF_ENDPOINT=https://hf-mirror.com if you are in mainland China.
Before the PyPI release lands, you can also install directly from GitHub (identical code):
pip install "git+https://github.com/17861102832/wanyimem.git"
Quick Start (MCP)
Add to your mcp.json (Claude Desktop, Cursor, Trae, etc.):
{
"mcpServers": {
"wanyi": {
"command": "python",
"args": ["-m", "wanyi.memory_core"],
"env": {
"万忆中枢_STORE_DIR": "C:/path/to/your/memory"
}
}
}
}
Then any agent can call the 23 tools, e.g.:
万忆记录见闻 → "2026年5月基金大跌时我死扛不止损,亏了18%才割肉。"
万忆召回记忆 → query "认赔离场到底对不对" # semantic match even with zero shared keywords
万忆置信度决策检查 → "我要全仓梭哈" # BLOCK if confidence is low, with historical mistakes
Quick Start (Library)
from wanyi import WanYiCore
engine = WanYiCore()
engine.tool_record_memory(
content="止损纪律:亏损超过8%必须无条件卖出",
layer="法", mem_type="principle",
)
resp = engine.tool_recall_memory("认赔离场到底对不对", limit=5)
for m in resp["memories"]:
print(m["content"], m.get("_rerank_score"))
Features
| Area | Capability |
|---|---|
| Storage | SQLite + append-only event WAL; 道/法/术 three-layer half-lives |
| Retrieval | Keyword BM25 + vector (bge-small-zh) + reranker (bge-reranker-base) + graph expansion + time-decay fields |
| Metacognition | knowledge-gap auto-record, stats self-check, honest "I don't know" |
| Guardrails | confidence-based decision blocking, counterfactual branches with auto-settlement, cross-domain analogy bridging |
| Proactivity | daily brief on LOAD, due-branch reminders, weekly trajectory replay, risk-keyword alert |
| Growth | mistake book, experience crystallization, overnight consolidation, evolution queries |
| Privacy | fully local, zero telemetry, no cloud dependency |
Benchmark (mini LongMemEval, cross-session fact recall, 10 cases): Recall@5 = 90%, MRR = 0.900.
Docs
Contributing
See CONTRIBUTING.md. Report vulnerabilities privately via SECURITY.md.
License
MIT © 2026 Zhao Xikun
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wanyimem-1.0.0.tar.gz.
File metadata
- Download URL: wanyimem-1.0.0.tar.gz
- Upload date:
- Size: 87.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41ea074a1b83a713477b4e97fd0474de6b46384b5a56eb22eb592ad8f7a74b9c
|
|
| MD5 |
ded602a197cea66036a1078b5c575695
|
|
| BLAKE2b-256 |
6b7d1eb14db5ce7cd826b1f5c2d5e740311a12dcc11681d94961091a08714c35
|
Provenance
The following attestation bundles were made for wanyimem-1.0.0.tar.gz:
Publisher:
publish.yml on 17861102832/wanyimem
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wanyimem-1.0.0.tar.gz -
Subject digest:
41ea074a1b83a713477b4e97fd0474de6b46384b5a56eb22eb592ad8f7a74b9c - Sigstore transparency entry: 2556680511
- Sigstore integration time:
-
Permalink:
17861102832/wanyimem@71527f8255689fb89897fe4b30e043cabff0821f -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/17861102832
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@71527f8255689fb89897fe4b30e043cabff0821f -
Trigger Event:
push
-
Statement type:
File details
Details for the file wanyimem-1.0.0-py3-none-any.whl.
File metadata
- Download URL: wanyimem-1.0.0-py3-none-any.whl
- Upload date:
- Size: 85.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b20ac174e28ff27f22bdd9cb3c14cd2b2189848c607187509086fe3d68af0f7
|
|
| MD5 |
3226989c46d0930a97de405a4b211f3e
|
|
| BLAKE2b-256 |
433e65d5cdb608b2793ab9d13778589422a1a2e6805ca5b6735b5a1fbe5af6d0
|
Provenance
The following attestation bundles were made for wanyimem-1.0.0-py3-none-any.whl:
Publisher:
publish.yml on 17861102832/wanyimem
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
wanyimem-1.0.0-py3-none-any.whl -
Subject digest:
7b20ac174e28ff27f22bdd9cb3c14cd2b2189848c607187509086fe3d68af0f7 - Sigstore transparency entry: 2556680837
- Sigstore integration time:
-
Permalink:
17861102832/wanyimem@71527f8255689fb89897fe4b30e043cabff0821f -
Branch / Tag:
refs/tags/v1.0.0 - Owner: https://github.com/17861102832
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@71527f8255689fb89897fe4b30e043cabff0821f -
Trigger Event:
push
-
Statement type: