ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

从 cursor、Claude code 迁移到 codex:30 分钟快速上手 codex 常用技巧与 TaoToken 配置

从 cursor、Claude code 迁移到 codex:30 分钟快速上手 codex 常用技巧与 TaoToken 配置 1. 从 cursor、Claude code 迁到 codex先搞清楚要搬什么如果你之前主力用 cursor 或 Claude code现在想切到 codex最省时间的做法不是从零学一遍而是把已有的「配置资产」按类别搬过去。codex 能做什么它本质是一个带内置大模型、能读写本地文件、能跑终端命令的编码 Agent适合已经在用 AI 写代码、想让 AI 直接改项目而不是只给建议的开发者。迁移的核心就三样东西指令rules、技能skills、外部工具连接MCP。这三样在 cursor 和 Claude code 里叫什么不重要重要的是它们在 codex 里分别落在哪个文件、哪个目录。我实测下来真正卡住人的不是功能不会用而是「我原来那套配置放哪」。cursor 的 rule 对应 codex 的 AGENTS.mdClaude code 的 skill 目录改个名字就能用MCP 则是两边都有的概念但配置格式不同。这篇就按「先搬配置、再验证、最后排错」的顺序走一遍30 分钟能跑通。另外模型调用这块我会用 TaoToken 做统一接入这样 codex 里的模型请求走一个稳定的 API 入口不用每个工具单独配一遍 key。先说清楚迁移的边界codex 官方对 Claude code 做了导入入口能直接搬 skill、插件、agent.md 和最近聊天记录cursor 目前没有一键导入得手动搬。所以下面分两条线讲Claude code 用户走快捷通道cursor 用户走手动对照。2. TaoToken 前置把模型入口先接好在动 codex 配置之前先把模型 API 这层搞定否则后面验证请求时会卡在鉴权上。TaoToken 的作用是给你一个统一的 API 入口codex、cursor、Claude code 这类工具都能指向它省得每个工具配一套。你需要先去控制台拿一个 API Key。打开 https://taotoken.net/api-keys 登录后创建一个 key复制出来存好。这个 key 就是后面 config.toml 里要填的东西。然后确认两件事一是 base_url 用https://taotoken.net/api注意这个地址不带任何查询参数二是模型名要跟你账号里可用的模型对上别照抄别人的模型 ID。TaoToken 的接入文档在 https://taotoken.net/doc 里面有各工具的配置示例codex 的写法可以直接对照。注意API Key 只创建一次就够多个工具可以共用同一个 key但建议按工具分 key方便出问题时单独吊销。如果你还没决定用哪个模型可以先在 https://taotoken.net/models 里试对话确认模型能正常返回再写进配置。这一步花两分钟能省掉后面「配置写完了但请求 401」的排查时间。3. 可复制配置config.toml 与 settings.json 骨架codex 的配置分两层全局配置在~/.codex/config.toml项目级配置在项目根目录。下面给一份能直接改的骨架。3.1 全局 config.toml# ~/.codex/config.toml model 你的模型ID model_provider taotoken [model_providers.taotoken] name TaoToken base_url https://taotoken.net/api env_key TAOTOKEN_API_KEY [history] persistence save-all [memories] enabled trueenv_key指的是从环境变量读 key所以你还得在 shell 里导出export TAOTOKEN_API_KEY你复制的key写进~/.zshrc或~/.bashrc让它持久化然后source一下。3.2 项目级 AGENTS.md项目根目录新建AGENTS.md这就是 cursor 里 rule 的等价物只在当前项目上下文注入。给一份我常用的骨架# 项目规范 ## 编码前先确认 不要私自假设。先说明假设、权衡和不确定点有争议时由我决策。 如果我要求先讨论方案不要修改代码直到方案确认后再实现。 ## 最小改动 只用解决问题所需的最少代码。不添加投机性功能不为单次使用建抽象。 只改必须改的地方不顺手重构无关代码保持现有风格。 ## 分步执行 复杂任务先确认技术方案再按步骤执行每完成一步先汇报并等待确认。 简单任务可自主迭代直到验证通过。 ## 优先参考现有实现 实现前先找现有模块作为参考尽量复用已有模式不明确时先问我。monorepo 仓库别在根目录放一个大的 AGENTS.md按子项目各放一份更合适比如apps/web/AGENTS.md、packages/core/AGENTS.md。3.3 settings.json 里的 MCP 配置MCP 让 codex 能连外部工具比如读文档、拉 issue。配置写在 settings.json 的 mcp 段里{ mcpServers: { spec-workflow: { command: npx, args: [-y, your/mcp-spec-server], cwd: /Users/you/code/your-project } } }cwd决定这个 MCP 的作用范围填全局路径就是个人级填项目路径就只对该项目生效。想对特定项目生效再加一条带项目路径的配置即可。3.4 skills 目录迁移cursor 的 skill 在.cursor/skills下搬到 codex 只需把目录名从.cursor改成.agents里面的SKILL.md不用动mv .cursor/skills .agents/skills个人级 skill 放~/.codex/skills/项目级放.agents/skills/。改完重启 codex 生效。4. 验证请求确认迁移真的成功了配置写完不算完得跑一遍确认模型请求通、指令生效、skill 能被识别。第一步验证模型连通。在 codex 里发一句最简单的用一句话说明当前项目用了什么构建工具如果返回正常说明 base_url 和 key 都对。如果报 401回去检查TAOTOKEN_API_KEY有没有导出成功用echo $TAOTOKEN_API_KEY确认。第二步验证 AGENTS.md 生效。在项目里问这个项目的编码规范里复杂任务应该怎么执行如果 codex 答出「先确认方案再分步执行」说明项目级指令注入成功。第三步验证 skill 被识别。输入/看补全列表里有没有你迁移过来的 skill 名。没有的话检查.agents/skills/路径对不对以及SKILL.md文件名大小写。第四步验证 MCP 连接。在对话里让 codex 调用一次 MCP 工具比如「用 spec-workflow 拉一下当前需求」。能返回结果就说明 MCP 通了。四步都过迁移基本完成。任何一步失败对照下一节的排查表。5. 本篇常见错排查报 401 Unauthorized九成是环境变量没生效。env_key写的是变量名不是 key 本身。确认echo $TAOTOKEN_API_KEY有输出且和 config.toml 里的env_key拼写一致。报 model not found模型 ID 写错了。别照抄示例里的模型名去 https://taotoken.net/models 确认你账号可用的 ID。AGENTS.md 不生效检查文件是不是在项目根目录文件名必须全大写AGENTS.md。monorepo 里如果子项目有自己的 AGENTS.md确认你当前对话的工作目录在哪个子项目下。skill 列表里看不到目录名必须是.agents不是.agent也不是.codex。个人级在~/.codex/skills/项目级在.agents/skills/两个位置别搞混。改完要重启 codex。MCP 连不上先确认command和args能在终端里手动跑通。cwd路径要真实存在。如果 MCP 依赖 npx确认 node 版本够。Claude code 导入后 skill 没过来导入入口在设置里的「从其它 AI 应用导入工作内容」导入后检查一遍 skill 目录个别插件可能需要手动补配置。worktree 里改动看不到worktree 隔离的是代码工作区不是对话上下文。你在 worktree 里的改动不会出现在主分支得手动合并。多对话窗口隔离的才是上下文。6. 迁移完之后把这几件事配齐配置搬完只是能用想用得顺还得补几个习惯。记忆功能建议开起来在设置里启动记忆后codex 会跨项目跨对话记住重要信息相当于一个外置 RAG之前踩过的坑下次会自动避开。想迁移 cursor 的记忆直接让 codex 读一遍 cursor 的记忆文件再写进自己的记忆目录就行。长任务用/goal目标驱动给它一个明确目标它会在开发、验证、循环里反复尝试直到达成中途不停。临时想到别的问题不想打断主线用/side开个副本对话跟 Claude code 的/btw一个意思。任务做到一半发现方向偏了别结束对话直接补一句然后点「引导」信息会即时注入当前上下文纠正 AI。subagent 适合并行处理互不相关的任务比如同时修三个 bug主线程调度三个 subagent 分别处理各自总结后回报上下文不会糅在一起。注意 subagent 需要显式调用不像 skill 那样自动触发所以通常配合一个 skill 来定义「什么阶段调哪个 subagent」。模型入口这块codex 的请求统一走 TaoTokenkey 和 base_url 配一次后面换模型只改model字段。接入细节和更多工具示例在 https://taotoken.net/doc coding 场景想省心可以用 Coding Plan长期跑 Agent 任务的话它比按量更划算具体在 https://taotoken.net/coding-plan 看。配置过程中卡在鉴权或 MCP 连接先去 https://taotoken.net/api-keys 确认 key 状态再对照接入文档逐项核。
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进