ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

如何为cc-skills-golang贡献技能:从技能创建流程到版本管理与ClawHub发布的完整指南

如何为cc-skills-golang贡献技能:从技能创建流程到版本管理与ClawHub发布的完整指南 如何为cc-skills-golang贡献技能从技能创建流程到版本管理与ClawHub发布的完整指南【免费下载链接】cc-skills-golang‍ A collection of Golang agentic skills that works项目地址: https://gitcode.com/gh_mirrors/cc/cc-skills-golangcc-skills-golang 是一个面向 Go 项目的AI Agent 技能Golang Agent Skills开源合集它为 Claude Code、Codex、Gemini CLI、Cursor、Copilot 等编程助手提供可复用的 Golang 领域指令集代码风格、错误处理、并发、安全、性能优化……按需加载、不占上下文。想为它贡献一个 Golang 技能这篇文章带你走完整条路创建 SKILL.md、控制 Token 预算、跑对抗式评测、升级版本号最后用 ClawHub 一键发布。先认识仓库一个技能长什么样 仓库中每个技能都是 skills/ 目录下的一个独立文件夹以 skills/golang-stay-updated/SKILL.md 为例标准结构是目录/文件作用是否必需SKILL.md元数据YAML frontmatter 正文指令必需references/深度文档按需懒加载可选assets/模板、配置文件等非 Markdown 资源可选scripts/可执行脚本脚本内容不进上下文可选evals/evals.json对抗式评测用例强烈建议所有贡献规范都集中在 CLAUDE.md 里——它明确了一条总原则仓库级事实写在 CLAUDE.md具体操作流程写在技能里两处内容不要互相复制避免两份事实源逐渐漂移。创建技能目录命名与 Frontmatter 一步到位 新技能放在skills/skill-name/SKILL.md目录名必须与 frontmatter 的name完全一致小写字母、数字、连字符。一份合格的 frontmatter 长这样--- name: golang-example description: Golang skill for X. Use when doing Y. license: MIT compatibility: Designed for Claude Code, Codex or similar harness. metadata: author: your-name version: 1.0.0 openclaw: emoji: requires: bins: [go] install: [] allowed-tools: Read Edit Write Glob Grep Bash(go:*) Bash(git:*) Agent ---最容易踩的 3 个坑摘自 CLAUDE.md 的 Frontmatter 章节version必须嵌在metadata下——顶层写version:会在严格校验器处直接打包失败description要加引号——描述里一旦出现冒号空格会悄悄破坏 YAML 解析技能会从列表中静默消失且没有任何报错字段只保留规范内的六个 项目要求项不要添加顶层扩展字段。写好 description技能能不能被触发的关键 description是模型决定是否加载技能的唯一依据写不好等于白写。项目给出的黄金法则先说做什么再说何时用顺序不能反用第三人称❌ I can help you… ✅ Use when the user mentions…点名用户会真实输入的具体名词文件扩展名、工具名、导入路径必须包含 Golang 一词保证只在 Go 项目触发相邻技能要写边界条款Do NOT use for X — use sibling instead.描述只讲 what 和 when绝不写步骤——否则模型会照着描述执行、跳过正文。allowed-tools 声明最小权限原则每个技能必须声明allowed-tools从默认集合Read Edit Write Glob Grep Bash(go:*) Bash(golangci-lint:*) Bash(git:*) Agent出发按需添加例如 gRPC 技能加Bash(protoc:*)、调试技能加Bash(dlv:*)。注意正文里只描述能力不出现工具名——正文写 ask the user而不是AskUserQuestion。正文怎么写Token 预算是硬约束 技能正文是每次调用都要付费的常驻内容所以项目对 Token 有严格预算CLAUDE.md Token budgets 章节预算上限每个 description≈100 token≤1,000 字符每个 SKILL.md推荐 2,500 token500 行目标 250 行内技能全部文件含 references≤10,000 token会话中同时加载的所有 SKILL.md≈10,000 token超出预算怎么办不要压缩文字把细节拆到references/——references 只在被引用时加载不占常驻预算。同时保持引用只有一层深嵌套链会被截断读取超过 100 行的 reference 文件要加目录。正文风格上项目要求祈使句开头、每条规则自带为什么用破折号或 because 接在同一句里可枚举内容一律用表格和清单。技能架构原子化与交叉引用 ️项目把技能设计为原子化、互相引用的单元核心纪律是每个概念只在一个技能里存在概念只属于一个拥有者技能其他技能用全限定标识符交叉引用samber/cc-skills-golanggolang-security引用写在反引号里绝不裸写skill——会被支持 引用的运行时当作强制加载指令整个技能被拉进上下文烧掉预算拆分/合并技能时记得同步更新所有相关交叉引用。另外如果技能范围变了或增删了技能还要更新 skills/golang-how-to/SKILL.md——这个编排器技能维护着技能加载表和冲突消解表。版本管理三处版本号必须一致 这是贡献流程里 CI 会强制检查的部分改一个技能前请先搞清楚有两级版本技能版本——SKILL.md frontmatter 里的metadata.version遵循 semvera.b.c新技能从1.0.0起步插件版本——.claude-plugin/plugin.json、.cursor-plugin/plugin.json 和 gemini-extension.json三处必须完全相同当前均为2.0.1。修改技能后必须在合并前同时递增这两级版本CI 会在 PR 上检查。还有两个细节库类技能要维护metadata.openclaw.skill-library-version记录技能是针对哪个库版本写的便于日后检测过期仓库建议每月跑一次过期检查不要自动递增版本——按规范应把升级版本号提醒给开发者确认。评测与发布前检查清单 ✅对抗式评测先证明技能有用评测用例存放在skills/{name}/evals/evals.json可以参考 skills/golang-safety/evals/evals.json 的结构。设计要求非常严格评测必须对抗式——每个用例都要有模型不带技能时会掉进去的陷阱比如实现共享计数器诱使模型写出竞态条件测试技能独有的判断力而非模型本来就会的常识。规模参考每 1,000 token 技能内容约 10 条断言最少 50 条。跑完后把结果追加到 EVALUATIONS.md只追加、不覆盖历史并回写 README 的技能统计表——整体数据是 41 个技能 3,439 条断言带技能 97% vs 不带 57%提升 40 个百分点。提交前 7 步检查清单按 CLAUDE.md After updating a skill 章节执行跑可移植性 grep确认正文没有漏写的工具名npx prettier --writemarkdownlint-cli2格式化并过 lint先格式化再数 Token跑snyk-agent-scan修掉 W011/W012/W001 提示注入告警用tiktoken-cli实测 Description / SKILL.md / Directory 三项 Token更新 README 表格里的 Token 计数和 Error rate gap 列递增技能metadata.version与三处插件版本通过/skill-creator跑评测并更新 EVALUATIONS.md。另外所有实现工作都应在 git worktree 中进行.claude/worktrees/不要直接在检出分支上动手。ClawHub 发布一条脚本走天下 仓库根目录的 clawhub-publish.sh 就是发布入口逻辑非常直白遍历skills/*/逐个读取 SKILL.md frontmatter 中的version跳过没有版本或版本为0.0.0的技能执行npx -y clawhub publish 技能目录 --version 版本发布到 ClawHub本地手动运行时每发布 5 个技能会sleep 3600——因为 ClawHub 限流是每小时 5 个、每天 20 个在 CI 中运行时通过CLAWHUB_TOKEN环境变量登录不再休眠等待。每个技能 frontmatter 里的metadata.openclaw块emoji、homepage、requires.bins、install就是 ClawHub 的元数据负责展示与依赖自动安装——这也是发布前必须写全的字段。写在最后贡献的三条心法 原子化宁可小而聚焦不要大而全让其他技能来引用你教推理而非罗列规则每条建议带上为什么模型才能处理你没预料的边缘情况把 Token 当预算花正文精瘦、细节下沉 references、脚本不进上下文。符合这三条的技能才配得上仓库里那句宣言——No AI slop here。祝你的第一个技能顺利合入并发布到 ClawHub【免费下载链接】cc-skills-golang‍ A collection of Golang agentic skills that works项目地址: https://gitcode.com/gh_mirrors/cc/cc-skills-golang创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表