夜雨聆风学习资料网

ARTICLE · 1200853

Codex 源码图解:一条命令在 Agent 里走的

Codex 源码图解:一条命令在 Agent 里走的

Codex 源码图解:一条命令在 Agent 里走的

在 Codex 里敲下“帮我运行项目测试”,按下回车,它就开始读项目、调工具、跑命令。这中间到底发生了啥?顺着一次 shell 调用拆开看。

用户输入只是个引子,真正的活儿都在后台那个 Turn 里跑。模型一边往外吐字,工具一边跟着执行,两边是重叠着干的。等命令跑完,结果回填进历史,再拿去问模型下一步咋办。要是测试挂了,它就接着查文件、改代码、继续跑,直到给出最终答复。

这套机制里有几个设计挺值得抄作业:

前后端得先分家:界面只管交互,执行逻辑全放内核。以后想加个新界面,不用把整套 Agent 重写一遍。
任务得当成循环来建:模型调用、工具执行、结果回填,每一步都得有明确的继续和结束条件。不然很容易出现回答都弹出来了,后台活儿却还没干完的尴尬。
权限和沙箱得集中管:审批解决“这事能不能干”,沙箱约束“能访问啥”。别让每个工具自己去重复写判断逻辑。
能并行但历史得有序:多个工具一起跑,谁先跑完不一定。但回填时必须按调用顺序排好,这样回过头排查问题才看得懂。

说白了,主流程顺了,后面再多失败重试、上下文压缩,代码读起来也就没那么头大了。

原文Codex 源码图解:一条命令在 Agent 里走的 12 步
广东,37分钟前,

相关学习资料