Codex可直接用自然语言指令修改代码:确认环境后扫描项目,再以“把登录页手机号输入框改成带国家区号选择器”等描述发起任务,生成diff、运行测试并提交。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你想用中文一句话告诉AI“把登录页的手机号输入框改成带国家区号选择器”,它就能立刻改好代码、跑通测试、提交diff——这不是幻想,Codex现在就能做到。你不需要会写prompt工程论文,也不用背API参数,只要项目目录在手、ChatGPT Plus账号已登录,今天就能开始真实开发。
第一步:确认环境,30秒完成启动准备
打开终端,执行 codex --version。如果返回类似 codex v2.4.1 的版本号,说明CLI已安装;若提示 command not found,请先运行官方一键安装脚本:curl -fsSL https://get.codex.ai | sh。
确保你已用 ChatGPT Plus 账号登录 OpenAI 官网,【Codex 不接受免费账户或 API Key 登录】。登录后无需额外配置 token 或密钥,CLI 会自动复用浏览器会话凭证。
进入你的项目根目录,比如 cd ~/my-react-app。Codex 必须在含 package.json 或 pyproject.toml 的目录下才能识别项目结构——否则它会当做一个空文件夹处理,无法理解组件依赖或测试入口。
第二步:让Codex真正“读懂”你的项目
在项目根目录下直接运行 codex,它会自动扫描全部源码文件并建立符号索引。这个过程通常耗时 8~45 秒,取决于项目大小和磁盘速度。
扫描完成后,你会看到类似这样的提示:✅ Indexed 127 files. Ready to assist.。此时 Codex 已构建出完整的调用图、组件关系链和测试覆盖率映射——这比单纯读取文件内容深入得多,它能知道 LoginForm.tsx 被哪些页面引用、其 props 类型来自哪个接口定义、单元测试是否覆盖了手机号校验逻辑。
别急着发指令。先输入 /status 查看当前上下文摘要,确认它识别出的框架类型(React/Vue/Next.js/Django)、主入口路径、以及最近一次 git commit 的变更范围。如果显示 Framework: unknown,说明项目缺少标准配置文件(如 next.config.js 或 settings.py),需手动用 /set framework react 指定。
第三步:用自然语言发起第一个真实任务
方法一:直接描述需求+约束条件
输入:“把登录页的手机号输入框改成带国家区号选择器,使用 react-phone-number-input 库,保持原有样式类名不变,不改动表单提交逻辑。”
通过本地 Codex 或 OpenClaw OAuth 凭证直接调用 ChatGPT/Codex Responses 的 image_generation 工具来生成或编辑光栅图像,然后保存
方法二:引用已有代码片段
先用 /show src/components/LoginForm.tsx:42-58 查看目标区块,再输入:“基于这段代码,在第45行插入国家区号选择器,用 defaultCountry='CN',其他行为保持原样。”
方法三:分步确认式推进
① 输入:“分析 src/pages/LoginPage.tsx 中手机号输入框的实现方式和依赖。”
② 等它输出分析结论后,追问:“推荐三种集成国家区号选择器的方案,标注每种方案对 bundle size 和 SSR 兼容性的影响。”
③ 选定方案后说:“按方案2实施,要求修改最小化,只动 LoginForm 组件。”
注意:Codex 默认不会跨文件修改,除非你明确说“同时更新 types/user.d.ts 中的 PhoneNumber 接口”。它也不会自动安装 npm 包——你得自己敲 npm install react-phone-number-input,或者加一句“先帮我运行安装命令”。
第四步:审查、批准与执行
Codex 生成修改方案后,会以 diff 形式展示所有变更,包括新增/删除/替换的行,并标注每处修改的理由(例如:“为支持国际号码格式,扩展 input type 为 tel 并添加 valueAsNumber 处理逻辑”)。
此时输入 /approve 才会真正写入文件。如果某处 diff 看起来可疑,比如它删掉了你刚加的埋点代码,可以输入 /reject line 89 拒绝该行,再补一句“保留原有的 GA4 trackEvent 调用”。
【所有文件写入操作不可撤销,/undo 仅回退上一次 approve,不能恢复被覆盖的原始内容】。建议执行前先 git stash 或确认本地无未提交变更。
批准后,Codex 自动触发 npm test(或 pytest),并在终端实时打印测试结果。失败时它会定位到具体断言错误,并给出修复建议——不是重写整个测试文件,而是精准修正 expect() 中的 mock 返回值。


















