首页 › skills-review › gstack开盖:Skill长成软件仓库

gstack开盖:Skill长成软件仓库

概述

本期是装机目录实拆。外部榜单通道本期受限,所以观察口径换了一个:直接打开一台真实工作机的 ~/.claude/skills/ 装机目录,把里面的件一个个数文件。结果比任何榜单都有说服力——生态的件型分层已经彻底拉开:最薄的件只有一张 SKILL.md 名片,而天花板上的件已经长成带 CI 评测、遥测上报、更新检查、卸载器和版本日志的完整软件仓库。本期主角就是这台机器上最大的件:gstack,一个装下来超过 150 个文件、自带四个子技能和整套工程纪律的“仓库级件”。上次拆官方模具讲的是门牌怎么写,这次拆的是整栋楼怎么盖。

评测对比表

本期对比对象全部来自同一台机器的装机目录,按文件数排成一条清晰的“件型梯度”:

Skill 文件数(实测) 件型 功能完整度 设计质量 实战与维护佐证 上手难度 社区活跃度
defuddle 1 单文件件 ★★ ★★★ ★★ ★★★★★ —
openstoryline-use 3 脚配角件 ★★★ ★★★★ ★★★ ★★★★ —
long-running-agent 5 模板资产件 ★★★★ ★★★★★ ★★★ ★★★★ —
atlas 8 小仓库件 ★★★★ ★★★★ ★★★ ★★★ —
gstack 150+ 仓库级件 ★★★★★ ★★★★★ ★★★★ ★★ —

口径说明:本期为装机目录实拆,未引外部网页数据,故“社区活跃度”一律不给分;“实战与维护佐证”评的不是跑分,而是文件树里能看到的维护痕迹(CHANGELOG、VERSION、TODOS、评测设施、成对工具的打磨度)。上手难度星越多越容易装。

生态的金字塔:一张目录里的五种件型

先看全景。同一台机器上,五个件的“体重”差了两个数量级:

flowchart TD
    A["单文件件<br/>defuddle 一张名片"] --> B["脚本角件<br/>openstoryline-use 带桥接脚本"]
    B --> C["模板资产件<br/>long-running-agent 带清单模板"]
    C --> D["小仓库件<br/>atlas 带CLI与数据文档"]
    D --> E["仓库级件<br/>gstack 带CI评测遥测"]

这五档体重就是本期第一个结论:“Skill”这个词已经装不下生态里的东西了。1 个文件的叫名片,150 个文件的叫产品,而它们共用同一个安装姿势。

主角开盖:gstack 的六层结构

把 gstack 的文件树按职能分成六层,一层层看。每一层都是普通件没有的东西。

flowchart TD
    G["gstack 仓库级件"] --> F["门面层"]
    G --> S["子件层"]
    G --> B["工具层"]
    G --> D["纪律层"]
    G --> E["评测层"]
    G --> O["运营层"]
    G --> H["跨宿主层"]
    F --> F1["SKILL.md.tmpl<br/>模板生成门面"]
    S --> S1["autoplan"]
    S --> S2["benchmark"]
    S --> S3["browse"]
    B --> B1["review-log 与 review-read"]
    B --> B2["telemetry-log 与 sync"]
    B --> B3["update-check 与 uninstall"]
    D --> D1["ETHOS 价值观"]
    D --> D2["ARCHITECTURE 结构"]
    E --> E1["evals.yml 进CI"]
    E --> E2["qa-eval 假网页"]
    O --> O1[".env.example 配置面"]
    H --> H1["CLAUDE.md"]
    H --> H2["AGENTS.md"]
    H --> H3["agents/openai.yaml"]

门面层:SKILL.md 是编译产物,不是手稿

根目录里并排放着 SKILL.md 和 SKILL.md.tmpl。这个 .tmpl 后缀是全仓库最锋利的一个设计:门面文件是模板生成的。连子件都跟着用——autoplan/SKILL.md.tmpl、benchmark/SKILL.md.tmpl、browse/SKILL.md.tmpl 一应俱全,.github/workflows/ 里还有一个专职的 skill-docs.yml 工作流。

这意味着作者根本不维护 SKILL.md,他维护模板,SKILL.md 由流水线产出。好处直白:版本号、子件清单、命令列表这类会在多处重复的信息,只改模板一处,重新生成,四处同步。手工维护 SKILL.md 的件最常见的事故是“README 说有这个命令,实际早删了”,模板化从根上掐死这类失同步。

子件层:一个件,四张门牌

gstack 不是一件,是一件带三件:根门面之外,autoplan/SKILL.md(自动规划)、benchmark/SKILL.md(跑分自测)、browse/SKILL.md(浏览器操控)各自成件。按 Claude Code 的机制,子目录里的 SKILL.md 是独立触发面——用户说“帮我规划”和“帮我跑个评测”会命中不同的子件,各自只把那一份说明书装进上下文。

这是对“渐进披露”的极致用法:与其写一个五千字的巨型 SKILL.md 让模型自己找段落,不如拆成四个短门面,按需加载。官方仓库一件一 SKILL.md 是标准写法,gstack 证明了大件必须反过来走。

工具层:bin 里的三对镜像命令

bin/ 下是一整个命令族,其中三对成镜像的命令暴露了作者的习惯:

外加 gstack-diff-scope(diff 范围)、gstack-repo-mode(仓库模式)、gstack-slug、gstack-analytics、gstack-config、chrome-cdp(CDP 桥)等散件。规律可以总结成一句话:每个有副作用的动作,都配了一个对称的回收动作。普通件的脚本是一条道走到黑,gstack 的脚本是成套的开关。这正是长流程自动化和“一次性脚本”的分野——有开就有关,状态才收得回来。

纪律层:四份文档,四类读者

普通件的所有话都挤在 SKILL.md 里。gstack 根目录同时摊着 ETHOS.md、DESIGN.md、ARCHITECTURE.md、BROWSER.md、TODOS.md、CHANGELOG.md、README.md——一套完整开源软件的文档建制。最有性格的是 ETHOS.md:一份专门讲“这个件信什么”的价值观文档,放在 DESLGN 和 ARCHITECTURE 之前的位置。它的潜台词是:先认同做事方式,再看技术方案。

这套分档给 skill 作者的启示是:当你的说明书写过两千字,就该按读者分家了——模型读的留 SKILL.md,贡献者读的进 CONTRIBUTING.md,未来自己读的进 DESIGN.md,混在一起谁都读不好。

评测层:评测进 CI,还分日常档和定期档

.github/workflows/ 里同时有 evals.yml 和 evals-periodic.yml——评测不只进了 CI,还单开了一条定期跑的流水线(防止“上周还行这周漂了”的模型行为漂移)。配套的 benchmark/SKILL.md 把“跑评测”本身做成了一个可触发的子技能。

更见功夫的是 browse/test/fixtures/ 里的假网页:qa-eval.html、qa-eval-checkout.html、qa-eval-spa.html——普通页、结账页、单页应用三种形态各备一个专供评测的靶子,旁边还有 dialog、iframe、upload、network-idle 等十几个场景 fixture。2026 年了,“件带评测”正在从加分项变成分水岭:没有评测的件,每次上游模型升级都是一次盲飞。

运营层与跨宿主层:装上之后的一生

运营层回答“装上之后呢”:.env.example(配置有样例)、gstack-update-check(更新检查)、gstack-uninstall(正经的卸载器)、VERSION 加 CHANGELOG.md(版本纪律)、gstack-community-dashboard(社区面板)。一个件的完整生命周期——安装、配置、升级、卸载、反馈——在文件树里全找得到落点。

跨宿主层回答“只服务 Claude 吗”:CLAUDE.md 与 AGENTS.md 并存,agents/openai.yaml 直通 OpenAI 系宿主。同一套纪律喂三个宿主,一个字都没浪费——这是无名的 atlas 和头部件共同押注的方向:Skill 的本质是“带说明书的工具包”,说明书不必绑定某家模型。

从装箱单提炼的七个仓库级写法模式

本期全部结论来自文件名,但文件名本身就是设计文档。可照抄的模式七条:

  1. 模板生成门面——SKILL.md.tmpl 加生成工作流,门面永不手改。
  2. 子目录即子件——功能域各自带 SKILL.md,触发面按需加载。
  3. 文档按受众分档——ETHOS 给同路人,DESIGN 给自己,ARCHITECTURE 给贡献者。
  4. 命令成对造——log 配 read,setup 配 teardown,状态必须可回收。
  5. 评测进 CI——日常档加定期档,fixture 靶场按页面形态分型。
  6. 宿主无关化——CLAUDE.md、AGENTS.md、agents/openai.yaml 三门齐开。
  7. 配齐生命周期——.env.example 到 update-check 到 uninstall,管装管卸。

适用与不适用

适合谁:需要稳定浏览器会话与长流程工程化的团队用户;想给自己的 Skill 做“产品化”的作者——这份文件树本身就是一本作业,七条模式条条可抄。

不适合谁:轻量场景的单点用户。150+ 文件的件意味着更高的磁盘占用、更长的配置链(.env.example 说明有必填配置)、更大的心智负担,拆个网页正文用 defuddle 一张名片更划算。件的重量应该配任务的重量,这是装机目录教的最朴素一课。

安装与使用

本机副本为已装机状态,上游 owner 名本期未经网络核验,安装前请以 skills.sh 或 GitHub 搜索确认仓库地址:

# 通用装法(skills.sh 生态标准命令格式)
npx skills add <owner>/gstack

# 或手动克隆进 Claude Code 技能目录
git clone https://github.com/<owner>/gstack ~/.claude/skills/gstack

# 装完先看配置面(该件存在 .env.example,需补环境变量)
cp ~/.claude/skills/gstack/.env.example ~/.claude/skills/gstack/.env

# 确认四个门牌都被识别
ls ~/.claude/skills/gstack/*/SKILL.md

推荐排行榜

参考来源

  1. 本机装机目录 ~/.claude/skills/gstack/ 完整文件树(2026-09-13 Glob 实测)——本文全部一手材料,含 bin 命令族、四份 SKILL.md、evals 工作流、qa-eval fixtures 等 150+ 文件名。
  2. 本机装机目录对照件文件树(同日实测)——defuddle/(1 文件)、openstoryline-use/(3 文件)、long-running-agent/(5 文件)、atlas/(8 文件),件型梯度数据来源。
  3. Claude Code Agent Skills 机制(子目录 SKILL.md 触发、渐进披露)——官方公开机制,本文子件层分析的前提,本期未逐文件核验上游仓库。

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入