关于 skill-editor
Skills Editor Skill 帮助 Agent 创建和维护符合 deepagents 格式规范的 Agent Skills,适用于新增能力或修改现有技能的场景。它规定目录与 `SKILL.md` 格式,并提供从检索相似技能到添加支持文件的操作流程。
主要功能
- 01创建和维护 Agent Skills
- 02规范技能目录与必需文件
- 03定义 YAML frontmatter 格式要求
- 04提供技能创建与修改步骤
- 05指导渐进式披露和辅助文件组织
适用场景
- 01为 Agent 打包新的工作流能力
- 02创建包含 `SKILL.md` 的技能目录
- 03更新技能说明或添加资源
- 04检查技能格式和触发条件
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ davidkiss/ smart-ai-skills --skill skill-editor安装后在 Claude Code 中输入/skill-editor确认已加载。
详细介绍
Skills Editor 技能
描述
此技能使 Agent 能够创建和维护“Agent Skills”——用于扩展 Agent 功能的模块化能力。它可确保所有技能都遵循 deepagents 环境要求的标准目录结构和文件格式。
何时使用
- 用户要求“创建技能”或“添加功能”时。
- 用户希望封装特定工作流时(例如,“教 Agent 如何处理 PDF 发票”)。
- 修改现有技能以添加新资源或更新说明时。
技能结构规则
每项技能都必须位于自己的目录中,并包含一个 SKILL.md 文件。
1. 目录结构
为技能创建新目录(例如,pdf-processing/)。
其中必须包含 SKILL.md。其他文件是可选的,但对于复杂任务,建议添加这些文件以减轻上下文窗口负担(渐进式披露)。
skill-name/
├── SKILL.md # (Required) Main instructions and metadata
├── REFERENCE.md # (Optional) Detailed API docs or reference material
├── FORMS.md # (Optional) Specialized guides
└── scripts/ # (Optional) Executable scripts
└── utility.py
2. SKILL.md 格式
SKILL.md 文件必须以 YAML frontmatter 开头,后接 Markdown 说明。
Frontmatter 要求:
name:最多 64 个字符,只能使用小写字母、数字和连字符。不得使用保留词(“anthropic”、“claude”)。description:最多 1024 个字符。必须说明此技能做什么以及何时使用。
内容章节:
# [Skill Name]## Instructions:分步骤的指导。## Examples:具体的使用示例。
Instructions - 如何创建技能
必须使用 todowrite 和 todoread 工具跟踪以下步骤的执行进度:
步骤 1:检查相似的在线技能
创建或编辑技能之前,必须快速进行一次网页搜索(使用 webfetch 工具),查找在线上现有的相似技能(例如,Anthropic 的官方技能 https://github.com/anthropics/skills/tree/main/skills 或社区维护的列表)。如果找到相似技能:
- 如果许可证和条款允许复用,优先以其为模板进行改编,并在新技能的 SKILL.md 中加入清晰的参考链接(“Based on: ”)。
- 如果许可证要求署名或规定了使用条件,请在新技能目录中加入原始 LICENSE.txt(或其指针),并遵守许可证条款。如果许可证与你的预期用途不兼容,请告知用户并在导入前征求指导。
步骤 2:检查现有技能
如果不使用在线技能作为模板而是创建新技能,请先搜索现有或相似的本地技能,并以其结构、示例和模式为起点进行复用。
步骤 3:创建目录
在 .opencode/skills/ 下创建目录,使用与技能用途相符的 kebab-case 名称。
步骤 4:创建 SKILL.md
编写 SKILL.md 文件,并包含必需的 frontmatter 和章节。
模板:
---
name: my-new-skill
description: Brief description of what this skill does and when to use it.
---
# My New Skill
## Instructions
[Clear, step-by-step guidance for the agent to follow]
## Examples
[Concrete examples of using this skill]
步骤 5:添加辅助文件(可选)
如果技能需要较长的参考文本或脚本,请创建单独的文件(例如,scripts/main.py、docs/api.md),并在 SKILL.md 中引用。Agent 只会在需要时读取这些文件。
步骤 6:更新依赖项(可选)
使用 uv pip install <package> 将所需依赖项添加到项目的 requirements.txt 文件中,以更新项目的虚拟环境。
步骤 7:突出说明必要的环境变量(可选)
如果技能的脚本需要环境变量(API 密钥、令牌、凭据),请在 SKILL.md 的 Credentials 章节中清楚列出这些变量及其预期名称(例如,GITHUB_ACCESS_TOKEN、YOUTUBE_API_KEY)。创建新技能时,请向用户说明这些必需的环境变量,并建议在运行脚本前将其添加到项目的 .env 文件或系统环境中。
最佳实践
- 渐进式披露:不要把所有内容都放进
SKILL.md。将其用作入口文件,并链接到其他文件。 - 确定性代码:对于复杂逻辑或数据处理,优先使用 Python 脚本,而不是自然语言指令。
- 简洁的脚本:创建脚本文件时,应保持简洁——用途明确、函数精简、外部依赖最少,并避免不必要的复杂性。
- 清晰的触发条件:确保
description清楚说明何时应使用此技能,以便路由器正确选择。 - 确认更改:执行任何步骤前,先与用户确认更改。