Skill Zoo:一站式技能管理工具

header-image

一站式 Agent Skills 管理工具,一个 App 管所有 Coding Agent 的技能。

GitHub 项目地址:skill-zoo

自从去年 12 月 Coding Agent 大爆发,Agent Skills 作为其能力的重要载体也备受关注。虽然 Agent Skills 本质上是文档形式的 prompt,但是因为它们有可热插拔、任务间通用和渐进式披露的特性,并且通常被用来针对性地弥补大模型的不足,客观上确实提升了大模型的能力和执行稳定性。

Agent Skills 的大手首先伸向的是那些有套路、有固定 SOP、风格可迁移的任务,比如网页设计、数据分析、PPT 制作。下面是我用 ThariqS 佬开源的 HTML 风格示例做的 Slide。

我觉得它做得比我好,我以后应该不会手工做 PPT 了。

一、需要被管理

市面上涌现出一大批 Agent Skills,但是良莠不齐。我们下载下来,用不用得上另说,反正大模型的上下文是被占满了。如果技能数量太多,读取时技能列表还可能被截断,Coding Agent 就读不到了。

技能是需要管理的。不用的要删除,过时的要更新。但是管理技能是一个挺主观的事,哪些技能好,哪些技能用得上,取决于我们的意图。而我们的意图大概率只有我们自己知道。

所以呢,真的非常需要一个 App 拉近我们和技能的距离,并且降低技能的管理成本。Skill Zoo 就打算做到这件事。

home

官方网站:luochang.ink/skill-zoo

二、产品设计

为了达成这个目标,我断断续续 Vibe 了一个月,付出了上百元的 token 费用。

2.1 SSOT 模式

Skill Zoo 是为多 Coding Agent 设计的技能管理工具,必须解决技能复用问题。我们采用 唯一真实源(SSOT)+ 软链接 的方法,这是目前主流的解决方案。

SSOT 是什么意思呢?Claude Code 有技能文件夹,Codex 也有技能文件夹。如果两个完全相同的技能分别存放在各自的技能目录里,会造成技能重复存放;如果同一个技能的不同版本存放在各自的技能目录里,可能导致 Agent 行为不一致。SSOT 就是维护一个唯一的技能文件夹 ~/.agents/skills/,实际文件只存放在这一个地方,Claude、OpenCode、Codex 的技能目录放的都是指向它的软链接。

# 唯一真实源
~/.agents/skills/web-search/

# Agent 目录只放软链接
~/.claude/skills/web-search  →  ~/.agents/skills/web-search/
~/.codex/skills/web-search   →  ~/.agents/skills/web-search/

虽然我们推崇 SSOT 模式,但是我们不会将自己的想法强加于人。对于不遵循 SSOT 的情况,我们也做了兼容。我们尊重用户对自己文件的控制权,并且把不隐式删除、移动用户的实际文件作为我们的技术红线。我们通过软链接层的设计,兼容了放在 Coding Agent 文件夹下的技能。

但是我们没有放弃对 SSOT 模式的主张。我们通过主页侧边栏的「不一致」栏目,将文件重复、冲突等问题主动暴露给用户,由用户自行决定如何处理这些问题。如下图,对于技能重复问题,我们提供了解决方案,用户可以一键处理。

ssot

2.2 技能管理

Skill Zoo 提供一整套技能管理能力:

  • 生命周期:支持安装、更新、删除、软链接、收藏技能
  • 筛选与排序:支持按 Coding Agent 筛选、按仓库筛选;支持按技能名排序、按仓库名排序、按更新时间排序
  • 一致性校验:可检测三种不一致情形,同名同内容(重复)、同名不同内容(冲突)、目录名与 SKILL.md 内声明的技能名不一致(命名不一致)
  • 自动扫描:后端用 Rust notify crate 监听文件系统变动,你在终端里手动改了 Skill 文件,App 界面秒级自动刷新
  • 安全审计:可在技能详情页查看技能的安全审计结果(如下图)

2.3 技能发现

Skill Zoo 提供了强大的技能搜索和安装功能。你可以模糊匹配搜索:

点击某个搜索结果,App 会自动下载该技能所在仓库,并将仓库内所有技能解析出来,在前端提供安装选项:

为了让这个页面拥有类似 App Store 的下载体验,我打磨了很久。

三、开源免费

Coding Agent 时代其实是降低开源意愿的。因为我们已经很难从 Coding,尤其是工程 Coding 中学到东西,反而要为 token 付费,如果还要无偿地分享工作成果,这里面显然存在结构性失衡。

那我为什么还要开源呢?因为这是 Desktop App,这种运行在个人电脑里面的东西,如果不开源,要我我也不敢用。透明、可审计是桌面应用生存的前提。我们要做的事决定了它不可能做成 MCP 或 SaaS,它只能是桌面应用这个形态,所以我还是选择开源。

四、下载安装

你可以从 官方网站GitHub Releases 页下载「Skill Zoo」App。期待你用 Skill Zoo 探索和使用更多技能。如果你觉得这个 App 对你有帮助,也欢迎 Star 我们的 GitHub 仓库 luochang212/skill-zoo