"我觉得自 12 月以来,我可能一行代码都没打过。这是一个巨大的变化。" — Andrej Karpathy,No Priors 播客,2026 年 3 月
当我听到 Karpathy 这么说时,我想知道如何做到的。一个人如何像 20 人的团队一样高效?Peter Steinberger 用 AI agents 基本上单人构建了 OpenClaw — 247K GitHub stars。革命已经到来。一个拥有正确工具的单一构建者可以比传统团队移动得更快。
我是 Garry Tan,Y Combinator 的 President & CEO。我与数千家初创公司合作过 — Coinbase、Instacart、Rippling — 当它们只有一两个人在车库时。在 YC 之前,我是 Palantir 的第一批工程师/PM/设计师之一,联合创立了 Posterous (卖给 Twitter),并构建了 YC 的内部社交网络 Bookface。
gstack 是我的答案。 我构建产品已经二十年了,现在我的代码交付量比以往任何时候都多。在过去 60 天里:600,000+ 行生产代码 (35% 测试),每天 10,000-20,000 行,兼职,同时全职运行 YC。这是我上一个 /retro 在 3 个项目中的表现:一周内添加 140,751 行,362 次提交,~115k 净 LOC。
2026 年 — 1,237 次贡献并在增加中:
2013 年 — 当我在 YC 构建 Bookface 时 (772 次贡献):
同一个人。不同的时代。区别在于工具。
gstack 就是我的方法。 它将 Claude Code 变成一个虚拟工程团队 — 一个重新思考产品的 CEO,一个锁定架构的工程经理,一个捕捉 AI 草率的设计师,一个发现生产 bug 的审查员,一个打开真实浏览器的 QA 负责人,一个运行 OWASP + STRIDE 审计的安全官,一个发布 PR 的发布工程师。23 个专家和 8 个强力工具,都是斜杠命令,都是 Markdown,全部免费,MIT 许可。
这是我的开源软件工厂。我每天都用它。我分享它是因为这些工具应该对每个人都可用。
Fork 它。改进它。让它成为你的。如果你想讨厌免费的开源软件 — 欢迎你,但我宁愿你先试试它。
适用人群:
- 创始人和 CEO — 特别是那些仍然想要交付产品的技术创始人
- Claude Code 初学者 — 结构化角色而不是空白提示
- 技术主管和高级工程师 — 每次都有严格的审查、QA 和发布自动化
- 安装 gstack (30 秒 — 见下文)
- 运行
/office-hours— 描述你正在构建什么 - 在任何功能想法上运行
/plan-ceo-review - 在任何有更改的分支上运行
/review - 在你的 staging URL 上运行
/qa - 到此为止。你会知道这是否适合你。
要求: Claude Code,Git,Bun v1.0+,Node.js (仅 Windows)
打开 Claude Code 并粘贴此命令。Claude 会处理其余的。
安装 gstack:运行
git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/.claude/skills/gstack && cd ~/.claude/skills/gstack && ./setup然后在 CLAUDE.md 中添加一个 "gstack" 部分,说明使用 gstack 的 /browse skill 进行所有网页浏览,永远不使用 mcp__claude-in-chrome__* 工具,并列出可用的技能:/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、/connect-chrome、/qa、/qa-only、/design-review、/setup-browser-cookies、/setup-deploy、/retro、/investigate、/document-release、/codex、/cso、/autoplan、/careful、/freeze、/guard、/unfreeze、/gstack-upgrade、/learn。然后询问用户是否也要将 gstack 添加到当前项目,以便队友获得它。
将 gstack 添加到此项目:运行
cp -Rf ~/.claude/skills/gstack .claude/skills/gstack && rm -rf .claude/skills/gstack/.git && cd .claude/skills/gstack && ./setup然后在此项目的 CLAUDE.md 中添加一个 "gstack" 部分,说明使用 gstack 的 /browse skill 进行所有网页浏览,永远不使用 mcp__claude-in-chrome__* 工具,列出可用的技能:/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、/connect-chrome、/qa、/qa-only、/design-review、/setup-browser-cookies、/setup-deploy、/retro、/investigate、/document-release、/codex、/cso、/autoplan、/careful、/freeze、/guard、/unfreeze、/gstack-upgrade、/learn,并告诉 Claude 如果 gstack 技能不起作用,运行cd .claude/skills/gstack && ./setup来构建二进制文件并注册技能。
真实文件会被提交到你的仓库 (不是子模块),所以 git clone 就可以工作。一切都在 .claude/ 内。不接触你的 PATH 或在后台运行。
贡献或需要完整历史? 上面的命令使用
--depth 1进行快速安装。如果你计划贡献或需要完整的 git 历史,请改为完整克隆:git clone https://github.com/garrytan/gstack.git ~/.claude/skills/gstack
gstack 适用于任何支持 SKILL.md 标准 的代理。技能位于 .agents/skills/ 并自动发现。
安装到一个仓库:
git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git .agents/skills/gstack
cd .agents/skills/gstack && ./setup --host codex当从 .agents/skills/gstack 运行 setup 时,它会在同一仓库中安装生成的 Codex 技能旁边,而不会写入 ~/.codex/skills。
为你的用户帐户安装一次:
git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/gstack
cd ~/gstack && ./setup --host codexsetup --host codex 在 ~/.codex/skills/gstack 创建运行时根目录,并在顶层链接生成的 Codex 技能。这避免了从源仓库检出时的重复技能发现。
或者让 setup 自动检测你安装了哪些代理:
git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/gstack
cd ~/gstack && ./setup --host auto对于 Codex 兼容的主机,setup 现在支持来自 .agents/skills/gstack 的仓库本地安装和来自 ~/.codex/skills/gstack 的用户全局安装。所有 31 个技能在所有支持的代理上工作。基于钩子的安全技能 (careful、freeze、guard) 在非 Claude 主机上使用内联安全建议散文。
gstack 适用于 Factory Droid。技能安装到 .factory/skills/ 并自动发现。敏感技能 (ship、land-and-deploy、guard) 使用 disable-model-invocation: true,所以 Droids 不会自动调用它们。
git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/gstack
cd ~/gstack && ./setup --host factory技能安装到 ~/.factory/skills/gstack-*/。重启 droid 以重新扫描技能,然后输入 /qa 开始。
你: 我想为我的日历构建一个每日简报应用。
你: /office-hours
Claude: [询问痛点 — 具体示例,而非假设]
你: 多个 Google 日历,事件信息过时,位置错误。
准备工作永远花不完,结果也不够好...
Claude: 我要对你框架提出质疑。你说"每日简报应用"。
但你实际描述的是个人 AI 幕僚长。
[提取 5 个你没有意识到的能力]
[质疑 4 个前提 — 你同意、不同意或调整]
[生成 3 种实现方法及工作量估算]
推荐:明天发布最窄的楔子,从实际使用中学习。
完整愿景是 3 个月的项目 — 从真正有效的
每日简报开始。
[编写设计文档 → 自动馈送到下游技能]
你: /plan-ceo-review
[阅读设计文档,质疑范围,运行 10 部分审查]
你: /plan-eng-review
[数据流、状态机、错误路径的 ASCII 图]
[测试矩阵、失败模式、安全问题]
你: 批准计划。退出计划模式。
[在 11 个文件中编写 2,400 行。约 8 分钟。]
你: /review
[自动修复] 2 个问题。[询问] 竞态条件 → 你批准修复。
你: /qa https://staging.myapp.com
[打开真实浏览器,点击流程,发现并修复 bug]
你: /ship
测试:42 → 51 (+9 新)。PR:github.com/you/app/pull/42
你说"每日简报应用"。代理说"你正在构建 AI 幕僚长" — 因为它听取了你的痛点,而不是你的功能请求。八个命令,端到端。这不是副驾驶。这是一个团队。
gstack 是一个流程,而不是工具集合。技能按冲刺运行的顺序运行:
思考 → 规划 → 构建 → 审查 → 测试 → 发布 → 反思
每个技能馈送到下一个。/office-hours 编写一个设计文档,/plan-ceo-review 阅读它。/plan-eng-review 编写一个测试计划,/qa 接收它。/review 捕获 /ship 验证已修复的 bug。没有任何遗漏,因为每一步都知道之前发生了什么。
| 技能 | 你的专家 | 他们做什么 |
|---|---|---|
/office-hours |
YC Office Hours | 从这里开始。六个强制性问题在编写代码之前重新构建你的产品。对你的框架提出质疑,挑战前提,生成实现替代方案。设计文档馈送到每个下游技能。 |
/plan-ceo-review |
CEO / 创始人 | 重新思考问题。找到隐藏在请求中的 10 星产品。四种模式:扩展、选择性扩展、保持范围、减少。 |
/plan-eng-review |
工程经理 | 锁定架构、数据流、图表、边界情况和测试。将隐藏假设强制公开。 |
/plan-design-review |
高级设计师 | 将每个设计维度评级 0-10,解释 10 是什么样的,然后编辑计划以实现它。AI Slop 检测。互动 — 每个设计选择一个 AskUserQuestion。 |
/design-consultation |
设计合作伙伴 | 从零开始构建完整的系统设计。研究景观,提出创意风险,生成真实的产品模型。 |
/review |
高级工程师 | 找到通过 CI 但在生产中爆炸的 bug。自动修复明显的 bug。标记完整性差距。 |
/investigate |
调试器 | 系统性根本原因调试。铁律:没有调查就没有修复。跟踪数据流,测试假设,在 3 次修复失败后停止。 |
/design-review |
编码设计师 | 与 /plan-design-review 相同的审计,然后修复发现的内容。原子提交,前后截图。 |
/design-shotgun |
设计探索者 | 生成多个 AI 设计变体,在浏览器中打开比较板,迭代直到你批准方向。品味记忆偏向你的偏好。 |
/design-html |
设计工程师 | 从 /design-shotgun 获取批准的模型并生成生产质量的 HTML,使用 Pretext 进行计算文本布局。文本在调整大小时重新流动,高度根据内容调整。智能 API 路由为每种设计类型选择正确的 Pretext 模式。框架检测用于 React/Svelte/Vue。 |
/qa |
QA 负责人 | 测试你的应用,发现 bug,用原子提交修复它们,重新验证。为每个修复自动生成回归测试。 |
/qa-only |
QA 报告员 | 与 /qa 相同的方法,但仅报告。没有代码更改的纯 bug 报告。 |
/cso |
首席安全官 | OWASP Top 10 + STRIDE 威胁模型。零噪声:17 个误报排除,8/10+ 置信度门限,独立发现验证。每个发现包括具体的利用场景。 |
/ship |
发布工程师 | 同步 main,运行测试,审计覆盖率,推送,打开 PR。如果你没有测试框架,引导它。 |
/land-and-deploy |
发布工程师 | 合并 PR,等待 CI 和部署,验证生产健康状况。从"已批准"到"在生产中验证"的一个命令。 |
/canary |
SRE | 部署后监控循环。监视控制台错误、性能回归和页面失败。 |
/benchmark |
性能工程师 | 基线页面加载时间、Core Web Vitals 和资源大小。在每个 PR 上比较前后。 |
/document-release |
技术文档 | 更新所有项目文档以匹配你刚刚发布的内容。自动捕获过时的 README。 |
/retro |
工程经理 | 团队感知每周回顾。每人细分、发布连续性、测试健康趋势、成长机会。/retro global 跨所有项目和 AI 工具 (Claude Code、Codex、Gemini) 运行。 |
/browse |
QA 工程师 | 给 Agent 眼睛。真实 Chromium 浏览器,真实点击,真实截图。每个命令约 100ms。$B connect 启动你的真实 Chrome 作为有头窗口 — 实时观看每个动作。 |
/setup-browser-cookies |
会话管理器 | 将 cookies 从你的真实浏览器 (Chrome、Arc、Brave、Edge) 导入无头会话。测试经过身份验证的页面。 |
/autoplan |
审查管道 | 一个命令,完全审查的计划。自动运行 CEO → 设计 → 工程审查,具有编码的决策原则。仅显示品味决策供你批准。 |
/learn |
记忆 | 管理 gstack 在会话中学到的内容。审查、搜索、修剪和导出项目特定模式、陷阱和偏好。学习在会话间复合,以便 gstack 随着时间推移在你的代码库上变得更聪明。 |
| 技能 | 它做什么 |
|---|---|
/codex |
第二意见 — 来自 OpenAI Codex CLI 的独立代码审查。三种模式:审查 (通过/失败门限)、对抗性挑战和开放咨询。当 /review 和 /codex 都运行时进行跨模型分析。 |
/careful |
安全护栏 — 在破坏性命令之前发出警告 (rm -rf、DROP TABLE、force-push)。说"小心点"以激活。覆盖任何警告。 |
/freeze |
编辑锁定 — 将文件编辑限制到一个目录。在调试期间防止范围外的意外更改。 |
/guard |
完全安全 — 一个命令中的 /careful + /freeze。生产的最大安全性。 |
/unfreeze |
解锁 — 移除 /freeze 边界。 |
/connect-chrome |
Chrome 控制器 — 使用 Side Panel 扩展启动 Chrome。实时观看每个动作,检查任何元素上的 CSS,清理页面并截图。每个标签都有自己的 agent。 |
/setup-deploy |
部署配置器 — /land-and-deploy 的一次性设置。检测你的平台、生产 URL 和部署命令。 |
/gstack-upgrade |
自我更新器 — 将 gstack 升级到最新版本。检测全局与 vendored 安装,同步两者,显示更改内容。 |
gstack 适用于一个冲刺。当十个同时运行时变得有趣。
设计是核心。 /design-consultation 从零开始构建你的设计系统,研究空间,提出创意风险,并编写 DESIGN.md。/design-shotgun 生成多个视觉变体并打开比较板,以便你选择方向。/design-html 获取该批准的模型并生成生产质量的 HTML,使用 Pretext,其中文本在调整大小时实际重新流动,而不是因硬编码高度而破坏。然后 /design-review 和 /plan-eng-review 阅读你选择的内容。设计决策流经整个系统。
/qa 是一个巨大的解锁。 它让我从 6 个并行工作者增加到 12 个。Claude Code 说*"我看到问题"*然后实际修复它,生成回归测试,并验证修复 — 这改变了我的工作方式。Agent 现在有眼睛了。
智能审查路由。 就像在一个运行良好的初创公司:CEO 不需要查看 infra bug 修复,设计审查不需要用于后端更改。gstack 跟踪运行了哪些审查,找出什么是合适的,只是做聪明的事情。审查准备仪表板告诉你在发布之前你的立场。
测试一切。 如果你的项目没有测试框架,/ship 会从头开始引导它。每次 /ship 运行都会生成覆盖率审计。每次 /qa bug 修复都会生成回归测试。100% 测试覆盖率是目标 — 测试使 vibe 编码安全而不是 yolo 编码。
/document-release 是你从未有过的工程师。 它读取项目中的每个文档文件,交叉引用差异,并更新所有漂移的内容。README、ARCHITECTURE、CONTRIBUTING、CLAUDE.md、TODOS — 所有内容自动保持最新。现在 /ship 自动调用它 — 文档保持最新,无需额外命令。
真实浏览器模式。 $B connect 启动你的实际 Chrome 作为由 Playwright 控制的有头窗口。你实时观看 Claude 点击、填写和导航 — 同一个窗口,同一个屏幕。顶部边缘的微妙绿色微光告诉你哪个 Chrome 窗口 gstack 控制。所有现有的浏览命令都保持不变。$B disconnect 返回无头模式。Chrome 扩展 Side Panel 显示每个命令的实时活动源和聊天侧边栏,你可以在其中指导 Claude。这是共同存在 — Claude 不是远程控制隐藏的浏览器,它与你坐在同一个驾驶舱中。
侧边栏 agent — 你的 AI 浏览器助手。 在 Chrome 侧边栏中输入自然语言指令,子 Claude 实例执行它们。"导航到设置页面并截图。""用测试数据填写此表单。""遍历此列表中的每个项目并提取价格。"每个任务最多 5 分钟。侧边栏 agent 在隔离的会话中运行,因此它不会干扰你的主 Claude Code 窗口。这就像在浏览器中有第二双手。
个人自动化。 侧边栏 agent 不仅用于开发工作流。示例:"浏览我孩子的学校家长门户,将所有其他家长的姓名、电话号码和照片添加到我的 Google 联系人中。" 两种身份验证方法:(1) 在有头浏览器中登录一次 — 你的会话持久化,或 (2) 运行 /setup-browser-cookies 从你的真实 Chrome 导入 cookies。经过身份验证后,Claude 导航目录,提取数据,并创建联系人。
AI 卡住时的浏览器移交。 遇到 CAPTCHA、身份验证墙或 MFA 提示?$B handoff 在完全相同的页面打开一个可见的 Chrome,所有你的 cookies 和标签都完好无损。解决问题,告诉 Claude 你完成了,$B resume 从中断的地方继续。Agent 甚至在 3 次连续失败后自动建议它。
多 AI 第二意见。 /codex 从 OpenAI 的 Codex CLI 获得独立审查 — 一个完全不同的 AI 查看相同的差异。三种模式:带有通过/失败门限的代码审查、主动尝试破坏你的代码的对抗性挑战,以及具有会话连续性的开放咨询。当 /review (Claude) 和 /codex (OpenAI) 都审查了同一个分支时,你将获得跨模型分析,显示哪些发现重叠,哪些是每个唯一的。
按需安全护栏。 说"小心点"并且 /careful 在任何破坏性命令之前发出警告 — rm -rf、DROP TABLE、force-push、git reset --hard。/freeze 在调试期间将编辑锁定到一个目录,以便 Claude 不会意外"修复"不相关的代码。/guard 激活两者。/investigate 自动冻结到正在调查的模块。
主动技能建议。 gstack 注意到你处于什么阶段 — 头脑风暴、审查、调试、测试 — 并建议正确的技能。不喜欢它?说"停止建议",它会跨会话记住。
gstack 适用于一个冲刺。当十个同时运行时,它是变革性的。
Conductor 并行运行多个 Claude Code 会话 — 每个都在自己的隔离工作空间中。一个会话在新想法上运行 /office-hours,另一个在 PR 上做 /review,第三个实现功能,第四个在 staging 上运行 /qa,还有六个在其他分支上。全部同时进行。我经常运行 10-15 个并行冲刺 — 这是目前的实际最大值。
冲刺结构是使并行性工作的原因。没有流程,十个 agent 是十个混乱的来源。有了流程 — 思考、规划、构建、审查、测试、发布 — 每个 agent 都知道确切要做什么以及何时停止。你管理它们的方式就像 CEO 管理团队:检查重要的决策,让其余的运行。
免费、MIT 许可、开源。无高级层,无等待名单。
我开源了我如何构建软件。你可以 fork 它并让它成为你自己的。
我们正在招聘。 想要每天交付 10K+ LOC 并帮助加强 gstack? 来 YC 工作 — ycombinator.com/software 极具竞争力的薪水和股权。旧金山,Dogpatch 区。
| 文档 | 它涵盖的内容 |
|---|---|
| 技能深度探讨 | 每个技能的哲学、示例和工作流程 (包括 Greptile 集成) |
| 构建者哲学 | 构建者哲学:煮沸湖水、构建前搜索、三层知识 |
| 架构 | 设计决策和系统内部 |
| 浏览器参考 | /browse 的完整命令参考 |
| 贡献 | 开发设置、测试、贡献模式和开发模式 |
| 变更日志 | 每个版本的新内容 |
gstack 包含可选使用遥测,以帮助改进项目。以下是确切发生的情况:
- 默认关闭。 除非你明确说是,否则不会发送任何东西。
- 首次运行时, gstack 询问你是否要分享匿名使用数据。你可以说不。
- 发送的内容 (如果你选择加入): 技能名称、持续时间、成功/失败、gstack 版本、操作系统。就是这样。
- 永不发送的内容: 代码、文件路径、仓库名称、分支名称、提示或任何用户生成的内容。
- 随时更改:
gstack-config set telemetry off立即禁用所有内容。
数据存储在 Supabase (开源 Firebase 替代品)。架构在 supabase/migrations/ 中 — 你可以验证确切收集了什么。仓库中的 Supabase 可发布密钥是公共密钥 (如 Firebase API 密钥) — 行级安全策略拒绝所有直接访问。遥测通过验证的边缘函数流动,这些函数强制执行架构检查、事件类型允许列表和字段长度限制。
本地分析始终可用。 运行 gstack-analytics 从本地 JSONL 文件查看你的个人使用仪表板 — 无需远程数据。
技能未显示? cd ~/.claude/skills/gstack && ./setup
/browse 失败? cd ~/.claude/skills/gstack && bun install && bun run build
安装过时? 运行 /gstack-upgrade — 或在 ~/.gstack/config.yaml 中设置 auto_upgrade: true
想要更短的命令? cd ~/.claude/skills/gstack && ./setup --no-prefix — 从 /gstack-qa 切换到 /qa。你的选择会在未来的升级中被记住。
想要命名空间命令? cd ~/.claude/skills/gstack && ./setup --prefix — 从 /qa 切换到 /gstack-qa。如果你与 gstack 一起运行其他技能包,这很有用。
Codex 说"由于 SKILL.md 无效而跳过加载技能"? 你的 Codex 技能描述过时了。修复:cd ~/.codex/skills/gstack && git pull && ./setup --host codex — 或对于仓库本地安装:cd "$(readlink -f .agents/skills/gstack)" && git pull && ./setup --host codex
Windows 用户: gstack 通过 Git Bash 或 WSL 在 Windows 11 上工作。除了 Bun 之外还需要 Node.js — Bun 在 Windows 上对 Playwright 的管道传输有一个已知错误 (bun#4253)。浏览服务器自动回退到 Node.js。确保 bun 和 node 都在你的 PATH 上。
Claude 说它看不到技能? 确保你项目的 CLAUDE.md 有一个 gstack 部分。添加此:
## gstack
使用 gstack 的 /browse 进行所有网页浏览。永远不使用 mcp__claude-in-chrome__* 工具。
可用技能:/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、/connect-chrome、/qa、/qa-only、/design-review、
/setup-browser-cookies、/setup-deploy、/retro、/investigate、/document-release、/codex、
/cso、/autoplan、/careful、/freeze、/guard、/unfreeze、/gstack-upgrade、/learn。
MIT。永远免费。去构建一些东西。

