生活分享
Skills 与 SKILL.md
Skill 将固定工作流程整理成可重用的指示与资源。最小结构是一个资料夹与 SKILL.md,档案前段需要 name 和 description,正文描述操作与输出。安装技能不代表每个任务都必然使用,还要检查是否载入。
阅读时间约 12 分钟 · 操作 25 分钟

返回 Codex 教学总目录Codex 学习中心:完整教程目录从安装、第一个任务到 MD 规则与进阶集成,规划 60 篇 Codex 教程、十个单元。按程度、平台、需求或命令搜索下一篇;尚未公开的教程会标示状态,方便安排学习路线。阅读全文
读完能做到什么
Skill 适合把会反复使用的工作流程整理成可重用指引,例如每次改完待办网站后的验收。不要把所有专案规则都移过来:AGENTS.mdAGENTS.md 项目规则AGENTS.md 是让 Codex 在开始工作前取得专案规则的档案。全域规则、专案根目录与工作目录路径中的子目录规则会形成一条指令链;同一层有 AGENTS.override.md 时优先读取它。规则愈具体愈容易遵循,仍需要验证实际载入。阅读全文处理持续适用的专案要求,Skill 则针对特定任务被选用。Plugins 可用来分发技能与连接服务,详见插件教学Plugins 与外部服务Plugin 可以把 Skills 与 MCP 工具包在一起,提供可安装的工作能力。安装套件、连接外部帐号与实际执行工具是三个不同步骤;找到插件不代表已能读你的服务资料。阅读全文。
开始之前
准备已登入的 Codex CLI 或支援 Skills 的桌面/IDE 入口,并下载待办网站教材。本篇先复制 expected 为 codex-practice;再保留 broken 作为稍后的独立故障练习,不要把两个版本的档案混在一起。
测试使用 Node.js,浏览器预览使用 Python 3。没有浏览器工具时,技能应回报画面检查未执行,提供给你手动操作的步骤;不能因为写了「检查画面」就假设环境会自动多出工具。你也可以下载完整技能范例,先阅读再放入练习专案。
最少必要概念:名称、描述与内容
一个技能至少是一个资料夹与其中的 SKILL.md。档案开头用 YAML frontmatter 保存 name 和 description,正文才是执行流程。Codex 先看到名称与描述,决定使用后才读完整内容,所以「什么都帮忙」之类的描述很容易在不适合的任务被选中。
本例的名字是 todo-acceptance,描述把范围限定为 Small Steps 的验收,而不是任意网站开发。先保持纯指引,不加脚本、外部服务或全域安装。只有需要稳定重复的工具逻辑时,再将程式放进 scripts;大量参考资料可以另放 references 并在主文件指出何时读取。
第一步:建立专案内的技能位置
从 codex-practice 根目录建立 .agents/skills/todo-acceptance。前面的点是资料夹名称的一部分;不是 .codex,也不是 agents 少一个点。Windows PowerShell 可执行以下命令;已存在时先看内容,不要覆盖别人的技能。
New-Item -ItemType Directory -Force .agents/skills/todo-acceptance
mkdir -p .agents/skills/todo-acceptance
用纯文字编辑器建立 SKILL.md,Windows 检查不是 SKILL.md.txt,Linux 检查大写档名。完成后的目录如下。这个位置让技能和练习专案一起管理,不会立刻变成所有专案共用的个人技能。
codex-practice/
index.html
style.css
app.js
core.mjs
core.test.mjs
.agents/
skills/
todo-acceptance/
SKILL.md
第二步:写入完整技能
以下内容与下载范例相同。流程会读现有程式、执行既有测试、在可用时检查浏览器,最后以 PASS、FAIL、NOT RUN 区分结果。它不会为了让验收通过而偷偷修程式,让你能先看懂实际问题再决定是否修改。
---
name: todo-acceptance
description: Verify the Small Steps todo practice website after a change, using its existing tests and browser checks. Use for acceptance checks of this exercise, not unrelated websites or feature implementation.
---
# Small Steps acceptance
Confirm the requested practice folder contains index.html, style.css, app.js,
core.mjs and core.test.mjs. If these are missing, stop and report the path checked.
Read the existing code, then run `node --test core.test.mjs` from that folder.
Do not rewrite tests or implementation to make an acceptance run pass.
If a browser is available, preview the site on a loopback address with a fresh
browser context. Add Read and Build, complete Read, check Active and Completed
filters, reload, and delete Read. Reject whitespace-only input. Check 390px and
1280px widths and visible Tab focus. Keep existing user browser data unchanged.
Report PASS, FAIL or NOT RUN for each check, with the command, observation or
limitation. Include the working folder and remaining issues. Do not claim that
tests, screenshots, deployment or publication happened without evidence.
If a check fails, report the reproduction and relevant file. If a required tool
is unavailable, report NOT RUN and the manual steps. Finish with results only;
implement fixes only when the user requests them.
name 适合用小写英文、数字及连字号,资料夹名称也保持相同。description 的触发边界写在前面,正文则保留真正会影响决策的条件。本例没有多余的套件或设定档;建立更多空资料夹不会让技能更完整。
第三步:找到技能并明确使用
Codex 会侦测技能变更;没有出现时重新开启工作阶段,确认工作目录位于此专案。CLI 或 IDE 可用 /skills 或输入 $ 寻找技能;桌面应用程式可由侧栏 Skills 检查可用项目,依目前介面选择。选单能找到名称,才是「已发现」的证据,仍不是已执行。
$todo-acceptance Check this Small Steps practice folder. Report the results without editing files.
桌面版若提供技能选择器,先选 todo-acceptance,再送出同样的验收要求。开始时请确认它读的是本专案 SKILL.md,而不是另一个同名技能。两个同名技能不会自动合并;全域或其他目录存在同名项目时,路径尤其重要。
第四步:核对正常与故障结果
在 expected 副本,node --test core.test.mjs 应有 3 个测试通过。回应应列出实际命令与结果;如果也执行浏览器流程,应能描述 Read、Build、筛选、重新整理及空白输入的结果。没有浏览器时应把该项列 NOT RUN,这不是测试通过也不是整个技能失效。
再建立一份独立 broken 副本,把同一个技能资料夹放到该副本的 .agents/skills,从那个位置建立新任务。这个版本刻意把 Completed 筛选反过来:Read 完成、Build 未完成时,会错误显示 Build。资料测试应为 2 个通过、1 个失败,技能应报告 FAIL 和重现方法,原始码维持不变。
这个比较能验证工作流程是否会忠实回报失败。档案格式检查只证明 YAML、名称与结构能解析,不证明代理真的照流程做;反过来,测试失败也可能正是技能成功找到问题。请分开保存这些证据,避免只有一个模糊的「成功」勾选。
再验证「材料不足就停止」
另外复制 expected 成一份独立的 incomplete 练习目录,放入同一份技能。先把这个副本的 core.test.mjs 移到该目录外的备份位置,保留原始 expected 与 broken 不变,再从 incomplete 开新任务选用技能。合格结果是指出缺少的档案与检查路径,停止后续验收;不能自行补写测试、改到另一份目录执行,或沿用先前的通过结果。完成后把备份放回原位置,再重新验收。
这与 broken 的差别是:broken 材料齐全、测试确实执行但失败;incomplete 尚不符合起步条件;没有浏览器工具则只让画面项目 NOT RUN。不要把三种情况都写成同一个 FAIL。要整理更多输入与触发情境,接著看技能测试Skill 触发与结果测试分开验证格式、选用条件及实际结果,用应触发与不应触发的案例修正技能描述。阅读全文;要加入脚本与参考文件,先看技能资源Skill 的脚本、参考文件与材料把重复逻辑与大型资料拆到必要的支援档案,让技能按需要读取并验证相对路径。阅读全文。
常见问题、停用与还原
技能没有出现:先检查 .agents/skills 的位置、SKILL.md 真正副档名、frontmatter 是否以两行 --- 包住,以及 name/description 是否存在。确认不是把整个 ZIP 放进资料夹后就以为已安装。修正后重开 Codex 再查选单。
技能出现却没使用:先明确选取或以 $todo-acceptance 指定,检查名称及来源路径。自动选用依描述与任务判断,不保证任何一句相似文字都会触发。若普通问候也经常触发,应收窄描述,让它只处理待办网站验收。
被选用却无法测试:确认 Node.js 在实际主机可用、目前目录含 core.test.mjs。从手机 Remote 使用时,技能与测试工具都在主机;电脑 A 装好不代表电脑 B 也有。不要让技能自行安装所有缺少的工具来掩盖环境条件。
停止进行中的验收先在任务内中止;需要停用时,将这份练习技能移出专案的技能扫描位置,保留备份,再重开工作阶段核对。更细的停用设定可以依官方 [[skills.config]] 说明处理,但要先保留既有 config.toml。停用不会删除之前的报告,也不会撤销任何过去修改。
| 状态 | 可以证明什么 | 尚不能证明什么 |
|---|---|---|
| 格式有效 | 必要栏位可以解析 | 会被选到 |
| 已发现 | 选单找到正确名称与路径 | 已读取完整流程 |
| 已采用 | 任务读取技能内容 | 所有检查都完成 |
| 已验证 | 有实际测试或画面结果 | 已经发布网站 |
小练习与验证纪录
比较两个提示词:「请验收 Small Steps 的筛选与储存」和「请解释今天的练习目标」。前者适合使用技能,后者不需要完整验收。记录选用与否、实际路径和结果,根据观察调整描述;不要把一次选对就当成所有情境都通过。
技能机制依 Build skills 官方文件于 2026-09-14 查证。范例会做格式验证,网站核心与故障结果已有实际测试;自动触发与不同 Codex 介面的选择器仍须分别实测,未列为全部通过。下一步可读插件Plugins 与外部服务Plugin 可以把 Skills 与 MCP 工具包在一起,提供可安装的工作能力。安装套件、连接外部帐号与实际执行工具是三个不同步骤;找到插件不代表已能读你的服务资料。阅读全文、MCPMCP 配置与连接排查MCP 让 Codex 使用外部工具与资料。STDIO 伺服器通常由本机命令启动;HTTP 伺服器透过 URL 连线。设定档写入成功只代表设定存在,还需要确认服务启动、验证通过与工具回应。阅读全文及测试与审查测试、Code Review 与 PR测试确认程式在指定条件的行为,Code Review 检查变更是否有遗漏或风险,PR 则让人查看并讨论要合并的差异。三者互补;通过测试不等于审查通过,开 PR 也不是已合并。阅读全文。
返回 Codex 教学总目录Codex 学习中心:完整教程目录从安装、第一个任务到 MD 规则与进阶集成,规划 60 篇 Codex 教程、十个单元。按程度、平台、需求或命令搜索下一篇;尚未公开的教程会标示状态,方便安排学习路线。阅读全文
阅读完整文字说明
SKILL.md to Invoke to Output
同主题延伸阅读
生活分享
Codex 学习中心:完整教程目录
从安装、第一个任务到 MD 规则与进阶集成,规划 60 篇 Codex 教程、十个单元。按程度、平台、需求或命令搜索下一篇;尚未公开的教程会标示状态,方便安排学习路线。
生活分享
Worktree 与多任务隔离
Worktree 让同一个 Git 程式库有不同的工作目录,各自承接不同分支。它适合让两项工作分开改档,但资料库、连接埠与外部服务仍可能共用,不能把档案隔离当成所有资源隔离。
生活分享
实战:制作小网站
从 brief.md 规划并制作 Small Steps 待办网站,完成新增、完成、删除、筛选与本机资料保存。将 HTML、CSS、资料函式、画面事件与测试分开,以 Node 测试和浏览器操作验收,并留下可重新启动与还原的交接纪录。
生活分享
用量与效率:减少重工
记录任务条件、模型选项、时间与成果,找出能减少无效重试和过多上下文的调整。
引用本文的文章
最新旅游情报攻略

攻略东京
东京住哪一区:新宿、上野、东京站、涩谷、浅草、池袋、银座七区比较,机场交通、住宿税、行李寄送一次看
东京住哪一区?用同一套标准比较新宿、上野、东京站、涩谷、浅草、池袋、银座七个区域:从成田、羽田机场怎么过来、有哪些线路、周边有什么、街区氛围、适合谁。附比较表与山手线示意图,以及 2026 年 9 月核实的东京都住宿税(2027 年 4 月改为 3%)和机场宅急便寄送行李的规则。
- 预算
- 酒店

攻略东京
东京交通票券怎么选:Suica/Welcome Suica、Tokyo Subway Ticket、JR Pass 值不值得买
第一次去东京,每人先用一张 IC 卡按次付费(Welcome Suica 免押金、有效期 28 天)。一天搭四趟以上地铁,再加买 2,000 日元的 Tokyo Subway Ticket 72 小时券;只玩东京、不去关西,买 JR Pass 一定不划算。用决策图比较 TOURIST PASMO、iPhone 里的 Suica、东京 Metro 一日券能搭什么、不能搭什么;价格于 2026 年 9 月核实。
- 交通
- 预算

攻略东京
东京迪士尼乐园、海洋攻略:票价、梦幻泉乡 Fantasy Springs、尊享卡 DPA 与预约等候卡怎么用,第一次去选哪个园区
东京迪士尼一日护照采用浮动票价,2026 年 9 月平日大多为 9,900 日元、周末为 10,900 日元,官网每天 14:00 开售两个月后同一天的门票;免费的优先通行卡已不在官网服务清单,缩短排队时间只剩付费的迪士尼尊享卡(每人每次 1,000 至 3,500 日元)。另有运营时间与 25 周年活动、预约等候卡与报名体验、梦幻泉乡如何进入,以及第一次去选乐园还是海洋;2026 年 9 月通过东京迪士尼度假区官网核实。
- 行程范例
- 亲子
资料来源
- Build skills · 查证日期:
- Codex CLI developer commands · 查证日期: