使用说明
上下文保持
人工智能代理的长期记忆
上下文保持 为AI代理提供了一个持久的、可搜索的内存,它们可以在会话中使用。V2.1增加了SQLite、全文搜索、用户可编辑类别、更安全的Docker默认值和经过验证的备份优先升级。
最新动态 | 安全升级 | 安装 | MCP工具 | 配置 | 文档
特征
- MCP兼容代理的持久本地内存。
- 带FTS5全文搜索的SQLite存储。
- 用户可编辑的类别,而不是固定标签。
- 每个内存有多个类别。
- 用于浏览、编辑、搜索、导出和类别管理的WebUI。
- 位于的可流式HTTP MCP端点
/mcp,苏格兰和南方能源公司为老客户提供备用方案。 - Docker Compose支持WebUI和MCP的一个默认服务。
- 经过验证的裸机和Docker升级备份和恢复助手。
- 服务器身份检查通过
get_contextkeep_info.
V2.1 Atlas中的新增功能
V2.1是第一个类别第一的ContextKeep版本。
list_all_memories已删除。- 代理现在使用
list_categories和list_memories之前retrieve_memory. tags替换为用户可编辑categories.- 记忆可以属于多个类别。
- V1标签保留为
legacy_tags迁移元数据。 - Docker现在默认同时运行WebUI和MCP,因此两者都使用相同的SQLite数据库。
get_contextkeep_info报告版本、存储路径、数据库ID、工具列表和迁移状态。- 升级脚本在继续之前创建经过验证的备份。
旧版本仍然可以通过GitHub版本和标签获得。V2.1是新安装和升级的推荐版本。
安全升级优先
在替换现有安装之前,请使用安全升级包装器。它创建备份,验证存档,检查SQLite/JSON完整性,并在出现任何问题时停止。
裸金属:
python scripts/upgrade_to_v2_1.py baremetal
Docker:
python scripts/upgrade_to_v2_1.py docker
V1 JSON迁移:
python scripts/upgrade_to_v2_1.py baremetal --v1-source /path/to/old/data/memories
看 docs/SAFE_UPGRADE.md 有关备份、还原、Docker卷和回滚的详细信息。
安装
新鲜裸金属安装
git clone https://github.com/mordang7/ContextKeep.git
cd ContextKeep
python -m venv .venv
Linux/macOS:
source .venv/bin/activate
pip install -r requirements.txt
Windows PowerShell:
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
您还可以运行安装程序:
python install.py
全新Docker安装
git clone https://github.com/mordang7/ContextKeep.git
cd ContextKeep
docker compose up -d --build
默认端口:
| 服务 | URL |
|---|---|
| WebUI | http://localhost:5000 |
| MCP HTTP | http://localhost:5100/mcp |
跑
stdio上的本地MCP:
python server.py
通过HTTP远程MCP:
python server.py --transport http --host 0.0.0.0 --port 5100
WebUI:
python webui.py --host 0.0.0.0 --port 5000
然后打开:
http://localhost:5000
MCP工具
ContextKeep V2.1公开了16个工具:
| 工具 | 目的 |
|---|---|
get_contextkeep_info |
确认版本、存储路径、数据库ID、架构、工具和迁移状态 |
list_categories |
列出实时用户可编辑的类别 |
create_category |
当没有适合的现有类别时创建类别 |
update_category |
重命名或编辑类别元数据 |
delete_category |
删除空类别或重新分配记忆 |
merge_categories |
将一个类别合并到另一个类别 |
list_memories |
列出记忆键/标题,可选择按类别筛选 |
retrieve_memory |
按精确键检索内存 |
search_memories |
全文搜索内存内容 |
list_recent_memories |
列出最近更新的记忆 |
store_memory |
使用类别存储或更新内存 |
update_categories |
将一个内存重新分配给一个或多个类别 |
get_edit_history |
查看内存的编辑历史记录 |
delete_memory |
永久删除内存 |
get_memory_stats |
显示内存/类别计数和存储路径 |
export_memories |
将所有内存导出为JSON |
推荐检索流程:
list_categories -> list_memories -> retrieve_memory
使用 search_memories 对于主题发现,然后在依赖它之前检索精确匹配的内存。
MCP客户端配置
大多数支持流式HTTP的客户端:
{
"mcpServers": {
"context-keep": {
"url": "http://localhost:5100/mcp"
}
}
}
反重力IDE使用 serverURL:
{
"mcpServers": {
"context-keep": {
"serverURL": "http://localhost:5100/mcp"
}
}
}
SSE回退:
{
"mcpServers": {
"context-keep": {
"url": "http://localhost:5100/sse"
}
}
}
对于远程机器,请更换 localhost 使用运行ContextKeep的计算机的主机名或地址。
不要将旧的SSH/stdin配置保持为活动状态 context-keep 服务器名称。它可能会启动一个写入与WebUI不同的数据库的旧服务器。
验证正确的服务器
连接客户端后,呼叫 get_contextkeep_info.
预期V2.1值:
version:2.1.0schema_version:2storage_backend:sqlitestorage_path:/app/data/contextkeep.db在Docker中,或您配置的本地路径- V2.1工具列表,包括
list_memories,list_categories,update_categories,以及get_edit_history
如果代理存储了内存,但WebUI看不到它,请比较WebUI /api/info 使用MCP get_contextkeep_infoThe database_id, storage_path,并且内存计数应匹配。
备份与恢复
创建经过验证的裸机备份:
python scripts/backup_contextkeep.py baremetal --install-dir /path/to/contextkeep
创建一个经过验证的Docker备份:
python scripts/backup_contextkeep.py docker --volume <docker-volume-name>
还原命令会写入每个备份文件夹。完整指南在 docs/SAFE_UPGRADE.md.
如果您使用容器自动更新软件,请保持外部备份例程。安全升级脚本可以在升级前验证备份,但无人值守的映像替换不能要求您确认备份健康状况。
文档
更新日志
V2.1图集
- 带FTS5搜索的SQLite数据库。
- 用户可编辑的类别,具有多类别内存分配。
- WebUI类别管理。
- V1 JSON迁移,保留遗留标签。
- 一个容器Docker默认用于共享WebUI/MCP数据库访问。
get_contextkeep_info身份检查。- 已验证的备份和还原工具。
- 更新了HTTP、Antigravity和SSE回退的MCP客户端示例。
V1.3港口
- Docker支持。
- 现代Python打包。
- 新工具:
delete_memory,get_memory_stats,export_memories. - WebUI导出。
- 打包和代码质量修复。
V1.2黑曜石实验室
- 内存目录工具。
- 黑曜石实验室UI重新设计。
- 日历和内存计数的改进。
V1.1
- Web仪表板。
- 苏格兰和南方能源公司运输支持。
- Linux系统服务安装程序。
- 内存标题和时间戳。
V1.0
- 具有持久JSON支持内存的核心MCP服务器。
- 本地stdio和远程访问模式。
贡献
欢迎问题、功能想法和拉取请求。如果你围绕ContextKeep构建了一个客户端指南、迁移配方或工作流模式,请分享。
V1.3社区贡献者
感谢所有为Harbor发布做出贡献的人:
- @嘘 打开Docker支持请求。
- @赛博狗7 贡献了最初的Docker和Docker Compose实现。
- @弗雷霍夫 贡献了Dockerfile,
pyproject.toml,uv支持和打包修复。 - @thinkstylestudy 通过社区宣传支持该项目。
支持
如果ContextKeep为您节省了时间、令牌或上下文窗口痛苦,我们将不胜感激。
Built by GeekJohn