通用技能创作者 是做什么的?
1. 核心重构与不可协商的不变量
- 心智模型:世界级的技能是一个按需的过程性操作系统,而不是非结构化的提示词。它遵循
references/agentskills_spec.md标准,将专有的实践者知识产权与确定性代码门(三区域混合架构)配对。 - 环境须知:Python 3 和标准工作区发现工具已预装。除非显式导入失败,否则不要尝试安装包运行器。
- 硬不变量 1(零气味门禁):绝不交付一个未通过
python3 scripts/audit_skill.py <path>检查的技能。所有结构布局气味必须被审计并解决。 - 硬不变量 2(脚本锻造强制):每当候选技能执行验证、模式检查或 AST 比较时,你必须在
scripts/validate.py中编写配套的可执行实用程序(脚本代码占用 0 上下文 token)。 - 硬不变量 3(抗压缩生存):不变量、包说明和任务路由表必须位于
SKILL.md的前 1000 个 token 内,以防止压缩剪切(参见references/compaction_resilience.md)。 - 硬不变量 4(生产标准):每个技能必须包含领域标准术语、一个反合理化表以及可验证的评估测试用例。
- 硬不变量 5(行为门禁,不仅仅是结构):通过审计和安全检查但未超过无技能基线、未通过压力测试、或未在存根模式下正确路由的技能,不予发布。参见
references/baseline_grading.md、references/pressure_scenarios.md、references/stub_router_mode.md和references/render_qa.md。 - 硬不变量 6(仅示例结构):发布的示例仅显示结构、触发词、工作流、决策表、验证脚本、评估。不要将示例的领域规则复制到新技能中。每个新技能都必须基于用户的 SOP、笔录和领域研究来构建。
2. 任务路由决策表
| 用户意图 / 输入类型 | 推荐的创建工作流 | 支持性按需参考 |
|---|---|---|
| 商业 B2B 技能(用于销售 / 客户交付) | 执行完整的 6 阶段流水线(阶段 0–5) | references/competitor_teardown_protocol.md |
| 原始笔记 / SOP / 开发者笔录 | 执行完整的 6 阶段创建流水线 | references/domain_knowledge_ingestion.md |
| 需要外部 API 或 MCP 服务器的技能 | 运行阶段 1 工具发现 + MCP 接线 | references/mcp_tool_patterns.md |
| 审计或修复现有技能 | 运行零 token 26 种气味审计与补丁 | references/smell_taxonomy_26.md |
| 多轮交互式向导创建 | 应用 OMSC 歧义分类协议 | references/question_triage_omsc.md |
| 版本敏感的技能(CLI、API、迁移指南) | 使用存根 / 路由模式,仅 40-60 行指针 | references/stub_router_mode.md |
| 任何技能,在每个决策阶段 | 运行 QA 检查点,每个检查点最多 2 个问题,记录每个检查点 | references/qa_checkpoints.md |
| 输入为 .docx、.pdf、.ppt 或类似格式 | 优先使用工具原生读取(Claude Code / Claude);提取器是可选回退方案,仅在纯文本词汇表脚本之前必需 | scripts/extract_text.py |
| 证明技能确实有帮助 | 运行压力 + 基线分级 + 渲染 QA | references/pressure_scenarios.md、references/baseline_grading.md、references/render_qa.md |
3. 阶段 0:深入市场情报与竞品拆解
在起草指令前,使用 agents/niche_researcher.md 执行竞争性侦察:
- 步骤 0.1(竞品拆解):搜索此细分领域现有的公开技能、提示词或自定义指令。
- 根据 26 种气味分类法审计竞品产品(
references/competitor_teardown_protocol.md)。 - 识别其结构缺陷(例如,通用 AI 垃圾、选项自助餐、缺少验证脚本)。
- 定义修复竞品结构缺陷的“解药”。
- 根据 26 种气味分类法审计竞品产品(
- 步骤 0.2(领域文献与术语摄入):
- 摄入相关书籍、白皮书、播客笔录和企业 SOP,格式不限:.txt、.md、.docx、.pdf、笔记和笔录。
- 格式规则(工具优先,非硬性规则):Claude Code 和 Claude 原生读取 .md、.pdf、.docx、.ppt 及类似格式,因此优先使用工具自身的读取能力。不要强行提取工具已读取的文件。
- 包
scripts/extract_text.py中的提取器仅为可选回退方案,用于需要纯文本的工具或脚本。其唯一硬性用途是词汇表脚本(仅读取文本),因此如果在 .docx 或 .pdf 上运行词汇表,请先提取为 .txt:
python3 scripts/extract_text.py path/to/source.docx --output evals/source.txt python3 scripts/extract_text.py path/to/source.pdf --output evals/source.txt- 仅含扫描图像的 PDF 没有文本层:提取器会发出警告并返回空文本。不要为它们编造文本;在此包外部使用 OCR 并记录该步骤,或者如果 Claude 能够原生读取文件,则允许其读取。
- 遵循
references/domain_knowledge_ingestion.md提取:- 权威行业缩写、指标和标准术语(例如 MEDDPICC、CAC 回本周期、钩子驻留时间)。
- 通过
python3 scripts/build_domain_lexicon.py <sources> --output evals/lexicon.json生成候选词汇表术语。 - 算法阈值和可测量公式。
- 高密度非显而易见的故障模式列表(“陷阱”)。
4. 阶段 1:环境与工具发现(区域 1 门禁)
在撰写任何文档之前,复制并执行此发现步骤:
- 步骤 1.1(探测环境与工具):运行捆绑的发现脚本:
(在 Windows PowerShell 上,使用python3 scripts/discover_env.pypython3 scripts/discover_env.py)- 检查输出以了解检测到的操作系统、可用的 CLI 二进制文件(
git、docker、python等)以及活跃的 MCP 服务器。 - 如果候选技能涉及外部服务(例如 Figma、GitHub、Postgres),请检查环境中是否存在匹配的 MCP 工具或 CLI。
- 检查输出以了解检测到的操作系统、可用的 CLI 二进制文件(
5. 阶段 2:静默工作区发现与 OMSC 分类
- 步骤 2.1(静默上下文读取):检查活动仓库的配置文件(
package.json、pyproject.toml、Cargo.toml、.env.example、git 历史)。- 硬性规则:永远不要向用户询问可以通过读取工作区文件发现的关于语言、框架或工具的问题。
- 步骤 2.2(QA 检查点,每个阶段强制):
遵循
references/qa_checkpoints.md。仅阶段 2 分类是不够的。在每个检查点,呈现一个 5 行的决策摘要,最多提出 2 个问题并附带(推荐)默认值,然后记录:python3 scripts/record_qa.py evals/qa-checkpoints.json --checkpoint teardown-domain --summary "细分领域,解药,主要陷阱" --question "细分领域边界是否准确?(推荐:是)" --confirmed- 检查点 1,阶段 0 之后:拆解-领域,细分领域,竞品,漏洞,优势,解药,主要陷阱。
- 检查点 2,架构之后、起草之前:架构,6 层结构,路由表,脚本列表,参考列表,它不会做什么。
- 检查点 3,工作流草稿之后、门禁之前:草稿-工作流,按顺序的步骤,决策表,反合理化条目,示例输入/输出。
- 检查点 4,门禁之后、打包之前:门禁,审计等级,安全性,压力借口已关闭,基线增量,渲染 QA。
- 检查点 5,发布之前、触发词和捆绑之后:发布,触发结果,捆绑内容,门禁状态,存根/路由状态(如适用)。
- 高影响范围、商业性或互斥架构:在该检查点等待用户回复后再继续。低影响范围:允许呈现摘要并按推荐默认值继续,但摘要和假设的答案仍必须被记录。未记录的检查点视为未发生。
- 步骤 2.3(OMSC 歧义过滤器):
- 检查目标、指标、范围或约束条件是否包含阻碍性未知项(
references/decision_matrices_and_escalation.md)。 - 如果是低影响范围 / 标准工作流:立即使用领域默认值继续。问 0 个问题。
- 如果是高影响范围 / 互斥 UX 分支:暂停并提出最多 1 到 3 个紧凑问题:
- 为最安全的默认选择附加
(推荐)。 - 提供 2–3 个带字母的选项,每个选项附带一行利弊说明。
- 为最安全的默认选择附加
- 检查目标、指标、范围或约束条件是否包含阻碍性未知项(
6. 阶段 3:混合 3 区域合成
编写完整的技能文件夹结构:<skill-name>/ 包含 SKILL.md、scripts/、references/ 和 assets/。
- 步骤 3.1(通过 6 层架构编写 SKILL.md):
采用 agents/architect.md 角色,使用
assets/master_template.md合成核心规范:- 字节 0:立即以
---开头。前言中不要出现尖括号。 - 第 1 层(token 1–500):领域心智模型与不可协商的不变量。
- 第 2 层(token 500–1,000):任务路由决策表(消除 TOB/MDT 气味)。
- 第 3 层(token 1,000–1,500):静默发现与 OMSC 歧义分类。
- 第 4 层(token 1,500–3,000):带可复制
- [ ]检查清单的编号步骤。 - 第 5 层(token 3,000–4,200):高密度领域陷阱与反合理化表。
- 第 6 层(token 4,200–4,800):本技能不会做什么(消除 NG 气味)。
- 总正文限制:保持在 450 行以下(<5,000 个 token)。
- 字节 0:立即以
- 步骤 3.2(合成配套的确定性脚本与秘密模板):
采用 agents/script_smith.md 角色:
- 对于验证:使用
assets/script_templates/validator_template.py编写scripts/validate.py。 - 对于批量/破坏性变更:编写
scripts/validate_plan.py。 - 如果
SKILL.md中声明了requires_secrets::在技能根目录编写.env.example,包含仪表板 URL 和占位符值。 - 确保脚本向 stdout 输出紧凑的 JSON,并通过 exit 0 表示通过 / exit 1 表示失败。
- 对于验证:使用
- 步骤 3.3(将深度文档委派给平面参考):
如果领域手册、模式或辅助指南超过 50 行,将它们放入
references/<topic>.md。- 不变量:参考文件必须是平面的(距离
SKILL.md恰好 1 跳深度)。
- 不变量:参考文件必须是平面的(距离
7. 阶段 4:零 token 结构性 26 种气味审计与评估
- 步骤 4.1(运行自动静态检查器):
对生成的技能目录执行结构性检查器:
python3 scripts/audit_skill.py path/to/generated-skill - 步骤 4.2(运行确定性安全扫描):
执行 AST 安全扫描器,以验证不存在远程代码执行、shell 注入或凭据泄露:
python3 scripts/security_scan.py path/to/generated-skill - 步骤 4.3(修补所有违规与气味):
如果审计报告任何违规,采用 agents/smell_auditor.md 角色:
- 合理化漏洞(RL):添加一个明确的、反驳模型借口的反合理化表。
- 选项自助餐(TOB):将工具列表替换为每个场景的单个默认工具。
- 冗长正文(LSB):将长代码片段移动到
references/或assets/。 - 重新运行
audit_skill.py,直到状态为 PASS 且等级为 A 或 A+。
- 步骤 4.4(运行经验基准评估):
执行测试用例以建立可验证的任务通过率:
python3 scripts/run_evals.py path/to/generated-skill- 对于修订版,采用 agents/comparator.md 角色,对基线进行双盲比较。
- 步骤 4.5(压力场景,强制):
生成组合压力场景,然后分别在没有技能和有技能的情况下运行每个场景,记录逐字借口(
references/pressure_scenarios.md):python3 scripts/generate_pressure_scenarios.py path/to/generated-skill evals/pressure-scenarios.json- 生成的技能必须包含一个“想法 | 现实”表,其中至少包含 3 个最常见的基线借口。基线和带技能运行的结果相同意味着技能未改变任何东西:不要发布。
- 步骤 4.6(带技能 vs 基线评分,强制):
在同一轮次中启动带技能和基线的运行,使用 agents/grader.md 评分,然后验证评分器合约和发布门禁(
references/baseline_grading.md):python3 scripts/grade_baseline.py --with evals/grading-with.json --baseline evals/grading-baseline.json- 仅在带技能通过率 >= 80%、增量 > 0 且无回归时发布,除非在 feedback.json 中记录了带原因的人工豁免。
- 步骤 4.7(渲染 QA,输出强制):
对技能产生的任何内容运行内容和文件门禁,对于视觉输出,由人工进行视觉检查(
references/render_qa.md):python3 scripts/render_qa.py path/to/generated-skill- 此脚本从不声称视觉通过。视觉通过必须由人工执行并记录。
8. 阶段 5:触发词验证与打包
- 步骤 5.1(测试触发词的精确率与召回率):
使用代表性正例和负例提示词测试 YAML 描述:
python3 scripts/test_skill_trigger.py path/to/generated-skill - 步骤 5.2(描述优化,训练/测试分割):
将触发查询按 60% 训练 / 40% 测试分割,分别在每个分割上运行触发测试,并根据测试分数(而非训练分数)选择最佳描述。仅使用接近的负例;对于 PDF 技能来说,差劲的负例是“编写一个斐波那契函数”,好的负例是对于相邻任务的一个长而混乱的请求:
python3 scripts/eval_description_split.py path/to/generated-skill- 基于测试分数的优化。
- 步骤 5.3(打包最终技能):
python3 scripts/package_skill.py path/to/generated-skill --output dist/- 验证结构完整性。
- 步骤 5.4(最终部署检查):
确保技能包中包含
SKILL.md、scripts/、references/、assets/、evals/和一个.env.example。
9. 附录
A. 反合理化表
| 常见模型借口 | 本技能的反制措施 |
|---|---|
| “我没有执行脚本的工具” | 技能将运行 python3 或 node 作为依赖。 |
| “我需要更多信息来继续” | 技能将使用默认值继续,并且只在非常高影响范围内提问。 |
| “这超出了我的上下文窗口” | 强制 6 层布局将关键信息保持在 token 限制内。 |
B. 本技能不会做什么
- 不会生成与 agentskills.io 标准不兼容的技能。
- 不会在没有可选验证脚本的情况下创建技能。
- 不会复制示例技能的领域规则。
- 不会在没有显式 ME 描述请求的情况下对工作区进行通用代码库重构。
- 不会在没有结构化审计和压力测试的情况下交付技能。