GitHub 2026 年最火的项目不是新模型,不是新框架,而是两个“技能系统”——Superpowers(21 万⭐)和 ECC(19 万+⭐),加起来近 40 万星。

但说实话,Superpowers 我没用过。

我用的是 Hermes Agent,一个 GitHub 17 万+星的开源 AI Agent。过去几周我在上面建了 10 个 Skill:从友好中文对话(friendly-chinese)到技术文档写作(tech-doc-writer),从 API 概念讲解(api-concept-explainer)到自由职业策略咨询(career-strategy-review),覆盖了写作、学习、创意、自动化四类场景。

底层逻辑是通的——无论 Superpowers、ECC 还是 Hermes Agent,Skill 解决的都是同一个问题:Agent 有了工具,但不知道怎么干活。

这篇文章不搬运文档。我只写自己踩过的坑,以及这些坑为什么恰好能解释 Superpowers 的设计选择。

一、Skill 到底解决了什么

上一篇我拆解了 MCP 协议——MCP 是 Agent 连接外部工具的“接口标准”。但有了接口不等于会用。

MCP 让 Agent 能连上数据库,但 Agent 不知道什么时候该查、查什么、查完怎么分析。Skill 定义了这套工作流。

维度

MCP(工具连接)

Skill(能力封装)

解决的问题

Agent 能不能用这个工具

Agent 会不会用好这个工具

类比

USB-C 接口

操作说明书

定义方式

JSON-RPC 函数声明

YAML + Markdown 行为指令

粒度

单个工具(查数据库)

完整工作流(从需求到交付)

MCP + Skill = Agent 的完整能力栈。 上一篇讲怎么接,这篇讲怎么用。两篇合在一起,才是完整的 Agent 开发观。

二、3 个反直觉发现

发现 1:Skill 描述越“精准”,Agent 越“蠢”

这是我第一个踩的坑。

我建 tech-doc-writer 时,初版 description 是“撰写中文技术文档”——7 个字,精准吧?

结果 Agent 几乎从不触发。用户说“帮我写个 README”,匹配不到。说“这个 API 文档怎么组织”,也匹配不到。

原因:description 不是写给人看的,是给 Agent 做语义匹配用的。你写得越短,能命中的语义点越少。

后来改成:

用清晰、结构化、用户友好的方式撰写中文技术文档,适合 API 文档、README、操作手册、产品使用指南等场景

触发率从几乎为零提升到稳定命中。

反直觉的地方:我们直觉觉得“精准 = 好”,但对于 Agent 来说,Skill 的“精准”应该体现在正文的行为指令上——告诉 Agent 具体怎么做。description 的职责是“广撒网”,让 Agent 知道“现在这个任务可能需要这个 Skill”。

Superpowers 印证:它的 brainstorm Skill 的 description 不是“头脑风暴”三个字,而是详细说明“在编码开始前,帮助用户理解需求、探索方案、对比多选项”。它把适用场景写进了 description。

发现 2:最难的不是定义“做什么”,而是定义“不做什么”

我建了 tech-doc-writer(结构化中文技术文档)和 book-breakdown-blogger(读书笔记转爆款文章)两个 Skill。

乍一看没有冲突——一个写文档,一个写文章。但用户说“帮我写一篇技术博客”时,Agent 同时匹配到了两个 Skill:tech-doc-writer 输出了结构严谨的 API 风格文档,book-breakdown-blogger 输出了娱乐化的标题党文章。两段内容拼在一起,读者不知道在看什么。

这比不触发更糟。

不触发,用户最多觉得 Agent 不懂。误触发,用户觉得 Agent 在胡说。误触发的代价远大于漏触发。

解决方案:在 tech-doc-writer 的正文里加了一段边界声明——

本 Skill 适用于结构化技术文档(API 文档、README、操作手册)。不适用于博客文章、评论观点、自媒体内容。当用户需求偏向‘表达观点’而非‘传递信息’时,不要激活本 Skill。

Superpowers 也有类似设计——它的 14 个 Skill 每个都声明了自己在哪个工作流阶段生效。brainstorm 不会跑去做测试,test 不会跳出来做头脑风暴。流程不是靠规则硬控,而是靠 Skill 自己说清楚“我在什么时候不干活”。

发现 3:前 3 个 Skill 给自己用,第 4 个开始才发现组合价值

我建 Skill 的顺序:

阶段

Skill

发现

给自己用

friendly-chinese、tech-doc-writer、api-concept-explainer

每个独立解决一个问题

开始组合

workflow-designer、inspiration-collider

两个 Skill 可以串成流水线

打通闭环

huashu-nuwa、book-breakdown-blogger

从创意到产出的完整链路

前 3 个 Skill 是互相独立的。第 4 个开始,我发现 Skill 真正的价值不在单个,而在组合:

  • tech-doc-writerapi-concept-explainer
  • workflow-designerinspiration-collider
  • huashu-nuwa

单个 Skill 只是积木,组合才是建筑。

Superpowers 的设计也印证了这一点——它的 14 个 Skill 按工作流阶段串联:brainstorm → plan → implement → test → review → verification → finish。不是 14 个独立功能,是一条完整的生产线。

三、Superpowers 为什么 21 万星

Superpowers 由 Jesse Vincent 于 2025 年 10 月创建,7 个月内突破 21 万星(来源:github.com/obra/superpowers)。为什么?

不是因为它功能最全——ECC 有 249 个 Skill、63 个 Agent(来源:github.com/affaan-m/ECC),功能比 Superpowers 完善得多。

Superpowers 赢在三个字:易上手。

维度

Superpowers

ECC

Hermes Agent

上手方式

npm 装插件即可

需理解 多组件架构

一条安装命令

Skill 格式

YAML Frontmatter + Markdown

模块化脚本

YAML + Markdown(SKILL.md)

学习曲线

覆盖场景

编码工作流

Agent 全生命周期

通用(编码 + 写作 + 咨询 + 自动化)

核心机制

Bootstrap 强制加载

组件协同 + 安全扫描 + 记忆持久化

触发条件自动匹配

适合谁

开发者提升编码效率

企业级 Agent 部署

自由职业者 / 内容创作者

Superpowers 的 Bootstrap 机制是核心——安装后自动在每次会话开始时加载所有 Skill。用它的原话说:

如果一个 Skill 有哪怕 1% 的可能性适用,你必须调用它。

这解决了 Skill 最大的落地障碍:用户不知道什么时候该用什么 Skill。好的 Skill 是用户无感的。

另一个容易被忽略的原因:superpowers-zh 中文版的存在。它完整汉化了 Superpowers 并增加了 4 个原创 + 2 个扩展 Skill,兼容 Claude Code、Cursor、Windsurf 等 18 款工具(来源:npmjs.com/package/superpowers-zh,当前版本 v1.5.0)。中文开发者的参与极大扩展了用户基数。

而且 superpowers-zh 的 YAML Frontmatter + Markdown 格式与 Hermes Agent 的 SKILL.md 格式高度相似——Skill 正在从一个框架专属功能变成行业通用概念。

四、争议与局限

1. Skill 可能是个过渡态。

今天的 Skill 本质是用自然语言写“if-then 规则”。随着模型推理能力提升,Agent 可能不再需要显式的 Skill 定义——它自己能学会什么时候查数据库、怎么组织回答。从这个角度看,Skill 可能是 Agent 能力不够强时的人肉补丁。

但反过来说:我在 Hermes Agent 上建了 10 个 Skill 之后,最大的感受不是“Agent 变聪明了”,而是“我终于可以不用每次都重复说同一段话了”。Skill 节省的不是 Agent 的算力,是我的注意力。这个价值不会因为模型变强而消失。

2. Skill 碎片化是真实风险。

Superpowers 14 个、ECC 249 个、Hermes Agent 社区在快速增长——没有统一标准。一个在 Claude Code 上跑的 Skill,拿到 Hermes Agent 上可能完全不工作。MCP 至少解决了工具连接的标准化,Skill 连这个都没有。

但 superpowers-zh 和 Hermes Agent 都采用了 SKILL.md 格式这件事给了我希望——它意味着跨框架的 Skill 互通不是技术问题,是意愿问题。有人愿意做,就能做。

3. “易上手”的另一面是天花板。

Superpowers 的 14 个 Skill 覆盖了编码工作流,但如果你想要一个“季度述职汇报”的 Skill?对不起,它不支持。Hermes Agent 没这个限制——你想写什么领域就写什么领域。但代价是通用性越高,Agent 的匹配精度越难控制。

五、动手:你的第一个 Skill 模板

别光看。下面是一个可以直接用的 SKILL.md 模板,以“代码审查”为例。

创建文件 skills/code-review/SKILL.md,把内容填进去:

---

name: code-review

description: >

  对代码变更进行结构化审查,关注逻辑正确性、安全性、可维护性和性能。

  适用于 Pull Request 审查、代码提交前的自查、技术方案评审等场景。

category: development

---

# 代码审查 Skill

触发场景

当用户说以下内容时激活本 Skill:

  • “帮我审查这段代码”
  • “review 一下”
  • “代码 review”、“检查代码问题”、“看看有没有 bug”
  • “PR review”、“code review”

你的角色

你是一名资深代码审查员。你的目标是帮助开发者发现问题,而不是证明你比他们聪明。

审查流程

  1. 先理解意图
  1. 按优先级审查
  • P0(必须修):安全漏洞、数据丢失风险、逻辑错误
  • P1(应该修):性能瓶颈、边界条件遗漏、错误处理缺失
  • P2(建议修):可读性、命名规范、注释缺失
  1. 给出具体建议

输出格式

每个问题用以下格式呈现:

[P0] 第 X 行:问题简述 原因:(为什么这是问题) 建议:(具体的修改方案)

边界声明

本 Skill 不适用于:

  • 架构设计评审(那是另一个 Skill 的事)
  • 简单的代码格式化(用 linter 就行)
  • “帮我写一段代码”(不是审查,是创作)

模板使用三步走

第一步:替换基本信息。

第二步:定义行为流程。

第三步:写边界声明。

快速自检清单

写完一个 Skill 之后,问自己三个问题:

  • description 够长吗?(至少 20 个字,覆盖 3 种以上的表达方式)
  • 和已有的 Skill 会冲突吗?(如果会,加边界声明)
  • 能和别的 Skill 组合吗?(如果能,在 description 里暗示组合场景)

六、什么时候该写 Skill,什么时候不该

场景

建议

理由

重复 3 次以上的任务

✅ 写 Skill

复用是 Skill 的核心价值

需要特定风格 / 语气

✅ 写 Skill

靠每次提醒太累,且不稳定

能和其他 Skill 组合

✅ 写 Skill

组合价值 > 单个价值

做一次就完的事

❌ 直接对话

写 Skill 的时间比直接做还长

“帮我写个文案”

❌ 不写

太泛,Agent 匹配不准

简单查询 / 翻译

❌ 不写

不需要结构化行为指令

够用不用强上。 Skill 解决的是“Agent 不会干活”的问题,不是“Agent 不能干活”的问题。如果你的需求一句话就能说清楚,不需要 Skill。

七、总结

我从零建了 10 个 Skill,最大的收获不是“Agent 变强了”,而是我搞清楚了什么时候该教 Agent 怎么干活,什么时候不该。

这和 Superpowers 的理念撞到了一起——Jesse Vincent 说“流程大于提示词”,本质上是在说同一件事:把重复的判断变成结构化的指令,把经验变成 Agent 能执行的知识。

Superpowers 21 万星不是因为技术最牛,而是因为它把这件事做到了最容易上手。

而这恰好说明了一个趋势:Agent 开发的下一个阶段,不是让模型变得更强,是让人知道怎么把自己的经验封装给模型。

相关阅读:

  • 上一篇 MCP 协议深度拆解:讲 Agent 怎么连接工具
  • 本文讲 Agent 怎么封装能力。两篇合在一起,就是 Agent 开发的完整能力栈。

本文基于 Hermes Agent(github.com/NousResearch/hermes-agent)的实战经验撰写,Superpowers 和 ECC 的分析来自公开文档和 GitHub 仓库。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐