็ฎไฝไธญๆ ย |ย ็น้ซไธญๆ ย |ย English
่ฝป้็บง AI Agent ่ฏญไน่ฎฐๅฟๅผๆ
ไธบ AI Agent ๆไพๆไน
ๅ่ฏญไน่ฎฐๅฟ่ฝๅ โโ ็บฏ Python ๅฎ็ฐ๏ผ้ถๅค้จไพ่ต
| ็นๆง | ่ฏดๆ |
|---|---|
| ๐ ็บฏ Python ๅฎ็ฐ | Python 3.8+๏ผ้ถๅค้จไพ่ต๏ผๅณ่ฃ ๅณ็จ |
| ๐ ๆททๅๆ็ดขๅผๆ | TF-IDF + BM25 + ไฝๅผฆ็ธไผผๅบฆ๏ผ็บฏ Python ๆๅๅฎ็ฐ |
| ๐ RRF ็ปๆ่ๅ | Reciprocal Rank Fusion ๅค่ทฏๅฌๅ็ปๆๆบ่ฝๅๅนถ |
| ๐งฌ ่ฎฐๅฟ็ๅฝๅจๆ | Active โ Consolidating โ Decaying โ Forgotten ๅ้ถๆฎต็ฎก็ |
| ๐ ้ๅฟๆฒ็บฟ | ๅบไบ่พๅฎพๆตฉๆฏ้ๅฟๆฒ็บฟ็ๆบ่ฝ่กฐๅ็ฎๆณ |
| ๐ช ่ฎฐๅฟๅทฉๅบ | ไปฟไบบ่ๆบๅถ๏ผ้ซ้ข่ฎฟ้ฎ่ฎฐๅฟ่ชๅจๅผบๅ |
| ๐ธ๏ธ ็ฅ่ฏๅพ่ฐฑ | ๅฎไฝๆๅใๅ ณ็ณปๅปบ็ซ๏ผๆฏๆ Mermaid ๆ ผๅผๅฏผๅบ |
| ๐ฅ๏ธ MCP Server | JSON-RPC 2.0 ๅ่ฎฎ๏ผๆ ็ผๅฏนๆฅ Claude Code / Cursor ็ญ IDE |
| ๐ค ๅค Agent ้็ฆป | ๅคฉ็ถๆฏๆๅค Agent ไผ่ฏ๏ผ่ฎฐๅฟไบไธๅนฒๆฐ |
| โจ๏ธ CLI ๅทฅๅ ท | add / search / delete / list / stats / graph / export / cleanup / serve |
| ๐พ SQLite ๅญๅจ | ่ฝป้ๅฏ้ ๏ผๅๆไปถๆฐๆฎๅบ๏ผๆ ้้ขๅคๆๅก |
| โ 73 ไธชๅๅ ๆต่ฏ | ๅ จ้จ้่ฟ๏ผไปฃ็ ่ดจ้ๆไฟ้ |
- Python 3.8 ๆๆด้ซ็ๆฌ
- pip๏ผPython ๅ ็ฎก็ๅจ๏ผ
# ไป PyPI ๅฎ่ฃ
๏ผๆจ่๏ผ
pip install cognivault
# ๆไป GitHub ๅฎ่ฃ
ๆๆฐ็
pip install git+https://github.com/gitstq/CogniVault.git
# ๆๅ
้ไปๅบๅๆฌๅฐๅฎ่ฃ
git clone https://github.com/gitstq/CogniVault.git
cd CogniVault && pip install .ๅฎ่ฃ ๅฎๆๅ๏ผๅณๅฏ้่ฟ Python API ๆ CLI ไฝฟ็จ CogniVault๏ผ
# ๆทปๅ ไธๆก่ฎฐๅฟ
cognivault add "Python ๆฏไธ้จ็จ้ๅนฟๆณ็็ผ็จ่ฏญ่จ" --agent claude --tags python,็ผ็จ
# ๆ็ดข่ฎฐๅฟ
cognivault search "็ผ็จ่ฏญ่จ" --agent claude
# ๆฅ็็ณป็ป็ป่ฎก
cognivault statsfrom cognivault import MemoryStore, HybridSearchEngine, MemoryLifecycleManager, KnowledgeGraph
# ๅๅงๅๅๆจกๅ
store = MemoryStore("~/.cognivault/memories.db")
search = HybridSearchEngine(store)
lifecycle = MemoryLifecycleManager(store)
graph = KnowledgeGraph()
# ๐ ๆทปๅ ่ฎฐๅฟ
memory = store.add(
"Python is a versatile programming language for web development",
agent_id="claude",
tags=["python", "programming"]
)
print(f"่ฎฐๅฟๅทฒๆทปๅ ๏ผID: {memory['id']}")
# ๐ ๆ็ดข่ฎฐๅฟ
results = search.search("programming language", agent_id="claude", limit=5)
for r in results:
print(f"[{r['score']:.4f}] {r['content']}")
# ๐งฌ ่ฎฐๅฟ็ๅฝๅจๆ็ฎก็
lifecycle.consolidate(memory["id"]) # ๅทฉๅบๆๅฎ่ฎฐๅฟ
report = lifecycle.get_lifecycle_report(agent_id="claude") # ๆฅ็็ๅฝๅจๆๆฅๅ
# ๐ธ๏ธ ็ฅ่ฏๅพ่ฐฑ
graph.build_from_memories(store.list_all())
print(graph.to_mermaid()) # ่พๅบ Mermaid ๆ ผๅผๅพ่ฐฑ# ๐ ๆทปๅ ่ฎฐๅฟ
cognivault add "Your memory content" --agent claude --tags python,ai
# ๐ ๆ็ดข่ฎฐๅฟ
cognivault search "programming" --agent claude
# ๐ ๅๅบๆๆ่ฎฐๅฟ
cognivault list --agent claude
# ๐๏ธ ๅ ้ค่ฎฐๅฟ
cognivault delete <memory_id>
# ๐ ๆฅ็็ป่ฎกไฟกๆฏ
cognivault stats
# ๐ธ๏ธ ๅฏผๅบ็ฅ่ฏๅพ่ฐฑ
cognivault graph
# ๐ค ๅฏผๅบ่ฎฐๅฟๆฐๆฎ
cognivault export --format json --output memories.json
# ๐งน ๆธ
็่ฟๆ่ฎฐๅฟ
cognivault cleanup
# ๐ฅ๏ธ ๅฏๅจ MCP Server
cognivault serveCogniVault ๅ ็ฝฎ MCP Server๏ผๅฏ้่ฟ JSON-RPC 2.0 ๅ่ฎฎไธ Claude CodeใCursor ็ญ AI IDE ๆ ็ผ้ๆใ
Claude Desktop ้ ็ฝฎ็คบไพ๏ผ
ๅจ Claude Desktop ็ claude_desktop_config.json ไธญๆทปๅ ๏ผ
{
"mcpServers": {
"cognivault": {
"command": "cognivault",
"args": ["serve"]
}
}
}้ ็ฝฎๅฎๆๅ๏ผClaude ๅณๅฏ้่ฟ MCP ๅ่ฎฎ็ดๆฅ่ฎฟ้ฎ่ฎฐๅฟๅญๅจ๏ผๅฎ็ฐ่ทจไผ่ฏ็ๆไน ๅ่ฎฐๅฟ่ฝๅใ
CogniVault ็ๆ ธๅฟ่ฎพ่ฎก็ๅฟตๆฏไธบ AI Agent ๆไพ็ฑปไบบ่็่ฎฐๅฟ่ฝๅ๏ผ
- ่ฏญไนๆฃ็ดข่้็ฒพ็กฎๅน้ ๏ผ้่ฟ TF-IDFใBM25 ๅไฝๅผฆ็ธไผผๅบฆ็ๆททๅๆ็ดข๏ผ็่งฃ่ฎฐๅฟ็่ฏญไนๅซไน๏ผ่้็ฎๅ็ๅ ณ้ฎ่ฏๅน้
- ่ฎฐๅฟไผ่กฐๅ๏ผๅ้ด่พๅฎพๆตฉๆฏ้ๅฟๆฒ็บฟ๏ผไธๅธธ่ฎฟ้ฎ็่ฎฐๅฟไผ้ๆธ่กฐ้๏ผ้ฟๅ ่ฎฐๅฟๅบๆ ้่จ่
- ่ฎฐๅฟๅฏๅทฉๅบ๏ผ้ข็น่ขซๆฃ็ดขๅไฝฟ็จ็่ฎฐๅฟไผ่ชๅจๅผบๅ๏ผๆจกๆไบบ่็้ฟๆ่ฎฐๅฟๅฝขๆ่ฟ็จ
- ็ฅ่ฏๅฏๅ ณ่๏ผ้่ฟ็ฅ่ฏๅพ่ฐฑๅฐๅญค็ซ็่ฎฐๅฟ็ๆฎต่ฟๆฅๆ็ฝ็ถ็ปๆ๏ผๆฏๆๆจ็ๅ่ๆณ
CogniVault
โโโ MemoryStore # ๐พ ่ฎฐๅฟๅญๅจๅฑ๏ผSQLite๏ผ
โโโ HybridSearchEngine # ๐ ๆททๅๆ็ดขๅผๆ๏ผTF-IDF + BM25 + Cosine๏ผ
โโโ MemoryLifecycleManager # ๐งฌ ่ฎฐๅฟ็ๅฝๅจๆ็ฎก็
โโโ KnowledgeGraph # ๐ธ๏ธ ็ฅ่ฏๅพ่ฐฑ
โโโ MCPServer # ๐ฅ๏ธ MCP ๅ่ฎฎๆๅก
โโโ CLI # โจ๏ธ ๅฝไปค่กๅทฅๅ
ท
- ๆ ธๅฟ่ฎฐๅฟๅญๅจไธๆฃ็ดข
- ๆททๅๆ็ดขๅผๆ๏ผTF-IDF + BM25 + ไฝๅผฆ็ธไผผๅบฆ๏ผ
- RRF ็ปๆ่ๅ
- ่ฎฐๅฟ็ๅฝๅจๆ็ฎก็๏ผๅ้ถๆฎต๏ผ
- ่พๅฎพๆตฉๆฏ้ๅฟๆฒ็บฟ่กฐๅ
- ่ฎฐๅฟๅทฉๅบๆบๅถ
- ็ฅ่ฏๅพ่ฐฑ๏ผๅฎไฝๆๅ + ๅ ณ็ณปๅปบ็ซ + Mermaid ๅฏผๅบ๏ผ
- MCP Server๏ผJSON-RPC 2.0๏ผ
- ๅค Agent ไผ่ฏ้็ฆป
- CLI ๅฝไปค่กๅทฅๅ ท
- 73 ไธชๅๅ ๆต่ฏ
- ๅ้ๅ่ฏญไนๆ็ดข๏ผEmbedding ๆฏๆ๏ผ
- ๅๅธๅผ่ฎฐๅฟๅญๅจ
- Web ็ฎก็็้ข
- ๆดๅค MCP ๅทฅๅ ทๆฉๅฑ
ๆไปฌๆฌข่ฟๅนถๆ่ฐขๆฏไธไฝ่ดก็ฎ่ ๏ผๆ ่ฎบๆฏๆไบค Bugใๆน่ฟๆๆกฃ๏ผ่ฟๆฏ่ดก็ฎๆฐๅ่ฝใ
- Fork ๆฌไปๅบ
- ๅๅปบ็นๆงๅๆฏ๏ผ
git checkout -b feature/your-feature-name - ๆไบคๆดๆน๏ผ
git commit -m "feat: add your feature description" - ๆจ้ๅๆฏ๏ผ
git push origin feature/your-feature-name - ๆไบค Pull Request
- ้ตๅพช PEP 8 ็ผ็ ่ง่
- ไธบๆฐๅ่ฝ็ผๅๅฏนๅบ็ๅๅ ๆต่ฏ
- ไฟๆ 100% ็ๆต่ฏ้่ฟ็
- ๆไบคไฟกๆฏ้ตๅพช Conventional Commits ่ง่
ๅฆ้ๅฐ Bug ๆๆๅ่ฝๅปบ่ฎฎ๏ผ่ฏท้่ฟ GitHub Issues ๆไบคใ
ๆฌ้กน็ฎๅบไบ MIT License ๅผๆบ๏ผๅฏ่ช็ฑไฝฟ็จใไฟฎๆนๅๅๅใ
็จ โค๏ธ ๆๅปบ๏ผไธบ AI Agent ่ตไบ่ฎฐๅฟ็ๅ้
่ผ้็ด AI Agent ่ช็พฉ่จๆถๅผๆ
็บ AI Agent ๆไพๆไน
ๅ่ช็พฉ่จๆถ่ฝๅ โโ ็ด Python ๅฏฆ็พ๏ผ้ถๅค้จไพ่ณด
| ็นๆง | ่ชชๆ |
|---|---|
| ๐ ็ด Python ๅฏฆ็พ | Python 3.8+๏ผ้ถๅค้จไพ่ณด๏ผๅณ่ฃๅณ็จ |
| ๐ ๆททๅๆๅฐๅผๆ | TF-IDF + BM25 + ้คๅผฆ็ธไผผๅบฆ๏ผ็ด Python ๆๅฏซๅฏฆ็พ |
| ๐ RRF ็ตๆ่ๅ | Reciprocal Rank Fusion ๅค่ทฏๅฌๅ็ตๆๆบๆ งๅไฝต |
| ๐งฌ ่จๆถ็ๅฝ้ฑๆ | Active โ Consolidating โ Decaying โ Forgotten ๅ้ๆฎต็ฎก็ |
| ๐ ้บๅฟๆฒ็ท | ๅบๆผ่พ่ณๆตฉๆฏ้บๅฟๆฒ็ท็ๆบๆ ง่กฐๆธๆผ็ฎๆณ |
| ๐ช ่จๆถ้ๅบ | ไปฟไบบ่ ฆๆฉๅถ๏ผ้ซ้ ปๅญๅ่จๆถ่ชๅๅผทๅ |
| ๐ธ๏ธ ็ฅ่ญๅ่ญ | ๅฏฆ้ซๆทๅใ้ไฟๅปบ็ซ๏ผๆฏๆด Mermaid ๆ ผๅผๅฏๅบ |
| ๐ฅ๏ธ MCP Server | JSON-RPC 2.0 ๅๅฎ๏ผ็ก็ธซๅฐๆฅ Claude Code / Cursor ็ญ IDE |
| ๐ค ๅค Agent ้้ข | ๅคฉ็ถๆฏๆดๅค Agent ๆ่ฉฑ๏ผ่จๆถไบไธๅนฒๆพ |
| โจ๏ธ CLI ๅทฅๅ ท | add / search / delete / list / stats / graph / export / cleanup / serve |
| ๐พ SQLite ๅฒๅญ | ่ผ้ๅฏ้ ๏ผๅฎๆช่ณๆๅบซ๏ผ็ก้้กๅคๆๅ |
| โ 73 ๅๅฎๅ ๆธฌ่ฉฆ | ๅ จ้จ้้๏ผ็จๅผ็ขผๅ่ณชๆไฟ้ |
- Python 3.8 ๆๆด้ซ็ๆฌ
- pip๏ผPython ๅฅไปถ็ฎก็ๅจ๏ผ
# ๅพ PyPI ๅฎ่ฃ๏ผๆจ่ฆ๏ผ
pip install cognivault
# ๆๅพ GitHub ๅฎ่ฃๆๆฐ็
pip install git+https://github.com/gitstq/CogniVault.git
# ๆ่ค่ฃฝๅๅบซๅพๆฌๆฉๅฎ่ฃ
git clone https://github.com/gitstq/CogniVault.git
cd CogniVault && pip install .ๅฎ่ฃๅฎๆๅพ๏ผๅณๅฏ้้ Python API ๆ CLI ไฝฟ็จ CogniVault๏ผ
# ๆฐๅขไธๆข่จๆถ
cognivault add "Python ๆฏไธ้็จ้ๅปฃๆณ็็จๅผ่ช่จ" --agent claude --tags python,็จๅผ่จญ่จ
# ๆๅฐ่จๆถ
cognivault search "็จๅผ่ช่จ" --agent claude
# ๆชข่ฆ็ณป็ตฑ็ตฑ่จ
cognivault statsfrom cognivault import MemoryStore, HybridSearchEngine, MemoryLifecycleManager, KnowledgeGraph
# ๅๅงๅๅๆจก็ต
store = MemoryStore("~/.cognivault/memories.db")
search = HybridSearchEngine(store)
lifecycle = MemoryLifecycleManager(store)
graph = KnowledgeGraph()
# ๐ ๆฐๅข่จๆถ
memory = store.add(
"Python is a versatile programming language for web development",
agent_id="claude",
tags=["python", "programming"]
)
print(f"่จๆถๅทฒๆฐๅข๏ผID: {memory['id']}")
# ๐ ๆๅฐ่จๆถ
results = search.search("programming language", agent_id="claude", limit=5)
for r in results:
print(f"[{r['score']:.4f}] {r['content']}")
# ๐งฌ ่จๆถ็ๅฝ้ฑๆ็ฎก็
lifecycle.consolidate(memory["id"]) # ้ๅบๆๅฎ่จๆถ
report = lifecycle.get_lifecycle_report(agent_id="claude") # ๆชข่ฆ็ๅฝ้ฑๆๅ ฑๅ
# ๐ธ๏ธ ็ฅ่ญๅ่ญ
graph.build_from_memories(store.list_all())
print(graph.to_mermaid()) # ่ผธๅบ Mermaid ๆ ผๅผๅ่ญ# ๐ ๆฐๅข่จๆถ
cognivault add "Your memory content" --agent claude --tags python,ai
# ๐ ๆๅฐ่จๆถ
cognivault search "programming" --agent claude
# ๐ ๅๅบๆๆ่จๆถ
cognivault list --agent claude
# ๐๏ธ ๅช้ค่จๆถ
cognivault delete <memory_id>
# ๐ ๆชข่ฆ็ตฑ่จ่ณ่จ
cognivault stats
# ๐ธ๏ธ ๅฏๅบ็ฅ่ญๅ่ญ
cognivault graph
# ๐ค ๅฏๅบ่จๆถ่ณๆ
cognivault export --format json --output memories.json
# ๐งน ๆธ
็้ๆ่จๆถ
cognivault cleanup
# ๐ฅ๏ธ ๅๅ MCP Server
cognivault serveCogniVault ๅ งๅปบ MCP Server๏ผๅฏ้้ JSON-RPC 2.0 ๅๅฎ่ Claude CodeใCursor ็ญ AI IDE ็ก็ธซๆดๅใ
Claude Desktop ่จญๅฎ็ฏไพ๏ผ
ๅจ Claude Desktop ็ claude_desktop_config.json ไธญๆฐๅข๏ผ
{
"mcpServers": {
"cognivault": {
"command": "cognivault",
"args": ["serve"]
}
}
}่จญๅฎๅฎๆๅพ๏ผClaude ๅณๅฏ้้ MCP ๅๅฎ็ดๆฅๅญๅ่จๆถๅฒๅญ๏ผๅฏฆ็พ่ทจๆ่ฉฑ็ๆไน ๅ่จๆถ่ฝๅใ
CogniVault ็ๆ ธๅฟ่จญ่จ็ๅฟตๆฏ็บ AI Agent ๆไพ้กไบบ่ ฆ็่จๆถ่ฝๅ๏ผ
- ่ช็พฉๆชข็ดข่้็ฒพ็ขบๅน้ ๏ผ้้ TF-IDFใBM25 ๅ้คๅผฆ็ธไผผๅบฆ็ๆททๅๆๅฐ๏ผ็่งฃ่จๆถ็่ช็พฉๅซ็พฉ๏ผ่้็ฐกๅฎ็้้ตๅญๅน้
- ่จๆถๆ่กฐๆธ๏ผๅ้่พ่ณๆตฉๆฏ้บๅฟๆฒ็ท๏ผไธๅธธๅญๅ็่จๆถๆ้ๆผธ่กฐ้๏ผ้ฟๅ ่จๆถๅบซ็ก้่จ่น
- ่จๆถๅฏ้ๅบ๏ผ้ ป็น่ขซๆชข็ดขๅไฝฟ็จ็่จๆถๆ่ชๅๅผทๅ๏ผๆจกๆฌไบบ่ ฆ็้ทๆ่จๆถๅฝขๆ้็จ
- ็ฅ่ญๅฏ้่ฏ๏ผ้้็ฅ่ญๅ่ญๅฐๅญค็ซ็่จๆถ็ๆฎต้ฃๆฅๆ็ถฒ็็ตๆง๏ผๆฏๆดๆจ็ๅ่ฏๆณ
CogniVault
โโโ MemoryStore # ๐พ ่จๆถๅฒๅญๅฑค๏ผSQLite๏ผ
โโโ HybridSearchEngine # ๐ ๆททๅๆๅฐๅผๆ๏ผTF-IDF + BM25 + Cosine๏ผ
โโโ MemoryLifecycleManager # ๐งฌ ่จๆถ็ๅฝ้ฑๆ็ฎก็
โโโ KnowledgeGraph # ๐ธ๏ธ ็ฅ่ญๅ่ญ
โโโ MCPServer # ๐ฅ๏ธ MCP ๅๅฎๆๅ
โโโ CLI # โจ๏ธ ๅฝไปคๅๅทฅๅ
ท
- ๆ ธๅฟ่จๆถๅฒๅญ่ๆชข็ดข
- ๆททๅๆๅฐๅผๆ๏ผTF-IDF + BM25 + ้คๅผฆ็ธไผผๅบฆ๏ผ
- RRF ็ตๆ่ๅ
- ่จๆถ็ๅฝ้ฑๆ็ฎก็๏ผๅ้ๆฎต๏ผ
- ่พ่ณๆตฉๆฏ้บๅฟๆฒ็ท่กฐๆธ
- ่จๆถ้ๅบๆฉๅถ
- ็ฅ่ญๅ่ญ๏ผๅฏฆ้ซๆทๅ + ้ไฟๅปบ็ซ + Mermaid ๅฏๅบ๏ผ
- MCP Server๏ผJSON-RPC 2.0๏ผ
- ๅค Agent ๆ่ฉฑ้้ข
- CLI ๅฝไปคๅๅทฅๅ ท
- 73 ๅๅฎๅ ๆธฌ่ฉฆ
- ๅ้ๅ่ช็พฉๆๅฐ๏ผEmbedding ๆฏๆด๏ผ
- ๅๆฃๅผ่จๆถๅฒๅญ
- Web ็ฎก็ไป้ข
- ๆดๅค MCP ๅทฅๅ ทๆดๅ
ๆๅๆญก่ฟไธฆๆ่ฌๆฏไธไฝ่ฒข็ป่ ๏ผ็ก่ซๆฏๆไบค Bugใๆน้ฒๆไปถ๏ผ้ๆฏ่ฒข็ปๆฐๅ่ฝใ
- Fork ๆฌๅๅบซ
- ๅปบ็ซ็นๆงๅๆฏ๏ผ
git checkout -b feature/your-feature-name - ๆไบค่ฎๆด๏ผ
git commit -m "feat: add your feature description" - ๆจ้ๅๆฏ๏ผ
git push origin feature/your-feature-name - ๆไบค Pull Request
- ้ตๅพช PEP 8 ็ทจ็ขผ่ฆ็ฏ
- ็บๆฐๅ่ฝๆฐๅฏซๅฐๆ็ๅฎๅ ๆธฌ่ฉฆ
- ไฟๆ 100% ็ๆธฌ่ฉฆ้้็
- ๆไบค่ณ่จ้ตๅพช Conventional Commits ่ฆ็ฏ
ๅฆ้ๅฐ Bug ๆๆๅ่ฝๅปบ่ญฐ๏ผ่ซ้้ GitHub Issues ๆไบคใ
ๆฌๅฐๆกๅบๆผ MIT License ้ๆบ๏ผๅฏ่ช็ฑไฝฟ็จใไฟฎๆนๅๅ็ผใ
็จ โค๏ธ ๆ้ ๏ผ็บ AI Agent ่ณฆไบ่จๆถ็ๅ้
Lightweight AI Agent Semantic Memory Engine
Empowering AI Agents with persistent semantic memory โ pure Python, zero dependencies
| Feature | Description |
|---|---|
| ๐ Pure Python | Python 3.8+, zero external dependencies, install and go |
| ๐ Hybrid Search Engine | TF-IDF + BM25 + Cosine Similarity, hand-rolled in pure Python |
| ๐ RRF Result Fusion | Reciprocal Rank Fusion for intelligent multi-signal result merging |
| ๐งฌ Memory Lifecycle | 4-stage management: Active โ Consolidating โ Decaying โ Forgotten |
| ๐ Forgetting Curve | Smart decay algorithm based on the Ebbinghaus forgetting curve |
| ๐ช Memory Consolidation | Brain-inspired mechanism โ frequently accessed memories auto-strengthen |
| ๐ธ๏ธ Knowledge Graph | Entity extraction, relationship building, Mermaid format export |
| ๐ฅ๏ธ MCP Server | JSON-RPC 2.0 protocol, seamless integration with Claude Code / Cursor |
| ๐ค Multi-Agent Isolation | Built-in multi-agent session support with isolated memory spaces |
| โจ๏ธ CLI Tool | add / search / delete / list / stats / graph / export / cleanup / serve |
| ๐พ SQLite Storage | Lightweight and reliable, single-file database, no extra services needed |
| โ 73 Unit Tests | All passing, well-tested codebase |
- Python 3.8 or later
- pip (Python package manager)
# Install from PyPI (recommended)
pip install cognivault
# Or install the latest version from GitHub
pip install git+https://github.com/gitstq/CogniVault.git
# Or clone the repo and install locally
git clone https://github.com/gitstq/CogniVault.git
cd CogniVault && pip install .Once installed, you can start using CogniVault right away via Python API or CLI:
# Add a memory
cognivault add "Python is a versatile programming language" --agent claude --tags python,programming
# Search memories
cognivault search "programming language" --agent claude
# View statistics
cognivault statsfrom cognivault import MemoryStore, HybridSearchEngine, MemoryLifecycleManager, KnowledgeGraph
# Initialize modules
store = MemoryStore("~/.cognivault/memories.db")
search = HybridSearchEngine(store)
lifecycle = MemoryLifecycleManager(store)
graph = KnowledgeGraph()
# ๐ Add a memory
memory = store.add(
"Python is a versatile programming language for web development",
agent_id="claude",
tags=["python", "programming"]
)
print(f"Memory added, ID: {memory['id']}")
# ๐ Search memories
results = search.search("programming language", agent_id="claude", limit=5)
for r in results:
print(f"[{r['score']:.4f}] {r['content']}")
# ๐งฌ Memory lifecycle management
lifecycle.consolidate(memory["id"]) # Consolidate a specific memory
report = lifecycle.get_lifecycle_report(agent_id="claude") # View lifecycle report
# ๐ธ๏ธ Knowledge graph
graph.build_from_memories(store.list_all())
print(graph.to_mermaid()) # Export as Mermaid diagram# ๐ Add a memory
cognivault add "Your memory content" --agent claude --tags python,ai
# ๐ Search memories
cognivault search "programming" --agent claude
# ๐ List all memories
cognivault list --agent claude
# ๐๏ธ Delete a memory
cognivault delete <memory_id>
# ๐ View statistics
cognivault stats
# ๐ธ๏ธ Export knowledge graph
cognivault graph
# ๐ค Export memory data
cognivault export --format json --output memories.json
# ๐งน Clean up expired memories
cognivault cleanup
# ๐ฅ๏ธ Start MCP Server
cognivault serveCogniVault includes a built-in MCP Server that integrates seamlessly with AI IDEs like Claude Code and Cursor via the JSON-RPC 2.0 protocol.
Claude Desktop Configuration Example:
Add the following to your Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"cognivault": {
"command": "cognivault",
"args": ["serve"]
}
}
}Once configured, Claude can directly access the memory store through the MCP protocol, enabling persistent memory across sessions.
CogniVault is built around the core idea of giving AI Agents human-like memory capabilities:
- Semantic retrieval, not exact matching: The hybrid search engine (TF-IDF + BM25 + Cosine Similarity) understands the meaning behind memories, going beyond simple keyword matching
- Memories decay over time: Inspired by the Ebbinghaus forgetting curve, rarely accessed memories gradually fade, preventing unbounded memory growth
- Memories can be consolidated: Frequently retrieved and used memories are automatically strengthened, mimicking the human brain's long-term memory formation
- Knowledge is connected: The knowledge graph links isolated memory fragments into a network, supporting reasoning and association
CogniVault
โโโ MemoryStore # ๐พ Memory storage layer (SQLite)
โโโ HybridSearchEngine # ๐ Hybrid search engine (TF-IDF + BM25 + Cosine)
โโโ MemoryLifecycleManager # ๐งฌ Memory lifecycle management
โโโ KnowledgeGraph # ๐ธ๏ธ Knowledge graph
โโโ MCPServer # ๐ฅ๏ธ MCP protocol server
โโโ CLI # โจ๏ธ Command-line tool
- Core memory storage and retrieval
- Hybrid search engine (TF-IDF + BM25 + Cosine Similarity)
- RRF result fusion
- Memory lifecycle management (4 stages)
- Ebbinghaus forgetting curve decay
- Memory consolidation mechanism
- Knowledge graph (entity extraction + relationship building + Mermaid export)
- MCP Server (JSON-RPC 2.0)
- Multi-agent session isolation
- CLI command-line tool
- 73 unit tests
- Vectorized semantic search (Embedding support)
- Distributed memory storage
- Web management interface
- Additional MCP tool extensions
We welcome and appreciate every contributor! Whether it's filing a bug, improving documentation, or contributing a new feature.
- Fork this repository
- Create a feature branch:
git checkout -b feature/your-feature-name - Commit your changes:
git commit -m "feat: add your feature description" - Push the branch:
git push origin feature/your-feature-name - Submit a Pull Request
- Follow PEP 8 coding conventions
- Write unit tests for new features
- Maintain a 100% test pass rate
- Follow the Conventional Commits specification for commit messages
If you encounter a bug or have a feature request, please file it via GitHub Issues.
This project is open-sourced under the MIT License. You are free to use, modify, and distribute it.
Built with โค๏ธ โ Empowering AI Agents with the power of memory