Skip to content

当天目标:给 Codex 接上 MCP 外部工具,在真实场景里吃掉一件重复活,并搞懂成本机制。

Codex 的稀缺价值在"造工具"和"吃重复活",不在"代写内容"

Codex 最值钱的活是:把你要手动做的、重复的工程动作自动化掉——批量改文件名、生成 CRUD 代码、跑测试、提 PR、整理 Issue。所以第 5 天就一件事:用 Codex 把你每周 X 小时的重复活吃掉。

接 MCP:让 Codex 能碰外部系统

MCP(Model Context Protocol)是让 Codex 调用外部工具(数据库、API、飞书、Playwright 浏览器等)的标准协议。配在 ~/.codex/config.toml 或项目级。

STDIO 型(本地命令启动,最常见):

toml
[mcp_servers.playwright]
command = "npx"
args = ["@playwright/mcp@latest"]   # 需本机有 Node;没装 playwright 先 npm i -g playwright,或换成你已装好的 MCP

# 工具级审批:四档 auto / prompt / writes / approve
# writes = 只读工具免审批,写/创建/删除类触发审批(推荐默认)
[mcp_servers.playwright]
default_tools_approval_mode = "writes"

# 单个工具覆盖:这个工具每次问你
[mcp_servers.playwright.tools.browser_navigate]
approval_mode = "prompt"

Streamable HTTP 型(远程服务):

toml
[mcp_servers.figma]
url = "https://mcp.figma.com/mcp"
bearer_token_env_var = "FIGMA_OAUTH_TOKEN"
default_tools_approval_mode = "prompt"

要点:

  • 四档审批auto(静默全批)、prompt(每次问你)、writes(只读免审、写操作弹审批,v0.144.0 起推荐默认)、approve(除非预批准否则拦截)。破坏性操作在所有档都需审批。
  • 工具级 + 服务级:先用 default_tools_approval_mode 定全局,再用 [mcp_servers.x.tools.t] approval_mode 单个覆盖。
  • OAuth:远程 MCP 的认证在 v0.144.0 起 GA,跑 codex mcp login 启动登录;mcp_oauth_callback_port 可固定回调端口。别把 token 明文写进 config。
  • 其他旋钮startup_timeout_sec(默认 10)、tool_timeout_sec(默认 60)、enabled_tools/disabled_toolsrequired(启不来就启动失败)。
  • 查当前接了哪些:桌面端用 /mcp;CLI 用 codex status 看概况。

MCP 工具审批四档

一个常见误解:有人以为 MCP 配置也像 Skill 那样"前 512 字符当索引"——那是 Skill 渐进披露(2% / 8000 字符)的预算,MCP server 的 instructions 前 512 字符要自成一体。两回事,别混。

场景组:挑一个今天就能吃掉的重复活

下面每个场景都给完整提示词骨架(Goal / Context / Constraints / Done when),你照着填自己的项目:

场景 A · 批量重构

Goal:把 src/ 下所有 var 改成 const,未重新赋值的。 Context:src/ 是 TS 项目,strict 模式。 Constraints:不动 *.test.ts;每文件单独提交。 Done when:tsc --noEmit 通过,且 git diff --stat 只含预期文件,CI 绿。

场景 B · 生成 CRUD + 测试

Goal:给 User 实体生成 RESTful 接口 + 单元测试。 Context:用仓库现有 services/ 模式(见 AGENTS.md)。 Constraints:不引入新依赖;沿用现有错误处理。 Done when:npm test 全绿,且新增接口在 /docs 里有记录。

场景 C · 整理 Issue / 周报

Goal:读本周 GitHub Issues,生成一份按优先级排序的周报。 Context:仓库地址、本周时间范围。 Constraints:只列 open 状态;不改动任何 Issue。 Done when:产出 markdown 周报,且未对任何 Issue 执行写操作(用 Read-only 沙箱跑)。

场景 D · 端到端(从空目录到可验收的产物)

Goal:从空仓库做出一个能跑、能测、能提交的最小 Node 小程序。 Context:空目录 dev/Projects/hello-codex,已 git init。 Constraints:只用一个文件;不引第三方依赖。 Done when:node index.js 输出 "hello from codex";node test.js 断言通过;git log 有一条提交。

场景 E · 浏览器自动化(Playwright MCP)

这一条把 Codex 从"改你本地文件"升级到"真去开浏览器、真去点按钮"——价值大,危险也大。前面 Day 5 开头那段 Playwright MCP 配置就是为它准备的:接好后 Codex 能打开网页、登录、点击、截图、读页面结构。

Goal:用 Playwright 打开后台登录页,用测试账号登录,进"订单列表",把前 20 条订单逐个点"导出",确认都下载成功。 Context:Playwright MCP 已按本天配置接好,导航类工具(如 browser_navigate)设为 prompt 审批(见上方四档表)。环境是 staging,不是生产。 Constraints:只在 staging 跑;不写任何生产数据;登录凭据从环境变量读,不写进提示词。 Done when:20 次导出都生成了文件、文件名含订单号;产出一份 export-result.md 记录每条结果;全程没有走到生产域名。

为什么单独拎出来讲:浏览器一旦被打开,Codex 就等于能下单、能发帖、能转账。它"跑通了"不代表"做对了"——点错一个选择器,可能把测试单下到生产。所以相关工具必须走 prompt 而不是 auto,沙箱别放开到能碰你别的账号。

场景 F · 接飞书(把产出自动发到群 / 写进表格)

Codex 的价值不只在你电脑里。把它接到你的协作工具,就能把"生成的东西"自动送到该去的地方——前提是发之前拦一道。

Goal:每天早 9 点,把昨天合入的 GitHub PR 标题和链接汇总,发到"发布同步"飞书群,同时写进团队的发布记录多维表格。 Context:你已装好飞书 CLI(lark-cli)并登录,或接了飞书 MCP;GitHub token 放在环境变量。 Constraints:只发"已合入"的 PR;不改动任何仓库文件;群名和表格 ID 写进 AGENTS.md,不写进提示词。 Done when:群里收到一条含日期和 PR 列表的消息、表格新增一行;命令退出码为 0;没有把草稿 PR 误发进去。

这条最常见的坑:Codex 跑通"发消息"不代表"发对了"。它可能在凌晨把一条还没 review 的 PR 当成已合入发出去,或者发错群。所以"往外发"的动作审批要拦一道(writesapprove,别 auto);更稳的做法是让它先把拟发内容写到本地文件、你过一眼再发(定时怎么配见 Day 6)。

挑一个离你最近的,今天就用四要素下给它,跑通。

成本机制:钱到底烧在哪

这是被教程集体跳过、但你最该懂的一块。

  • 消耗的是"额度/credits",不是"次数"。一次任务烧多少,取决于它读了多少上下文、跑了多少轮工具调用、模型档位多高。
  • 套餐决定上限:ChatGPT Plus / Pro / 团队版各挡额度不同(具体数字以你当天套餐页为准,别人晒的截图会过期,别当真);用 API key 是按 token 实时结算。
  • 推理档位(reasoning effort)直接挂钩成本:档越高单次越贵但质量越高;具体档名和配置写法以你当天 codex --help / 官方文档为准,别把档位焊死。
  • 推理档位怎么选(档名以当天 codex --help 为准,别焊死):日常改字符串、格式化用低档;常规改动用中档;跨文件重构、调试升到高档;长程 agentic 任务才上 Extra High。原则就一句——用刚好够的最低档,档越高越贵但越稳。
  • 算不清成本就谈不上"省":你授权它消耗的每次 token、每分额度,都是你买回来的时间。用 codex status 看用量,定期回看"我花了多少、省了多少小时"。

第一性原理回扣:工具价值 = 决策质量 × 上下文质量。成本机制提醒你——上下文越厚(AGENTS.md 写得好)、指令越准(Done when 写得清),单次消耗的轮数越少,单位时间成本越低。写清楚约定,本身就是省钱。

成本机制

三个锦囊

  1. MCP 工具级审批今天就必须配,别全开。writes 是稳妥默认,高危工具单独 prompt/approve
  2. 今天挑一个场景跑通,用完整四要素。别"看懂了"就过,动手才有体感。
  3. 成本只看机制 + 用 codex status 看自己用量,别人晒的数字会过期,不采信。

自测标尺(用动作验证)

  • [ ] 你给自己配了一个 MCP server,且 default_tools_approval_mode 设的是 writes(不是全开)。
  • [ ] 你用四要素跑通了至少一个真实场景,且对照 Done when 验收过。
  • [ ] 你能讲清成本机制(额度非次数、档位挂钩、套餐定上限)。
  • [ ] 你跑过 codex status 看过自己的用量。

效率日志

任务手动做要几分钟Codex 做+你验收几分钟打回几次
场景(如批量重构)_________

本页目录