扒完Codex源码才懂:真正能写代码的Agent,靠的不只是大模型
文章目录1 先从一个扎心的误解说起2 拿个真实场景你就懂差距在哪了2.1 普通大模型 vs 真·Coding Agent2.2 根本不是一次问答能搞定的3 整体架构先摸清楚一共三层3.1 最上层各种客户端入口3.2 中间层核心Agent Harness3.3 最下层真实的本地环境4 核心拆成五大件少一件都转不起来4.1 Agent Loop真正让Agent不停干活的发动机4.2 上下文与状态模型每次睁眼到底能看见啥4.3 Tool系统模型说的话怎么找到真干活的人4.4 本地执行Runtime指令最终怎么落到你电脑上4.5 权限与安全能做不代表就该做5 一整套任务跑下来到底是啥流程6 三个最容易搞混的概念别再闹笑话了6.1 模型不等于Agent6.2 Tool不等于执行器6.3 对话历史不等于上下文最后说两句P.S. 目前国内还是很缺AI人才的希望更多人能真正加入到AI行业共同促进行业进步增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.csdn.net/jiangjunshow教程通俗易懂高中生都能看懂还有各种段子风趣幽默从深度学习基础原理到各领域实战应用都有讲解我22年的AI积累全在里面了。注意教程仅限真正想入门AI的朋友否则看看零散的博文就够了。1 先从一个扎心的误解说起我以前真的特别天真。桌面Agent不就是大模型加个工具调用吗有啥技术含量。直到我硬着头皮扒了Codex的源码当场就给我之前的想法道歉了。就像你以为开奶茶店就是煮茶倒珍珠等真盘个店才知道备货、点单、出餐、售后、卫生检查少一个环节你都开不下去。大家平时只看见模型在那输出答案觉得它无所不能。根本没注意到它外面裹着的那一大套“Agent马甲”。那才是真正闷头干活的主力。2 拿个真实场景你就懂差距在哪了2.1 普通大模型 vs 真·Coding Agent就说修bug这事。你给普通大模型扔个bug描述它最多给你扯两句修改思路。能不能跑、对不对、有没有副作用全靠你自己踩坑。但Codex这种Agent不一样。你说一句“修复这个登录偶发跳转的bug”它能自己查bug单、捞日志、搜代码、改文件、跑测试最后给你交差。2.2 根本不是一次问答能搞定的别以为是模型一次回答就干完了。根本不可能。它是走一步看一步干完一样把结果甩回去让模型接着想下一步。循环往复直到它自己觉得完事了。说难听点就像个靠谱的实习生做一步汇报一步绝不自己瞎做主。3 整体架构先摸清楚一共三层别上来就扎进代码里先看全貌。从职责上拆Codex一共分三层。3.1 最上层各种客户端入口命令行、IDE插件、桌面应用都是这一层。说白了就是你跟它说话的窗口负责发任务、看结果。3.2 中间层核心Agent Harness这才是整个Agent的总指挥室。上下文管理、状态维护、工具编排、安全执行全在这层。很多人以为这层就一个大模型大错特错。模型就负责“想”剩下的脏活累活全是Harness干的。3.3 最下层真实的本地环境就是你的电脑文件系统、终端进程、操作系统还有各种外接的服务。所有指令最终都要落到这一层才算数。4 核心拆成五大件少一件都转不起来4.1 Agent Loop真正让Agent不停干活的发动机这东西说穿了就是个死循环。问模型下一步干啥 → 模型说调用工具 → 去执行工具 → 把结果记下来 → 再回去问模型接下来咋办。就像项目经理催进度做完一个节点就同步一次接着安排下一个节点。真实代码里还要处理一堆杂事用户中途加需求、失败重试、任务取消、上下文满了压缩、同时跑好几个工具。但核心逻辑就这么朴素干一步问一步再干一步。没有这个循环模型再厉害也只能输出一次就躺平。4.2 上下文与状态模型每次睁眼到底能看见啥很多人以为就是把聊天记录全塞回去。太天真了。第二次问模型的时候你得告诉它之前搜了啥文件、工具返回啥结果、当前在哪个目录、项目有啥规矩、开了哪些技能、有没有权限改东西。就像开周会不能上来就说“继续”得先把进度、资源、规则全摆出来大家才知道聊啥。这里面还分好几个生命周期的状态整个会话是一个一轮任务是一个单次问模型又是一个快照。为啥要做快照就怕出现“菜单上写着有菜后厨说卖完了”的乌龙。保证模型看到的工具和真能执行的工具绝对是同一套。聊太长了上下文装不下还得自动压缩把没用的废话挤掉留着干货接着跑。4.3 Tool系统模型说的话怎么找到真干活的人模型不会直接给你敲命令行。它输出的是结构化的调用类似“我要执行命令内容是npm test在某某目录下”。Tool系统就干两件事。第一件是给模型递菜单现在有啥工具、每个工具要传啥参数写得明明白白。第二件是模型点单了它去找对应后厨把菜做出来。别以为工具就是个简单函数调用。模型看到的是“菜单”中间有路由负责接单有注册中心管着哪些厨师在岗最后才是真正的执行器下锅。一套流程下来跟外卖平台接单派单一模一样。而且菜单不只有内置菜外接的MCP、插件、动态加载的能力都能往上凑。模型自己都分不清哪个是原生的哪个是外接的能用就行。4.4 本地执行Runtime指令最终怎么落到你电脑上到这一层才是真刀真枪跟操作系统打交道。就拿执行命令来说不是把字符串扔给shell就完事了。要解析命令、选工作目录、接管输出、区分是不是交互式终端。短命令直接等结果长命令要保留进程随时能接着输入。还要管超时、取消、杀进程全家桶不能留后台孤儿进程占资源。改文件也一样不是直接覆盖就完了。要解析补丁、核对上下文、确认路径没问题改完还要生成差异记录。改坏了还得把错误甩回去让模型自己看着办。说白了Tool管“想做什么”Runtime管“怎么在本机安全稳妥地做成”完全是两码事。4.5 权限与安全能做不代表就该做这是最容易被忽略的一点。一个能随便跑命令、改你本地文件的Agent光靠prompt管着那跟靠自觉防盗没区别。真要搞破坏prompt拦得住吗所以Codex直接把安全焊死在执行层。每次操作前先查权限能不能直接跑是不是只能在沙箱里跑要不要问用户同意还是直接就给拒了。不同系统有不同的沙箱实现苹果、Linux、Windows各有各的招。但目标只有一个模型嘴炮再厉害没系统授权它啥也干不了。记住一句话安全规则写在prompt里是给模型看的沙箱才是它真翻不过去的墙。5 一整套任务跑下来到底是啥流程就拿修bug那个例子串一遍你就全明白了。你把需求发过去不是模型一下就给你改完了。先初始化本轮任务把项目规则、可用能力全装进去。然后拍一张当前环境的快照发给模型。模型一看是修bug先调用工具查bug单、捞日志。工具跑完把结果塞回历史再问模型下一步。模型分析完日志去搜相关代码。搜完再回去模型判断差不多了就改文件、跑测试。每一步操作都要过权限检查该拦就拦该问就问。测试没过就接着循环调测试过了模型才输出最终结论交差完事。你看这一整套下来缺了哪个模块都不行。不是模型厉害是一整套班子围着模型转才显得它无所不能。6 三个最容易搞混的概念别再闹笑话了6.1 模型不等于Agent模型就是个光杆司令只会根据输入出主意。Agent是带班子的有上下文、有工具、有循环能自己把事从头到尾干完。别再张嘴就说“大模型就是Agent”了差远了。6.2 Tool不等于执行器你在菜单上看到的菜名不等于后厨的炒锅和菜刀。Tool是给模型看的契约真正落地干活的是执行器和运行时。中间还差着路由、注册、权限检查好几层呢。6.3 对话历史不等于上下文别以为把聊天记录全塞进去就是上下文了。项目规则、工作区状态、权限、工具列表、环境信息这些全是上下文的一部分。聊天记录只是其中一小块而已。最后说两句现在很多人聊Agent总喜欢把功劳全算在模型头上。其实模型更像那个在台上演讲的CEO看着风光无限。背后是一整套团队在支撑Loop负责推进度上下文管信息同步工具系统管对接Runtime管落地安全部门守底线。少了哪个环节这个Agent都转不起来。等你把这套结构摸透了再看市面上各种桌面Agent。就不会张嘴就说“不就是套了个大模型”这种外行话了。P.S. 目前国内还是很缺AI人才的希望更多人能真正加入到AI行业共同促进行业进步增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.csdn.net/jiangjunshow教程通俗易懂高中生都能看懂还有各种段子风趣幽默从深度学习基础原理到各领域实战应用都有讲解我22年的AI积累全在里面了。注意教程仅限真正想入门AI的朋友否则看看零散的博文就够了。

相关新闻

从Express转向NestJS:规范架构结合LangChain开发AI服务

从Express转向NestJS:规范架构结合LangChain开发AI服务

文章目录 1 为什么放着Express不用,非要折腾NestJS?1.1 俩框架到底差在哪 2 三分钟搭起你的第一个NestJS项目2.1 几行命令就完事 3 三个核心概念搞懂,NestJS就入门一半了3.1 模块:应用里的各个部门3.2 控制器:专门接请…

2026/9/21 17:31:13 阅读更多 →
TextSnatcher:如何在3分钟内从图片中提取文字?

TextSnatcher:如何在3分钟内从图片中提取文字?

TextSnatcher:如何在3分钟内从图片中提取文字? 【免费下载链接】TextSnatcher How to Copy Text from Images ? Answer is TextSnatcher !. Perform OCR operations in seconds on Linux Desktop. 项目地址: https://gitcode.com/gh_mirrors/te/TextS…

2026/9/20 7:50:11 阅读更多 →
BlackHole终极指南:macOS零延迟音频路由的完整解决方案

BlackHole终极指南:macOS零延迟音频路由的完整解决方案

BlackHole终极指南:macOS零延迟音频路由的完整解决方案 【免费下载链接】BlackHole BlackHole is a modern macOS audio loopback driver that allows applications to pass audio to other applications with zero additional latency. 项目地址: https://gitcod…

2026/9/20 12:22:40 阅读更多 →

最新新闻

RSA算法原理图解:3个步骤搞定加密完整示例

RSA算法原理图解:3个步骤搞定加密完整示例

RSA算法原理图解:3个步骤搞定加密完整示例 你从网上复制了一段 RSA 加密代码,导入项目后直接报错 ValueError: b'...' is not a valid base64 string…

2026/9/22 3:59:22 阅读更多 →
3步搞定快刀乱麻:程序员项目架构完整示例

3步搞定快刀乱麻:程序员项目架构完整示例

3步搞定快刀乱麻:程序员项目架构完整示例 刚毕业写代码,是不是常觉得单看每个函数都懂,一搭项目就懵?别慌,这是典型的“快刀乱麻”状态。…

2026/9/22 3:59:22 阅读更多 →
实习总结及体会:手写实现3个核心模块,搞定毕业项目

实习总结及体会:手写实现3个核心模块,搞定毕业项目

实习总结及体会:手写实现3个核心模块,搞定毕业项目 看了一堆教程还是不会写项目?别慌。我带过5届应届生,发现90%的人卡在“能跑通Demo”和“能交付产品”之间。今天不讲虚的,直接拆解我实习期间主导的订单系统重构项目。通过 手写实现…

2026/9/22 3:59:22 阅读更多 →
面试必问大容量存储器,3个坑点避开配置卡半天

面试必问大容量存储器,3个坑点避开配置卡半天

面试必问大容量存储器,3个坑点避开配置卡半天 刚入职的小张,为了准备大厂后端面试,对着文档配置本地测试环境。他下载了 SSD 驱动,装好了 RAID 卡,结果代码一跑,磁盘 I/O 直接卡死,日志刷出几千行报错。他盯着屏幕抓头发,心想:…

2026/9/22 3:59:22 阅读更多 →
大整数加法速查手册:拆解源码彻底搞定

大整数加法速查手册:拆解源码彻底搞定

大整数加法速查手册:拆解源码彻底搞定 看了一堆教程还是不会写项目?别慌,很多人卡在“看懂了逻辑”和“能独立实现”之间的鸿沟。大整数加法看似简单,实则是考察字符串处理、数组操作及边界条件的经典入门题。本文不玩虚的,直接通过一份…

2026/9/22 3:58:21 阅读更多 →
qvod视频搜索实战项目踩坑:API全变后的3个致命错误

qvod视频搜索实战项目踩坑:API全变后的3个致命错误

qvod视频搜索实战项目踩坑:API全变后的3个致命错误 qvod视频搜索接口在2023年Q4版本升级后,底层数据结构彻底重构,导致大量基于旧版API开发的实战项目直接报错。很多开发者盯着控制台里满屏的 JSON Parse Error…

2026/9/22 3:58:21 阅读更多 →

日新闻

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天 配置环境就卡半天?别怪机器慢,多半是你没选对工具链。在Java、Go或Python的项目现场, 手写实现…

2026/9/22 0:00:41 阅读更多 →
剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑 面试被问原理答不上来,是不是常态?别慌。很多开发者对着 GitHub 开源仓库里的代码发呆,看似简单实则暗藏玄机。今天这份【剑帝加点】速查手册,直接带你拆解核心实现,把面试必考的原理讲透。…

2026/9/22 0:00:41 阅读更多 →
手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优 复制来的代码跑不通不知道怎么调?别慌,这种“复制粘贴地狱”在开发圈太常见了。尤其是做 图片压缩网站…

2026/9/22 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/21 3:13:20 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/21 4:51:05 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/21 15:36:51 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/21 15:36:51 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/22 2:43:42 阅读更多 →