create-agent-skills by everyinc/compound-engineering-plugin
npx skills add https://github.com/everyinc/compound-engineering-plugin --skill create-agent-skills此技能教授如何根据 code.claude.com/docs/en/skills 的官方规范创建有效的 Claude Code 技能。
自定义斜杠命令已合并到技能中。位于 .claude/commands/review.md 的文件和位于 .claude/skills/review/SKILL.md 的技能都会创建 /review 命令,并且工作方式相同。现有的 .claude/commands/ 文件继续有效。技能增加了可选功能:用于存放支持文件的目录、用于控制调用的 frontmatter 以及自动上下文加载。
如果技能和命令共享相同的名称,则技能优先。
使用命令文件 (commands/name.md) 当:
使用技能目录 (skills/name/SKILL.md) 当:
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
两者都使用相同的 YAML frontmatter 和 markdown 内容格式。
使用 YAML frontmatter + markdown 正文,并采用标准 markdown 标题。保持简洁直接。
---
name: my-skill-name
description: What it does and when to use it
---
# My Skill Name
## Quick Start
Immediate actionable guidance...
## Instructions
Step-by-step procedures...
## Examples
Concrete usage examples...
所有字段都是可选的。仅推荐使用 description。
| 字段 | 是否必需 | 描述 |
|---|---|---|
name | 否 | 显示名称。小写字母、数字、连字符(最多 64 个字符)。默认为目录名。 |
description | 推荐 | 它的功能以及使用时机。Claude 使用此字段进行自动发现。最多 1024 个字符。 |
argument-hint | 否 | 自动完成时显示的提示。例如:[issue-number] |
disable-model-invocation | 否 | 设置为 true 可阻止 Claude 自动加载。用于手动工作流,如 /deploy、/commit。默认:false。 |
user-invocable | 否 | 设置为 false 可从 / 菜单中隐藏。用于背景知识。默认:true。 |
allowed-tools | 否 | Claude 无需权限提示即可使用的工具。例如:Read, Bash(git *) |
model | 否 | 要使用的模型。选项:haiku、sonnet、opus。 |
context | 否 | 设置为 fork 可在隔离的子代理上下文中运行。 |
agent | 否 | 当 context: fork 时的子代理类型。选项:Explore、Plan、general-purpose 或自定义代理名称。 |
| Frontmatter | 用户可调用 | Claude 可调用 | 加载时机 |
|---|---|---|---|
| (默认) | 是 | 是 | 描述始终在上下文中,调用时加载完整内容 |
disable-model-invocation: true | 是 | 否 | 描述不在上下文中,仅在用户调用时加载 |
user-invocable: false | 否 | 是 | 描述始终在上下文中,相关时加载 |
使用 disable-model-invocation: true 用于有副作用的工作流:/deploy、/commit、/triage-prs、/send-slack-message。你不希望 Claude 因为你的代码看起来就绪就决定部署。
使用 user-invocable: false 用于不是有意义的用户操作的背景知识:编码规范、领域上下文、遗留系统文档。
使用 $ARGUMENTS 占位符接收用户输入。如果内容中没有此占位符,参数会自动附加。
---
name: fix-issue
description: Fix a GitHub issue
disable-model-invocation: true
---
Fix GitHub issue $ARGUMENTS following our coding standards.
访问单个参数:$ARGUMENTS[0] 或简写 $0、$1、$2。
技能支持动态上下文注入:在反引号包裹的 shell 命令前加上感叹号,预处理器会在加载时执行它,并用 stdout 替换该指令。在要执行的命令的开头反引号前立即写一个感叹号(例如,要注入当前的 git 分支,写感叹号后跟包裹在反引号中的 git branch --show-current)。
重要提示: 预处理器将整个 SKILL.md 作为纯文本扫描——它不解析 markdown。在围栏代码块或行内代码段内的指令仍然会被执行。如果一个技能用字面示例记录此语法,预处理器将尝试运行它们,导致加载失败。要安全地记录此功能,请用文字描述(如此处所做)或将示例放在参考文件中,该文件由 Claude 按需加载且不被预处理。
有关技能中动态上下文注入的具体示例,请参阅 official-spec.md § "Dynamic Context Injection"。
添加 context: fork 以在隔离环境中运行。技能内容成为子代理的提示。它不会有对话历史。
---
name: deep-research
description: Research a topic thoroughly
context: fork
agent: Explore
---
Research $ARGUMENTS thoroughly:
1. Find relevant files
2. Analyze the code
3. Summarize findings
保持 SKILL.md 在 500 行以下。将详细内容拆分到参考文件中:
my-skill/
├── SKILL.md # 入口点(必需,概述 + 导航)
├── reference.md # 详细文档(需要时加载)
├── examples.md # 使用示例(需要时加载)
└── scripts/
└── helper.py # 实用脚本(执行,不加载)
从 SKILL.md 链接:有关 API 详情,请参阅 [reference.md](reference.md)。
保持参考文件与 SKILL.md 仅一级深度。避免嵌套链。
描述支持技能发现。同时包含它的功能以及使用时机。
好的:
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
差的:
description: Helps with documents
自问:这是一个手动工作流(部署、提交、分类)还是背景知识(规范、模式)?
disable-model-invocation: true 的命令disable-model-invocation 的技能命令:
---
name: my-command
description: What this command does
argument-hint: [expected arguments]
disable-model-invocation: true
allowed-tools: Bash(gh *), Read
---
# Command Title
## Workflow
### Step 1: Gather Context
...
### Step 2: Execute
...
## Success Criteria
- [ ] Expected outcome 1
- [ ] Expected outcome 2
技能:
---
name: my-skill
description: What it does. Use when [trigger conditions].
---
# Skill Title
## Quick Start
[Immediate actionable example]
## Instructions
[Core guidance]
## Examples
[Concrete input/output pairs]
从 SKILL.md 链接到详细内容:
For API reference, see [reference.md](reference.md).
For form filling guide, see [forms.md](forms.md).
/skill-name 调用以验证disable-model-invocation: trueallowed-toolsdisable-model-invocation: true有关详细指导,请参阅:
每周安装次数
199
仓库
GitHub 星标
10.9K
首次出现
2026年2月9日
安全审计
安装于
codex187
opencode185
gemini-cli182
github-copilot180
cursor172
kimi-cli159
This skill teaches how to create effective Claude Code skills following the official specification from code.claude.com/docs/en/skills.
Custom slash commands have been merged into skills. A file at .claude/commands/review.md and a skill at .claude/skills/review/SKILL.md both create /review and work the same way. Existing .claude/commands/ files keep working. Skills add optional features: a directory for supporting files, frontmatter to control invocation, and automatic context loading.
If a skill and a command share the same name, the skill takes precedence.
Use a command file (commands/name.md) when:
Use a skill directory (skills/name/SKILL.md) when:
Both use identical YAML frontmatter and markdown content format.
Use YAML frontmatter + markdown body with standard markdown headings. Keep it clean and direct.
---
name: my-skill-name
description: What it does and when to use it
---
# My Skill Name
## Quick Start
Immediate actionable guidance...
## Instructions
Step-by-step procedures...
## Examples
Concrete usage examples...
All fields are optional. Only description is recommended.
| Field | Required | Description |
|---|---|---|
name | No | Display name. Lowercase letters, numbers, hyphens (max 64 chars). Defaults to directory name. |
description | Recommended | What it does AND when to use it. Claude uses this for auto-discovery. Max 1024 chars. |
argument-hint | No | Hint shown during autocomplete. Example: [issue-number] |
disable-model-invocation | No | Set true to prevent Claude auto-loading. Use for manual workflows like , . Default: . |
| Frontmatter | User can invoke | Claude can invoke | When loaded |
|---|---|---|---|
| (default) | Yes | Yes | Description always in context, full content loads when invoked |
disable-model-invocation: true | Yes | No | Description not in context, loads only when user invokes |
user-invocable: false | No | Yes | Description always in context, loads when relevant |
Usedisable-model-invocation: true for workflows with side effects: /deploy, /commit, /triage-prs, /send-slack-message. You don't want Claude deciding to deploy because your code looks ready.
Useuser-invocable: false for background knowledge that isn't a meaningful user action: coding conventions, domain context, legacy system docs.
Use $ARGUMENTS placeholder for user input. If not present in content, arguments are appended automatically.
---
name: fix-issue
description: Fix a GitHub issue
disable-model-invocation: true
---
Fix GitHub issue $ARGUMENTS following our coding standards.
Access individual args: $ARGUMENTS[0] or shorthand $0, $1, $2.
Skills support dynamic context injection: prefix a backtick-wrapped shell command with an exclamation mark, and the preprocessor executes it at load time, replacing the directive with stdout. Write an exclamation mark immediately before the opening backtick of the command you want executed (for example, to inject the current git branch, write the exclamation mark followed by git branch --show-current wrapped in backticks).
Important: The preprocessor scans the entire SKILL.md as plain text — it does not parse markdown. Directives inside fenced code blocks or inline code spans are still executed. If a skill documents this syntax with literal examples, the preprocessor will attempt to run them, causing load failures. To safely document this feature, describe it in prose (as done here) or place examples in a reference file, which is loaded on-demand by Claude and not preprocessed.
For a concrete example of dynamic context injection in a skill, see official-spec.md § "Dynamic Context Injection".
Add context: fork to run in isolation. The skill content becomes the subagent's prompt. It won't have conversation history.
---
name: deep-research
description: Research a topic thoroughly
context: fork
agent: Explore
---
Research $ARGUMENTS thoroughly:
1. Find relevant files
2. Analyze the code
3. Summarize findings
Keep SKILL.md under 500 lines. Split detailed content into reference files:
my-skill/
├── SKILL.md # Entry point (required, overview + navigation)
├── reference.md # Detailed docs (loaded when needed)
├── examples.md # Usage examples (loaded when needed)
└── scripts/
└── helper.py # Utility script (executed, not loaded)
Link from SKILL.md: For API details, see [reference.md](reference.md).
Keep references one level deep from SKILL.md. Avoid nested chains.
The description enables skill discovery. Include both what it does and when to use it.
Good:
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
Bad:
description: Helps with documents
Ask: Is this a manual workflow (deploy, commit, triage) or background knowledge (conventions, patterns)?
disable-model-invocation: truedisable-model-invocationCommand:
---
name: my-command
description: What this command does
argument-hint: [expected arguments]
disable-model-invocation: true
allowed-tools: Bash(gh *), Read
---
# Command Title
## Workflow
### Step 1: Gather Context
...
### Step 2: Execute
...
## Success Criteria
- [ ] Expected outcome 1
- [ ] Expected outcome 2
Skill:
---
name: my-skill
description: What it does. Use when [trigger conditions].
---
# Skill Title
## Quick Start
[Immediate actionable example]
## Instructions
[Core guidance]
## Examples
[Concrete input/output pairs]
Link from SKILL.md to detailed content:
For API reference, see [reference.md](reference.md).
For form filling guide, see [forms.md](forms.md).
/skill-name to verifydisable-model-invocation: true if it has side effectsallowed-tools set if specific tools neededdisable-model-invocation: trueFor detailed guidance, see:
Weekly Installs
199
Repository
GitHub Stars
10.9K
First Seen
Feb 9, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
codex187
opencode185
gemini-cli182
github-copilot180
cursor172
kimi-cli159
agent-browser 浏览器自动化工具 - Vercel Labs 命令行网页操作与测试
150,000 周安装
Deep Agents Memory:LangChain AI 智能体内存管理 - 临时与持久化存储解决方案
3,900 周安装
Gmail邮件读取工具 - Google Workspace CLI命令,支持JSON/HTML格式和标头提取
4,100 周安装
here.now 静态网站一键部署工具 - 从文件/文件夹创建实时URL
3,800 周安装
Angular HTTP 数据获取指南:基于信号的 httpResource() 与 resource() 使用教程
3,800 周安装
编码规范与最佳实践指南:TypeScript/JavaScript 和 React 开发标准
3,900 周安装
深度研究技能:8阶段AI研究流程,交付有引文支持的研究报告 | 199-biotechnologies
3,900 周安装
/deploy/commitfalseuser-invocable | No | Set false to hide from / menu. Use for background knowledge. Default: true. |
allowed-tools | No | Tools Claude can use without permission prompts. Example: Read, Bash(git *) |
model | No | Model to use. Options: haiku, sonnet, opus. |
context | No | Set fork to run in isolated subagent context. |
agent | No | Subagent type when context: fork. Options: Explore, Plan, general-purpose, or custom agent name. |