news 2026/9/30 5:52:14

Cloudflare Skills 贡献指南:如何编写一个高质量的 Agent Skill(官方原则详解)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Cloudflare Skills 贡献指南:如何编写一个高质量的 Agent Skill(官方原则详解)

Cloudflare Skills 贡献指南:如何编写一个高质量的 Agent Skill(官方原则详解)

【免费下载链接】skillsSkills for teaching agents how to build on Cloudflare.项目地址: https://gitcode.com/gh_mirrors/skills14/skills

Cloudflare Skills 是 Cloudflare 开源的 Agent 技能库,通过一个个 "Agent Skill" 教会 AI 智能体(Agent)如何在 Workers、Durable Objects、Agents SDK、Wrangler 等平台上构建应用。本文基于仓库的 CONTRIBUTING.md 官方贡献原则与 14 个内置 Skill 的设计模式,逐步拆解如何编写一个高质量、易维护的 Agent Skill,适合首次参与开源贡献的新手阅读。

一、什么是 Agent Skill:先看懂项目结构

Agent Skill 是一个可被"按上下文自动加载"的知识包:当用户请求命中某个 Skill 的触发条件时,Agent 会加载对应的SKILL.md,再按指引实时获取最新文档并完成任务。

本仓库的结构非常清晰,每个 Skill 就是一个独立文件夹:

路径作用
skills/<技能名>/SKILL.md单个技能的入口文件,包含触发描述与行为指引
skills/<技能名>/references/辅助参考文档,由SKILL.md按需加载
plugin.json插件清单,声明插件名称、版本与关键词
mcp.json插件附带捆绑的 MCP 服务器配置
CONTRIBUTING.md官方贡献原则(本文的灵魂)
rules/workers.mdc面向特定 Agent 场景的规则文件

💡 想先看全景,读 README.md 即可了解 14 个内置 Skill 各自解决什么问题、如何在不同 Agent 中安装。

二、官方贡献第一原则:Keep skills small

CONTRIBUTING.md 开头一句话就点破了第一原则:

Keep skills small: help agents find the right documentation instead of maintaining another copy of it.

翻译过来:Skill 的职责是当"路标",而不是"仓库"。官方要求每个改动都遵守 4 条规则(见 CONTRIBUTING.md#L5-L10):

  1. 先验证再动手— 先读官方开发者文档的相关页面,确认你提出的建议有文档支撑;"链接能打开"不等于内容正确;
  2. 链接优于复制— 直接链接到对应的产品/工作流页面,不要复制那些会过时的 API 签名、限额、价格、配置和示例;
  3. 指针替代过期内容— 修正过时参考时,尽量用一行短指针指向当前文档,而不是保留一大段旧内容;
  4. 文档缺口要诚实— 如果官方文档缺少所需指引,在 PR 中说明这个文档缺口,而不是往 Skill 里塞未经支持的"野路子"。

⚠️ 为什么这么严格?因为模型的预训练知识会过时,官方文档才是唯一最新的事实来源。复制大量细节的 Skill 半年后就会变成误导性内容。

三、"检索优先":几乎所有 Skill 的共同设计

在大量SKILL.md中你都会看到同一句话:Prefer retrieval over pre-training(实时检索优先于模型记忆)。

以 skills/agents-sdk/SKILL.md 为例,frontmatter 之后立刻声明"你对 Agents SDK 的知识可能已过时",随后给出一张Retrieval Sources 表,三列即可覆盖路由需求:

列作用(以 agents-sdk 为例)
TopicQuick start、Configuration、Callable methods、Scheduling…
Docs URL官方文档站对应页面
Use for什么任务去查哪一行

🔍 这套"主题 → 来源 → 用途"三列表格是整个仓库最核心的写作范式,贡献时请优先模仿。

四、解剖一份高质量 SKILL.md 的七段式结构

综合 skills/wrangler/SKILL.md 等成熟样例,一份高质量SKILL.md通常由以下 7 部分构成:

4.1 Frontmatter:技能的"触发开关"

文件顶部的 YAML 元数据,决定 Agent 何时识别并加载它:

--- name: wrangler description: Run or troubleshoot Wrangler CLI commands and configure Worker projects for local development, Previews, deployment, and Cloudflare resource management. ---

description的写法要点:

  • 覆盖触发场景— skills/durable-objects/SKILL.md 甚至有独立的 "When to Use" 与 "Do NOT Use For" 两节,明确列出适合与不适合的场景,防止误触发;
  • 贴近用户口吻— skills/turnstile-spin/SKILL.md 直接列举用户可能的问法:"set up Turnstile"、"protect this form"、"stop bot signups",命中率更高。

4.2 决策表:从"用户想要什么"直达"读哪篇文档"

全仓库最高频的格式,把任务场景做成可逐行匹配的表格:

  • skills/wrangler/SKILL.md 的 "任务 → 文档来源" 表,15+ 行覆盖部署、Secrets、Previews、权限等全部场景;
  • skills/cloudflare-email-service/SKILL.md 的 "I want to… → Path → Reference" 三列表。

🎯 原则:让 Agent 按行匹配,只读取命中的那一篇参考文档,而不是加载全部。

4.3 Quick Reference:最小可用代码集

只保留最高频的 API,用"任务 | API"两列表压缩。如 skills/durable-objects/SKILL.md 把读写状态、SQL 查询、定时任务、RPC、重试等 15 个常用操作压进一张表。

4.4 反模式清单:告诉 Agent "不能做什么"

告诉 Agent 避免什么,往往比教它做什么更重要:

  • skills/durable-objects/SKILL.md 的 "Anti-Patterns (NEVER)":单例全局 DO 会成为瓶颈、每个请求都用blockConcurrencyWhile会杀死吞吐量;
  • skills/workers-best-practices/SKILL.md 的 "Anti-Patterns to Flag" 表,每条反模式都配了"后果 + 推荐模式"。

4.5 常见错误表:错误 | 原因 | 修法

skills/cloudflare-email-service/SKILL.md 的 "Common Mistakes" 是典范:11 条高频错误(漏配send_email绑定、两次读取message.raw流、硬编码令牌……)各配一句成因和一步修法,Agent 排错时可直接命中。

4.6 References:带说明的目录

把references/下的文档逐一列出并标注"它装什么"。如 skills/agents-sdk/SKILL.md 将 18 篇参考文档分成 Core、Chat & Streaming、Background Processing、Integrations、Experimental 五组,一目了然。

4.7 验证环节:闭环才算完成

wrangler 技能把整个流程组织为 Inspect → Retrieve → Apply →Validate四段:改完配置要重新生成类型、部署前 dry-run、如实汇报未完成的验证项。"闭环"是高质量 Skill 的共性特征。

五、写法对比:两种风格怎么选

风格代表适用场景
文档地图型wrangler、agents-sdk、durable-objects官方文档完备的产品,Skill 只做路由 + 护栏
向导型turnstile-spin端到端多步骤任务:SKILL.md定义 12 步向导,scripts/ 放确定性脚本(鉴权探测、创建组件、验证),tests/ 放验证用例

turnstile-spin 是仓库中少有的带scripts/与tests/的 Skill:脚本承载 API 调用、重试等确定性逻辑,SKILL.md只负责编排、读代码和向用户确认。代价是篇幅更长,换来的是行为可复现——适合"必须走完才能成功"的任务。

六、贡献前自查清单:6 步走

结合 CONTRIBUTING.md 的原则与内置 Skill 的结构,提交 PR 前请依次过一遍:

  1. ✅文档来源确认:指引是否被官方文档支撑?不支撑就在 PR 中说明文档缺口;
  2. ✅保持精简:能删掉的重复 API 签名、价格、配置示例都换成链接;
  3. ✅Frontmatter 检查:新 Agent 只看 name + description,能否判断何时触发这个 Skill?
  4. ✅表格化表达:任务场景、检索来源、常见错误是否都做成了可逐行匹配的表格?
  5. ✅护栏到位:高风险操作(写密钥、删数据、覆盖文件)是否明确禁止并有安全替代方案?
  6. ✅参考按需拆分:references/是否拆得足够细、每条都有说明、可按需单篇读取?

七、写在最后

编写一个高质量的 Cloudflare Agent Skill,可以浓缩为一句话:做路标,不做仓库——触发要精准、检索要优先、表格胜过长文、护栏胜过示例、链接胜过复制。仓库里的 14 个内置 Skill 就是 14 份活的范文,从 CONTRIBUTING.md 和 README.md 读起,再精读一个你最常用的SKILL.md,你自然就会写出符合官方风格的贡献。

【免费下载链接】skillsSkills for teaching agents how to build on Cloudflare.项目地址: https://gitcode.com/gh_mirrors/skills14/skills

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/30 5:51:46

ArcGIS JS API 4.x双屏联动:MapView与SceneView状态同步实战

二三维联动双屏这个需求&#xff0c;我在好几个项目里都碰到过&#xff0c;这阵子又用ArcGIS JavaScript API 4.x做了一版&#xff0c;踩了不少坑&#xff0c;干脆把实现思路和关键代码整理出来。如果你手上正好接到类似“左边二维地图、右边三维场景&#xff0c;操作一边另一边…

作者头像 李华
网站建设 2026/9/30 5:51:16

腾讯云GPU+AI渲染:短剧出海成本从15万降至8000的实战

1. 从15万到8000&#xff1a;AI短剧渲染成本到底被什么打下来了第一次听到“秒剧出海渲染成本从15万打到8000”这个数字&#xff0c;我下意识觉得是标题党。做短剧出海的朋友都知道&#xff0c;一集两三分钟的成片&#xff0c;传统流程里渲染环节的账单能占到总制作成本的30%到…

作者头像 李华
网站建设 2026/9/30 5:50:52

SSM在线收银系统源码解析:从环境搭建到事务与库存设计

简介&#xff1a;面向小型零售企业的在线收银系统毕业设计源码&#xff0c;采用Java SSM框架&#xff08;Spring、SpringMVC、MyBatis&#xff09;与MySQL 5.7数据库&#xff0c;基于Tomcat 7部署&#xff0c;开发环境搭配JDK 1.8、Maven 3.3及Navicat 11&#xff0c;可用Ecli…

作者头像 李华
网站建设 2026/9/30 5:50:40

Linux Shell脚本零基础实战指南:从Bash概念到调试排查全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 5:48:52

约瑟夫环问题全解析:从链表模拟到O(n)递推与树状数组优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 5:48:39

WeKnora实战:RAG知识库部署与问答调优全攻略

1. 项目定位与整体设计思路拆解1.1 WeKnora 到底解决什么问题先说个最直观的场景。前阵子有个做农业领域知识库的朋友问我&#xff0c;手上有几千份农作物病害防治文档、历年气象数据报告和农药使用规范&#xff0c;想做个内部问答系统&#xff0c;让技术员直接提问“这个季节水…

作者头像 李华