持久化内存系统

Continuo是一个持久化内存系统,为开发工作流提供语义搜索和存储功能,通过分离推理(LLM)和长期记忆(向量数据库+分层压缩),系统可以无限期地保持知识,绕过上下文窗口限制。

  • by GtOkAi
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 GtOkAi/continuo-memory-mcp

使用说明

持续记忆系统

持久内存与分层压缩技术在开发环境中的应用

概述

Continuo是一种 持久内存系统 该系统为开发工作流提供了语义搜索和存储能力。通过将推理(大型语言模型,LLM)与长期记忆(向量数据库 + 分层压缩)分离,系统能够无限期地维护知识,从而规避上下文窗口的限制。

主要特点

  • 持久内存 - 在不同会话之间存储和检索开发知识
  • 语义搜索 - 使用自然语言查询查找相关信息
  • 分层压缩 - N0(数据块)→ N1(摘要)→ N2(元摘要)
  • MCP 集成 - 通过模型上下文协议与集成开发环境(IDE)无缝集成
  • 性价比高 - 100%本地(免费)或混合(低成本)部署选项
  • FastMCP(可译为“快速多重组合预测”或根据具体上下文意译,但直接音译为“法斯特MCP”在某些技术或行业语境下也可能被接受,不过“快速多重组合预测”更为通用) - 基于现代的MCP服务器框架构建

快速入门

安装

git clone https://github.com/GtOkAi/continuo-memory-mcp-memory-mcp.git
cd continuo
./scripts/setup_memory.sh

用法

  1. 启动内存服务器:
./scripts/run_memory_server.sh
  1. 配置您的集成开发环境(Qoder/Cursor):

创建 .qoder/mcp.json (或者 .cursor/mcp.json):

{
  "mcpServers": {
    "continuo-memory": {
      "command": "/absolute/path/to/continuo/venv_memory/bin/python",
      "args": [
        "/absolute/path/to/continuo/src/mcp/memory/mcp_memory_server.py",
        "--provider",
        "local",
        "--db-path",
        "/absolute/path/to/memory_db"
      ]
    }
  }
}
  1. 在您的集成开发环境(IDE)中使用:
@continuo-memory search_memory("authentication implementation")
@continuo-memory store_memory("Fixed JWT validation bug", {"file": "auth.py"})
@continuo-memory get_memory_stats()

建筑学

IDE Chat ──► MCP Adapter ──► Memory Server ──► ChromaDB
      ▲              ▲                 │            │
      │              └──── tools ◄─────┘            │
      └───── response ◄──── context ◄───────────────┘

组件

  • 内存服务器 - 使用ChromaDB和sentence-transformers进行嵌入表示
  • MCP适配器 - FastMCP服务器暴露(或“对外提供服务”) search_memory 并且 store_memory 工具
  • 分层压缩 - 多级上下文优化(N0/N1/N2)
  • 自动驾驶模式 - 可选的自动化流程:观察 → 规划 → 执行 → 反思循环

配置

局部嵌入(免费)

python src/mcp/memory/mcp_memory_server.py \
  --provider local \
  --db-path ./memory_db

OpenAI 嵌入(低成本)

python src/mcp/memory/mcp_memory_server.py \
  --provider openai \
  --api-key sk-your-key \
  --db-path ./memory_db

API

工具

search_memory(query: str, top_k: int = 5, level: str | None = None) -> str

  • 持久内存中的语义搜索
  • 返回相关文档及其相似度评分

store_memory(text: str, metadata: dict | None = None, level: str = "N0") -> str

  • 将内容存储在持久内存中
  • 支持元数据标记和层级级别

get_memory_stats() -> str

  • 获取内存统计信息(总文档数、层级数等)

层级级别

  • N0 - 原始代码块(代码片段、对话)
  • N1 - 微型摘要(压缩5-10个片段)
  • N2 - 元摘要(压缩5-10个摘要)

示例

查看 examples/memory/ 目录:

  • basic_usage.py - 简单的存储/检索操作
  • hierarchical_demo.py - 多级压缩示例
  • auto_mode_demo.py - 自主模式演示

文档

技术栈

  • Python 3.9及以上版本 - 核心实现
  • ChromaDB(注:这是一个专有名词,通常不直接翻译,但若需解释性翻译,可译为“色彩数据库”或根据具体上下文调整) - 用于嵌入的向量数据库
  • 句子变换模型(或句子表示模型) - 局部嵌入生成(all-MiniLM-L6-v2)
  • FastMCP - MCP服务器框架
  • 模型上下文协议 - 集成开发环境(IDE)集成标准

成本与许可

嵌入提供商

提供者 存储 搜索 每月(1000次查询)
中文翻译 项目1 项目2 项目3
本地(sentence-transformers) 免费 免费 $0

| OpenAI 嵌入(embeddings)| 免费 | ~$0.0001/查询 | ~$0.10 |

软件许可证 | 使用场景 | 许可证 | 成本 | |----------|---------|------| | 个人/研究 | AGPL v3(GNU Affero通用公共许可证第3版) | 免费 | | 初创公司(<100万美元,<10名员工)| AGPL v3(通用公共许可证第3版)| 免费 | | 非营利/教育 | AGPL v3(通用公共许可证第三版) | 免费 | | 商业(≥100万美元或≥10名员工)| 商业 | 起价每年2,500美元

| 见 COMMERCIAL_LICENSE.md 翻译为中文是:“商业许可证.md”

详情如下。

做出贡献 欢迎投稿!请阅读 `CONTRIBUTING.md` 翻译成中文是:“贡献指南/贡献规范文件”。这个文件通常用于说明如何向某个项目或组织做出贡献,包括贡献的流程、规范、要求等信息

作为指南。

许可证 持续记忆系统是“dual-licensed”翻译成中文是“双授权的”或“拥有双重许可的”

:

📖 开源(AGPL v3)

  • 免费提供给:
  • ✅ 个人开发者和研究人员
  • ✅ 非营利组织和教育机构 ✅ 具备(以下条件)的公司 收入低于100万美元 并且
  • <10名员工
  • ✅ 开发、测试和评估

**✅ 开源项目(兼容AGPL协议)**要求

根据AGPL v3(GNU Affero通用公共许可证第三版)分享修改后的源代码 看 许可证

遵循完整的AGPL v3条款。

💼 商业许可证

  • 所需用于: ❌ 拥有(以下特征的)公司 收入≥100万美元 或
  • ≥10名员工
  • ❌ 专有/闭源产品

❌ 不提供源代码披露的SaaS服务

  • 好处:
  • ✅ 无AGPL(GNU Affero General Public License)的copyleft义务
  • ✅ 专有使用权
  • ✅ 优先支持(可选)

**✅ 定制部署协助(可选)**定价 来自 2,500美元/年

(青铜)至自定义企业版 看 COMMERCIAL_LICENSE.md 翻译为中文是:“商业许可证.md”

关于价格和详情。

  • **💡 为什么选择AGPL + 商业模式?**可持续发展
  • 商业用户资助持续维护开源保护
  • AGPL(GNU Affero General Public License)阻止专有分支的产生合理使用
  • 小型团队和非营利组织可无限期免费使用社区优先

核心功能始终开源联系

对于商业咨询,请联系:gustavo@shigoto.me

致谢

- 嵌入模型

  • 作者

D.D. 与 顾斯塔沃·波尔托注 continuo.markdown这个项目实现了所描述的架构