Codex Skills 初体验,第一个技能创建和使用!
所有使用 AI 编程的程序员都应该关注一下这项技术,这应该是一个重点发展方向。
2025 年 12 月 19 日的时候 OpenAI 发布了一条公告,Codex 全面支持 Skills。
Skills 最早由 Claude 家提出,现在 OpenAI 也全面支持了,那么基本就相当于这个规范已经快要确定了。
从 agentskills 上可以看到,目前已经有大量平台支持这项技术了。

所有的 AI 编程工具都支持了,就差谷歌入场了。
之前一直想研究一下,但是我没有直接开通 Claude,所以就暂缓了。当听到 Codex 也支持了,我觉得我必须要实践一下了。下面就一起了解一下什么是 Skill,如何创建 Skill,如何使用 Skill。
什么是 Codex Skill?
Skills 是任务特定的能力包,本质上就是一个文件夹,包含指令、脚本和资源。它遵循开源标准 agentskills.io。
一个 Skill 的核心是 SKILL.md 文件,用 Markdown 格式编写,包含元数据和详细指令。
Skills 的设计非常聪明:采用“渐进式加载”(progressive disclosure)机制。Codex 在初始上下文只加载 Skill 的名称和简短描述(避免浪费 token),只有当真正需要时,才读取完整指令。这让 Codex 在处理长任务时保持高效。
Skills 的主要优势:
- 可靠执行特定工作流:如自动修复 CI 失败、集成任务管理工具等。
- 易共享:团队或社区可以轻松分发 Skill,支持跨平台(如从 Claude 迁移到 Codex)。
- 上下文高效:不污染主提示,只在需要时激活。
- 可扩展:支持可选脚本、参考文档和资源文件。
Codex 自带几个系统 Skill,如 plan(规划复杂任务)、skill-creator(创建新 Skill)和 skill-installer(安装 Skill)。
如何创建 Skills?
- 使用内置 skill-creator
在 Codex 中直接调用 $skill-creator,然后描述你想要的 Skill 功能。
例如:“创建一个 Skill,用于处理 PDF 文件提取文本和表格,使用 pdfplumber 库。”
Codex 会自动生成文件夹结构和 SKILL.md 模板。
你还可以先用 $plan Skill 规划,再结合 skill-creator 完善。
- 手动创建
在合适的目录下创建一个文件夹(文件夹名即 Skill 名),然后添加 SKILL.md 文件。
基本格式如下:
---
name: your-skill-name
description: 当用户提到 XXX 时使用这个 Skill,帮助完成 YYY。
metadata:
short-description: 可选的简短用户可见描述
---
# Skill 标题
这里写详细指令:一步步指导 Codex 如何执行任务。
- 使用哪些工具或库
- 处理边缘情况
- 输出格式要求
- 示例等
可选添加子文件夹:
- scripts/:存放可执行脚本。
- references/:参考文档。
- assets/:模板或其他资源。
Skill 存放位置(优先级从高到低):
- 项目当前目录:.codex/skills/(适合当前 repo 专用)。
- 项目根目录:repo_root/.codex/skills/(团队共享)。
- 个人全局:~/.codex/skills/(默认位置)。
- 系统内置:Codex 自带,无法覆盖。
更高优先级的 Skill 会覆盖同名低优先级 Skill,便于自定义覆盖。
如何使用 Skills?
使用 Skills 有两种方式:
- 显式调用(推荐精确控制):
- 在提示中直接写 $.skill-name(例如 $.linear)。
- 或在 CLI/IDE 中使用 /skills 命令选择。
- 自动选择(更自然):
- Codex 会根据你的任务描述,智能判断并加载匹配的 Skill(依赖 description 字段写得准确)。
举个例子
概念学完了,尝试自己创建一个 Skills。比如我要创建一个可以创建文件夹的技能。通过调用这个技能可以在当前文件夹新建一个指定名称的文件夹。
首先确保已经安装最新版 Codex 工具。

可以通过 codex --version 查看版本,如果版号小于 0.76,就升级一下。
直接全局安装:
npm install -g @openai/codex@latest
升级完成之后,就支持 Skills 了。
然后可以创建一个测试文件夹进行测试了。
比如我是在桌面创建了一个 Skills 的文件夹。
输入 codex 启动,然后打一个斜杠,就可以看到 Skills 了。

输入 /skills 进入技能菜单,然后输入 skill-creator。也可以直接通过 $ 触发功能菜单。
输入命令:
$skill-creator firstskill
输出内容:
我将使用 skill-creator,因为你明确要创建一个新技能 firstskill。
先进入第 1 步:明确用途与触发场景。请用简短中文回答:
1. 这个 skill 要解决什么具体任务?
2. 给 2–3 句“用户会怎么提问”的例子(触发语句)。
3. 需要固定流程/脚本/参考资料吗?如果有,是什么类型(scripts / references /
assets)?
4. 预期输出是什么样(文字说明、命令、模板文件等)?
确认后我会给出技能命名、目录结构与最小 SKILL.md 草案。
输入内容:
我要创建一个技能,这个技能可以根据传入的文件夹名称,在当前项目下创建一个文件夹。
输出内容:
收到。将按 skill-creator 继续。
先确认触发与命名(简短回复即可):
1. 触发示例:给 2–3 条用户可能的提问句子(中文即可)。
2. 技能名称:建议 make-folder 或 create-folder,你更偏好哪一个?
3. 是否需要脚本?如果只用命令行创建目录也可以不加 scripts/。你希望包含脚本吗?
输入内容:
触发演示例子:请帮我创建文件夹test,我要创建一个文件夹,创建文件夹等;名字就叫makefolder;我希望包含脚本。
输出内容:
已按 skill-creator 建好 makefolder 技能骨架与脚本,保持精简可用。
变更说明
- 新增 skills/makefolder/SKILL.md,包含触发描述与使用规则
- 新增 skills/makefolder/scripts/make_folder.ps1,用于在当前项目创建单一文件
夹
文件位置
- skills/makefolder/SKILL.md
- skills/makefolder/scripts/make_folder.ps1
下一步建议
1. 试用脚本:./skills/makefolder/scripts/make_folder.ps1 test
2. 如果你想改成中文说明或加入更多校验规则,告诉我偏好。
然后项目目录下,就会有一个 Skills 了。

Skills 下面有一个子文件夹叫 makefolder。
具体目录结构如下:
skills/
└─ makefolder/
├─ SKILL.md
└─ scripts/
└─ make_folder.ps1
然后可以测试技能了。
直接告诉他:
创建一个名为jarvis的文件
或者使用
$makefolder jarvis
这样它就会自动调用技能创建文件夹了。
调用过程中会显示可用的技能,并获取你的授权。
然后你也可以把这个技能拷贝到用户目录下。
~\.codex\skills\makefolder
这样就成为一个全局技能了,在其他项目中也可以使用。
拷贝这个动作也可以交给 Codex 来完成!
最后,也可以通过 $skill-installer 来安装 OpenAI 的官方技能!
Skills from openai/skills:
1. gh-address-comments
2. gh-fix-ci
3. notion-knowledge-capture
4. notion-meeting-intelligence
5. notion-research-documentation
6. notion-spec-to-implementation
这么一圈搞下来,Skills 相关的知识点基本就在了。
我在使用 Codex 内置创建技能的技能时遇到了一个问题。
他虽然创建了技能,但是放置的位置一直有问题,它直接把 Skill 文件放在了当前项目下面,导致技能无法加载,问他规范,它死活说没问题,然后它又不能联网,死局。
其实在上面的知识点中已经介绍过了,需要放在 .codex 下面!
这个时候就需要你懂它的规范了,如果完全让它去瞎搞,就一直会有问题。
Skill 这种模式确实非常不错!
第三方开源标准网站:
OpenAI 官方手册: