你以为你在“用 AI 写代码”,其实你在“给 AI 开后门”
晚上 11 点,你打开 Codex APP,心想:今天一定要把那个小工具做出来。
你随手扔进去一句话:
帮我做一个 React 的待办提醒工具,顺便把依赖装好、跑起来。
它开始飞快执行,你看着终端刷屏还挺爽。
然后你突然发现两件事:
它要联网下载一堆东西,你不知道该不该点“批准” 它准备改你不想动的文件夹,你又不确定“拒绝”会不会把整个任务卡死
你开始反复点开权限弹窗、回头改需求、再让它重来……一小时过去了,代码没写多少,心态先炸了。
问题出在哪?
不是 Codex 不强,而是你把一个“能跑命令、能改文件”的 AI,当成了“聊天机器人”在用。
就像你请了个很能干的装修队,却没划施工范围、没定验收规则、也没告诉他“这个墙不能拆”——最后你只能站在客厅里祈祷。
正确打开方式:把 Codex 当“有马具的工程队长”
Codex APP 最香的地方,不是它会写代码,而是它把 AI 的“能干”装进了一套可控的工程体系里:
项目=沙盒:默认只在你选的项目文件夹里读写 提权=审批:要联网、要改沙盒外文件,会主动申请 自动审查:低风险提权自动放行,高风险才弹你确认
你一旦用对这个思路,Codex 的体验会从“玄学”变成“可复制流程”。
下面我用一条主线,把原视频里那些功能点,串成你能立刻上手的实战流程。
01|先把“地盘”划清楚:项目文件夹就是你的安全边界
很多人第一次用 Codex,最大的误会是:以为它在“聊天”,其实它在“执行”。
正确姿势是:先创建一个干净的项目文件夹,再让 Codex 进入这个文件夹工作。
就像你带师傅进屋前,先说清楚“厨房能动,承重墙别碰”。
你可以用一句话把边界写死(很建议放进项目的 AGENTS.md,后面会讲):
只允许在当前项目目录内读写;任何联网、任何修改项目外文件,都必须先解释原因并等待我批准。
02|复杂任务先开“计划模式”:先对齐颗粒度,再让它动手
Codex 有个特别实用的开关:计划模式(Plan)。
不开计划模式时,你一句话它就开干;开了计划模式,它会先输出一份“准备怎么做”的清单,让你点头后再执行。
这就像你让施工队先出方案、列材料、排工期——你确认没问题再开工,返工率会直接下降。
建议你把“复杂任务”的起手式固定成这样:
请先进入计划模式输出计划,不要立刻改代码。
目标:
1) ...
2) ...
约束:
- 只能改哪些目录/文件
- 需要哪些验证(构建/启动/冒烟测试)
交付物:
- 改了哪些文件(列表)
- 如何本地验证(命令)
03|中途跑偏别“等它做完”:用 steer 把方向盘抢回来
AI 最常见的浪费时间方式,是它已经理解错了,你还在等它“把错误做完”。
Codex APP 有个很像“抢方向盘”的能力(视频里叫 steer / 引导):当你发现它走偏了,别加一句“另外……”,直接引导它立刻切换策略。
最典型的场景:它用 SVG 画了张很糙的图,但你其实想要它调用生图能力;或者它开始重构一堆你没要求的文件。
你可以这样打断它:
暂停当前方案。
你现在的方向是:xxx(复述它在做什么)
但我真正要的是:yyy
请改用:zzz(明确替代策略),并解释你接下来会修改哪些文件。
04|让 Codex “越用越懂你”:对话清爽 + 项目记忆 + 自动化扩展
Codex 每个对话都有上下文上限,历史越长越容易“分心”:
它会被旧约束干扰 它会把不重要的细节也当成“必须遵守” token 成本也会更高
经验法则很简单:一个任务做完就开新对话。你真需要保留脉络时,再用压缩(或手动总结)把上下文变短、变干净。
但“开新对话”会带来另一个痛点:它又失忆了。
解决这件事,你需要两种“记忆锚点”(项目级 + 全局级),再配合插件/技能把能力扩起来。
A) 项目级:在根目录放 AGENTS.md
这份文件会在后续对话里自动带入,相当于你的“项目说明书 + 合作规则”。
你可以先用一个通用模板起步:
# 项目简介
- 这是一个什么项目
- 目前做到哪一步
- 主要技术栈 / 版本
# 你的偏好
- 我是谁/我擅长什么/我不擅长什么
- 请用什么风格解释(大白话/分步骤/给命令)
# 工作规则
- 只在项目目录内操作
- 需要联网/提权时必须先解释理由与风险
- 不要批量删除文件;删除前先列出清单让我确认
# 验证方式
- 本地启动命令:
- 测试命令:
不会写也没关系,你可以让 Codex 读一遍项目,帮你生成第一版 AGENTS.md,你再人工补一句“禁区规则”就行。
B) 全局级:在设置里写“全局自定义指令”
这个更像“你这台电脑的总规矩”,特别适合放防呆条款,比如:
禁止使用脚本/通配符/递归方式批量删除文件或目录。
如需删除多个文件:先输出待删除清单,等待我确认;且优先逐个删除。
它不是为了限制 Codex,而是为了防止“它太能干了你来不及刹车”。
C) 扩展能力:插件 / Skills / MCP / 自动化
当你把边界与规则定好后,就可以开始“加外挂”了:
插件:让 Codex 能直接用 GitHub、Gmail、浏览器自动化等第三方能力 Skills:把固定工作流封装成可复用的“说明书”,让执行更稳 MCP:把外部工具箱标准化接进来(比如数据库、内部系统) 自动化:把“每周都要做一次”的事,直接做成定时任务,让它按时跑、按时发邮件/汇总
你会发现 Codex 最适合的不是“写一次代码”,而是把你的工作流产品化:一次配置,长期复用。
05|正反对比:同一个需求,差别在“你有没有给它工程化的规则”
假设你要做:一个简单的网页待办工具(React/TS),并要求能本地跑起来。
❌ 方式一:直接说需求(大概率返工)
你输入:
做一个 React 待办工具,功能自己看着办,尽快给我成品。
然后你会经历:
它选了你不喜欢的脚手架 它装依赖要联网,你又不确定该不该批准 它写完你才发现“提醒”是假的,只是 UI
你开始补充约束,它开始返工,你们俩互相消耗。
✅ 方式二:先划边界 + 计划模式 + 验收标准
先准备 AGENTS.md:
# 目标
做一个 React + TypeScript 待办工具,支持“到点提醒”(浏览器通知即可)。
# 约束
- 只允许修改当前项目目录
- 需要联网安装依赖时先说明原因并等待批准
- 不要引入重型状态管理(如 Redux)
# 验收
- `npm run dev` 能启动
- 新建待办→选择时间→到点弹浏览器通知
对话开始:
请开启计划模式。
先基于 AGENTS.md 给我一份实施计划(分步骤、每步的验证方式)。
我确认后你再执行。
Codex(理想反应)会先问关键问题:
确认几个点:
1) 你希望用 Vite 还是 Next.js?
2) 通知是用 Web Notification API 吗?需要权限引导吗?
3) 提醒需要后台常驻吗,还是页面打开时有效即可?
你回答完,它再按计划执行。
结果:一次成型,返工极少,而且每一步都在你可控范围内。
什么时候用 Codex APP(什么时候别用)
两个你今天就能用上的模板
模板 1:提需求(适合计划模式)
请先进入计划模式输出计划,不要立刻修改文件。
目标:
1) ...
2) ...
约束:
- 只能改:...
- 禁止改:...
- 需要联网时:先解释原因与风险再申请
验证:
- 本地启动命令:...
- 冒烟检查:...
交付:
- 改动文件列表
- 关键决策点(你为什么这么选)
模板 2:全局防呆(适合放到自定义指令)
1) 禁止递归/通配符批量删除文件或目录。
2) 如需删除:先输出清单,等待我确认;优先逐个删除。
3) 执行会影响项目外文件/需要联网的操作前,必须先解释目的、范围与回滚方式。
写在最后
你以为你在学一个新工具,其实你在学一套新协作方式:把 AI 的“能力”装进“边界 + 计划 + 验收”里。
建议你今天就做一件事:随便挑一个项目,在根目录加上第一版 AGENTS.md,然后用计划模式跑一次完整任务链路。
你在用 Codex(或其他 AI 编程工具)时,最容易踩的坑是哪一个?欢迎评论区聊聊。
推荐视频:Codex (APP) 保姆级全攻略,海量实战教程,一期精通Codex
夜雨聆风