内容
# 上下文感知基础设施
[](https://python.org)
[](LICENSE)
[](https://github.com/piot5/CAI/actions)
[](https://github.com/psf/black)
---
## 目录
- [概述](#概述)
- [架构](#架构)
- [组件](#组件)
- [快速入门](#快速入门)
- [开发](#开发)
- [测试](#测试)
- [配置](#配置)
- [许可证](#许可证)
---
## 概述
上下文感知基础设施(CAI)是一个模块化的框架,它结合了以下功能:
- **向量数据库**(LanceDB,768维 `nomic-embed-text` 嵌入)
- **文件系统存档**(Mycelium 图,分支 0.85/突变 0.15)
- **MCP 服务器生态系统**(5 个服务器:内存、文件系统、编排、消息)
- **批量整合**(调度模式提取和工具生成)
- **4 层存储层次结构**(全局 > 向量 > 文件系统 > 工作区)
该系统提供持久的跨会话存储,工作区打开时自动加载上下文,以及调度模式分析。
---
## 架构
```
┌─────────────────────────────────────────────────────────────┐
│ CAI 系统 │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 存储层次结构 │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────┐ │ │
│ │ │ 全局 │ │ 向量 │ │ 文件系统│ 工作区│ │ │
│ │ │ 配置 │ │ LanceDB │ │ Mycelium │ │ .clin. │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ └────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ MCP 服务器 │ │
│ │ ┌────────────┐ ┌──────────────┐ ┌──────────────┐ │ │
│ │ │ 神经记忆 │ │ 人类图灵 │ │ 编排器 │ │ │
│ │ │ (LanceDB) │ │ (Markdown FS)│ │ (Watchdog) │ │ │
│ │ └────────────┘ └──────────────┘ └──────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 批量整合管道 │ │
│ │ ┌────────┐ ┌────────┐ ┌──────────┐ ┌────────────┐ │ │
│ │ │ 采集 │→│分析 │→│ 生成 │→│ 部署 │ │ │
│ │ │ (100 │ │(模式│ │ (FastMCP │ │ (动态 │ │ │
│ │ │ 条目)│ │检测) │ │ 工具) │ │ 技能) │ │ │
│ │ └────────┘ └────────┘ └──────────┘ └────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
```
---
## 组件
### 存储层
| 组件 | 堆栈 | 描述 |
| ------------ | ---------------------------- | -------------------------------------------------------------- |
| 向量存储 | LanceDB + `nomic-embed-text` | 768维持久存储,支持语义搜索 |
| 文件存档 | Mycelium 图 | 分支文件系统(因子 0.85)与突变(因子 0.15) |
| 桥梁 | `memory_bridge.py` | 跨所有存储层的统一读写 |
| 自动加载 | `recall()` 初始化 | 工作区打开时,从向量存储中加载上下文 |
| 层次结构 | 4 层 | 配置 > 向量 > 文件系统 > 工作区 |
### MCP 服务器
| 服务器 | 功能 |
| ------------------- | ------------------------------------------------ |
| `神经记忆` | 向量数据库 CRUD,语义搜索 |
| `人类图灵` | Markdown 格式文件系统操作 |
| `编排器` | 服务器生命周期管理,热加载监视狗 |
| `Threema 网关` | 通过 Threema API 传递消息 |
### 批量整合
| 阶段 | 详情 |
| -------- | ---------------------------------------------- |
| 调度 | 通过 Windows 任务调度器每天 |
| 输入 | 最后 100 个 LanceDB 条目 |
| 分析 | 通过 `qwen2.5-coder:32b` 进行模式检测 |
| 输出 | 用于重复工作流的 FastMCP 工具 |
| 部署 | `%LOCALAPPDATA%\mcp-dynamic-skills` 热加载 |
---
## 快速入门
### 先决条件
```bash
python --version # 3.10+
ollama pull nomic-embed-text # 嵌入模型
ollama pull qwen2.5-coder:32b # 分析模型
```
### 安装
```bash
git clone https://github.com/piot5/CAI.git
cd CAI
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # Linux/Mac
pip install -r requirements.txt
```
### 项目结构
```
CAI/
├── .clinerules # 全局配置(4层层次结构)
├── mcp.json # MCP 服务器注册
├── memory/ # 核心存储和 MCP 服务器
│ ├── mcp_neural_memory.py # LanceDB 向量存储服务器
│ ├── mcp_mycelium.py # Mycelium 文件系统服务器
│ ├── mcp_categorizer.py # 自动分类 MCP
│ ├── mycelium_engine.py # Mycelium 文件系统引擎
│ ├── memory_bridge.py # 统一 4层 内存桥梁
│ ├── orchestrator.py # MCP 服务器生命周期管理器
│ ├── dream_cycle.py # 批量整合管道
│ ├── path_config.py # 路径解析
│ ├── validation.py # 输入验证
│ ├── categorizer.py # 分类引擎
│ ├── mcp_status_check.py # 健康检查实用程序
│ ├── cai_server.py # 开发服务器
│ ├── global_mcp_manager.py # 全局 MCP 激活
│ ├── autostart/ # Windows 自动启动组件
│ │ └── autostart_orchestrator.py
│ ├── demos/ # 集成演示
│ │ ├── tool_integration_demo.py
│ │ ├── complete_mcp_integration_demo.py
│ │ ├── practical_mcp_usage.py
│ │ └── mcp_learning_demonstration.py
│ ├── tests/ # 测试套件(36 个测试)
│ │ └── test_mcps_comprehensive.py
│ └── docs/ # 报告和摘要
├── requirements.txt
└── README.md
```
### 开发服务器
```bash
python -m memory.cai_server # 启动所有 MCP 服务器
python -m memory.memory_bridge # 仅存储层
python -m memory.orchestrator # MCP 服务器管理器
python -m memory.mcp_status_check # 健康检查
python -m memory.dream_cycle --dry-run # 整合预运行
```
---
## 开发
### VSCode
在 `.vscode/` 中预配置:
| 文件 | 内容 |
| ----------------- | ------------------------------------------ |
| `settings.json` | Python(Black,Ruff,isort),Markdown,Git |
| `extensions.json` | 10 个推荐扩展 |
| `launch.json` | 10 个启动配置 + 1 个复合 |
### 代码质量
```bash
black --line-length=100 memory/
isort --profile black --line-length=100 memory/
ruff check --line-length=100 memory/
mypy memory/
```
---
## 测试
```bash
python -m memory.tests.test_mcps_comprehensive.py # 完整套件(36 个测试)
python -m memory.mcp_status_check # 实时系统检查
```
| 组件 | 测试 | 状态 |
| -------------------- | ------ | ------ |
| 神经记忆服务器 | 8 | ✅ |
| Mycelium 服务器 | 4 | ✅ |
| 人类图灵 | 6 | ✅ |
| 内存桥梁 | 8 | ✅ |
| 动态技能 | 4 | ✅ |
| Threema 网关 | 2 | ✅ |
| 编排器 | 4 | ✅ |
| **总计** | **36** | **✅** |
---
## 配置
### MCP 服务器注册
全局路径(IDE 管理):
```
%APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\mcp.json
```
本地引用:`c:\Software\CAI\mcp.json`
### 运行时配置
文件:`.clinerules`(JSON 在项目根目录)
- 定义服务器路径、模型名称、整合调度
- 工作区打开时扫描
- 支持工作区特定覆盖
---
## 许可证
MIT 许可证 - 参见 [LICENSE](LICENSE) 获取详细信息。
---
<p align="center">v1.1.0 · <a href="https://github.com/piot5/CAI">github.com/piot5/CAI</a></p>