省流版
claude-mem负责全部将细节注意记住,跨会话记忆存储当前 top 方案magic-context负责会话内上下文裁剪,和近期记忆保存。记忆方面不强,但是会话内保持任务目标和遵守规范行为进行进行上下文裁剪压缩Strict-Doc负责记录固化的项目文档文件,记忆文件。主要是方便人类进行阅读查看AGENTS.md添加一小段 tail 来规范行为- 自制
load-mem和save-mem以及migrate-mem的 skill 来和上面的功能进行呼应
具体配置
安装配置 claude-mem
1 | npx claude-mem install --ide opencode |
运行这个官网上的命令就能直接安装了,不过需要注意一点。这个是在 ~/.config/opencode/plugins 下面安装了一个 claude-mem.js 的插件脚本。同时对应的服务是运行在 ~/.claude/plugins/cache/thedotmack/claude-mem 的一个目录下。同时这个 claude-mem.js 只是提供了一个 search 工具。假如想要更多工具,可以在 opencode.jsonc 中配置 mcp 服务器。
1 | { |
然后在 ~/.claude-mem/settings.json 中的配置就如下所示,大家基本都是自定义API,比如使用 NewAPI,所以初始化配置的时候选择 OpenRouter,API那里随便输入字符串就行了,可以自己去 json 文件中进行细节配置,这里的 openrouter 背后的格式就是 openai-compatible 了
1 | { |
自行替换这里的路径即可,目前的 claude-mem 的插件脚本并没有注册全部 mcp 工具,要使用更多的 mcp 工具就需要把本地运行这个 mcp-server.cjs 的脚本
安装配置 magic-context
1 | curl -fsSL https://raw.githubusercontent.com/cortexkit/magic-context/master/scripts/install.sh | bash |
运行这个官网提供的命令即可。
对应的配置文件为 ~/.config/cortexkit/magic-context.jsonc
1 | { |
配置 historian 和 dreamer 两个 Agent 的模型,这里使用 opencode.jsonc 中配置的提供商和模型即可,然后再单独配置一下 embedding
注意:一定要记得禁用 opencode 内置的 compact 功能,不然和 magic-context 冲突,opencode.jsonc 的配置如下
1 | { |
Strict Doc 配置
这个配置没啥好说的,主要是配置个 python 环境,让 Agent 去配置就行了。
定期让 Agent 更新一个项目文档,要人能够看懂,claude-mem 和 magic-context 本质是面向 Agent,面向会话上下文的,而 Strict Doc 是面向开发者用户的
Skill & AGENTS.md 配置
下面是 load-mem 的 SKILL.md
1 | --- |
下面是 save-mem 的 SKILL.md
1 | --- |
下面是 migrate-mem 的 SKILL.md
1 | --- |
还有一个就是 AGENTS.md 的 tail 内容
1 | <!-- memory-system:start --> |
这几个 SKILL.md 是我自己的一些 artifacts,每个人都有自己的爱好,这个是我个人迭代出来的,专门做了一个 migrate-mem 来将我之前的一些老项目迁移成我想要的这种记忆文档系统的框架。这里的 AGENTS.md 力的这段用 <!--> 包裹起来的,就是放到 AGENTS.md 的结尾处的,用于诱导 Agent 使用这些规范而已。
总结
我主要是设计了一个 docs/project_memory 用来存储项目相关的记忆,让人能够知道这个项目发生了什么,做过什么。然后又设计了一个 docs/handbook 专门来搭建项目文档。然后都通过 Strict Doc 来方便进行可视化,既方便人类阅读,也方便 Agent 来探索。
然后 claude-mem 会通过 hook 的系统来一步步在后台进行记忆的 dump,这里会记住许许多多的细节信息,但是这个系统并不知道任务主线,项目细节是怎样的,只是有什么就记下来,这套记忆系统做的很好。
magic-context 也有记忆功能,不过他这个记忆功能肯定做的没有 claude-mem 好,但是他还有一个好处就是能够在上下文超限的时候,由模型来进行合适的上下文裁剪,并且在上下文累积的时候,也会进行记忆的 dump,不过不是 claude-mem 那样机械式的进行存储,而是由Agent通过工具调用自主决策记忆什么内容。所以他维护近期记忆,和长期规范的能力比较好,也就是说你给他一大段的规范文本,着重强调之后,即使经过裁剪,它能够延续你的这个任务主线和目标进行开发,因为 magic-context 本质上是挑选哪些块留下,哪些块压缩,但同时能给出一个 context 的索引,因为之前存储过,以及用户给的输入基本上也都能留下来。不像 opencode 内置的 compact,真的就是全盘替换内容,替换成他压缩的那么一套 Details, Next Move 那一套文本,那套基本上全乱套了,各种细节全没了。
然后通过 load-mem 和 save-mem 的 SKILL 搭配 AGENTS.md 尾部的这一个提醒块,进行一个逻辑口径的闭环,让 Agent 知道咱们有这么多工具可以用。用来让 Agent 更积极的进行记忆的保存和取出。
目前的想法就是这样,现在这样 gpt-5.6-sol 的 372K 上下文是完全够用的,并且全程用下来就是不会失忆的。并且能够在一个会话中,进行一次次的任务发布,细致修理,完成,再到下一阶段任务的发布。综合用起来,不用再频繁的进行 HANDOFF 然后去新的会话中进行 HANDOFF 的转接了。
所以推荐在进行所有的任务操作前都进行一次细致的 grilling 操作,做完之后,Agent 基本就能死死记住这些内容,后续的上下文都由 magic-context 来控制,用不到 opencode 内置 compact 了。哪怕是非常长的同质化的内容操作,比如对一个批量的目录下面的代码做成相同语义的更改,这样也不会因为爆上下触发 compact 而导致最初的任务语义发生更改。这一点是我最喜欢 magic-context 的一点。
Agent 能从设计的 docs/ 目录中找回记忆,找回规范,也能从 magic-context 提供的工具中找回记忆,最后还能从 claude-mem 中找回之前精准的都做过什么。再通过这一套插件式闭环的 SKILL 文本引导系统,感觉这下做的挺不错了,真的不虚 codex 和 claude code 了~~~
所以大家记得在对话中有意无意的,超绝不经意的加一句的,记得在明确所有规范后保存一下记忆,或者 记得在完成所有的任务内容后,也更新一下记忆,你感觉你踩了哪些坑,也可以记录一下。基本能做到 Agent 不会在同一个坑里面踩两次了。比如某个 LD_LIBRARY_PATH 变量没设置导致哪个 libxx.so 找不到的报错,减少上下文噪声,模型智商也就能感觉到噌的一下变高了~
嗯,大概就是这么多了,干项目在Agent转呀转呀的时候去并行的陪人熬夜打游戏,起来之后牙没刷,饭还没吃想着来发个帖子,饿了,觅食~~










