写作优秀技能——技能元指南
本文介绍 `writing-great-skills` 这一元技能,作为编写和编辑可预测 AI 技能的参考框架。核心概念是 **认知负荷** 与 **上下文负荷** 之间的权衡:模型调用的技能消耗上下文负荷但自动触发,用户调用的技能零上下文负荷但需你记住其存在。文章提供了管理这些负荷的工具,包括 leading words(锚定执行的关键词)、信息层次(逐步披露)、修剪(单一真实来源与无操作测试)以及失败模式(过早完成、重复、沉积等)。适合为 agent 编写一致且可维护技能的系统构建者。
Quickstart:
npx skills add mattpocock/skills --skill=writing-great-skills
npx skills update writing-great-skills
Source
writing-great-skills is the reference you write and edit skills against — the shared vocabulary and principles that make a skill predictable.
A skill's job is to wrangle determinism out of a stochastic system, so the goal is not the same output every run but the same process. Predictability is the root virtue, and every design choice is judged against it — not against how clever, complete, or exhaustive the skill reads.
快速开始:
npx skills add mattpocock/skills --skill=writing-great-skills
npx skills update writing-great-skills
Source
writing-great-skills 是你编写和编辑技能时所依据的参考——它提供了一套共享的词汇和原则,使技能具有可预测性。
技能的任务是从随机系统中提取确定性,因此目标不是每次运行都得到相同输出,而是遵循相同的过程。可预测性是根本美德,每个设计选择都依据它来判断——而不是依据技能读起来多么巧妙、完整或详尽。
You invoke this by typing /writing-great-skills — the agent won't reach for it on its own.
Reach for it whenever you're authoring a new skill or editing an existing one and want it to behave the same way every time: deciding invocation mode, writing a description, choosing what lives in SKILL.md versus a linked file, or diagnosing why a skill misfires.
你可以通过输入 /writing-great-skills 来调用它——代理不会主动使用它。
每当你编写新技能或编辑现有技能,并希望它每次都表现一致时,就请启用它:决定调用模式、编写描述、选择什么放在 SKILL.md 中 vs 链接文件,或诊断技能为何失灵。
The concept the whole reference turns on is cognitive load — and its counterpart, context load. Every skill spends one or the other:
A model-invoked skill keeps a description in the window every turn, so it costs context load but fires on its own.
A user-invoked skill strips that description; it costs zero context load, but now you are the index that has to remember it exists — that's cognitive load.
Most of these skills are user-invoked, which is why cognitive load is the pressure the whole system is built to manage: when user-invoked skills multiply past what you can hold in your head, the cure is a router skill that names the others and when to reach for each. Once you're thinking in these two loads, most authoring decisions — split or don't, inline or disclose, model- or user-invoked — become the same trade made in different places.
整个参考围绕的概念是认知负荷/cognitive load——及其对应物上下文负荷/context load。每个技能消耗其中一种:
模型调用的技能会在每次轮次中将描述保持在窗口中,因此它消耗上下文负荷,但能自动触发。
用户调用的技能则去掉描述;它消耗零上下文负荷,但此时你就成了索引,必须记住它的存在——这就是认知负荷。
大多数技能是用户调用的,这就是为什么认知负荷是整个系统旨在管理的压力:当用户调用的技能数量多到超出你的记忆范围时,解决的方案是一个路由技能/router skill,它命名其他技能以及何时调用它们。一旦你开始用这两种负荷思考,大多数编写决策——拆或不拆、内联或披露、模型或用户调用——就变成了在不同地方做出的相同权衡。
The rest of the reference is the toolkit for spending those loads well:
Leading words — a compact concept already in the model's pretraining (tight, red, tracer bullet) that the agent thinks with while running the skill. It anchors execution and invocation in the fewest tokens; hunt restatements that a single word can retire.
参考的其余部分是更好地使用这些负荷的工具箱:
引导词/Leading words——一个已存在于模型预训练中的紧凑概念(例如:tight、red、tracer bullet),代理在运行技能时会利用它进行思考。它用最少的token锚定执行和调用;寻找那些可以用单个词替代的重复表述。
Information hierarchy — the ladder from in-skill step, to in-skill reference, to external reference behind a context pointer. Progressive disclosure is the move down that ladder so the top stays legible.
信息层级/Information hierarchy——从技能内步骤、技能内参考、到通过上下文指针指向的外部参考的阶梯。渐进式披露是沿着阶梯向下移动,使得顶层保持清晰可读。
Pruning — single source of truth, relevance, and the no-op test applied sentence by sentence, against sediment and sprawl.
剪枝/Pruning——单一事实源、相关性,以及逐句应用的空操作测试/No-op Test,用于对抗沉积与过度扩张。
Failure modes — premature completion, duplication, sediment, sprawl, no-op — to diagnose a skill that isn't behaving.
失败模式/Failure modes——过早完成、重复、沉积、过度扩张、空操作——用于诊断行为异常的技能。
This is a reach-for-it-anytime standalone reference — the meta-skill you consult while building the rest of the set, not a step in a chain. Its natural neighbour is any router you maintain, because a router is the direct cure for the cognitive load that user-invoked skills pile up; when you're unsure which skill or flow fits a task, ask-matt routes you over the whole set.
这是一个随时可查的独立参考——你在构建其余技能集时咨询的元技能,而非链条中的一个步骤。它的天然邻居是你维护的任何路由,因为路由是用户调用技能累积的认知负荷的直接疗法;当你不确定哪个技能或流程适合某项任务时,ask-matt 会在整个集合中为你路由。