pp3x325
V2EX  ›  Claude

做了个让 Claude Code、Codex、Cursor 共享记忆的小工具

  •  
  •   pp3x325 · 15h 24m ago · 1253 views

    在用 Claude Code 、Codex 、Cursor 这些 AI 工具写东西,感觉有个问题

    每换一个工具、一个项目、一个新会话,都要重新解释一遍自己是谁 比如:我习惯用中文沟通、我希望它先读代码再下判断,每次都要给他教育一遍,定规则。。 所以我做了一个小工具,叫 Engram 。

    简单说,它就是把这些记忆存在本地 JSON 里,然后通过 MCP 暴露给支持 MCP 的 AI 工具读取。 它主要做几件事:

    1. 记住我的身份、偏好、沟通习惯
    2. 记住项目里的经验教训和关键决策
    3. 多个 AI 工具共享同一份本地记忆
    4. 数据都在本地,JSON 可以直接编辑
    5. 通过 MCP 接入,不绑定某一个 AI 产品 比如我跟一个 AI 说过“这个项目不要自动改范围,先确认边界。”下次换到另一个 AI 工具时, 新 AI 也能知道这个要求。

    老法师们有时间也帮忙看一下给点意见,第一次 VIBE CODING 。。。 https://github.com/Patdolitse/engram

    10 replies    2026-05-19 15:34:25 +08:00
    dearrrfish
        1
    dearrrfish  
       13h 33m ago
    鼓励分享!
    思路跟我现在用的这个差不多 https://github.com/sipyourdrink-ltd/bernstein

    另外您举例的几个痛点不应该是 AGENTS.md 的业务范围?
    Grapevine
        2
    Grapevine  
       7h 12m ago
    这是不是可以直接用 skill 来写
    rateltalk
        3
    rateltalk  
       6h 34m ago
    面向开发人员?做成一个 app 就更好了,安装登录管理、、
    pslucifer
        4
    pslucifer  
       5h 50m ago
    啊,我是学的别人,agents.md 里写清楚,有 Progress.md current.md 这些,做状态管理,好像也够用?当然可能记的没那么多,因为多了会占用上下文,而且 AI 不一定会及时更新
    pp3x325
        5
    pp3x325  
    OP
       3h 39m ago
    @dearrrfish bernstein 看了一下,思路确实很像,感谢分享。

    AGENTS.md 那个问题说得有道理,确实有重叠。主要区别是 AGENTS.md 是 per-repo 的,每个新项目都要重新写一份。Engram 存的是跨所有项目、跨所有工具都不变的那部分——比如"我习惯中文回复""代码审查先看意图再改"——这些不应该每个 repo 配一遍。
    pp3x325
        6
    pp3x325  
    OP
       3h 38m ago
    @Grapevine skill 是 prompt 模板,不持久化状态,会话结束就没了。Engram 是本地 JSON + MCP Server ,数据一直在 ~/.engram/ 里,换工具换项目都带着。用 skill 解决不了"下次换 Cursor 时新工具也知道上次决策"这个问题。
    pp3x325
        7
    pp3x325  
    OP
       3h 38m ago
    @rateltalk 对,现在确实开发者向,pip install + 配 mcp.json 门槛不低。GUI 是想做的方向,先把核心稳定。不过本地 JSON 不要账号这个是故意的设计——数据不想上云。
    pp3x325
        8
    pp3x325  
    OP
       3h 37m ago
    @pslucifer agents.md + 状态文件这个方法我也用过,单工具单项目是够的。

    差别主要两点:一是跨工具,Claude Code 和 Cursor 都在用的话 agents.md 是 per-repo 的,Engram 存的是所有项目通用的个人偏好;二是你说的"AI 不一定及时更新"是真实问题,Engram 是主动调用写入,不依赖 AI 自己维护文件。上下文占用也有考虑,get_user_context 是按需加载,不是全部塞进去。
    383394544
        9
    383394544  
       3h 12m ago
    我只用 Claude Code 当主驾,codex 只用于让 cc 调用它来 review code 或翻译 i18n 。这样只要养好 Claude Code 就行
    dearrrfish
        10
    dearrrfish  
       34 mins ago
    @pp3x325

    agents.md 放到 ~/.agents 就是全局的了.
    当然 Claude 不认,要在 Claude.md 里说一下
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5332 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 76ms · UTC 08:09 · PVG 16:09 · LAX 01:09 · JFK 04:09
    ♥ Do have faith in what you're doing.