技能长什么样
技能的入口是一份SKILL.md,头部有 YAML frontmatter:
description 尤其关键:它是专家决定要不要激活这个技能的唯一依据。写「用于分析」不如写「用户要求对比多个产品时」——后者给出了触发条件。
技能目录里还可以放:
脚本是黑盒:专家被明确要求不去读脚本源码,只调用它、看输出。这让技能作者可以把复杂逻辑封装进脚本,而不用担心它被模型「读一遍然后自己重写一个错的」。
渐进披露:为什么不是全部塞进上下文
平台内置约 57 个技能。如果全文注入,上下文预算在第一轮就没了。 实际流程分三步:1
discover:只看名字和描述
专家拿到的是一行行
- **限定名** [标签]: 描述,成本极低。可以按标签过滤。2
activate:读全文
确定要用哪个之后才载入完整
SKILL.md,以及 frontmatter 里声明为自动加载的参考文件。3
execute:跑脚本或读参考
按需调用技能目录里的脚本与参考文档。
三路归属
一次对话可用的技能是三个来源的并集,互不覆盖:
同名不冲突:
builtin/pptx、user/pptx、expert/pptx 可以同时存在。专家看到的是限定名,激活时必须写全——裸名在多路同名时会被拒绝解析,而不是猜一个。
写入口按归属严格分离:
技能与插件的分工
这是最容易混淆的一对概念:
很多内置插件是成对出现的:插件带工具,技能带方法。比如 PDF 插件同时携带
builtin/pdf(处理)与 builtin/kami(排版创作)两个技能。
上下文成本
每个激活的技能都要占上下文。三条经验:- 全局库别当收藏夹。 装 30 个技能,每轮 discover 都要列 30 行描述。只留真正常用的。
- 技能正文越长,激活成本越高。 进化系统专门有一个维度盯着技能字数(由代码计算而非模型自评),就是为了防止「越进化越臃肿」。
- 参考文档按需读,不要全设自动加载。 自动加载的参考在激活瞬间全量进上下文。
创作者视角
对创作者来说,专家专属技能是核心差异化资产——同样的模型和工具人人都有,方法是你的。 写技能的三条实操建议:- 描述写触发条件,不写功能罗列。 专家靠描述判断要不要激活。
- 约束比步骤更值钱。 「不要做什么」通常比「怎么做」更能提升下限。
- 把确定性的部分下沉到脚本。 能用代码保证的事(格式转换、坐标计算、校验),不要指望模型每次都想对。
失败与对策
继续阅读
技能目录
全部内置技能一览
插件
工具层:专家能做什么
自进化
技能怎么被自动改进
配置你的专家
创作者侧的技能管理

