内容
# 知识管理系统
一个自我托管的个人知识管理系统,它将笔记、知识图谱、向量搜索和人工智能推理结合到一个应用程序中。
**技术栈:** FastAPI + Kuzu + ChromaDB + Tantivy + Next.js
**部署:** Docker Compose(一键部署)
**访问:** 网页界面在 `:3369`,MCP 服务器在 `:8869/mcp`
## 快速开始
```bash
git clone https://github.com/d2a8k3u/aikioku.git
cd aikioku
make up
open http://localhost:3369
```
不需要 `.env` 文件 — 所有密钥和运行时配置都存储在加密数据库中,通过首次启动时的设置向导进行设置。
## 架构
```
aikioku/
├── apps/
│ ├── server/ # FastAPI 后端
│ └── dashboard/ # Next.js 前端
├── docs/ # 文档
├── docker/ # 容器运行时脚本
├── Dockerfile # 多阶段(服务器和仪表盘目标)
├── docker-compose.yml # 全栈
├── Makefile # up, down, dev-up, rebuild, logs, test
└── README.md
```
七个集成层:
1. **摄入** — 笔记、网页、PDF、DOCX、图片、音频、电子邮件
2. **知识表示** — 属性图(Kuzu)+ 稠密向量(ChromaDB)+ 稀疏索引(Tantivy)
3. **检索** — 混合 RRF 融合(稠密 + 稀疏 + 图),多跳推理
4. **记忆** — 片段提取、巩固、热/暖/冷分层
5. **推理** — 基于引用的 RAG,具有引用、连接发现、问题生成的推理
6. **认知增强** — 间隔重复(Anki 兼容)、渐进式总结、偶然漫步
7. **界面** — Markdown 编辑器、对话式 RAG 聊天、间隔重复复习
完整文档: **[docs/index.md](docs/index.md)** — 架构、API、MCP 客户端、开发指南
## MCP 服务器
后端暴露一个完整的模型上下文协议服务器。任何 MCP 客户端(Claude Desktop、Cursor、Hermes Agent、Claude Code)都可以查询和编辑您的知识库作为工具。
- **端点:** `http://localhost:8869/mcp`
- **身份验证:** 在设置 → API 访问中生成的个人访问令牌(PAT)
- **工具:** 41 种类型工具 — 搜索、图探索、笔记 + 记忆 CRUD、语义记忆搜索、RAG 问答、闪存卡、导入/导出
客户端设置指南: [Claude Code](docs/clients/claude-code.md) · [Claude Desktop](docs/clients/claude-desktop.md) · [Cursor](docs/clients/cursor.md) · [Hermes Agent](docs/clients/hermes-agent.md)
## 开发
```bash
# 后端
cd apps/server
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest # 单元测试(默认跳过集成测试)
# 前端
cd apps/dashboard
npm install
npm run dev # http://localhost:3000
npm test # vitest
# 或使用 Makefile
make dev-server # 后端热重载
make dev-dashboard # 前端热重载
make test # 所有测试
make lint-server # ruff
make typecheck-server # mypy
```
## 端口
| 服务 | 容器 | 主机(映射) |
|-----------|-----------|---------------|
| 服务器 | 8000 | 8869 |
| 仪表盘 | 3000 | 3369 |
## 贡献
欢迎贡献!打开问题讨论更改,或提交拉取请求。
## 许可证
MIT