Skip to content
FunCoding

Search

Search docs, Skills and MCP

编写 Agent Skills

创建 SKILL.md 和配套资源,设置调用方式、参数提示及工具预批准。

This page has not been translated into English yet. The original Chinese version is shown below.

Skill 是一个目录,包含 SKILL.md,也可以包含脚本、示例和补充资料。模型根据描述判断何时加载,用户也能在提示中明确调用;内容在调用时进入上下文。

最小结构

项目 Skill 可放在 .github/skills/、.agents/skills/ 或 .claude/skills/;个人 Skill 可放在 ~/.copilot/skills/ 或 ~/.agents/skills/。每个 Skill 使用自己的子目录:

.github/skills/change-review/
├── SKILL.md
└── checklist.md

SKILL.md 必须使用这个文件名。正文给出可执行的工作步骤,描述中说明何时使用:

---
name: change-review
description: Review a proposed code change against the project checklist. Use when asked to assess a diff before merging.
argument-hint: "[changed files]"
---

Read checklist.md from this skill directory.
Inspect the changed files and their direct callers.
Report concrete issues with file locations and supporting evidence.

上面是自定义示例;需要自行提供 checklist.md。调用时 CLI 会发现目录内的资源,使智能体可以读取和使用它们。

Frontmatter

字段要求或默认值用途
name必填,最多 64 字符唯一名称
description必填,最多 1024 字符能力与触发场景
argument-hint可选字符串选择器中的参数提示
allowed-tools可选字符串或数组Skill 活跃时自动允许的工具
user-invocable默认 true是否允许 /SKILL-NAME 显式调用
disable-model-invocation默认 false是否禁止模型自动选择

官方入门教程建议小写字母和连字符;CLI 命令参考允许名称以字母或数字开始,包含字母、数字、连字符、下划线、点、冒号和空格。新建时采用小写连字符最直观,不能把教程建议误写成完整校验规则。教程还允许可选的 license 描述许可。

控制调用方式

在提示中使用 /change-review 显式调用。只想允许用户触发时设 disable-model-invocation: true;不提供用户斜杠入口时设 user-invocable: false。两项控制不同维度,应按用途设置。

加入新 Skill 后执行 /skills reload,再用 /skills info change-review 查看发现的位置和内容信息。

脚本与工具预批准

可以在目录中加入脚本,在正文中说明相对 Skill 目录如何调用。allowed-tools 可写逗号分隔字符串或 YAML 数组,"*" 表示全部工具。

预批准 shell 或 bash 会移除相应终端执行确认步骤,因此应先检查 Skill 及其引用脚本。省略预批准字段,让工具调用继续受现有权限流程控制;把命令写进 Skill 正文不等于已经授予权限。相关规则见权限与工具控制。