2025 年 5 月OpenAI 首次以研究预览形式发布云端 Codex。当时它已经能够在独立云环境中读取代码仓库、编写功能、修复 Bug、回答代码库问题并生成可供审查的 Pull Request。2025 年 10 月Codex 进入正式可用阶段同时加入 SDK、Slack 集成和企业管理能力。2026 年 2 月Codex App 发布把多个 Agent、并行任务、Worktree 和长期任务放进桌面工作环境3 月扩展到 Windows。2026 年 7 月Codex App 进一步并入新的 ChatGPT 桌面应用Codex 继续作为其中的软件工程 Agent并获得多仓库项目、Diff 内编辑和 Pull Request 审查等能力。OpenAI 在 2026 年 5 月披露Codex 的每周使用人数已经超过 400 万。这段发展过程很适合用来理解 AI Coding 产品近两年的核心变化。最早的代码助手主要围绕“生成一段代码”工作输入通常是当前文件和光标附近的上下文输出是一段补全结果。Codex 当前处理的基本单位已经扩展到“工程任务”。开发者可以提交“修复这个并发 Bug”“重构认证模块”“分析整个仓库的请求链路”“补齐测试并检查回归”等任务。Codex 随后读取项目上下文在受控执行环境中调用文件、Shell 和其他工具修改代码运行验证再把 Diff、总结或 Pull Request 交给开发者审查。官方当前将 Codex 覆盖到 ChatGPT、IDE、CLI 和云端环境并提供 Worktree、Skills、MCP、自动任务和代码审查等扩展能力。理解 Codex 的关键因此落在一个问题上一个模型怎样从“生成文本”进入“执行软件工程任务”。这篇文章围绕这一任务执行模型展开。目录一、产品定义1. 软件工程 Agent2. Codex 的组成二、任务模型1. 从 Prompt 到工程任务三、执行循环1. 模型与工具的往复执行四、执行环境1. Local、Worktree 与 Cloud五、并行任务1. Worktree 隔离六、权限模型1. Sandbox 与 Approval七、验证机制1. 从代码生成到证据生成八、任务可审查性1. 可审查的自动化九、产品边界十、来源一、产品定义1. 软件工程 AgentCodex 可以理解为一个面向软件工程环境的 Agent。大语言模型仍然负责理解自然语言、代码语义和当前任务并决定下一步需要获取什么信息或执行什么操作Codex 同时为模型提供代码仓库、文件系统、Shell、Git、网络、MCP 等工程工具并负责管理这些工具的执行环境、权限和结果展示。模型由此获得了持续行动能力。例如开发者输入修复订单创建接口在重复请求下生成两条订单的问题并补充回归测试。普通聊天模型可以分析代码片段并给出修改建议。Codex 可以继续读取订单 Controller、Service、Repository 和数据库定义搜索已有测试修改相关文件执行测试命令根据测试结果继续调整代码最终把实际代码变化作为 Diff 提交给开发者检查。这里包含多次模型推理和多次工具调用因此一个任务通常会经历多个执行步骤。“Agent”在这里表达的是一种运行方式。模型可以依据当前状态选择下一步动作工具执行结果再次进入上下文模型继续判断下一步直到任务达到完成条件。软件工程环境让这个循环具有真实副作用文件可能发生变化测试可能真正运行Git 工作区可能产生新的 Diff。因此产品还需要同步解决执行隔离、权限、验证和人工审查问题。2. Codex 的组成从 OpenAI 已公开的产品和文档可以把 Codex 的工作结构概括为五部分模型、上下文、工具、执行环境和人工控制。这个划分用于帮助理解公开机制并不表示 OpenAI 内部存在五个同名服务。模型负责理解任务和代码并持续决定后续操作。上下文来自用户指令、代码仓库、当前会话、AGENTS.md、Skills 以及被允许访问的其他信息。工具负责真正执行文件读取、编辑、Shell 命令和外部工具调用。执行环境决定代码和命令运行在哪里可以是本地项目、Git Worktree 或云端容器。人工控制负责权限审批、Diff 检查、代码审查和最终接管。这五部分组合之后一个自然语言请求才能变成一个能够落地的软件工程任务。二、任务模型1. 从 Prompt 到工程任务Codex 收到用户请求后需要先建立足够的任务上下文。代码开发中的上下文远远超过用户输入的一句话。例如修改一个 Spring Boot 接口实际实现可能分散在 Controller、Service、Repository、DTO、配置文件和测试代码中。Agent需要通过代码搜索和文件读取逐步补齐这些信息。Codex 还提供AGENTS.md。官方将其描述为面向 Agent 的项目指导文件Codex 在开始工作前会读取它。团队可以在其中保存构建命令、测试方式、代码规范、目录约定和 Review 要求。它解决的是另一类上下文问题很多工程规则长期存在却不会自然出现在某一次用户 Prompt 中。例如仓库中可以规定# 项目级规则告诉 Codex 当前仓库采用 Maven。 Build: ./mvnw clean package # 测试规则修改业务代码后至少运行相关测试。 Test: ./mvnw test # 工程约束Controller 只处理请求转换 # 具体业务逻辑继续放在 Service 层。 Architecture: Keep business logic out of controllers. # 审查要求最终交付前检查异常路径和空值处理。 Review: Check exception paths and null handling before handoff.这些内容会成为任务上下文的一部分。开发者无需在每一个 Prompt 中反复说明同样的项目规范。Skills 又进一步处理“可复用工作方法”。官方定义的 Skill 可以封装指令、资源和脚本用于重复执行一类任务。例如团队可以封装“发布前检查”“数据库迁移检查”或者“前端 Playwright 验证”等工作方式。AGENTS.md更接近仓库长期规则Skill 更接近一个可以重复调用的任务能力。三、执行循环1. 模型与工具的往复执行Codex 最值得理解的部分是Agent Loop。OpenAI 在 Codex GA 公告中明确提到Codex SDK 延续了 Codex CLI 所使用的Agent 实现其中包含 Prompt、Tool Definitions 和 Agent Loop。可以用下面的抽象伪代码理解它。该代码用于解释公开工作机制不代表 Codex 内部源码# 读取用户提交的软件工程任务。 task receive_user_task() # 加载仓库规则、会话信息以及当前代码环境 # 构造模型第一次决策所需的上下文。 context load_project_context(task) # 任务尚未满足完成条件时持续运行。 while not task_finished(context): # 模型根据当前任务和已有信息决定下一步动作。 # 动作可能是继续读取文件、搜索代码、修改文件、 # 执行测试也可能直接生成最终说明。 action model_decide_next_action(context) # 如果下一步需要真正操作外部环境 # 先进入权限和沙箱检查。 if action.requires_tool: # 检查该 Tool 是否允许访问对应文件、网络 # 或其他外部资源。 check_permission(action) # 在当前 Local、Worktree 或 Cloud Environment # 中真正执行 Tool。 result execute_tool(action) # 将执行结果加入上下文。 # 下一轮模型能够看到测试日志、文件内容 # 或命令返回值并继续判断。 context.append(result) else: # 当模型已经能够结束任务时 # 生成最终说明以及需要开发者审查的结果。 finish_task(action)这一循环解释了很多 Coding Agent 表面上看起来很“聪明”的行为。Agent 修改代码以后可以主动运行测试因为测试命令本身就是可调用工具。测试失败以后它能够继续修改因为失败日志重新进入了下一轮上下文。一个任务可以持续较长时间因为模型和工具之间可以进行多轮交互。这里也能看出 Coding Agent 和一次 LLM API 调用之间的工程差异。LLM 负责一次决策Agent Runtime负责把多次决策和真实工具执行组织成持续任务。四、执行环境1. Local、Worktree 与 Cloud模型拥有工具以后代码究竟在哪里修改成为一个核心产品问题。Codex 当前提供本地环境、Worktree 和云端环境等不同执行位置。Local 表示 Agent直接进入开发者当前的工作目录。这种方式适合开发者持续参与的任务例如分析 Bug、修改几个文件并立即本地验证。Agent 的操作与开发者正在使用的代码环境高度接近因此反馈速度快。Worktree 基于 Git 原生 Worktree 机制创建仓库的第二个 Checkout。不同 Agent 可以获得各自独立的文件副本同时共享同一个 Git 仓库历史。Codex 官方将其用于同一项目中的并行聊天和后台任务。Agent A 可以修复支付模块Agent B 同时补充测试两者的文件修改不会直接覆盖开发者当前工作目录。【Agent协同开发】Cloud Environment 则把任务放进云端容器。官方流程包括创建容器、Checkout 指定分支或 Commit、执行 Setup Script然后按照配置决定 Agent 的网络访问范围。它更适合需要较长执行时间或不希望占用当前本地开发环境的任务。这三种环境体现了 Codex 很重要的产品设计任务执行位置可以独立于聊天界面存在。用户面对的是同一个 Agent会话背后的代码操作可以发生在本地、独立 Worktree 或云端环境中。五、并行任务1. Worktree 隔离多个 Agent 同时修改一个 Git 仓库时很容易出现文件覆盖和分支状态冲突。Codex App 从发布时就把 Worktree 作为多 Agent 并行的重要基础。每个 Agent 在独立 Checkout 中修改自己的文件开发者当前本地工作区可以继续保持原有状态。这里包含一个具有普遍意义的 Agent 工程原则并行执行需要资源隔离。如果两个 Agent 共享同一个可写文件系统即使模型本身都做出了正确决策也可能因为执行环境相互覆盖而产生错误。Worktree把“Agent 的逻辑并发”转化为“文件系统层面的隔离并发”。这一思想同样适用于数据分析 Agent、自动测试 Agent 和文档生成 Agent当多个自治任务可能修改同一资源时应先划分独立工作空间【Checkout】再考虑并行调度。Codex 的 Handoff 进一步允许聊天在 Local 和 Worktree 之间移动。开发者可以先让 Agent 在后台 Worktree 中执行完成主要修改以后再把聊天和代码移动到 Local 环境继续运行本地服务、人工修改或完成最终验证。Codex负责处理相关 Git 操作。六、权限模型1. Sandbox 与 ApprovalCoding Agent 可以执行 Shell、修改代码和访问网络因此“Agent 能做什么”需要由运行时明确控制。Codex 当前把 Sandbox 和 Approval 分成两个概念。Sandbox定义命令实际能够访问哪些文件和网络资源Approval定义遇到某些操作时是否暂停并要求人工确认。默认的workspace-write模式允许 Codex读取和修改当前工作区并运行常规本地命令。访问工作区之外的文件或网络时系统可以根据配置要求人工批准。MCP 或应用工具如果明确标记为具有破坏性副作用也会进入审批机制。这说明“人工控制”并不需要发生在 Agent 的每一步。运行时可以提前划定自动执行范围让低风险动作持续运行把高风险动作提升到人工审批。这种设计很适合迁移到企业 Agent读取知识库可以自动进行发送邮件、删除数据、付款或修改生产配置则进入明确的权限边界。七、验证机制1. 从代码生成到证据生成Coding Agent完成文件修改以后仍然需要回答一个问题结果是否真的正确。Codex 可以执行测试、构建、Lint 或其他项目命令并在结果出现错误时继续迭代。官方的前端开发案例还会通过 Playwright 打开实际页面比较实现结果并继续调整。CLI 同样提供独立的/review能力可以针对当前修改、Commit 或基准分支执行代码审查。因此一个更完整的软件工程 Agent 任务可以表示为任务输入 → 获取仓库上下文 → 修改代码 → 执行构建或测试 → 读取验证结果 → 修正实现 → 重新验证 → 输出 Diff 与任务总结 → 人工审查真正具有工程价值的地方集中在后半段。生成代码只是产生候选结果测试日志、构建结果、页面行为和 Diff 才构成开发者能够检查的证据。八、任务可审查性1. 可审查的自动化Codex 最值得迁移到其他 Agent 产品的一项设计思想可以概括为“可审查的自动化”。Agent 可以获得较强的自主执行能力但执行范围受到 Sandbox 和权限限制后台任务可以在 Worktree 或云端环境中持续运行同时避免直接污染开发者当前工作区任务结束后开发者看到的是具体的代码 Diff、测试结果、总结或 Pull Request并可以继续评论、修改和接管。这一设计形成了一个清晰的控制结构自动化发生在限定空间内结果通过可检查对象返回给人。开发者无需实时监督 Agent 每一次文件读取和普通命令同时仍然保留对高风险行为和最终代码的控制权。这个思路可以直接迁移到大量非 Coding Agent。数据库 Agent 可以在只读副本中先生成查询结果再让人工批准写操作科研 Agent 可以在独立工作区完成数据处理再提供可复查的数据、代码和日志办公 Agent 可以先生成邮件或合同草稿再由人工确认发送。Agent 自动化程度越高结果可审查性和执行边界越需要成为产品本身的一部分。九、产品边界Codex 的任务质量仍然依赖任务描述、仓库结构、测试覆盖率和可访问的工程上下文。AGENTS.md、Skills 和明确的测试命令能够增加稳定上下文但无法自动弥补缺失的业务规则。Sandbox 能限制可访问资源也无法判断一个业务操作在组织层面是否合理。测试可以验证已有断言测试覆盖范围之外的业务行为仍然需要人工评估。多 Agent 并行同样存在合并问题。Worktree解决不同 Agent 同时修改文件时的工作区隔离最终代码仍需通过 Git 合并、测试和 Review 进入主分支。执行隔离提高了并行任务的安全性软件工程中的最终一致性依旧依赖现有版本控制和审查机制。【以人为本】因此Codex 的产品结构可以归纳为一个较完整的软件工程 Agent 模型模型负责决策工具负责行动上下文负责提供项目知识执行环境负责隔离副作用验证机制负责产生结果证据人工审查负责最终控制。这几个部分共同决定了 Coding Agent 能否从代码生成工具进入真实研发环境。十、来源Codex 产品与发展历程https://openai.com/index/introducing-codex/ https://openai.com/index/codex-now-generally-available/ https://openai.com/index/introducing-the-codex-app/ https://openai.com/codex/Codex 官方开发文档https://developers.openai.com/codex/overview/ https://developers.openai.com/codex/agent-configuration/agents-md https://developers.openai.com/codex/build-skills https://developers.openai.com/codex/environments/git-worktrees https://developers.openai.com/codex/environments/cloud-environment https://developers.openai.com/codex/concepts/sandboxing https://developers.openai.com/codex/agent-approvals-security https://developers.openai.com/codex/cli