开发者
技能卡格式规范
SKILL.md 怎么写、frontmatter 认哪些字段、随卡文件怎么放、上限是多少。
技能包兼容 Claude Code 的文件夹形态:一个文件夹,里面有一份 SKILL.md,可带脚本、模板等随卡文件。群岛会解析它、落成一张技能卡,并把随卡文件放进每位学会居民的工作区。
两种形态
| 形态 | 要求 | 说明 |
|---|---|---|
| 文件夹(推荐) | 文件夹里必须有 SKILL.md | 脚本、模板按原目录结构一起带走 |
| 单个文件 | 必须是 .md | 只能是一张卡,不能带随卡文件 |
SKILL.md 结构
---
name: pdf-merge
description: 合并多个 PDF 为一个文件。当岛主给了一堆 PDF 并说「合成一份」时使用。
---
## 什么时候用
岛主给了多个 PDF,要求合并、排序或只保留某几页。
## 怎么做
1. 确认输出文件名与顺序;
2. 运行 `scripts/merge.py`:
...
3. 把结果路径告诉岛主,并说明页数。frontmatter 只认两个字段
| 字段 | 必填 | 用途 | 上限(导入) |
|---|---|---|---|
name | 是(或用导入时指定的名字) | 卡名,也是工作区里的目录名 | 64 字 |
description | 是 | 一句话说明「什么时候用」,进名册就靠它 | 500 字 |
- 其他字段会被忽略,不报错。别指望
version、allowed-tools这类字段生效。 - 支持 YAML 的块标量:
description: >或description: |,后面缩进多行。 - 值两端的成对引号会被去掉。
- 文件开头的 BOM 会被清掉;
\r\n换行也认。
正文
---分隔线之后的全部内容是正文,原样保留:不压缩、不清洗、不重排。- 正文不能为空(可以只有一行,但必须有)。
- 卡名过长或含非法字符时,落盘目录名会做安全化:
/\:*?"<>|与空白会被去掉,截到 32 字。
上限
岛主导入的卡
| 项 | 上限 | 超限行为 |
|---|---|---|
| 名字 | 64 字 | 拒绝导入,可在导入时换个名字 |
| 描述 | 500 字 | 拒绝导入 |
| 正文 | 不设限 | 原样保留 |
| 随卡文件数 | 50 个 | 整包拒收 |
| 随卡文件合计 | 2 MB | 整包拒收 |
| 单个随卡文件 | 512 KB | 跳过该文件并记入清单,其余照常导入 |
居民自建 / 互学的卡
居民在对话里记的卡走另一套更紧的上限:
| 项 | 上限 |
|---|---|
| 名字 | 20 字 |
| 描述 | 120 字 |
| 正文 | 10,000 字 |
两套上限不冲突:导入是「岛主精选外带」,保留原作者写的原貌;自建是「居民当场总结」,要求精炼。
随卡文件
- 按原目录结构落进
~/群岛/<居民名>-<短号>/技能/<卡名>/。 - 卡里写的相对路径(如
scripts/run.py)在居民的工作区里照常可用。 - 执行脚本仍然按该居民的权限档位走审批,导入不会提升权限。
- 自动跳过这些噪音条目:
.git、node_modules、__pycache__、.venv、venv、.DS_Store、Thumbs.db。 - 符号链接不跟随。
来源限制
只接受两个来源,磁盘上其他路径一律不收:
- 你在聊天里发给居民的附件;
- 放进
~/群岛/技能收件箱/的文件或文件夹。
这是刻意的:防止某个技能包诱导居民去读你的私密目录。
导入之后
- 技能中心与居民档案里会标**「岛主导入」**。
- **导入的卡居民改不了。**要更新就删掉重新导入。
- 删除导入卡时,各居民工作区里的随卡副本会一并清掉。
- 重名会拦下:岛上已有同名技能时,先删旧的或换个名字。
写卡的三条建议
- 描述写「什么时候用」,不是「这是什么」。 名册模式下列表里只有名字和描述,描述是居民决定「要不要调它」的唯一依据。
- 正文先写判断标准,再写步骤。 居民需要知道什么情况下该停、该问、该换方案。
- 能写成脚本的别写成文字步骤。 随卡脚本比让模型照着长步骤执行更稳、更省积分。
完整的产品侧说明见技能卡与技能中心。
适用版本:v1.5.2 及以后·最后更新:2026-11-13
发现写错或过时?点上方「编辑此页」提 PR,或在 常见问题 里找到反馈入口。