2026年6月25日 2 分钟阅读

AI 编程助手每次打开新会话都要从头聊起?EGC 开源方案让 Claude Code/Cursor 拥有跨会话持久记忆

tinyash 0 条评论

你有没有遇到过这种情况:昨天用 Claude Code 调试了一个复杂的 WebSocket 连接问题,找到了根本原因,还写了一段修复代码。今天打开终端,输入 claude,结果 AI 一脸无辜地问你「你好!有什么我可以帮你的?」——它完全不记得昨天发生了什么。

你只能重新描述项目结构、重新解释上下文、重新告诉它你习惯用简洁回复。即使你把昨天的对话翻出来复制粘贴,AI 依然没有「记忆」——它只是把那些文字当成了新的 prompt。

这不是你的问题。这是所有 AI 编程助手的共同短板:每个会话都是从零开始的

为什么这个问题值得认真对待

每次会话的「失忆」带来的是实打实的时间成本:

  • 重复上下文:每次新建会话都要重新解释项目结构、技术栈、编码规范,平均花费 5-10 分钟
  • 重复决策:昨天决定的技术方案,今天可能又绕回去讨论了一遍
  • 丢失教训:上周踩过的坑、总结的规避方法,随着会话关闭一起消失
  • 切换工具:如果你同时在用 Claude Code、Cursor、Gemini CLI,每个工具都有自己的「记忆孤岛」

对于日常使用 AI 编程助手的开发者来说,这些碎片时间积累起来,每天可能浪费 30-60 分钟——一年就是上百个小时。

现有的折中方案

在 EGC 出现之前,开发者用各种「土办法」来解决这个问题:

方案一:手动维护 CLAUDE.md 文件

Claude Code 支持项目根目录的 CLAUDE.md 文件作为长期提示。但你得自己手动维护它——每当有新的决策或发现,就要打开文件编辑、保存。一旦忘记更新,记忆就断了。

方案二:翻聊天记录

每次开始新会话前,从之前的对话中复制关键信息。耗时费力,而且会话一多就难以管理。

方案三:只用长会话

一个会话开着一整天不关。但这意味着每次 terminal 重启、系统更新或 MCP 配置变更,所有上下文就没了。

这些方案都不是真正意义上的「持久记忆」——它们要么需要手动维护,要么会随会话结束而丢失。

EGC:给 AI 编程助手的「永久记忆」

EGC(Extended Global Context)是一个开源的本地运行时(MIT 协议),它的目标很简单:让你的 AI 编程助手不再从零开始

它的工作原理也很直观:

  1. 在每个会话结束时,自动保存当前的上下文——包括做出的决策、失败的经历、你的偏好、下一步计划
  2. 在下个会话开始时,自动把这些信息加载回来——不需要你输入任何命令
  3. 安装一次,同时覆盖 Claude Code、Cursor、Gemini CLI、Windsurf 等多个工具

EGC 的创建者 Felipe Marzochi 把它描述为:「你的 AI 代理永远不需要从零开始。不需要学习任何命令,只需工作——EGC 处理其余部分。」

安装

EGC 基于 Node.js,需要 20 或更新版本:

npm install -g @egchq/egc && egc install

或者无需全局安装:

npx @egchq/egc install

安装过程会自动检测你已安装的 AI 编程工具,为每个工具配置 MCP 服务器,并初始化 SQLite 数据库。它还支持从源码编译(Linux/macOS):

git clone https://github.com/Fmarzochi/EGC.git
cd EGC
sh install.sh

安装完成后,用以下命令验证:

egc doctor

这会检查两个 MCP 服务器是否已正确构建、注册并在每个检测到的工具中正常工作。

核心功能:两大 MCP 服务器

EGC 包含两个协同工作的 MCP 服务器。

egc-memory(记忆服务器)

包含 14 个工具,AI 会自动调用——你不需要记忆任何命令。在会话开始时,AI 自动调用 get_state 加载项目记忆;结束时调用 update_state 保存更新。关键工具包括:

  • get_state / update_state — 加载和保存项目状态
  • store_decision / query_history — 持久化单条决策到 SQLite,按时间戳查询
  • search_history — 全文搜索(BM25 排序算法)
  • working_memory_set / get — 带 TTL 的短期记忆存储
  • lesson_save / recall / reinforce — 跨会话知识管理,带有置信度衰减机制
  • detect_patterns — 自动分析高频命令和重复错误

状态文件存储在 ~/.egc/state/<项目名>.md,每个项目一个文件,纯 Markdown 格式,人类可读。

egc-guardian(安全守卫)

包含 5 个后台自动运行的工具,在每次 shell 命令和文件写入前进行检查:

  • validate_command — 检查 shell 命令是否符合项目安全规则
  • validate_write — 验证文件写入路径,防止意外覆盖
  • reduce_context — 压缩文件负载,节约 token 预算
  • orchestrate_task — 根据 agent/skill 上下文路由 prompt

egc watch:跨工具实时同步

这是 EGC 最实用的功能之一。运行一次后,你的上下文在所有 AI 编程工具之间实时同步:

egc watch              # 监控当前项目
egc watch /path/proj   # 监控指定项目

你在 Cursor 中编辑的上下文,自动出现在 Gemini CLI、Copilot、Windsurf 中。不需要手动复制粘贴,不需要维护多份配置文件。

egc dashboard:实时「任务控制台」

EGC 还提供了一个本地 Web 仪表盘:

egc dashboard          # 启动仪表盘(浏览器打开 http://localhost:7890)
egc dashboard stop     # 停止后台服务

仪表盘实时展示 AI 的工具调用、文件编辑、shell 命令、token 用量、记忆状态和代理状态——像一个任务控制台,让你对 AI 的一举一动一目了然。

附赠:479 个 Prompt 组件

EGC 还附带一个 Prompt 库,包含 63 个代理(agent)、229 个技能(skill)、76 个命令和 111 条规则——全部来自真实工程会话。安装时可以选择是否导入。

实际使用场景

场景一:长期项目维护

你有一个维护了半年的 Django 项目,每周用 Claude Code 处理 2-3 个 issue。有了 EGC,每次打开 Claude Code,AI 自动知道项目的技术栈(Django + PostgreSQL + Redis)、你偏好的回复风格(简洁、中文优先)、以及上周 pending 的三个任务。不需要任何提示——直接进入工作状态。

场景二:多工具切换

项目初期用 Cursor 做原型,后期用 Claude Code 做优化和测试。没有 EGC 时,每次切换都要重新交代项目背景。有了 EGC,两个工具共享同一个状态文件——你在 Cursor 中分析的结果,Claude Code 直接读取。

场景三:团队协作

团队成员用不同的 AI 编程工具(A 用 Windsurf,B 用 Codex,C 用 Claude Code)。EGC 的状态文件是纯文本 Markdown,可以 check in 到版本控制中——团队共享同一个「项目记忆」。

注意事项

  • EGC 需要 Node.js 20+,老项目可能需要升级 Node 版本
  • 状态文件存储在本地 ~/.egc/state/,不会自动云同步——需要自行备份或通过 Git 共享
  • 首次安装后,建议先运行 egc doctor 确认所有配置正确
  • 免费项目,由单人维护——遇到问题可以去 Discord 社区 求助
  • 当前支持 Claude Code、Cursor、Gemini CLI(付费账户)、Windsurf 等多个工具

总结

EGC 解决了一个虽然简单但长期被忽视的问题:AI 编程助手的跨会话记忆。它不是那种需要反复学习的概念性工具——安装、配置、然后忘记它的存在,它会默默地在你每次开始编码时把上下文加载好。

如果你每天使用 AI 编程工具超过 30 分钟,EGC 节省的时间很快就会超过你花在安装上的 5 分钟。它不会改变你使用 AI 的方式,但会让整个体验流畅得多。

项目地址:https://github.com/Fmarzochi/EGC 安装命令:npm install -g @egchq/egc && egc install 许可证:MIT

发表评论

你的邮箱地址不会被公开,带 * 的为必填项。