)
1. 为什么裸跑 Codex 会浪费一半生产力Codex CLI 本身是个很强的代码生成器但如果你只是把它当成一个「输入需求、输出代码」的黑盒那它每次会话都从零开始既不懂你的项目规范也没有稳定的设计审美更不会记住你上周定下的目录结构。我试过在同一个项目里连续开五个会话每个会话都要重新解释一遍「我们用 pnpm 不用 npm」「组件放 src/components 下」「样式统一走 CSS Modules」重复劳动非常消耗耐心。Skill 机制解决的正是这个问题。每个 Skill 本质上是一套结构化的 Agent 提示词、工具链和工作流安装之后 Codex 会在特定任务上自动加载对应的能力。比如做前端页面时它会先推断设计方向再写代码写文案时会主动过滤掉「不仅是……更是……」这类套话做信息收集时能带着登录态去访问动态页面。这篇要交付的是 5 个高频 Skill 的完整落地路径从settings.json和config.toml的骨架配置开始到每个 Skill 的启用步骤、调用链验证命令再到用 TaoToken 统一 Key 打通模型通道。适合已经在本地跑通 Codex CLI、想进一步把 Skill 用起来的开发者。全程可复制跟着做就能在本地复现。2. TaoToken 前置统一 Key 与 API 通道准备Codex CLI 支持通过 OpenAI Compatible API 的方式接入自定义模型服务这意味着你不需要绑定某个特定厂商的账号只要拿到一个兼容的 Base URL 和 Key 就能跑。TaoToken 在这里扮演的角色就是统一通道一个 Key 覆盖多个模型配置一次就能在 Codex 和各个 Skill 之间复用。先到控制台创建令牌。进入 https://taotoken.net/console 后在令牌管理里添加一个新令牌名称随便填比如「codex-skill-test」。分组选择上建议先用默认分组试跑确认稳定后再按需切换。限制使用模型这一项留空不要限制否则后面 Skill 调用不同模型时会被拦。创建完成后复制以sk-开头的字符串这就是你的统一 Key。接下来确认 Base URLCodex 走 OpenAI 兼容协议时填https://taotoken.net/api注意末尾不要多加/v1具体以 Codex 的配置项要求为准。模型名称按服务文档填写不同 Skill 可能会调用不同模型所以 Key 不要绑定单一模型。注意Key 只存在本地配置文件里不要提交到 Git 仓库。建议在项目根目录的.gitignore里加上config.toml和.codex/目录。拿到 Key 之后先别急着装 Skill用一条最简请求验证通道是否通。这一步能帮你排除掉后面 80% 的「Skill 不生效」问题因为很多情况下不是 Skill 的问题而是 Key 或 Base URL 填错了。3. Codex CLI 骨架配置settings.json 与 config.tomlCodex CLI 的配置分两层全局配置放在用户目录下的.codex/config.toml项目级配置放在项目根目录的.codex/settings.json。全局配置管模型通道和默认行为项目级配置管这个项目要用哪些 Skill、走什么参数。先写全局config.toml# ~/.codex/config.toml model gpt-5.5 model_provider taotoken [model_providers.taotoken] name TaoToken base_url https://taotoken.net/api env_key TAOTOKEN_API_KEY wire_api chat [history] persistence save-all [skills] enabled true paths [~/.codex/skills]这里的关键是env_key它告诉 Codex 从环境变量里读 Key而不是把 Key 硬编码进配置文件。设置环境变量# macOS / Linux export TAOTOKEN_API_KEYsk-你的Key # Windows PowerShell $env:TAOTOKEN_API_KEYsk-你的Key项目级settings.json用来声明这个项目启用的 Skill 和参数{ skills: { taste-skill: { enabled: true, params: { visual_contrast: auto, info_density: auto, color_bias: auto } }, stop-slop: { enabled: true, params: { min_score: 35, banned_phrases: [不仅是, 更是, 维度, 生产力飞跃] } }, web-access: { enabled: true, params: { max_chars: 10000, use_local_chrome: true } }, claude-mem: { enabled: true, params: { auto_summary: true, inject_on_new_session: true } }, guizang-social-card-skill: { enabled: true, params: { theme: klein-blue, layout_count: 28 } } } }配置写完后用codex config validate检查语法。如果报unknown field之类的错多半是 TOML 缩进或引号问题逐段注释掉排查。4. 五个必装 Skill 的配置与调用链4.1 taste-skill先推断设计方向再写代码taste-skill 的核心是「简报推理」你给一句风格描述它不会直接写代码而是先推断出具体的设计方向再用这个方向约束输出。比如你写「Apple.com aesthetic」它会往极简、大留白、蓝色 CTA 的方向走你写「8-bit aesthetic」它会转向复古高饱和像素风。安装方式是从 GitHub 仓库导入cd ~/.codex/skills git clone https://github.com/Leonxlnx/taste-skill.git克隆完成后在项目settings.json里确认taste-skill.enabled为true。调用时在 Prompt 里给出具体参考对象不要只写「好看的蓝色」而是写「背景用 slate-900主色用 indigo-500」。参数visual_contrast、info_density、color_bias保持auto即可Agent 会根据简报自动推断。验证是否生效让它生成一个落地页观察输出里是否有明确的设计参数声明。如果它直接开始写 HTML 而没有设计推理段落说明 Skill 没加载。4.2 guizang-social-card-skill长文一键拆成卡片这个 Skill 由归藏老师开发输入一篇长文它会自动拆解内容结构第一张做封面 Hook第二张铺场景第三张讲核心功能最后一张反转或总结。内置 28 种布局和 10 套配色主题。cd ~/.codex/skills git clone https://github.com/op7418/guizang-social-card-skill.git调用时在 Prompt 里指定主题比如「用克莱因蓝主题生成一套卡片」。如果选题里没有配图它会自动联网检索素材并在图片背后加渐变背景避免生硬截图感。4.3 stop-slop干掉 AI 腔文案stop-slop 内置三套机制禁用词清单、结构性反模式识别、动态评分。满分 50 分低于 35 分强制退回重写。虽然它起家是英文但禁用词规则同样适用于中文。cd ~/.codex/skills git clone https://github.com/hardikpandya/stop-slop.git在settings.json里把min_score设为 35banned_phrases里加上你常看到的套话。调用时让它写一段产品介绍观察输出是否还有「在当今快节奏的时代」这类开头。如果评分低于阈值它会自动重写你会在日志里看到retry记录。4.4 web-access带登录态的深度联网Codex 自带的联网功能遇到反爬、JS 动态渲染或登录态失效时容易报错。web-access 直接联动你本地正在运行的 Chrome携带当前登录状态访问页面。cd ~/.codex/skills git clone https://github.com/eze-is/web-access.git配置里use_local_chrome设为truemax_chars限制在 10000 以内避免单次抓取内容过多导致 Token 溢出。调用时让它去抓一个需要登录才能看的文档页面如果返回的是完整内容而不是登录页说明登录态携带成功。4.5 claude-mem跨会话记忆管理claude-mem 在后台记录每次会话的关键操作和核心设定会话结束时压缩成高密度摘要新会话开启时自动注入。对长期项目开发来说这个 Skill 能省掉大量重复解释。cd ~/.codex/skills git clone https://github.com/eze-is/claude-mem.git配置里auto_summary和inject_on_new_session都设为true。验证方式开一个会话告诉它「项目用 pnpm组件放 src/components」结束会话再开新会话问它「项目用什么包管理器」如果它答出 pnpm说明记忆注入生效。5. 验证请求与成功结果确认配置全部写完后用一条完整请求跑通调用链。先验证基础通道codex exec 用一句话说明当前使用的模型和 Base URL如果返回里包含gpt-5.5和taotoken.net说明 Key 和通道没问题。接着验证 Skill 加载codex exec --skill taste-skill 生成一个极简风格的登录页参考 Apple.com观察输出里是否有设计推理段落比如「推断设计方向极简、大留白、蓝色 CTA」。如果有说明 taste-skill 已生效。再验证 stop-slopcodex exec --skill stop-slop 写一段关于 AI 编程工具的产品介绍200 字检查输出里是否还有「不仅是……更是……」这类套话。如果评分机制生效你会在日志里看到score: 42/50这样的记录。最后验证 claude-mem 的跨会话能力开一个会话写入项目规范结束再开新会话读取。如果新会话能复述规范说明记忆链路完整。6. 本篇常见错排查Skill 导入失败或无响应先确认~/.codex/skills目录存在且可写。如果git clone卡住检查本地网络环境是否能正常访问 GitHub。克隆失败时可以手动下载仓库压缩包解压到 skills 目录再在settings.json里用本地路径引用。API 调用超时或 Token 溢出claude-mem 和 web-access 容易注入过多上下文。解决办法是定期清理 claude-mem 生成的旧记忆文件位置在~/.codex/memory/下web-access 的max_chars限制在 10000 以内超过就截断。样式生成不符合预期taste-skill 的简报描述太模糊会导致设计参数偏差。不要只写「好看的蓝色」要写具体色值比如「背景 slate-900主色 indigo-500」。参考对象越具体推断越准。stop-slop 评分一直低于阈值检查banned_phrases是否配置过严把常用词也禁掉了。建议先只加最典型的几个套话跑通后再逐步收紧。claude-mem 新会话没注入记忆确认inject_on_new_session为true且上一次会话正常结束不是强制 kill。如果会话异常中断摘要可能没生成需要手动触发一次codex mem summarize。Key 报 401 或 403检查环境变量TAOTOKEN_API_KEY是否在当前 shell 生效echo $TAOTOKEN_API_KEY看输出。如果为空重新 export 一次或者写进.bashrc/.zshrc。另外确认 Key 没有绑定单一模型限制。7. 接入通道与后续操作入口通道配置和 Skill 启用是两件事但都依赖同一个 Key。如果你还没创建令牌直接到 TaoToken API Keys 生成一个然后按第 2 节的步骤写进环境变量。接入细节和兼容协议说明在 接入文档 里有完整参数表。想先验证模型输出质量再决定用哪个 Skill可以到 模型对话 里直接试跑几轮对比不同模型在代码生成和文案任务上的表现。如果你打算把 Codex 长期挂在项目里做编码和 Agent 任务Coding Plan 的额度模型更适合持续调用不用每次单独充值。配置跑通之后建议先把 taste-skill 和 stop-slop 这两个装上一个管视觉一个管文字覆盖日常最高频的两类任务。web-access 和 claude-mem 按需启用前者适合信息收集场景后者适合长期项目。guizang-social-card-skill 在有内容分发需求时再开避免平时占用上下文。