Wiki 知识库

全部文档 / 作者: VerySmallWoods / 标签: 工具调用

2 篇
清除

Codex 怎样用 apply_patch 实现编辑文件工具?

本文深入解析 OpenAI Codex 的 apply_patch 编辑文件工具的设计与实现。作者拆解了从模型生成 patch 到文件系统实际变更的五层链路:自定义 patch 语言生成、Lark grammar 解析、验证定位、安全审批与执行。文章对比了 Codex 自定义 patch 格式与标准 unified diff 的异同,详细说明了 hunk 匹配的四轮渐进容错策略、从后向前的替换顺序、写入前整份 patch 验证的意义,以及路径收集与 sandbox 权限审批机制,为 Agent 开发者提供了连接大模型文本生成与确定性文件操作的工程参考。

技术 › Codex VerySmallWoods 2026-09-1319.7 KB 18.3K 147 84

Pi, Codex, DSH 的 Agent Loop 策略有何不同?

作者在将 ChatOllama 改写为 Agent 时思考“Agent 最多应连续执行多少步”的问题,对比了 Pi、Codex 和 DeepSeek Harness(DSH)三种 Agent Loop 实现。Pi 依赖 shouldStopAfterTurn 回调,把终止策略交给上层,强调可组合性;Codex 不设统一轮数上限,而是对模型请求、工具调用、上下文压缩和 token 预算分层管理,适合长时间编码任务;DSH 则像可恢复的运行协议,用 turn/step 区分、inbox 机制和事件日志驱动继续与停止,强调可恢复与可扩展。作者总结:生产级 Agent 不应依赖固定 step 数,核心在于确认任务是否仍在推进并有明确机制停止。

技术 › Agent VerySmallWoods 2026-09-105.3 KB 3.8K 32 77