mcpField
S
skill-editor

skill-editor

github.com/davidkissAgent 工作流4110 次安装25 周前更新
代码仓库

关于 skill-editor

Skills Editor Skill 帮助 Agent 创建和维护符合 deepagents 格式规范的 Agent Skills,适用于新增能力或修改现有技能的场景。它规定目录与 `SKILL.md` 格式,并提供从检索相似技能到添加支持文件的操作流程。

主要功能

  1. 01创建和维护 Agent Skills
  2. 02规范技能目录与必需文件
  3. 03定义 YAML frontmatter 格式要求
  4. 04提供技能创建与修改步骤
  5. 05指导渐进式披露和辅助文件组织

适用场景

  1. 01为 Agent 打包新的工作流能力
  2. 02创建包含 `SKILL.md` 的技能目录
  3. 03更新技能说明或添加资源
  4. 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 清楚说明何时应使用此技能,以便路由器正确选择。
  • 确认更改:执行任何步骤前,先与用户确认更改。

评论

支持 Markdown