Skills 正式加入 Codex

发布: (2025年12月20日 GMT+8 16:09)
4 min read

Source: Hacker News

技能结构

技能是一个文件夹,包含一个 SKILL.md 文件(必需)以及可选的子文件夹:

  • SKILL.md – 必需:markdown 指令 + 元数据
  • scripts/ – 可选:可执行代码
  • references/ – 可选:文档
  • assets/ – 可选:模板、资源

调用技能

显式调用

您可以在提示中直接包含技能。要选择一个,请运行 /skills 斜杠命令或开始键入 $ 来提及技能。(Codex 网页版和 iOS 版尚不支持显式调用,但您仍然可以提示 Codex 使用已检入仓库的任何技能。)

Skills selector in CLI – light mode
Skills selector in CLI – dark mode

Skills selector in IDE – light mode
Skills selector in IDE – dark mode

隐式调用

当用户的任务与技能描述匹配时,Codex 可以决定使用可用的技能。无论哪种情况,Codex 都会读取已调用技能的完整指令以及检入该技能的任何额外参考。

技能范围与优先级

Codex 从多个位置加载技能。当多个技能共享相同名称时,来自更高优先级范围的技能会覆盖其他技能。

范围位置建议用途
REPO$CWD/.codex/skills当前工作目录(例如,微服务或模块)。
REPO$CWD/../.codex/skills当前仓库的父文件夹——用于相关项目的共享区域。
REPO$REPO_ROOT/.codex/skills仓库根目录——对所有子文件夹均可用的技能。
USER$CODEX_HOME/skills (~/.codex/skills on macOS/Linux)个人技能,可在任何仓库中使用。
ADMIN/etc/codex/skills系统范围的技能,用于自动化、SDK 脚本或默认管理员工具。
SYSTEMBundled with Codex面向广泛受众的技能(例如 skill-creatorplan)。

创建技能

使用内置的 $skill-creator

在 Codex 中运行 $skill-creator 技能,描述你希望技能实现的功能,Codex 将为其引导生成。可以先配合 $plan 生成计划。

手动创建

在任意有效的技能位置创建文件夹并添加 SKILL.md 文件。文件必须包含 namedescription(metadata 为可选)。

---
name: skill-name
description: Description that helps Codex select the skill
metadata:
  short-description: Optional user‑facing description
---

Skill instructions for the Codex agent to follow when using this skill.

Codex 技能基于 Agent Skills 规范。更多细节请参阅文档。

内置技能和安装程序

您可以通过从 GitHub 上的精选集合下载来扩展内置技能列表:

$skill-installer linear

安装程序还可以从其他仓库获取技能。

示例用例

规划新功能

Codex 附带内置的 $plan 技能,可帮助研究并为新功能或复杂问题制定计划。

为 Codex 任务访问 Linear 上下文

$skill-installer linear

让 Codex 访问 Notion 以获取更多上下文

$skill-installer notion-spec-to-implementation
Back to Blog

相关文章

阅读更多 »

我抓取了6000+ n8n 工作流,并构建了一个带交互式预览的搜索引擎

我遇到的主要问题是,在使用官方模板库和各种社区资源时,总会卡在一个特定的摩擦点上:我必须下载一个 JSON 文件,将其导入到我的项目中,然后才能继续使用模板。然而,这个过程非常繁琐,而且经常出现以下几个具体障碍: 1. **文件获取不便** 官方文档只提供了一个下载链接,但该链接经常失效或被防火墙拦截。社区的替代方案要么已经过时,要么缺少必要的更新,导致我下载的 JSON 文件与当前的模板版本不匹配。 2. **导入步骤不明确** 即使成功下载了 JSON,我也不清楚该如何在项目中正确导入。官方示例代码往往省略了关键的配置步骤,或者使用了旧版的 API,使得我在尝试时频繁遇到 “未定义” 或 “类型不匹配” 的错误。 3. **依赖冲突** 在将 JSON 文件加入项目后,构建工具(如 webpack、vite 等)会报错,提示某些依赖版本不兼容。社区的解决方案大多是手动降级或升级某些库,但这会导致其他功能出现连锁反应,尤其是在使用 TypeScript 时,类型定义会出现大量冲突。 4. **缺乏自动化脚本** 官方并没有提供一键下载并集成 JSON 的脚本,导致每次都需要手动执行 curl/wget、解压、移动文件等步骤。社区有一些 Gulp/Grunt 插件,但它们的维护状态不佳,文档也不完整。 5. **文档与实际行为不一致** 官方文档中描述的 JSON 结构与实际下载的文件存在细微差别,例如字段名的大小写、嵌套层级或必填字段的缺失。这使得在代码中解析 JSON 时,需要额外的适配层,增加了维护成本。 **尝试的解决方案** - **使用代理或 VPN**:通过代理访问官方下载链接,暂时解决了网络拦截的问题,但这并不是根本方案,因为每次切换网络环境都需要重新配置。 - **手动克隆仓库**:直接从 GitHub 上克隆包含 JSON 的仓库,避免了下载链接失效的问题。但这仍然需要手动将文件复制到项目的指定目录,并确保路径配置正确。 - **编写自定义脚本**:利用 Node.js 编写一个小脚本,自动下载、校验并移动 JSON 文件到目标位置。虽然实现了自动化,但仍然依赖于外部网络资源的可用性。 - **社区 Fork**:寻找活跃的社区 Fork,使用其提供的更新版 JSON。此方案在短期内有效,但长期来看仍然面临维护者停止更新的风险。 **当前的痛点** - 每次新建项目或升级模板时,都必须重复上述繁琐步骤,导致开发效率大幅下降。 - 由于依赖冲突和类型不匹配,项目的 CI/CD 流水线经常卡在构建阶段,需要额外的人工干预。 - 文档不完整,使得新人难以快速上手,增加了学习成本。 **期望的改进** 1. **提供稳定的 CDN 或 npm 包**,直接通过 `npm install @official/template-data` 或类似方式获取最新的 JSON,省去手动下载环节。 2. **在官方文档中加入完整的导入示例**,包括 TypeScript 类型声明、Webpack/Vite 配置示例,以及常见错误的排查步骤。 3. **维护一个自动化脚本或 CLI 工具**,一键完成下载、校验、集成的全过程,并在脚本中处理依赖冲突和版本兼容性。 4. **同步更新 JSON 结构文档**,确保字段说明、必填项和示例数据与实际文件保持一致,减少二次适配的工作量。 5. **建立社区维护的镜像仓库**,在国内网络环境下也能快速获取最新的 JSON 文件,避免因网络问题导致的下载失败。 通过上述改进,能够显著降低模板使用的门槛,提高开发效率,并为新手提供更友好的上手体验。

2026年我想学习的3件事

n8n 这个工具已经被一些开发者 YouTuber 多次介绍,激起了我的兴趣。它是一个 open-source workflow automation tool,采用 fair‑code licensed,功能强大……

了解 npx 的真实工作原理

摘要 本文从两个层面解释 npx:- 简要概述并给出精确的解析步骤 - 对每一步进行深入解释 概述 npx 会搜索可执行…