license字段license用于声明该Skill的开源许可协议,告诉使用者"这个技能可以怎么用、能不能商用、需不需要署名"等法律问题。
# 方式一:直接写标准许可证名称
license: Apache-2.0
license: MIT
license: GPL-3.0
# 方式二:引用Skill目录内捆绑的许可证文件
license: Proprietary. LICENSE.txt has complete terms
| 场景 | 是否需要填 | 说明 |
|---|---|---|
| 个人项目、内部使用 | 不需要 | 不涉及分发,可以省略 |
| 开源社区分享 | 建议填 | 明确他人使用权限,避免法律纠纷 |
| 企业商业 Skill | 建议填 | 标明是专有许可还是开源许可 |
一句话总结:license是给人看的法律声明,Agent执行时完全不会用到它。如果你只是自己用或团队内部用,可以不填。
compatibility 字段compatibility 用于声明该 Skill 运行所需的环境要求,告诉使用者"这个技能在什么条件下才能正常工作"。
可以声明哪些类型的环境要求
# 目标产品:指定适用于哪个 Agent 平台
compatibility: Designed for Claude Code (or similar products)
# 系统依赖:需要安装哪些命令行工具
compatibility: Requires git, docker, jq, and access to the internet
# 编程语言版本
compatibility: Requires Python 3.14+ and uv
# 组合写法:同时声明多种要求
compatibility: Requires Python 3.10+, git, and network access to the company intranet
| 场景 | 是否需要填 | 原因 |
|---|---|---|
Skill的scripts/中用了Python脚本 | 建议填 | 使用者需要知道要装Python |
| Skill需要调用外部API | 建议填 | 使用者需要知道要联网 |
Skill依赖git、docker等工具 | 建议填 | 避免执行时报错 |
| 纯指令型Skill(无脚本、无外部依赖) | 不需要 | Agent本身就能执行Markdown指令 |
compatibility 目前是一个纯声明性字段:它只是"告诉人"需要什么环境,Agent 并不会自动检查环境是否满足。也就是说:
compatibility: Requires docker,但使用者的机器上没装 Docker,Agent 不会提前报错,而是在执行脚本时才失败compatibility更多是给skill的安装者/使用者看的,帮助他们提前确认环境是否就绪