gstack 速览:把 Claude Code 变成一支工程团队,顺手接上 Hermes
garrytan/gstack 是 Y Combinator 总裁 Garry Tan 开源的一整套 Claude Code skills。和上一篇介绍的 mattpocock/skills 不同 —— Matt 的仓库强调”小而可组合”,gstack 走的是另一个极端:把一支完整的工程团队压进 slash command 里。
CEO、Eng Manager、设计师、Reviewer、QA、SRE、安全官 …… 23 个专家角色,8 个生产工具,统统是 Markdown,统统 MIT 协议。本文聚焦它在 Claude Code 与 Hermes 两种 host 上的用法 —— 其余 OpenClaw / Codex / Cursor 等 host 留给以后。
为什么是”团队”,不是”工具”¶
Garry 在 README 里给了一组数据:他 2026 年的”逻辑代码变更量”(剔除 AI 灌水)是 2013 年的 810 倍。一个人,全职做 YC 总裁的同时,60 天里上线 3 个生产服务、40+ 功能。
他的答案不是更聪明的 prompt,而是流程。一个 sprint 在 gstack 里被拆成七步:
Think → Plan → Build → Review → Test → Ship → Reflect
每一步都有一个对应的 slash command,每一个 command 都对应一种”专家人格”。上一步的产物(设计文档、测试计划)会自动喂给下一步。这就是 gstack 最有意思的设计 —— 它不是 23 个独立工具,是 23 个互相衔接的工序。
30 秒安装(Claude Code)¶
把这段直接贴进 Claude Code,剩下的它自己干:
Install gstack: run `git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/.claude/skills/gstack && cd ~/.claude/skills/gstack && ./setup` then add a "gstack" section to CLAUDE.md ...
完整命令在 README 顶部。装完后,最小验证流程:
/office-hours—— 描述你要做的东西/plan-ceo-review—— 让”CEO”复盘需求/review—— 在任意有改动的分支跑 reviewer/qa https://你的staging.com—— 让 QA 真的开浏览器测一遍/ship—— 同步主干、跑测试、开 PR
要让团队成员自动接入:
(cd ~/.claude/skills/gstack && ./setup --team) && \
~/.claude/skills/gstack/bin/gstack-team-init required && \
git add .claude/ CLAUDE.md && \
git commit -m "require gstack for AI-assisted work"
之后每次开 Claude Code session,它会节流地(一小时一次、断网安全、完全静默)自动检查 gstack 更新,再也没有版本漂移。
一个 sprint 的完整形态¶
flowchart TD
A["/office-hours<br/>(YC 风格逼问)"] --> B["/plan-ceo-review<br/>(找隐藏的 10 星产品)"]
B --> C["/plan-eng-review<br/>(锁架构 / 数据流 / 测试)"]
C --> D["/plan-design-review<br/>(AI Slop 检测)"]
D --> E["开始写代码"]
E --> F["/review<br/>(staff engineer 找 bug)"]
F --> G["/qa <url><br/>(真浏览器 + 自动回归测试)"]
G --> H["/ship<br/>(同步主干 / 跑测试 / 开 PR)"]
H --> I["/land-and-deploy<br/>(合并 + 等 CI + 验证生产)"]
I --> J["/canary<br/>(发布后监控循环)"]
J --> K["/retro<br/>(本周回顾)"]
其中三个我觉得最值得单独说:
/office-hours:把”功能请求”翻译成”真实需求”¶
Garry 给的例子很扎心。你说想做”一个日常简报 app”,它会回:“你描述的其实是一个个人首席幕僚 AI”,然后从你抱怨的痛点里抽出 5 个能力、挑战 4 条预设、给 3 个实现路径并附工作量估算。
这个 skill 写出来的设计文档会自动喂给后面的 /plan-ceo-review、/plan-eng-review、/qa。不用你手动复制粘贴。
/review:CI 过得了、生产挂掉的那种 bug¶
它分 [AUTO-FIXED](明显的,自动修)和 [ASK](要你确认的,比如竞态条件)两档。每次跑完都会写一份 review 报告,/codex 可以拿这份报告再做一次”跨模型交叉验证”。
/qa <url>:让 agent 有眼睛¶
这是 Garry 自己点名的”massive unlock”:让他从 6 个并行 sprint 涨到 12 个。/qa 启动真实的 Chromium,点击真实按钮,截真实的图。发现 bug 后自动修、生成回归测试、再跑一遍验证。
“The agent has eyes now.” —— gstack README
几个特别值得留意的 power tool¶
| Skill | 一句话 |
|---|---|
/autoplan | 一条命令跑完 CEO → design → eng → DX 四级 review,只把真正需要你拍板的”品味决策”暴露出来 |
/careful | 说一句”be careful”,它就会在 rm -rf / DROP TABLE / git push -f 这类危险命令前拦截你(可手动 override) |
/freeze | 锁定编辑范围到某个目录。调试的时候很有用 —— Claude 不会”顺手帮你修”无关的代码 |
/codex | 让 OpenAI Codex CLI 当外部声音做独立 review。三种模式:通过/不通过、对抗式挑战、开放咨询 |
/learn | 跨 session 的项目记忆。审阅、检索、修剪、导出特定项目的模式、坑、偏好 —— 让 gstack 在你的代码库上越用越聪明 |
/sync-gbrain | 把当前 repo 的代码索引进 GBrain(一个持久化知识库),agent 跨 session 有记忆 |
Hermes 是什么、怎么接入¶
我自己一直想做的事是在手机或者远端机器上紧急改代码。直接登 SSH 跑 Claude Code 当然行,但交互体验差。后来发现 Hermes 是个不错的解 —— Hermes 是 Nous Research 的 AI 编码 agent,定位类似 OpenClaw —— 它会派生 Claude Code session 来干活。
所以 gstack 在 Hermes 上的接入哲学很直接:Hermes 派生 Claude Code,gstack 给 Claude Code 提供方法论。你在 Hermes 那边只是个”调度器”。
让 Hermes 知道 gstack 的存在¶
./setup --host hermes
setup 脚本会提示你:
Hermes integration uses the same model as OpenClaw — Hermes spawns
Claude Code sessions, and gstack provides methodology artifacts.
To integrate gstack with Hermes:
1. Tell your Hermes agent: 'install gstack for hermes'
2. Or generate artifacts: bun run gen:skill-docs --host hermes
Hermes 拿到的 skill 跟 Claude Code 不一样¶
看 hosts/hermes.ts,gstack 给 Hermes 做了两类改写:
路径改写:所有 .claude/skills/gstack 替换为 .hermes/skills/gstack,所有 CLAUDE.md 替换为 AGENTS.md。
工具改写:Hermes 用的是不同名字的工具:
| Claude Code | Hermes |
|---|---|
| Bash tool | terminal tool |
| Read tool | read_file |
| Write/Edit tool | patch tool |
| Agent tool | delegate_task |
| Grep tool | search for |
gstack 在生成 Hermes 版本的 SKILL.md 时会自动把这些动词替换掉,你不用关心。
一个典型的远程工作流¶
我自己的用法是这样的:
sequenceDiagram
participant Me as 我(手机/笔记本)
participant H as Hermes Agent
participant CC as Claude Code (远程机器)
participant G as gstack skills
Me->>H: "帮我加个发布脚本"
H->>CC: 派生 session<br/>"Load gstack. Run /autoplan, implement the plan, then /ship"
CC->>G: 加载 /autoplan
G-->>CC: 跑完 CEO/design/eng review
CC->>CC: 实现代码
CC->>G: 加载 /ship
G-->>CC: 同步主干 / 跑测试 / 开 PR
CC-->>H: PR 地址 + 摘要
H-->>Me: 推送结果
亮点:
- Hermes 不直接写代码,只负责对话和调度。
- gstack 的所有 skill 在 Claude Code 那侧生效,所以工具调用、文件编辑、浏览器自动化都跑在远程那台机器上。
- 手机端只看摘要和 PR 链接。
另一个小细节:Hermes 提交代码时 gstack 会附加 Co-Authored-By: Hermes Agent <agent@nousresearch.com> 的 trailer,Claude Code 那侧是 Co-Authored-By: Claude Opus 4.7。如果你做工时统计 / 贡献者分析的时候,能看出哪些 commit 是哪边走的。
跑起来后还要做的几件事¶
- 设置好
/setup-deploy:让/land-and-deploy知道你的生产 URL 和部署命令。这一步只做一次。 /setup-gbrain(可选但强烈推荐):把项目记忆持久化下来。本地 PGLite 30 秒就能起来,后面想换 Supabase 跑/setup-gbrain --switch即可。- 开
checkpoint_mode continuous:gstack 会在干活过程中自动WIP:commit,崩了不丢东西。/ship会在开 PR 前帮你 squash 掉 WIP commit,bisect 历史保持干净。 - 多开 sprint:用 Conductor 这类工具可以同时跑 10-15 个 Claude Code session。Garry 自己常态是 12 个并行。
一些实战注意点¶
- 不是免费试用,是真的免费。MIT 协议,没有付费版本,没有 waitlist。但前提是你的 Claude Code 订阅本身够用。
- 依赖 Bun(v1.0+)。setup 脚本是 bash + TypeScript 混合,跑不起来先检查
bun --version。 - macOS 体验最完整。
/open-gstack-browser用的是定制 Chromium,Linux 上能跑但少几个集成。 - skill 数量是 gstack 的 feature 也是负担。30 多个 slash command 一开始你记不住。建议只用 README 列出的 5 个开始,习惯了再扩展。
/codex需要装 Codex CLI。没装的话直接跑会报错;你也可以在 CLAUDE.md 里把它从可用 skill 列表删掉。/qa启动真浏览器,会占机器资源。在 8GB 内存的机器上跑 5 个并行/qa会爆。
我打算怎么用¶
短期我不会立刻切到 gstack —— 它对我个人博客这种小项目过重。但有两个 skill 我准备先抠出来用:
/office-hours的 prompt 模式 —— 我会在写新功能前手动跑一遍它的 6 个 forcing question。/qa的设计 —— 让 Claude Code 真的开浏览器测,这个理念我准备复刻到自己的 review 流程里。
至于 Hermes 远程方案,等我真的需要在路上紧急改 bug 时再上 —— 目前手机推一句”晚点再说”也挺好。
参考¶
- 仓库主页:github.com/garrytan/gstack
- 完整 skill 列表(带例子):docs/skills.md
- Hermes host 配置源码:hosts/hermes.ts
- Garry 的方法论:ETHOS.md
- 配套知识库:garrytan/gbrain