尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
第09篇-Skill-Bundles-定义并使用多技能组合命令
【Skills 系统从入门到精通】第 9 篇Skill Bundles——定义并使用多技能组合命令本篇你将学到Skill Bundle 的概念和适用场景Bundle 的 YAML 结构和各字段含义创建、管理和删除 Bundle 的完整操作流程Bundle 的优先级规则、缺失技能处理等行为机制Bundle 在不同平台上的统一使用体验读完本篇你将能够把常用的多技能组合封装为一键命令大幅提升重复工作流的效率。一、Skill Bundle 的概念1.1 从堆叠到 Bundle上一篇中我们学习了多技能堆叠——在一条消息开头连续放多个斜杠命令/test-driven-development /github-code-review /github-pr-workflow 实现用户注册接口堆叠很好用但如果你每天都做类似的操作——先 TDD、再审查、最后创建 PR——每次都要输入三个技能名不仅繁琐而且容易拼错。Skill Bundle 就是解决这个问题的。它把多个技能打包在一个 YAML 文件中绑定到一个自定义命令名上。之后只需要一个斜杠命令就能同时加载所有技能。/backend-dev 实现用户注册接口这一条命令等同于上面的三技能堆叠但更短、更好记。1.2 Bundle 的本质Bundle 不是一个新技能它不包含操作流程或知识点。它只是一个别名——把几个已有的技能名关联到一起绑定到一个更短、更有意义的命令名上。Bundle 一组技能名 一个自定义命令名 可选默认指令Bundle 不会安装或复制技能——它引用的技能必须已经安装在系统中。如果引用了不存在的技能Bundle 会在加载时跳过它不报错但会通知 Agent 哪些被跳过了。引用已安装技能backend-dev BundleYAML 别名自定义命令名斜杠一键调用instruction 可选加载前注入的编排指令github-code-reviewtest-driven-developmentgithub-pr-workflow~/.hermes/skills 目录二、Bundle 的 YAML 结构2.1 完整字段Bundle 存储在~/.hermes/skill-bundles/slug.yaml文件中格式如下name:backend-devdescription:Backend feature work — review,test,PR workflow.skills:-github-code-review-test-driven-development-github-pr-workflowinstruction:|Always start by writing failing tests, then implement. Open the PR through the standard workflow with co-author tags.各字段说明字段必填说明name否默认用文件名Bundle 的显示名会归一化为连字符格式作为命令名description否简短描述在/bundles和hermes bundles list中显示skills是至少一个技能名列表使用技能的name字段值instruction否额外指令在加载技能前注入上下文2.2 字段详解name 字段name 会被归一化为连字符格式作为斜杠命令名name: Backend Dev → 命令/backend-dev name: release-prep → 命令/release-prep name: incident_response → 命令/incident-response如果省略 name默认使用文件名去掉.yaml后缀。skills 字段使用技能的name字段值和你在斜杠命令中输入的一样。不需要写完整路径。skills:-github-code-review# 技能 name-test-driven-development-github-pr-workflowinstruction 字段instruction 是一段额外的指导文字会在技能内容加载前先注入到 Agent 上下文中。它用于定义这些技能在一起使用时的特定规则。instruction:|Always start by writing failing tests, then implement. Open the PR through the standard workflow with co-author tags.这告诉 Agent这三个技能一起使用时总是先写测试再实现功能。三、创建和管理 Bundle3.1 通过 CLI 创建方式一命令行指定技能列表hermes bundles create backend-dev\--skillgithub-code-review\--skilltest-driven-development\--skillgithub-pr-workflow\-dBackend feature work — review, test, PR workflow方式二交互式创建hermes bundles create research不传--skill参数时进入交互模式每行输入一个技能名空行结束Enter skills (one per line, blank line to finish): arxiv youtube-content blogwatcher Created bundle research.3.2 覆盖已有 Bundle如果同名 Bundle 已存在使用--force覆盖hermes bundles create backend-dev\--skillgithub-code-review\--skilltest-driven-development\--skillgithub-pr-workflow\--skillsystematic-debugging\--force3.3 管理 Bundle# 列出所有已安装的 Bundlehermes bundles list# 查看某个 Bundle 的详情hermes bundles show backend-dev# 删除 Bundlehermes bundles delete backend-dev# 重新扫描 skill-bundles 目录hermes bundles reload3.4 在会话中管理在交互式会话中使用斜杠命令/bundles # 列出所有 Bundle3.5 直接编辑 YAML 文件Bundle 本质上就是 YAML 文件你也可以直接创建或编辑# 创建目录如果不存在mkdir-p~/.hermes/skill-bundles# 直接写 YAML 文件cat~/.hermes/skill-bundles/incident-response.yamlEOF name: incident-response description: Production incident triage and resolution. skills: - systematic-debugging - github-code-review - github-pr-workflow instruction: | For production incidents: triage first, fix second, PR third. Always include a post-mortem section in the PR description. EOF# 重新加载hermes bundles reload四、使用 Bundle4.1 基本调用在 CLI、TUI、Dashboard 或任何 Gateway 平台中/backend-dev 实现用户注册接口需要邮箱验证功能Agent 收到的内容[instruction: Always start by writing failing tests...] [github-code-review 技能完整内容] [test-driven-development 技能完整内容] [github-pr-workflow 技能完整内容] [用户指令: 实现用户注册接口需要邮箱验证功能]所有技能和指令一次性注入Agent 按照 instruction 的编排逻辑协同工作。Agent消息处理层用户Agent消息处理层用户按编排逻辑协同工作/backend-dev 实现注册接口解析 Bundle YAMLinstruction 三个技能完整内容 用户指令TDD 实现 审查 PR4.2 Bundle 与技能名冲突的处理如果你创建了一个名为research的 Bundle同时系统中也有一个名为research的技能/research命令会优先调用 Bundle。这是设计意图——你主动创建了同名的 Bundle说明你想用 Bundle 替代单技能调用。如果需要调用原始技能可以使用完整路径或重命名 Bundle。4.3 缺失技能的处理如果 Bundle 中引用的某个技能被卸载了Bundle 不会报错。它会加载仍然存在的技能在 Agent 上下文中生成一条提示“以下技能未安装已跳过[missing-skill-name]”这意味着 Bundle 是容错的——即使部分技能缺失剩余技能仍能正常工作。收到斜杠命令遍历 skills 列表技能已安装技能缺失解析Bundle逐个检查技能加载技能跳过并提示执行任务五、Bundle 适用场景与最佳实践5.1 适合做成 Bundle 的场景场景一日常重复工作流你每天的开发流程写测试 → 实现 → 审查 → 提 PR。做成 Bundlename:daily-devskills:-test-driven-development-github-code-review-github-pr-workflow场景二事故响应流程生产环境出问题时定位根因 → 修复 → 审查 → 紧急 PR。做成 Bundlename:incident-responseskills:-systematic-debugging-github-code-review-github-pr-workflowinstruction:|This is a production incident. Prioritize speed but dont skip review.场景三研究工作流做技术调研搜论文 → 看视频 → 阅读博客 → 汇总。做成 Bundlename:tech-researchskills:-arxiv-youtube-content-blogwatcherinstruction:|Search broadly first, then focus on the most cited/relevant sources. Output a structured summary with references.场景四发布流程版本发布检查代码 → 运行测试 → 更新版本号 → 创建 Release PR。做成 Bundlename:release-prepskills:-github-code-review-test-driven-development-github-pr-workflowinstruction:|Pre-release checklist: all tests pass, changelog updated, version bumped.5.2 不适合做成 Bundle 的场景场景一偶尔使用一次的多技能组合如果你只是偶尔需要同时用两个技能直接用堆叠命令即可不值得创建 Bundle。场景二每次使用时技能组合都不同如果每次需要的技能组合都不一样Bundle 的固定组合反而不够灵活。用堆叠命令更合适。场景三单个技能的简单封装如果一个 Bundle 只包含一个技能没有额外 instruction那它的价值约等于零——直接用/skill-name即可。5.3 团队共享 BundleBundle 是 YAML 文件天然适合版本管理和团队共享# 把团队的 Bundle 放在共享仓库中gitclone team/repo ~/.team-bundles# 在配置中添加外部 Bundle 目录# (或通过 symlink 链接到 ~/.hermes/skill-bundles/)ln-s~/.team-bundles/*.yaml ~/.hermes/skill-bundles/# 重新加载hermes bundles reload这样整个团队可以共享同一套 Bundle 定义保持工作流一致性。5.4 Bundle 设计原则原则一命名语义化✓ backend-dev # 清晰后端开发 ✓ incident-response # 清晰事故响应 ✓ release-prep # 清晰发布准备 ✗ bundle-1 # 无意义 ✗ my-skills # 太泛原则二技能数量控制在 3-5 个Bundle 中的技能数量不宜过多。每个技能加载都会占用上下文3-5 个是最佳平衡点。如果需要更多考虑拆分成多个专用 Bundle。原则三instruction 写清编排逻辑当多个技能在一起使用时它们之间的协作顺序和分工需要明确。instruction 就是定义这种编排的地方。# 好的 instructioninstruction:|Workflow: TDD first (write failing tests), then implement, then code review, then create PR to develop branch. Always include test coverage stats in PR description.# 差的 instruction或缺失instruction:|Do the work.六、Bundle 的技术行为6.1 与提示缓存的关系Bundle 调用不会修改系统提示——它生成的是一条新的用户消息。这意味着Bundle 不会破坏提示缓存。缓存不变会话启动系统提示构建含技能索引提示缓存用户backend-dev 实现接口生成用户消息instruction 三个技能内容发送给模型这与斜杠命令和堆叠的行为一致——它们都生成用户消息不改变系统提示。6.2 跨平台一致性Bundle 在所有平台上工作方式一致平台使用方式效果CLI / TUI/backend-dev [指令]加载技能执行Telegram/backend-dev [指令]同上Discord/backend-dev [指令]同上Slack/backend-dev [指令]同上Dashboard/backend-dev [指令]同上这种一致性是因为 Bundle 的解析逻辑在消息处理层统一实现不依赖各平台的特定机制。本篇小结知识点核心内容Bundle 本质一组技能名的 YAML 别名绑定到一个自定义命令YAML 结构name / description / skills必填/ instruction可选编排指令创建方式CLI 命令 / 交互式 / 直接编辑 YAML 文件优先级Bundle 名与技能名冲突时Bundle 优先容错性缺失技能被跳过不报错提示缓存不破坏提示缓存生成用户消息不改系统提示跨平台所有平台一致工作适用场景日常重复工作流、事故响应、研究调研、发布流程设计原则语义化命名、3-5 个技能、instruction 写清编排逻辑团队共享YAML 文件可版本管理、symlink 共享下篇预告本篇是第二模块使用 Skills的最后一篇。下一篇我们将从平台视角做一个总结——Skills 在 CLI、Gateway 和 Dashboard 三个运行界面中的使用方式、差异和注意事项。如果本篇内容对你有帮助欢迎点赞收藏有任何疑问欢迎在评论区交流。
RELATED

相关推荐

基于机器学习的电影票房预测:毕业设计全流程实战指南

基于机器学习的电影票房预测:毕业设计全流程实战指南

简介:本资源是一套面向计算机及相关专业本科生的毕业设计实战项目,聚焦机器学习在影视产业中的落地应用——电影票房预测。适用于正在开展毕设、课程设计或期末大作业的学生,以及希望提升数据建模与工程实践能力的学习者。压缩包共59个文件&a…

📅 2026/10/30 3:33:13
FFmpeg批量处理音视频:从单集转码到自动化系列管理

FFmpeg批量处理音视频:从单集转码到自动化系列管理

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

📅 2026/10/18 16:10:23
main_window.py(五):项目周期管理页面|信息化项目全流程管理系统源码逐行精讲(三十)

main_window.py(五):项目周期管理页面|信息化项目全流程管理系统源码逐行精讲(三十)

main_window.py(五):项目周期管理页面|信息化项目全流程管理系统源码逐行精讲(三十) 摘要:本文逐行精讲 main_window.py 中 UI 最复杂的项目周期管理页面。核心内容包括:13 列表格的构建与 QSS 样式、CycleItemDelegate 自定义委托的三态绘制与自适应对齐、基于 seq_me…

📅 2026/10/8 0:40:38
MORE NEWS

更多资讯

📰

启动报Port 8088 was already in use?先查是谁占的

启动报Port 8088 was already in use?先查是谁占的 项目启动报 Port 8088 was already in use,意思很直白:这个端口已经有人占了。 先说原理:端口是"门牌号",一间房只住一个进程 端口就是一台机器上的门牌号…

📰

担心文档上云?本地运行的办公AI才敢放心用

单位上周开了个会,主题是"AI 提效",散会时领导补了一句:涉及客户资料的文档,不许往云端传。这话一出,会议室里本来跃跃欲试的同事全蔫了——大家平时用的那些在线 AI,文档一上传就不知道存哪儿去…

📰

先能用,再好用:从烂尾复盘到两周上线,全栈项目的‘原型—快速迭代‘方法论

先能用,再好用:从烂尾复盘到两周上线,全栈项目的“原型—快速迭代”方法论 全栈学习路径的文章已经很多了:怎么选技术栈、怎么搭环境、怎么记文档,几乎每个方向都有人写。但一个更扎心的问题很少有人正面讨论——为什…

📰

深度思考模式把 ARC-AGI-2 从 17.6% 拉到 45.1%:对照 Gemini 3 Pro 的三份能力评测,看‘会思考‘改写了哪些边界

深度思考模式把 ARC-AGI-2 从 17.6% 拉到 45.1%:对照 Gemini 3 Pro 的三份能力评测,看“会思考”改写了哪些边界 一、先说结论:变强的不是“知识”,而是“解法” 每次新模型发布,评测榜单都会涨几个点,大…

📰

1.c++入门篇

1.c中的关键字asmdoifreturntrycontinueautodoubleinlineshorttypedefforbooldynamic_castintsignedtypeidpublicbreakelselongsizeoftypenamethrowcaseenummutablestaticunionwchar_tcatchexplicitnamespacestatic_castunsigneddefaultcharexportnewstructusingfriendclassext…

📰

《江灯合声》:有可行的分框版,也仍可以选择连续鸣谢

武汉江岸区栎坡合唱团在免费节目册《江灯合声》中,以表格集中鸣谢资助者。各家共同要求改为独立小框,团里仍想保留表格。现有全名与支持事项清楚可见,双方此前未承诺具体排版。我支持保留表格。补充的试排材料让选择更具体:分框能…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬