使用说明
AI Context Agent - 智能上下文代理工具
项目简介
AI Context Agent是一个基于MCP(Model Context Protocol)协议的智能代理工具,专门解决AI对话中token限制导致的上下文丢失问题。通过智能上下文检索、多模型联动和流式对话支持,为开发者提供连贯的AI交互体验。
核心特性
🔍 智能上下文检索
- 基于MCP协议的上下文存储和检索
- 向量数据库支持的语义搜索
- 智能上下文筛选和相关性排序
- 自动上下文分块和token管理
🤖 多模型联动
- 支持多个AI模型的统一管理
- 智能模型路由和负载均衡
- 自动故障转移和降级策略
- OpenAI兼容的API接口
🌊 流式对话支持
- Server-Sent Events (SSE) 流式响应
- 实时对话体验
- 断线重连和错误恢复
- 流式响应缓冲优化
🔧 多平台集成
- VSCode插件支持
- Kiro工具原生集成
- Dify平台连接器
- 完整的SDK封装
⚙️ 灵活配置
- YAML配置文件支持
- 环境变量配置
- 热重载配置更新
- 自定义模型服务器
快速开始
环境要求
- Python 3.8+
- Redis (可选,用于缓存)
- SQLite (默认数据库)
安装
# 克隆项目
git clone https://github.com/your-username/ai-context-agent.git
cd ai-context-agent
# 快速设置开发环境(推荐)
python scripts/setup_dev_env.py
# 或手动安装依赖
python scripts/check_dependencies.py --setup
开发环境设置
快速设置(推荐)
# 一键设置完整开发环境
python scripts/setup_dev_env.py
手动设置
# 检查并安装所有依赖
python scripts/check_dependencies.py --setup
# 验证项目结构
python scripts/verify_project_structure.py
# 安装pre-commit钩子(如果已安装pre-commit)
pre-commit install
任务执行前检查
# 检查特定任务的依赖
python scripts/run_task.py --task-type config --check-deps
# 运行测试
python scripts/run_task.py --run-tests tests/unit/
# 代码质量检查
python scripts/run_task.py --quality-check
基础配置
- 复制配置模板:
cp config/config.example.yaml config/config.yaml
- 编辑配置文件,设置你的模型服务器信息:
models:
providers:
- name: "gpustack"
base_url: "http://your-gpustack-server:28080/v1"
api_key: "your-api-key" # 可选
models:
- name: "qwen3-vl-235b-a22b-thinking"
max_tokens: 4096
启动服务
# 启动主服务
python -m src.main
# 或使用开发模式
python -m src.main --dev
SDK使用示例
Python SDK
from ai_context_agent import AIContextAgent
# 初始化客户端
agent = AIContextAgent(config_path="config/config.yaml")
# 创建对话会话
session_id = agent.create_session()
# 发起流式对话
async for chunk in agent.chat("你好,请帮我分析这个项目", session_id=session_id):
print(chunk, end="", flush=True)
# 获取会话上下文
context = await agent.get_context(session_id)
print(f"会话包含 {len(context)} 个上下文片段")
REST API
# 创建会话
curl -X POST http://localhost:8000/api/v1/sessions
# 发起对话
curl -X POST http://localhost:8000/api/v1/chat \
-H "Content-Type: application/json" \
-d '{
"message": "你好",
"session_id": "your-session-id",
"stream": true
}'
集成指南
VSCode插件集成
- 安装插件:在VSCode扩展市场搜索"AI Context Agent"
- 配置服务器地址:在设置中配置本地服务器URL
- 使用快捷键:
Ctrl+Shift+A开启AI对话
Kiro工具集成
{
"mcpServers": {
"ai-context-agent": {
"command": "python",
"args": ["-m", "src.mcp_server"],
"env": {
"CONFIG_PATH": "./config/config.yaml"
}
}
}
}
Dify平台集成
- 在Dify中添加自定义连接器
- 配置Webhook URL:
http://your-server:8000/api/v1/dify/webhook - 设置认证信息和参数映射
开发指南
项目结构
ai-context-agent/
├── src/ # 源代码
│ ├── core/ # 核心组件
│ ├── api/ # API接口
│ ├── integrations/ # 平台集成
│ └── utils/ # 工具函数
├── tests/ # 测试文件
│ ├── unit/ # 单元测试
│ ├── integration/ # 集成测试
│ └── e2e/ # 端到端测试
├── config/ # 配置文件
├── docs/ # 文档
├── progress/ # 开发进度记录
└── scripts/ # 工具脚本
开发环境设置
# 安装开发依赖
pip install -r requirements-dev.txt
# 设置pre-commit钩子
pre-commit install
# 运行测试
pytest tests/
# 代码格式化
black src/ tests/
isort src/ tests/
贡献指南
- Fork项目并创建特性分支
- 编写代码和测试
- 确保所有测试通过
- 提交Pull Request
配置参考
完整配置示例
server:
host: "0.0.0.0"
port: 8000
debug: false
mcp:
auto_create_server: true
server_config:
host: "localhost"
port: 8001
context_retention_days: 30
models:
default: "qwen3-vl-235b-a22b-thinking"
providers:
- name: "gpustack"
base_url: "http://223.111.254.154:28080/v1"
api_key: "${GPUSTACK_API_KEY}"
models:
- name: "qwen3-vl-235b-a22b-thinking"
max_tokens: 4096
supports_streaming: true
database:
vector_db:
type: "chroma"
path: "./data/vector_db"
relational_db:
type: "sqlite"
path: "./data/app.db"
logging:
level: "INFO"
file: "./logs/app.log"
max_size: "100MB"
backup_count: 5
API文档
详细的API文档请访问:http://localhost:8000/docs(服务启动后)
许可证
本项目采用MIT许可证 - 查看 LICENSE 文件了解详情
支持与反馈
- 问题报告:GitHub Issues
- 功能请求:GitHub Discussions
- 邮件联系:your-email@example.com
更新日志
v0.1.0 (开发中)
- 初始版本发布
- MCP协议支持
- 多模型联动
- 基础SDK实现
注意: 本项目目前处于开发阶段,API可能会发生变化。建议在生产环境使用前进行充分测试。
