首页 › LLM大语言模型 › Codex专栏 › Codex保姆级教程 › 我的Codex产品体验: 从“随便试试”到“完全信任”

我的Codex产品体验: 从“随便试试”到“完全信任”

把我的 Codex CLI 从“随便试试”到“完全信任”​

​

不是产品介绍,而是一份真实的配置与协作思路​

​

最近这段时间,我一直在拿 Codex CLI 当主力折腾。刚开始其实没抱太大期待。 这类 AI 编程工具现在已经不少了,刚上手的时候,看起来也都差不多:能读代码、能改代码、能聊天、能跑命令。​

但我用了一阵子之后,感觉慢慢变了。​

它最打动我的地方,不是“默认就有多强”,而是——这东西挺值得调,而且越调越顺手。​

我先聊聊我自己的实际使用过程:​

•

我为什么开始认真配 Codex​

•

我是按什么思路一点点把它调顺手的​

•

哪些配置我觉得是真的有用​

•

我现在最常用的几个工作流是什么​

如果你也在用 Codex,或者刚装上但还没找到感觉,可能会有点参考价值。​

​

​

一、我为什么会从“随便试试”,变成“认真配置”​

​

一开始我也是默认安装、默认使用, 想着先看看它到底能干成什么样。结果用着用着,我发现有几类问题特别影响体验,而且还挺高频。​

​

比如:​

•

我明明只是想让它分析一下,它直接开始改代码​

•

我让它在原文件上修,它转头给我新建了一个文件​

•

我在 Windows 上用,它却老按 Linux 命令那套来想​

•

有些它其实没确认的事,会直接猜,而且语气还挺笃定​

这些问题单看都不算致命, 但如果你每天都在用,它们会非常消耗耐心。​

后来我慢慢意识到一件事:​

​

AI 工具不好用,很多时候不是因为它不够聪明,而是因为你没先把规矩立清楚。​

​

也就是说,问题不全在模型本身, 而在于协作方式没有被定义好。从那之后,我就开始认真折腾配置了。 ​

思路也很简单:​

​

先立规则,再做模板,最后把高频动作封装成工作流。​

​

这基本就是我后面所有配置的出发点。​

​

​

二、我的整体思路:先立规矩,再做工作流​

我现在回头看,真正让我觉得 Codex “开始像个搭子” 的,不是某一个功能突然特别强,而是我把它分成了三层来处理:​

第一层:全局规则​

先把最基础的行为边界定下来。 ​

比如说话语言、做事方式、环境习惯、哪些事能做、哪些事不能乱做。 ​

这一层我主要放在 AGENTS.md 里。​

第二层:高频 Prompt​

把一些会反复出现、但又比较明确的任务,做成短小的模板。 ​

这样以后不用每次重新组织语言。 ​

这一层我放在 prompts/ 里。​

第三层:可复用 Skill​

把那些带步骤、有流程、能复用的事情,直接封装成工作流。 ​

这样就不只是“问它一句”,而是让它按一套固定方式协作。 ​

这一层我放在 skills/ 里。​

​

这个分层对我来说很重要。 ​

因为如果一上来就堆很多 Prompt、很多招式,最后往往会越来越乱。 ​

先把基础规则立住,后面的东西才会越配越顺。​

​

​

​

三、我的配置基本都放在 .codex/ 下面​

Codex 的配置目录挺集中,基本都在这里:​

•

macOS / Linux:~/.codex/​

•

Windows:C:\Users\你的用户名\.codex\​

我现在大概是这么组织的:​

​

代码块​

Plain Text

.codex/​

├── AGENTS.md​

├── AGENTS.override.md​

├── prompts/​

│ ├── check-fix.md​

│ └── ...​

├── skills/​

│ ├── plan/​

│ │ └── SKILL.md​

│ ├── play/​

​

如果只说“最值得花时间写”的文件, 那一定是 AGENTS.md。​

因为在我这套用法里,它不是普通配置文件, 更像是一份 AI 协作守则。​

​

​

四、先说最核心的:我怎么写 AGENTS.md​

我现在特别认同一句话:​

​

别总想着临场纠正,能提前写进规则里的,就提前写进去。​

​

因为很多要求如果你每天都要重复说一遍,那本身就是一种浪费。​

所以我会把一些高频要求直接固化进全局规则里。 ​

大体上我会分成四类:语言、行为底线、环境约束、风格习惯。​

第一类:先把语言规则钉死​

这个真的特别基础,但很有必要。​

我自己是习惯看中文解释的, ​

但命令、日志、报错、代码标识符这些内容,我又希望它保留原始语言。 ​

所以我直接写死成这样:​

​

​

代码块​

Markdown

- Always reply in Chinese.​

- 除非用户明确要求英文,否则所有回复使用简体中文。​

- 代码标识符、命令、日志、报错信息保持原始语言;其余解释用中文。​

​

​

这条看起来简单, ​

但长期体验提升很明显。 ​

因为它解决的是那种“每次都不难提醒,但每天提醒真的很烦”的问题。​

​

第二类:把基础行为底线立住​

​

这一块是我后面最看重的部分。 ​

因为很多协作上的不适感,其实都来自这里。​

​

我大概会放这些规则:​

​

​

代码块​

Markdown

- 维持质量与一致性,彻底执行自动检查​

- 事实确认,不将猜测当作事实​

- 优先编辑现有文件,而不是新建文件​

​

​

这几句不长,但它们几乎都对应了我之前踩过的坑。​

​

•

不要把猜测当事实​

这是我最在意的一条。​

AI 最危险的时候,不是它说“我不确定”,​

而是它不确定但还说得跟真的一样。​

​

•

优先改现有文件,而不是新建文件​

这个完全是被折磨出来的。​

很多改动明明应该落在原来的上下文里,它偏偏喜欢另起一个文件。​

短期看像是“交付得快”,长期看就是制造噪音。​

​

•

计划类任务不要直接动代码​

有时候我只是想让它帮我理一下思路,​

结果它默认我是在下达执行命令,直接就开始改。​

所以后来我干脆把边界写清楚。​

​

​

这类规则最大的意义,就是让它先学会“别乱动”。​

​

​

第三类:我在 Windows 上用,所以把环境规则也写进去了​

​

这一块是典型的“你不写,它就容易按默认环境想当然”。​

​

Codex 有时候会天然带着 Linux 命令思维, ​

但我平时主要在 Windows 上工作。 ​

所以我后来直接把一些工具映射写清楚了:​

​

​

​
操作​
​
​
使用工具​
​
​
禁止​
​
​
读文件​
​
​
Read​
​
​
cat/head/tail​
​
​
搜文件​
​
​
Glob​
​
​
find/ls​
​
​
搜内容​
​
​
Grep​
​
​
grep/rg​
​
​
编辑​
​
​
Edit​
​
​
sed/awk​
​
​
创建​
​
​
Write​
​
​
echo >​
​
​
系统命令​
​
​
Bash​
​
​
PowerShell​
​

​

​

你可以把它理解成一句话:​

​

​

别按错环境习惯。​

​

​

这东西不写的时候,问题不是每次都爆炸, ​

而是偶尔来一次就很烦。 ​

写了之后,至少能把很多莫名其妙的翻车挡在前面。​

​

第四类:我还给它加了一点“风格设定”​

​

这个不是必须的, ​

但我自己用下来,确实会影响手感。​

​

我不太喜欢那种过于标准、过于圆滑的 AI 语气。 ​

很多时候它看起来很礼貌、很完整,但就是没有判断力,也没有那种“真在跟你一起把问题想清楚”的感觉。​

​

所以我给它加了一点更像技术搭子的风格,大概是这种方向:​

​

•

技术要求高​

•

不会无脑附和​

•

看见问题会直接指出来​

•

说话可以自然一点,别太客服腔​

​

​

我甚至给它加了点“东北老哥”味儿。 ​

不是为了整活,主要是我想让它更像一个有经验、有判断的同事,而不是一个永远只会顺着说的工具。​

​

​

当然,这块纯看个人习惯。 ​

有人喜欢严肃,有人喜欢极简,我只是分享我自己的偏好。​

​

​

​

​

五、把基础规则立住之后,我才开始做 Prompt 和 Skill​

​

我后来发现,真正提升效率的,不只是“它更听话了”, ​

而是我把很多重复出现的动作做成了模板。​

​

因为开发里有很多事情,你不是不会做, ​

而是每次重新组织一遍思路很费劲。​

​

所以我会这么分:​

​

•

Prompt:解决明确、单点、高频的问题​

•

Skill:封装带步骤、可复用的工作流​

​

​

这个区分挺重要。 ​

我一开始是什么都往 Prompt 里塞,后面才发现复杂流程还是 Skill 更合适。​

​

​

​

​

​

六、我最常用的 Prompt:修完 bug 之后,再看一眼有没有带出副作用​

​

这个 Prompt 叫:​

​

​

代码块​

Bash

​

​

它的出发点很简单, ​

因为我之前真的遇到过很多次这种情况:​

​

​

一个 bug 当下修好了,但后面发现把别的地方也带崩了。​

​

​

不是代码不会写, ​

而是影响范围没看全。​

​

所以我后来专门做了一个检查模板,让它在修完之后帮我做一轮结构化复盘。 ​

重点看这些东西:​

​

•

改过的函数有哪些调用方​

•

参数签名有没有变​

•

返回值结构是不是还兼容​

•

数据结构变化会不会影响旧逻辑​

•

上下游调用链有没有连锁反应​

​

​

这个 Prompt 我现在基本已经形成习惯了。 ​

只要是稍微涉及核心逻辑的改动,我大概率都会顺手跑一下。​

​

​

它不一定能把所有问题一次全找出来, ​

但它很适合做 “第二眼检查”。 ​

很多本来容易被我忽略的方向,至少它会提醒我去看。​

​

​

​

​

七、Skill 里,我最依赖的是 $plan​

​

如果只选一个我现在最常用的 Skill, ​

那大概率就是它。​

​

因为我现在非常确定一件事:​

​

​

复杂任务最怕的,不是难,而是边想边改。​

​

​

当下看起来很快, ​

但特别容易返工,而且很容易改着改着就失去全局感。​

​

所以我给自己做了一个规划模式:​

​

​

代码块​

Bash

$plan 实现用户认证功能​

​

​

它接到之后,不是直接开始写代码, ​

而是先去做这几件事:​

​

看现有项目结构​

理解需求​

分析影响范围​

拆任务步骤​

生成一份本地计划文档​

​

这里我定了一条特别重要的规则:​

​

​

计划阶段只读不写。​

​

​

也就是说,在 $plan 阶段,它不能直接改源代码。 ​

它只能分析、整理、产出计划。​

​

等我确认计划没问题了,再执行:​

​

​

代码块​

Bash

$do-plan​

​

​

​

这个工作流对我最大的帮助,不是“显得流程化”, ​

而是真的能降低返工率。 ​

因为很多时候浪费时间的不是执行, ​

而是你在错误方向上执行了很久。​

​

​

​

​

​

八、第二个很实用的 Skill,是 $play​

​

这个主要是给 Playwright 自动化准备的。​

​

比如我会直接这样用:​

​

​

代码块​

Bash

$play http://localhost:3000/admin​

​

​

然后它会去:​

​

•

打开页面​

•

检查页面状态​

•

如果需要登录,就继续处理登录流程​

•

中间如果有异常,直接停下来告诉我​

​

​

这个功能我很喜欢的一点是,它接管了不少高频但机械的动作。​

​

​

尤其本地联调的时候, ​

你会不断地:打开页面 → 重新进页面 → 处理登录 → 验证页面有没有按预期工作……​

​

这些事本身不难, ​

但一天做很多次就真的挺烦。 ​

所以我现在能交给它的,就尽量交给它。​

​

​

​

​

九、再往后,是我很喜欢的 $mindmap​

​

这个 Skill 比较像 “整理思路加速器”。​

​

比如我在做技术调研, ​

脑子里已经有一个主题了,但还没有成型的结构, ​

我就会直接扔一句:​

​

​

代码块​

Bash

$mindmap React 状态管理方案对比​

​

​

然后它会:​

​

先组织出结构化内容​

再用 markmap 生成思维导图​

最后直接打开预览​

​

​

它的价值不在于“技术上有多复杂”, ​

而在于它把我从 “从零开始整理”的阻力里拉了出来。​

​

​

以前很多时候不是我不会整理, ​

而是我懒得从空白页面开始搭结构。 ​

现在变成“先说,再整理”,整个过程就顺很多。​

​

​

​

​

十、最后一个我会留着长期用的 Skill,是 $prompt​

​

这个更偏 “提示词优化器”。​

​

有些 Prompt 不是完全没用, ​

而是很不稳定:今天能跑,明天跑偏;这个任务有效,换个任务就出问题。​

​

所以我给自己做了个 $prompt,专门拿来分析这些内容:​

​

•

这段 Prompt 的目标够不够清晰​

•

结构有没有问题​

•

约束是不是太松​

•

哪些地方容易让模型误解​

•

怎么改会更稳​

•

改完之后怎么做对比测试​

​

它不属于我那种“每天必用”的工具, ​

但只要我开始认真打磨一个 Prompt,它就很有价值。 ​

因为 Prompt 最烦的从来不是“写不出来”, ​

而是 “总感觉差一点,但又不知道差在哪”。​

​

​

​

​

​

十一、这些配置最后给我带来的,不只是“更快”,而是整个协作方式变了​

​

如果一定要总结,我觉得变化主要在两个层面。​

​

第一层:很多重复性脑力消耗被接管了​

​

比如:​

​

•

改完 bug,不再完全靠自己硬扫影响范围​

•

碰到复杂任务,不再直接冲进去改​

•

本地页面验证,不想再手动一遍遍点​

•

做技术调研时,不再总卡在“脑子里有,但懒得整理”​

​

这些都不是大事, ​

但它们往往最消耗注意力。​

​

第二层:我和 AI 的关系变了​

​

以前更像什么?​

​

更像我在旁边一直盯着它:​

​

•

提醒它说中文​

•

提醒它别乱猜​

•

提醒它别乱建文件​

•

提醒它先分析再动手​

•

提醒它检查影响范围​

​

现在更像什么?​

​

更像我先把规则和流程搭好, ​

然后让它按这套方式来协作。​

​

​

这两种状态差别挺大的。 ​

前者是实时遥控,后者更像是在培养一个固定搭子。​

​

​

​

​

​

十二、最后说点真实感受​

​

我现在对 Codex 的看法其实挺简单的:​

​

​

它不是那种装上就立刻封神的工具, ​

但很适合愿意打磨自己工作流的人。​

​

​

如果你只是默认安装、默认用法,那它当然也能干活。 ​

但如果你愿意多往前走一步:​

​

•

写好全局规则​

•

把高频任务做成 Prompt​

•

把复杂动作做成 Skill​

•

让它适应你的环境、习惯和边界​

​

那它带来的顺手感会越来越明显。​

​

至少对我来说,它现在已经不是一个“偶尔拿来玩玩”的东西了, ​

而是真的进了我的日常工作流。​

​

这也是我为什么想专门把这套东西整理出来。 ​

不一定是标准答案,但至少是我自己一路踩坑、一路调整之后,磨出来的一版 “顺手配置”。​

​

​

如果你也喜欢把工具链慢慢打磨到顺手, ​

那 Codex 这套东西其实挺值得玩。​

​

​

​

​

​

附件​

​

文里提到的配置文件我都一起打包了,放在下面,感兴趣可以直接点开看:​

​

•

AGENTS.md —— 全局规则​

•

AGENTS.override.md —— 覆盖配置​

•

check-fix.md —— 修完之后检查有没有带出副作用​

•

plan/SKILL.md —— 任务规划模式​

•

play/SKILL.md —— Playwright 自动化​

•

mindmap/SKILL.md —— 思维导图生成​

•

prompt/SKILL.md —— 提示词优化​

​

​

不过还是那句话: ​

这套配置只是我自己磨出来的 “顺手版”,不是标准答案。​

​

​

拿去直接用当然可以, ​

但最好还是按你自己的习惯改一遍。​

​

因为 AI 工具真正好用的时候, ​

一定不是它像别人, ​

而是它开始像你。​

​

​

​

​

如果你希望我再帮你导出为 PDF 排版、Word 样式,或者生成一份 简洁版 / 演讲版,也可以直接告诉我。​