有时候觉得,写代码和养孩子没什么区别,你得教它规矩,还得忍受它间歇性的“失忆”。
前言
最近这段时间,我一直在折腾自己的工作流。作为一名在 Roblox 圈子里混迹、偶尔还要兼顾游戏策划活儿的“杂家”,我的日常基本上就是在 Studio 里反复横跳。代码写多了,逻辑理顺了,但随之而来的问题也越来越明显——现在的 AI 助手确实很强,但它往往像个“临时工”。你每次开一个新的对话框,都要把项目背景、代码规范、之前的坑点重新交待一遍。这种感觉就像是你带了一个智商爆表但只有七秒记忆的徒弟,每天早上上班第一件事就是自我介绍,真的很累。
我现在的副标题是 Me.Lerp(Coder, GameProducer, Time);,在这个向制作人转型的过程中,我越来越意识到“管理效率”的重要性。不管是对人,还是对 AI。
为了解决这个问题,我先后给 OpenCode 装了两个插件:一个是负责编排多代理协作的 OhMyOpenCode(我习惯叫它 omo),另一个是负责持久化记忆的 opencode-mem(简称 mem)。用了一段时间,感觉确实打到了痛点上。我不是什么架构专家,下面这些就是我在项目里踩坑之后整理的一点私人记录。
OhMyOpenCode:从单兵作战到一支团队
在没装 omo 之前,OpenCode 对我来说就是一个很听话的“单点代理”。它能帮我写函数、找 Bug,但一旦任务稍微复杂一点,比如“帮我分析这个模块的性能瓶颈并查一下官方最新的 API 文档”,它就开始显得捉襟见肘。它得先搜索,再阅读,再思考,最后给结论。整个过程是线性的,效率说实话也就那样。
后来我装了 OhMyOpenCode。它的本质不是某个单一功能,而是一层“代理编排”。它把原来的单兵 AI 变成了一个有主管、也有若干专业子代理的小团队。
怎么让每个子代理各司其职?
安装倒是简单,在终端里敲一行就行:
# 顺便提一句,现在推荐用这个新命令
bunx oh-my-openagent install
装完之后,它会在 ~/.config/opencode/ 下生成一堆配置文件。最核心的是那个 oh-my-openagent.jsonc。为什么带个 c?因为它支持注释,这对我们这种记性不好的人太友好了。
在配置文件里,你可以定义不同的子代理(Sub-agents)。比如我会配一个专门跑 explore 的代理,给它分配较快的模型,让它去翻代码库、跑 grep;再配一个顾问类代理,用最强、最贵的模型(比如那个大家都懂的强推理模型),专门帮我做架构决策。
并行的好处在于,当我抛出一个复杂问题时,主代理会先把它拆成几块。你会看到终端里好几个任务同时启动:一个在后台翻我的本地脚本,一个在通过 MCP 工具查官方最新的技术文档,还有一个已经在根据现有的上下文构思重构方案了。
那个让我又爱又恨的“全力模式”
omo 里有一个指令叫 ultrawork,可以理解成“全力模式”。一旦下达,AI 就会一口气把问题啃到底,不达目标不收工。它会自我循环、自我纠错,直到完成预设目标。
有一次我处理一段绕得我头大的逻辑,分支条件多到自己都快理不清了。我直接开了 ultrawork 丢给它,然后去接了杯咖啡。等我回来,它已经自己跑了五六轮校验,把那一堆边界情况一个个对齐好了。把这种重复又繁琐的活儿交出去,确实省了不少心。
注:多代理协作虽然好用,但很考验你的配置文件。如果没把子代理的职责分清楚,它们会在后台重复劳动,而那些消耗掉的 token 都是要算钱的。
opencode-mem:给 AI 装上本地“大脑皮层”
如果说 omo 解决了“广度”和“速度”的问题,那 mem 解决的就是“深度”和“连续性”的问题。
就像我开头说的,AI 容易失忆。虽然 OpenCode 有上下文管理,但一旦会话长了,或者你开了新窗口,它就成了最熟悉的陌生人。opencode-mem 的出现,就是为了把那些项目里的“软知识”留存下来。
隐私与本地化:我最后的倔强
作为开发,我对把代码细节和项目逻辑传到云端做索引这件事一直挺敏感的。mem 最打动我的一点是,它用的是本地向量数据库(基于 SQLite)。所有的记忆提取、存储、搜索,全在自己机器上跑。对于要用在工作项目上的工具来说,这份安全感很重要。
安装方式也是典型的 OpenCode 风格,直接在 ~/.config/opencode/opencode.json 的插件列表里加一行就行:
{
"plugin": [
"opencode-mem" // 加这行,重启后它会自动处理剩下的事
]
}
它是怎么帮我记住那些“潜规则”的?
在项目开发中,有很多潜规则是文档里写不出来的。比如某个模块因为历史遗留问题不能直接改、某段流程因为特殊限制必须按固定套路走。这些东西,新人看不懂,AI 更猜不到。
以前我得反复叮嘱 AI。现在,我会用 memory add 把这些约定存进去,或者干脆让它在对话中自动学习。存的时候我尽量写得抽象、只讲方法论,不带任何具体的业务字段——毕竟这库虽然在本地,但好习惯还是得有。
下次我再让它写个新功能,它会在生成代码前自动去搜索相关的记忆,然后提醒我:“根据之前的记录,你定过这里要按某个固定流程来,我帮你把那部分逻辑补上了。”那种感觉,像是在和一个合作了很久、彼此有默契的搭档干活。
注:别指望 AI 自动能记住所有琐碎的事。最有效的办法是定期用 memory profile 查看它对你的认知,如果发现它记偏了,手动纠偏比等它慢慢学习要高效得多。
这种“化学反应”带来的质变
当 omo 遇上 mem,我的工作流发生了质的改变。
现在我启动一个任务,往往是这样的:
- 我丢出一个需求。
- mem 迅速检索出我之前定下的偏好和避坑指南。
- omo 拿着这些“记忆”作为约束,指挥它的子代理团队开始并行作业。
这不再是“我教 AI 做事”,而更像是“我带了一个团队在攻坚”。我负责定方向、做最后的 Code Review,脏活累活、查文档、搜代码、对接口,全交给这套系统去跑。
虽然我还是偶尔要熬夜调 Bug,但起码不用再每天早上跟 AI 自我介绍了。
其实我们这些做技术的,折腾工具的初衷都很单纯:就是想腾出点时间,多去想想怎么让游戏更好玩,或者干脆多睡一小时觉。
注:工具是为人服务的,别本末倒置。如果你花在配置插件上的时间比省下来的还多,那就该停下来想想了。
写在结尾
这篇文章写得有点碎,基本上是边喝水边敲出来的随笔。我一直觉得,AI Agent 这种东西,不应该是一个高高在上的黑盒,它应该是我们手里的一把趁手的扳手,或者一个靠谱的后勤。
OhMyOpenCode 给了我“并行”的效率,opencode-mem 给了我“连续”的记忆。这两个插件合在一起,才让我觉得这个所谓的“AI 助理”真正开始落地生根了。如果你也觉得每天跟 AI 解释背景很烦,或者觉得单兵 AI 跑得太慢,真的可以试试这套组合。
虽然我依然在从程序员向制作人 Lerp 的路上慢慢磨,但有了这些好工具,起码这段路走得不那么孤独,也不那么累。
感谢你看完了我的这点絮叨。
每个人都要开开心心,快快乐乐的呀~!
编排团队与留住记忆:关于 OhMyOpenCode 和 opencode-mem 的一些碎碎念
https://白日梦.cn/2026/06/18/Y7dBybrM
评论