MOSS:让 agent 改写自己的源代码
自我改进的 agent 已经火了一阵子了,但你凑近看,几乎所有这类系统改的都只是文本:一段 prompt、一个 skill 文件、一张工作流图。底下那台真正的机器,路由逻辑、hook 触发的顺序、状态怎么管理,全是冻住的,因为这些都活在代码里,而 agent 从来没被允许碰代码。MOSS 这篇新论文说,行,那就让它碰代码。
它的流程是谨慎的,不是莽。MOSS 会自动从生产环境的失败里收集证据,把真正的代码改动交给一个外部的 coding-agent CLI 去做,然后在一次性的沙箱 worker 里,拿原来那些失败重放一遍改过的代码来验证。只有通过了,新版本才会被提升上线,而且要过用户同意这道关,用容器替换加健康探针,一出问题就回滚。作者点出,一旦你能改写源代码,能修的东西就是图灵完备的,这是一种客气的说法,意思是严格大于任何调 prompt 能够到的范围。在 OpenClaw 上,它一个周期就把四项任务的平均分从 0.25 拉到了 0.61,全程没有人介入。代码在 GitHub 上。
为什么这一版才是要紧的那一版:改 prompt 是在改 agent 的指令,改源代码是在改 agent 的身体。前者只能在代码已经允许的范围里重新排列行为,后者能造出原本不存在的行为。自我改进要想真的滚雪球,就必须够得到真正的 bug 所在的那一层,而结构性的失败活在代码里,不在 prompt 里。MOSS 是最早一批认真对待这件事、并给它套上安全带的工作之一。论文在 arxiv.org/abs/2605.22794。
← 返回所有文章
它的流程是谨慎的,不是莽。MOSS 会自动从生产环境的失败里收集证据,把真正的代码改动交给一个外部的 coding-agent CLI 去做,然后在一次性的沙箱 worker 里,拿原来那些失败重放一遍改过的代码来验证。只有通过了,新版本才会被提升上线,而且要过用户同意这道关,用容器替换加健康探针,一出问题就回滚。作者点出,一旦你能改写源代码,能修的东西就是图灵完备的,这是一种客气的说法,意思是严格大于任何调 prompt 能够到的范围。在 OpenClaw 上,它一个周期就把四项任务的平均分从 0.25 拉到了 0.61,全程没有人介入。代码在 GitHub 上。
为什么这一版才是要紧的那一版:改 prompt 是在改 agent 的指令,改源代码是在改 agent 的身体。前者只能在代码已经允许的范围里重新排列行为,后者能造出原本不存在的行为。自我改进要想真的滚雪球,就必须够得到真正的 bug 所在的那一层,而结构性的失败活在代码里,不在 prompt 里。MOSS 是最早一批认真对待这件事、并给它套上安全带的工作之一。论文在 arxiv.org/abs/2605.22794。
评论