大家好,我是清峰,关于Claude code和Codex,我持续给大家分享相关经验和如何选择使用
1 什么是 Codex
Codex 是OpenAI 官方出品的 AI 编程工具,用官方的话说就是助力构建并交付产品的 AI 编程智能体。
很多同学以为 Codex 仅仅只是一个“写代码工具”。这个说法不是很准确,准确地说 Codex 是一个以代码和电脑任务为核心的AI 工作代理。但是需要注意的是:它目前最强的主场仍然是代码编写、代码仓库、终端、Git、浏览器测试、自动化流程,还不能简单等同于一个完全放手、独立接管电脑的“万能数字员工”。一句话说:
Codex 可以成为“工程型数字员工”,但不是无限制的通用电脑员工。
所以,
它可以:
-
写代码 -
改项目 -
跑命令 -
操作浏览器 -
处理 Git -
做测试 -
写文档 -
参与数据分析和产品工作 -
在一定范围内操作电脑完成任务
1.1 Codex 的四种运行模式
目前 Codex 有四种运行模式:
-
CLI 命令行模式:通过终端直接与系统底层交互。比较适合喜欢终端、经常跑命令、做真实项目开发的人 -
IDE 插件模式:把 Codex 放进代码编辑器里,写代码时候可以直接在编辑器中使用,适合程序员党。 -
桌面端 APP 模式:Codex 的“任务管理中心”,它不像 CLI 那样只围绕一个终端会话,也不像 IDE 插件那样只嵌在编辑器里。它更像一个独立工作台,可以同时管理多个任务。它适合把 Codex 当“AI 工程师工作台”,尤其是多任务、多分支、多项目管理的复杂任务 -
Web 模式:把任务交给云端 Codex,Web 模式的 Codex 更像“派活”模式,我们不一定要一直守在本地终端旁边,它可以在自己的云端环境里工作。
1.2 为什么是 Codex APP 模式?
为什么大明哥推荐大家学习 Codex APP 模式呢?因为官方很明显把 APP 版本设计成了一个Codex 的主控台、任务中心、工程智能体工作台。相比其他模式,Codex APP 有如下几大优势:
-
App 端能力最完整:相比 CLI 和 IDE,App 端更像一个完整工作台 -
App 更适合“数字员工”式使用:CLI 是你在终端里和 Codex 一起工作,IDE 则是你在在编辑器里让 Codex 辅助写代码,Web 则是把任务交给云端。而 APP 则更加接近:我开一个任务中心,让 Codex 同时处理多个项目、多个线程、多个分支、多个自动化任务。这就非常像一个 “AI 数字员工”的工作台了。 -
App 更适合做复杂任务:在一个项目里,Codex 同时开多个分支 / worktree,各自处理不同任务,最后由我们统一 review。这个体验,CLI 和 IDE 都能做一部分,而 App 能完整管理整个面板。
所以,如果你:
|
|
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
最后补充:我们并不是“只能用 App”,但从产品设计上看,App 正在成为 Codex 最完整、最像主入口的形态,也是我们最值得学习的。
2 Codex 安装
进入 https://chatgpt.com/zh-Hans-CN/codex/ 官网,下载 Codex App
这里会自动匹配你是 Windows 系统还是 macOS 系统。
下面演示全部基于 MacOS 版本的 Codex,因为 MacOS 版本的功能多些,如果我教程中的内容,你在 Codex 中没有,只能说明两个原因:你是 Windows 版本,或者没有升级到最新版。
3 Codex 界面
整个界面分为功能列表、对话窗口和多功能区域区域。
4 基础使用
4.1 开发第一个应用
我们先新建一个文件夹:pet-care。
然后在对话窗口下选择「使用现有文件夹」:
在弹出窗选择刚刚创建的文件夹 pet-care,选定文件夹后,会在 Codex 的功能区有该项目:
在「对话窗口」处,输入“做一个 HTML 单页面的宠物护理店的网页”:
这里我们暂时等待它完成即可,Codex 任务执行完成后会告知我们本次任务的执行结果:
从这里可以看出,Codex 新建了一个 index.html 文件夹和生成了一张图片,我们直接去 pet-care 文件夹中看看
注:并不是所有人的 Codex 都会是这个结果,有可能是一张图片,也有可能是多张,甚至一张图片都没有。
我们打开 index.html 看看效果:
说真的,这效果杠杠的,如果交给一个前端来开发,不得两天么?但是交给 Codex,5分钟搞定!
到这里,我们可以利用 Codex 开发我们的应用程序了。
4.2 对话窗口介绍
下面对对话窗口做一个简单的介绍,让各位同学有更好的认识。
-
智能:分为低、中、高、超高四个等级,等级越高,能力越强,额度消耗也越快。在一般场景下,我们选择中即可。复杂任务可以选择高、超高。 -
速度:分为标准和快速,快速响应速度较快,但是用量也会增加。
这个显示的是当前上下文使用量信息。显示的是当前对话里的历史对话内容的使用量。
Codex 会自动压缩上下文信息,关于 Codex 的压缩功能,后面介绍。
在「设置」处,我们可以看到整个额度的使用情况。
如果是轻度使用的话,Plus 会员是够的,但是中度、重度的话,额度可能就不够了,所以,各位同学悠着点,Codex 的 token 消耗还是相当的猛。
5 Codex 的多任务并行
Codex APP 版本有一个很大的优势就是它能够多任务并发执行,比如我们可以:
-
一个任务写登录功能 -
一个任务写注册功能 -
一个任务写忘记密码功能
三个任务同时进行,互不干扰,这就像程序里面的线程一样,每个任务都是一个独立任务线程。
在 pet-care 项目里面新建两个对话,两个对话的内容分别是:
-
在到店预约模块上面增加一个模块:你调用 AI 绘图功能,生成4张不同店内环境的图片,4张图片分别显示店内4个不同区域,体现处高端宠物护理,4张图片轮播。 -
新增一个品牌故事的页面,该页面展示品牌的发展历史、经营理念。
等待任务执行后看结果:
这效果是不是很给力~~
6 Codex 的上下文压缩
Codex 有一个非常好的功能就是上下文压缩,什么意思呢?就是就是 Codex 会把前面很长的对话、代码修改过程、命令输出、报错记录,整理成更短的“记忆摘要”,后面还能继续工作。 OpenAI 官方把这个机制叫做 compaction,用来减少上下文大小,同时尽量保留后续任务需要的状态信息。主要用4个作用:
-
防止上下文爆表:Codex 处理久了,上下文信息会非常多,压缩可以腾出上下文空间,让它继续完成后面的任务。 -
让长任务继续推进:Codex 对上下文压缩后,会删除一些不必要的信息,只保留“做到了哪一步、哪些文件改过、下一步要干什么”这些关键信息,更加有利于任务的推进。 -
降低 token 消耗和等待时间:上下文越长,模型每次理解成本越高。压缩后,上下文变得更短了,token 消耗相对也会变少。 -
减少噪音,让 Codex 聚焦当前任务:压缩可以减少上下文中的一些噪点,让其更加聚焦当前目标继续推进。
但是有一点需要注意:压缩不是百分百无损的。在进行压缩时,Codex 可能会概括掉某些细节,比如某个临时约束、某条很细的报错、你口头强调过的小要求。
我们可以这样做:
先总结当前进度、已修改文件、剩余问题和关键约束,然后再压缩上下文。
在 Codex 中除了可以自动压缩外,还可以主动压缩。在对话框里面输入“/”选择“压缩”即可:
7 Codex的计划模式
在对话框里面有一个 + 号:
这里有三个功能:
-
添加照片和文件:通过这个功能我们可以上传照片或者文件,给 AI 补充上下文信息。也可通过复制/粘贴的方式。 -
插件:目前 Codex 里面预装了 5 个插件:Documents、Spreadsheets、Presentations、浏览器、Slack。关于插件后面详细介绍。 -
计划模式:Codex 中的计划模式可以理解为:让 Codex 先“想清楚怎么做”,再真正开始改代码、跑命令、动项目。它的核心不是执行任务,而是先调研、提问、拆解方案、确认路径,最后执行任务。
在 OpenAI 的官方文档中对计划模式的说明是:当任务复杂、模糊或难以描述时,建议先让 Codex 进入计划模式;计划模式 会让 Codex 先收集上下文、提出澄清问题,并在正式实现前形成更强的计划。
下面来演示下。首先打开计划模式:
然后输入我们的要求:将这个项目改造成 VUE3 框架。
在执行过程中,Codex 会采用提问的方式与用户进行沟通,比如要你选择什么框架,是否需要升级版本之类的,例如,这里询问我选择哪种项目形态:
当它询问完后,就会生成一份完整的执行计划,让你来确认是否执行,你可以仔细阅读这份计划看与你理解的是否存在差异:
-
如果没有差异你就选择“是,实施此计划” -
如果有差异,你就选择“否,请告知 Codex 如何调整”
这里我们选择“是,实施此计划”,从这份计划中看到,它除了会帮我将项目改造为 Vue3 的框架,还会帮我升级 Node,这里不得不感叹 Codex 的强大 。
当我们确认“实施此计划”后,Codex 就会按照计划开始执行。
在这个执行过程中,你可能会碰到类似下面这段话的情况:
这是 Codex 的沙箱、权限,关于这两个我们后面介绍。
等待一段时间,Codex 执行完毕。在上面图片中我们可以看到以下几个信息:
-
已完成 Vue3 + TypeScript 的迁移 -
Node 版本没有没有给我升级(权限问题),采用 Codex 捆绑的 Node -
已经执行 npm install && npm run build,并启动了http://127.0.0.1:5173/。但由于浏览器自动化插件的初始化问题,导致无法完成视觉验证。
打开工程目录,你会发现已经由一个单一的 Html 页面变成了一个完整的 Vue3 + TypeScript 框架:
我们在 Codex 的内置浏览器打开该页面,有两种打开方式:
-
如果你的对话框里面有类似下图的按钮,则可以直接打开
-
在多功能区域打开浏览器,输入地址即可:
Codex 的内置浏览器有一个很有用的功能:注释
通过这个「注释」功能,我们可以对页面执行可视化修改。比如通过这个「注释」功能,我们对页面提出如下两个修改意见:
提交任务,等待执行完成,看结果:
绿色可能不是这么明显,“造型美容”也变成了“美容造型”。
8 Codex 的记忆系统
在上面案例中,我们都是通过开启一个全新的对话来完成一个功能,对于 Codex 而言,每当我们开启一个新的对话窗口,它就会进入一个全新的上下文,AI 完全不记得之前发生了什么,对整个项目的记忆都是空白的。当项目变得复杂时,我们没开启一个对话都需要给他交代一遍项目背景,或者让他自己读代码,自己摸索,这是一种非常低效的工作方式。
对于这个问题,Codex 提供了记忆系统来解决,官方叫做 Memories。有了记忆系统,Codex 就可以把项目中、以前任务中有价值的信息,带到新的任务中来。这样我们就不需要每次开启一个新的对话都告诉它项目背景、技术栈、常见坑等等项目问题。
当然,Codex 的记忆系统并不是简单的“聊天记录回放”,而是从过去的 Codex 任务中提取有价值的信息,形成可复用的本地记忆,让未来的新任务可以继承这些上下文。可以这么理解:
过去的 Codex Thread
↓
Codex 提取长期有用信息
↓
生成本地 memory 文件
↓
未来新 Thread 自动参考这些 memory
↓
减少重复解释,提高任务一致性
关于 Codex 的记忆系统后面另出文详细介绍~
下面大明哥来演示两种方式给 Codex 增加记忆系统。
-
1、给项目增加记忆系统
在项目的根目录下创建一个 AGENTS.md 文件。
AGENTS.md 严格说不是 Memories,但它是 Codex 最重要的“长期记忆文件”。Codex 会在开始工作前读取 AGENTS.md 文件。
在 AGENTS.md 文件中输入
这是一个专注于宠物护理网站,提供宠物美容、健康护理、日托陪伴
回到 Codex 的对话窗口,问他“这是一个什么样的网站”:
从这里可以看出,Codex 会去读取 AGENTS.md 文件,把里面的内容自动带入到新的对话中作为它的上下文。
但是,手工编写 AGENTS.md 还是挺麻烦的,我们可以让 Codex 通读当前项目文件夹,让它给我们写 AGENTS.md:
通读当前文件夹,把你学到的关于项目的信息保存到AGENTS.md文件中,要求中文,格式清晰
任务执行完成后,我们查看 AGENTS.md 内容:
-
2、全局 AGENT.md
也可以通过「设置」 —> 「个性化」—>「自定义指令」设置全局的 AGENT.md:
注意,这里设置的全局记忆,会影响 Codex 中的所有项目。
除了全局、项目级记忆,Codex 也支持目录级记忆,按照官方文档的说明 :Codex 会从全局、项目根目录一路读取到当前工作目录,越靠近当前目录的规则越后生效。
但是这个记忆并不能解决所有的问题,如果我们想要做功能更加强大的“数字员工记忆”,就只能通过 MCP 或插件接入外部记忆系统,比如向量数据库、知识库等等。
注意:Codex 中的记忆系统不仅仅只有上面两种方式(其实是一种方式)。通过创建 AGENTS.md 文件仅仅只是其中一种,而且它并不是真正的 Memories,它适用于写死团队规则、项目规范和个人偏好。该教程是入门级教程,不涉及过深的理论,关于 Codex 的 Memories 后面专门写文章介绍。
9 Codex 的沙箱和权限
有些同学担心 Codex 会不会有安全问题,比如删除系统文件。这个其实是无需担心的,Codex 采用了两重机制(Sandbox mode 和 Approval policy)来保证系统的安全。
-
Sandbox mode:沙箱,它控制 Codex 执行命令时能写哪些文件、能不能联网。 -
Approval policy:权限,控制 Codex 在越界、联网、运行某些命令前是否需要征求你的同意。
默认情况下,本地 Codex 会使用操作系统级沙箱,通常限制在当前工作区内,并且网络默认关闭。
这里我们需要区分三个概念:沙箱、审批和系统权限。
9.1 沙箱
沙箱是 Codex 的“技术边界”。它决定:
-
能不能读、写文件 -
能不能访问工作区外的目录? -
能不能联网?
在默认情况下,Codex 仅可以在当前项目工作区里读文件、改文件和运行命令;如果它想改工作区外的文件,或者需要联网,就会触发审批。
9.2 审批
审批是 Codex 的“行为确认机制”。它决定:
-
Codex 是不是每次运行命令都问你? -
哪些命令可以自动执行? -
哪些命令必须你确认? -
越过沙箱边界时是否弹窗?
在 Codex 的对话窗口,我们也可以看到:
三个选项对应三种不同程度的权限。
9.2.1 默认权限
允许 Codex 在当前工作区内做常规开发动作,比如读写项目文件、查看 git diff等安全指令。但如果它想做一些越界动作,就会停下来问你,比如访问工作区外的文件、联网安装依赖、运行某些不可信命令。
针对默认权限,我们可以理解为:“Codex 可以在项目里正常干活,但出门、联网、动敏感东西之前必须问我。”
9.2.2自动审查
默认权限虽然安全,但是它会频繁询问你,需要你授权。比如安装项目依赖,安装一个还好,安装多个呢?每次都打断你,你会不会很烦?每执行一个命令都来问你,频繁审批会很麻烦的。
自动审查就是解决这个问题的。它的作用是:当 Codex 想做超出默认沙箱边界的动作时,不一定每次都来询问你,而是先交给一个单独的审查机制判断能不能放行,如果可以放行,就直接放行,否则交由你来判断。
这里有三个角色:
-
Codex 主 agent:负责完成任务 -
自动审查 agent:负责判断越界动作是否安全 -
你:只在更高风险或无法判断时介入
但是有一点:自动审查会消耗额外模型调用,可能会增加 Codex 使用量。
所以,我们可以这样理解自动审查:“我不想每个小越界动作都需要我亲自同意,让一个安全审查员先帮我判断;但风险大的事情必须交由我判断。”
9.2.3 完全访问权限
完全访问权限就是将所有权限都交给 Codex,这就意味着:
-
没有沙箱限制 -
不需要常规审批 -
可以访问更广的文件系统 -
可以联网 -
可以运行更多命令
它的好处就是,Codex 拥有最广泛的权限,不需要你的确认了,但是缺点就是风险很大,比如可能会误删文件、不敏感数据发送到外部、运行危险命令等等。
在 Codex 中,我们开启该权限时,Codex 都会提醒你:
可以这样理解完全访问权限:把整个系统的访问钥匙给 Codex,它可以自己开门、联网、跑命令。效率最高,但出事也最危险。
来个总结:
|
|
|
|
|
|
|
|---|---|---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
我推荐选择自动审查,尤其是一些长任务、复杂任务。
10 Codex 的自动化
很多工作不是一次性的,而是周期性的,比如
-
每天看今天所有成员的 commit 记录 -
每周生成项目周报 -
定期扫描潜在 bug
这种周期性的任务就是 Codex 的自动化,它非常适合做热点监控、选题整理、项目周报等周期性任务。
所以,Codex 自动化的本质是:把你每天、每周、每月要重复做的事情,变成一个定时任务。
比如,大明哥作为AI 自媒体博主,需要每天看些 AI 的新闻,看看今天有什么新工具、哪个大模型更新了、有什么新技术、关注的博主又更新了什么内容。如果这些事情需要我手动去做,是非常麻烦且浪费时间的。
这个时候我们就可以利用 Codex 创建一个自动化任务:
每天上午8点,利用@浏览器在网站https://juejin.cn/中获取10条关于 AI 的文章,将它的标题、链接、作者通过表格的形式发送给我
这个时候我们打开 Codex 的「自动化」菜单,就可以看到我们新建的自动化任务:
点击这个任务,可以看这个任务详细记录:
到这里,本教程也就结束了。本篇教程仅仅只演示了 Codex 最基础的功能,关于 Codex 的一些高级技能,如 workTree、Skill、插件、MCP、Browser Use、以及最近新更新的 Chrome 浏览器插件后面都会单独出文介绍。
最后,大明哥将整篇文章都分享到飞书知识库了,需要的小伙伴可以加我免费领取,未来关于 Codex 的教程都会更新在该知识库~
今天的喂饭教程就到这里了,觉得文章有用的,记得点赞、分享。
未经允许不得转载:阿帕克软件-Apecsoft » 这可能是目前最详细的保姆级 Codex 教程了,看完后,你就明白 Codex 有多牛逼了

Apecsoft也是一种情怀