一、项目概述
gstack 是 Y Combinator CEO Garry Tan 开源的 AI 编程工作流系统。它不是一个简单的工具集合,而是一套完整的"AI 工程团队"方法论——将 Claude Code 转变为包含 23 个专业角色和 8 个强力工具的虚拟工程团队。
核心问题
Andrej Karpathy 在 2026 年 3 月提到:“我从去年 12 月开始基本没写过一行代码。“这引发了一个问题:一个人如何以 20 人的团队速度交付?
Garry Tan 的答案是:正确的工具链。他使用 AI Agent,在过去 60 天内交付了 3 个生产级服务、40+ 功能特性(兼职工作,同时全职运营 YC)。按逻辑代码变更(排除 AI 膨胀的代码行)计算,他的 2026 年交付速度是 2013 年的 ~810 倍(11,417 vs 14 逻辑行/天)。
核心特性
- 23 个专业角色:从 CEO、工程师、设计师到 QA、安全官、发布工程师
- 完整的冲刺流程:Think → Plan → Build → Review → Test → Ship → Reflect
- 跨 Agent 支持:不仅支持 Claude Code,还支持 Codex、Cursor、OpenCode 等 10 种 AI 编程工具
- 真实的浏览器:通过 CDP 协议控制 Chromium,实现真正的 E2E 测试
- 持久化记忆:通过 GBrain 实现跨会话的知识积累
二、技术原理
架构设计
gstack 采用 技能栈(Skill Stack) 架构,每个技能对应一个专业角色:
office-hours (YC Office Hours)
↓ 输出设计文档
plan-ceo-review (CEO/Founder)
↓ 战略挑战
plan-eng-review (Eng Manager)
↓ 架构锁定
build (Implementation)
↓ 代码实现
review (Staff Engineer)
↓ 代码审查
qa (QA Lead)
↓ 浏览器测试
ship (Release Engineer)
↓ 发布
retro (Eng Manager)
↓ 复盘
每个技能读取前一个技能的输出,形成 流水线式的工作流。例如:
/office-hours生成的设计文档会被/plan-ceo-review自动读取/plan-eng-review生成的测试计划会被/qa自动获取/review发现的 bug 会被/ship验证是否已修复
核心技术栈
| 技术 | 用途 | 选型理由 |
|---|---|---|
| Bun | 运行时 + 包管理器 | 快速启动、内置 TypeScript 支持 |
| Playwright | 浏览器自动化 | 稳定的 CDP 协议实现 |
| Chrome DevTools Protocol | 浏览器控制 | 真实浏览器环境,支持反爬虫 |
| Puppeteer Core | 备选浏览器控制 | 兼容性备选方案 |
| Hugging Face Transformers | 本地 ML 模型 | Prompt 注入检测 |
关键设计模式
1. 域名技能系统(Domain Skills)
gstack 引入了"域名技能"概念:Agent 在访问特定网站时,会自动加载该网站的注意事项。
$B domain-skill save
# 保存:LinkedIn 的 Apply 按钮在 iframe 中
# 下次访问 LinkedIn 时自动应用
实现机制:
- 技能存储在 per-project 的 learnings 文件中
- 经过 3 次成功使用后会提升为 active 状态
- 可通过
$B domain-skill promote-to-global提升为全局技能
2. 原始 CDP 逃逸舱(Raw CDP Escape Hatch)
对于精选命令未覆盖的边缘情况,gstack 提供了原始 CDP 访问:
$B cdp <Domain.method>
# 例如:$B cdp Runtime.evaluate
安全机制:
- 默认拒绝模式(deny-default)
- 方法必须显式添加到
browse/src/cdp-allowlist.ts - 两层互斥锁(two-tier mutex)序列化浏览器范围内的 CDP 调用
- 数据渗透方法的输出包裹在 UNTRUSTED 信封中
3. 连续检查点模式(Continuous Checkpoint Mode)
设置 gstack-config set checkpoint_mode continuous 后,技能会在工作过程中自动提交,提交信息包含:
WIP:前缀- 结构化
[gstack-context]主体(决策、剩余工作、失败尝试)
恢复机制:
/context-restore读取这些提交来重建会话状态/ship在 PR 前会 filter-squash WIP 提交(保留非 WIP 提交)
数据流分析
以"构建每日简报应用"为例:
用户输入:"我想构建一个日历每日简报应用"
↓
/office-hours
- 追问具体痛点(不是假设)
- 挑战用户的问题框架
- 提取 5 个用户未意识到的能力
- 生成 3 种实现方案 + 工作量估算
↓ 输出:设计文档
/plan-ceo-review
- 读取设计文档
- 挑战范围(4 种模式:扩展/选择性扩展/保持范围/缩减)
↓ 输出:CEO 审查报告
/plan-eng-review
- ASCII 图表(数据流、状态机、错误路径)
- 测试矩阵、失败模式、安全考虑
↓ 输出:工程计划
用户批准计划,退出计划模式
↓
实现(~8 分钟,2,400 行代码,11 个文件)
↓
/review
- [自动修复] 2 个问题
- [询问] 竞态条件 → 用户批准修复
↓
/qa https://staging.myapp.com
- 打开真实浏览器
- 点击流程,发现并修复 bug
↓
/ship
- 同步 main
- 运行测试
- 审计覆盖率
- 推送,打开 PR
三、安装与快速开始
环境要求
- Claude Code(必需)
- Git(必需)
- Bun v1.0+(必需,用于运行时)
- Node.js(Windows 必需,Bun 在 Windows 上有 Playwright pipe transport bug)
安装步骤
方式 1:快速安装(推荐)
打开 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 that says to use the /browse skill from gstack for all web browsing, never use mcp__claude-in-chrome__* tools, and lists the available skills: /office-hours, /plan-ceo-review, /plan-eng-review, /design-consultation, /design-shotgun, /design-html, /review, /ship, /land-and-deploy, /canary, /benchmark, /browse, /connect-chrome, /qa, /qa-only, /design-review, /setup-browser-cookies, /setup-deploy, /setup-gbrain, /retro, /investigate, /document-release, /document-generate, /codex, /cso, /autoplan, /plan-devex-review, /devex-review, /careful, /freeze, /guard, /unfreeze, /gstack-upgrade, /learn. Then ask the user if they also want to add gstack to the current project so teammates get it.
Claude 会自动完成所有配置。
方式 2:团队模式(推荐用于共享仓库)
在仓库内运行:
(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"
优势:
- 无 vendored 文件
- 无版本漂移
- 无手动升级
- 每次 Claude Code 会话启动时自动检查更新(限流至 1 次/小时,网络故障安全,完全静默)
方式 3:其他 AI Agent
gstack 支持 10 种 AI 编程工具:
git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/gstack
cd ~/gstack && ./setup
或指定 Agent:
./setup --host codex # OpenAI Codex CLI
./setup --host cursor # Cursor
./setup --host opencode # OpenCode
./setup --host factory # Factory Droid
最简运行示例
安装完成后,运行以下命令体验完整流程:
/office-hours
# 描述你要构建的产品
/plan-ceo-review
# 对功能想法进行 CEO 审查
/review
# 审查任何有变更的分支
/qa
# 对 staging URL 进行 QA 测试
四、使用方法与实战
基础用法
1. 产品探索:/office-hours
这是起点。6 个强制问题会重新框架你的产品,然后再写代码。
你:我想构建一个日历每日简报应用。
Claude:[询问具体痛点——不是假设的例子]
你:多个 Google 日历,事件信息过时,位置错误。准备工作耗时太久,结果不够好...
Claude:我要挑战这个问题的框架。你说"每日简报应用",但你实际描述的是一个个人首席助理 AI。
[提取 5 个你未意识到的能力]
[挑战 4 个前提——你同意、不同意或调整]
[生成 3 种实现方案 + 工作量估算]
建议:明天交付最窄的楔子,从真实使用中学习。完整愿景是 3 个月的项目——从真正可用的每日简报开始。
[写入设计文档 → 自动供下游技能使用]
2. 计划审查:/plan-ceo-review
读取设计文档,挑战范围,运行 10 节审查。
四种模式:
- Expansion:扩展范围,探索 10 星产品
- Selective Expansion:选择性扩展
- Hold Scope:保持范围
- Reduction:缩减范围
3. 工程审查:/plan-eng-review
锁定架构、数据流、图表、边界情况和测试。强制将隐藏的假设公开。
输出包含:
- ASCII 图表(数据流、状态机、错误路径)
- 测试矩阵
- 失败模式
- 安全考虑
4. 代码审查:/review
发现通过 CI 但在生产环境中爆炸的 bug。
/review
[自动修复] 2 个问题。
[询问] 竞态条件 → 你批准修复。
5. QA 测试:/qa
测试你的应用,发现 bug,用原子提交修复,重新验证。
/qa https://staging.myapp.com
[打开真实浏览器]
[点击流程]
[发现并修复 bug]
[自动生成回归测试]
6. 发布:/ship
同步 main,运行测试,审计覆盖率,推送,打开 PR。
/ship
Tests: 42 → 51 (+9 新测试)
PR: github.com/you/app/pull/42
进阶用法
1. 设计探索:/design-shotgun
“展示选项。“生成 4-6 个 AI 模型变体,在浏览器中打开比较板,收集你的反馈,迭代。
品味记忆(Taste Memory)会在几轮后启动,开始偏向你实际选择的内容。
2. 生产 HTML:/design-html
将模型(来自 /design-shotgun、CEO 计划、设计审查或只是描述)转换为生产质量的 HTML/CSS。
特性:
- 使用 Pretext 进行计算文本布局
- 文本在调整大小时实际重排
- 高度根据内容调整
- 布局是动态的
- 30KB 开销,零依赖
- 检测你的框架(React、Svelte、Vue)并输出正确格式
3. 安全审计:/cso
OWASP Top 10 + STRIDE 威胁模型。
零噪声:
- 17 个误报排除
- 8/10+ 置信度门控
- 独立发现验证
- 每个发现包含具体的利用场景
4. 多 Agent 协调:/pair-agent
与任何 AI Agent 共享你的浏览器。
/pair-agent
# 选择你的 Agent
# GStack Browser 窗口打开
# 打印指令块
# 粘贴到另一个 Agent 的聊天中
安全特性:
- 作用域令牌
- 标签页隔离
- 速率限制
- 活动归因
5. 持久化记忆:GBrain
GBrain 是 AI Agent 的持久化知识库。
/setup-gbrain
四种路径:
- Supabase,现有 URL——你的云 Agent 已配置 brain
- Supabase,自动配置——粘贴 Supabase Personal Access Token
- PGLite 本地——零账户,零网络,~30 秒
- 远程 gbrain MCP——brain 在另一台机器上运行
实际项目示例
示例 1:构建通知功能
你:构建一个通知功能。
Claude:加载 gstack。运行 /autoplan。
[/autoplan 自动运行]
[office-hours → plan-ceo-review → plan-eng-review]
[输出完整计划]
你:批准计划。实施。
Claude:[实现计划] [运行 /ship]
示例 2:安全审计
你:对这个仓库运行安全审计。
Claude:加载 gstack。运行 /cso。
[/cso 运行 OWASP Top 10 + STRIDE]
[输出威胁模型]
[每个发现包含利用场景]
示例 3:调试生产问题
你:生产环境出现异常行为。
Claude:加载 gstack。运行 /investigate。
[/investigate 系统根源调试]
[铁律:没有调查就没有修复]
[追踪数据流]
[测试假设]
[3 次失败修复后停止]
五、常见问题与解决方案
安装失败
问题:技能未显示
原因:CLAUDE.md 中缺少 gstack 部分。
解决方案:手动添加到项目的 CLAUDE.md:
## gstack
Use /browse from gstack for all web browsing. Never use mcp__claude-in-chrome__* tools.
Available skills: /office-hours, /plan-ceo-review, /plan-eng-review, /plan-design-review,
/design-consultation, /design-shotgun, /design-html, /review, /ship, /land-and-deploy,
/canary, /benchmark, /browse, /open-gstack-browser, /qa, /qa-only, /design-review,
/setup-browser-cookies, /setup-deploy, /setup-gbrain, /sync-gbrain, /retro, /investigate,
/document-release, /document-generate, /codex, /cso, /autoplan, /pair-agent, /careful, /freeze,
/guard, /unfreeze, /gstack-upgrade, /learn.
问题:Windows 上使用问题
原因:Bun 在 Windows 上有 Playwright pipe transport bug。
解决方案:
- 安装 Node.js(除了 Bun)
- 确保
bun和node都在 PATH 中 - 浏览服务器会自动回退到 Node.js
问题:Codex 说"Skipped loading skill(s) due to invalid SKILL.md”
原因:Codex 技能描述过时。
解决方案:
cd ~/.codex/skills/gstack && git pull && ./setup --host codex
# 或对于 repo-local 安装:
cd "$(readlink -f .agents/skills/gstack)" && git pull && ./setup --host codex
运行时错误
问题:/browse 失败
原因:依赖未安装或构建未运行。
解决方案:
cd ~/.claude/skills/gstack && bun install && bun run build
问题:Stale install
原因:gstack 仓库过时。
解决方案:
/gstack-upgrade
# 或在 ~/.gstack/config.yaml 中设置 auto_upgrade: true
问题:Claude 说它看不到技能
原因:项目的 CLAUDE.md 缺少 gstack 部分。
解决方案:确保 CLAUDE.md 有 gstack 部分(见上面的"技能未显示"解决方案)。
性能问题
问题:浏览器自动化慢
原因:默认配置可能不是最优的。
解决方案:
- 使用 GStack Browser(
/open-gstack-browser)获得更快的性能 - 确保使用 Bun 而不是 Node.js(除非在 Windows 上)
- 检查网络连接(ngrok 隧道可能引入延迟)
问题:Git 操作慢
原因:大文件或网络延迟。
解决方案:
- 使用 SSH 而不是 HTTPS 进行 Git 操作
- 配置 Git 代理(如果在企业网络中)
- 使用
git gc清理本地仓库
兼容性问题
问题:与其他技能包冲突
原因:命令名称冲突。
解决方案:
cd ~/.claude/skills/gstack && ./setup --prefix
# 从 /qa 切换到 /gstack-qa
问题:Claude Code 版本不兼容
原因:gstack 需要特定版本的 Claude Code。
解决方案:
- 更新 Claude Code 到最新版本
- 检查 gstack 的 package.json 中的 engines 字段
- 如果需要,降级 gstack 到兼容版本
六、总结
gstack 不仅仅是一个工具集合,它是一套完整的 AI 驱动的工程方法论。通过将专业角色、强制流程和安全机制结合在一起,gstack 让单个开发者能够以团队的速度交付生产级软件。
核心价值
生产力提升:Garry Tan 的案例显示,合理使用 AI 工具可以实现 810 倍的生产力提升(按逻辑代码变更计算)。
流程保障:从 Think → Plan → Build → Review → Test → Ship → Reflect 的完整流程,确保每个环节都有专业角色把关。
跨工具兼容:不仅支持 Claude Code,还支持 10 种主流 AI 编程工具,真正的工具无关。
安全第一:内置 OWASP Top 10 + STRIDE 威胁模型、Prompt 注入检测、原始 CDP 访问控制等安全机制。
持久化记忆:通过 GBrain 实现跨会话的知识积累,让 Agent 越来越了解你的项目。
适用人群
- 创始人和 CEO——尤其是仍想交付代码的技术创始人
- 首次使用 Claude Code 的用户——结构化的角色而不是空白提示
- 技术主管和资深工程师——每个 PR 的严格审查、QA 和发布自动化
未来展望
随着 AI Agent 能力的不断提升,gstack 所代表的"AI 工程团队"模式将会越来越成熟。我们可以期待:
- 更多的专业角色:随着 AI 能力的提升,会有更多细分的专业角色加入。
- 更好的协作机制:多 Agent 协调、跨会话记忆共享等能力会不断增强。
- 更深的项目理解:通过 GBrain 等工具,Agent 会越来越了解项目的上下文和历史。
- 更广的工具支持:会有更多的 AI 编程工具被集成到 gstack 生态中。
gstack 是一个活生生的证明:AI 不是取代开发者,而是让开发者变得更强大。通过这个开源项目,Garry Tan 不仅分享了他的工作流,更为整个行业展示了"AI 原生软件开发"的未来形态。
项目链接:
- GitHub:https://github.com/garrytan/gstack
- 文档:https://github.com/garrytan/gstack/tree/main/docs
- 许可证:MIT(免费,永久免费)
引用:
“The difference isn’t who typed it, it’s what shipped.” —— Garry Tan
这句话完美地总结了 gstack 的哲学:重要的不是谁写的代码,而是交付了什么。在 AI 时代,开发者应该从"代码实现者"转变为"产品交付者”,而 gstack 正是实现这一转变的强大工具。