工具技能(SKILLS) : gstack一支可协同的虚拟工程团队
gstack · AI驱动的软件工厂详解 · 已生成
📊 项目概览
| 维度 | 数量 | 说明 |
|---|---|---|
| 专家技能 | 23个 | office-hours→plan→design→review→qa→cso→ship→canary→retro |
| 工具技能 | 8个 | browse/scrape/skillify/learn/context-save/restore/health/diagram等 |
| 构建哲学 | 3条 | 煮沸海洋 / 先搜索再构建 / 用户主权 |
| 安全层 | 6层 | L1-L3内容安全 → L4 ML分类器 → L4b对话分类器 → L5金丝雀令牌 → L6集成组合器 |
| iOS能力层 | 4级 | observe / interact / mutate / restore |
🔥 核心价值:一个人 = 一个团队
| 传统方式 | gstack方式 |
|---|---|
| 产品构思靠灵感 | /office-hours 六问深挖+重新框定 |
| 架构靠经验猜测 | /plan-eng-review 图表强制暴露隐藏假设 |
| 审查只过CI | /review + /codex 双AI跨模型分析 |
| QA手动点页面 | /qa 读diff自动测试+回归测试自动生成 |
| 安全靠运气 | /cso OWASP Top 10 + STRIDE全扫描 |
| 发布手动且拖延 | /ship → /land-and-deploy 一条命令到生产 |
| 设计AI slop泛滥 | /design-review 80项审计+AI Slop评分 D→A |
| 跨会话无记忆 | /learn 持久化学习+自动”Prior learning applied” |
🏭 gstack · AI驱动的软件工厂
Garry Tan (YC CEO) 的开源AI工程流水线 · 23个专家 + 8个工具 · MIT协议
CEO思维
Eng Manager
设计师
代码审查
QA测试
安全审计
发布工程
性能基准
iOS真机
跨AI协作
核心命题:一个人 + AI = 一个团队的产出。Garry Tan 2026年逻辑代码变更率是2013年的 810×。60天内:3个生产服务、40+功能,兼职完成,同时全职运营YC。
gstack 把 Claude Code 变成 虚拟工程团队——CEO重新思考产品、Eng Manager锁定架构、设计师捕捉AI slop、Reviewer发现生产Bug、QA打开真浏览器、CSO跑OWASP审计、Release Engineer发布PR。
📋 一、技能概览
🎯 技能定位
gstack — Claude Code的虚拟工程团队。23个专家技能 + 8个工具技能,全部slash命令,全部Markdown,MIT协议。
触发场景:产品构思、架构评审、代码审查、QA测试、安全审计、发布部署、设计审查、性能基准、iOS真机测试、跨AI协作
触发场景:产品构思、架构评审、代码审查、QA测试、安全审计、发布部署、设计审查、性能基准、iOS真机测试、跨AI协作
📊 核心数据
– 23个专家技能 + 8个工具技能
– 持久化Chromium浏览器(~100ms/命令)
– 6层提示注入防御
– UniFFI IPC Schema自动生成
– 75项原生规范审计
– 80项设计审计
– OWASP Top 10 + STRIDE安全审计
– iOS真机USB CoreDevice隧道
– 持久化Chromium浏览器(~100ms/命令)
– 6层提示注入防御
– UniFFI IPC Schema自动生成
– 75项原生规范审计
– 80项设计审计
– OWASP Top 10 + STRIDE安全审计
– iOS真机USB CoreDevice隧道
💡 一段话总结
gstack不是一个工具,是一个 软件工厂。它把产品生命周期中每个角色都AI化:
构思(/office-hours)→ 规划(/plan-ceo-review → /plan-design-review → /plan-eng-review)→ 实现(/design-consultation → /design-html)→ 审查(/review + /codex)→ 测试(/qa + /benchmark)→ 安全(/cso)→ 发布(/ship → /land-and-deploy)→ 监控(/canary)→ 复盘(/retro)
每个环节都有持久化记忆(/learn),上下文可保存恢复(/context-save / /context-restore),浏览器提供真实视觉验证(/browse)。
构思(/office-hours)→ 规划(/plan-ceo-review → /plan-design-review → /plan-eng-review)→ 实现(/design-consultation → /design-html)→ 审查(/review + /codex)→ 测试(/qa + /benchmark)→ 安全(/cso)→ 发布(/ship → /land-and-deploy)→ 监控(/canary)→ 复盘(/retro)
每个环节都有持久化记忆(/learn),上下文可保存恢复(/context-save / /context-restore),浏览器提供真实视觉验证(/browse)。
🏛️ 二、三大构建哲学
哲学一:煮沸海洋
“不要煮沸海洋”在工程时间是瓶颈的年代是对的。那个时代结束了。AI辅助编码让完整性的边际成本趋近于零,旧的谨慎悄然变成了借口。
海洋是目的地——100%测试覆盖、完整功能实现、所有边界情况、完整错误路径。你一个湖一个湖地到达那里:每个湖是一个可煮沸的单元。
完整性是廉价的:评估”方案A(完整,~150行)vs 方案B(90%,~80行)”——始终选A。70行增量用AI编码只需几秒。”发布捷径”是工程时间作为瓶颈时代的遗留思维。
反模式:”选B——90%覆盖且代码更少” / “测试推迟到后续PR” / “这需要2周”(应该说:2周人工 / ~1小时AI辅助)
海洋是目的地——100%测试覆盖、完整功能实现、所有边界情况、完整错误路径。你一个湖一个湖地到达那里:每个湖是一个可煮沸的单元。
完整性是廉价的:评估”方案A(完整,~150行)vs 方案B(90%,~80行)”——始终选A。70行增量用AI编码只需几秒。”发布捷径”是工程时间作为瓶颈时代的遗留思维。
反模式:”选B——90%覆盖且代码更少” / “测试推迟到后续PR” / “这需要2周”(应该说:2周人工 / ~1小时AI辅助)
哲学二:先搜索再构建
1000×工程师的第一直觉是”有人已经解决了吗?”而非”让我从零设计”。
三层知识:
– Layer 1:久经考验——标准模式、久经沙场的方法。检查成本趋近于零
– Layer 2:新且流行——当前最佳实践、博客、生态趋势。搜索但审视——人群可能是错的
– Layer 3:第一性原理——从具体问题推理出的原创观察。最有价值。优于一切
尤里卡时刻:搜索最宝贵的结果不是找到可复制的解决方案,而是理解所有人为什么这样做 + 用第一性原理推理他们的假设 + 发现常规方法为什么错了。这是10/10。
三层知识:
– Layer 1:久经考验——标准模式、久经沙场的方法。检查成本趋近于零
– Layer 2:新且流行——当前最佳实践、博客、生态趋势。搜索但审视——人群可能是错的
– Layer 3:第一性原理——从具体问题推理出的原创观察。最有价值。优于一切
尤里卡时刻:搜索最宝贵的结果不是找到可复制的解决方案,而是理解所有人为什么这样做 + 用第一性原理推理他们的假设 + 发现常规方法为什么错了。这是10/10。
哲学三:用户主权
AI模型推荐。用户决定。这是覆盖所有其他规则的一条规则。
两个AI模型同意一个变更——这是强信号,不是命令。用户总有模型缺乏的上下文:领域知识、商业关系、战略时机、个人品味、未分享的未来计划。
正确模式是 生成-验证循环:AI生成推荐 → 用户验证并决定 → AI永远不因自信跳过验证步骤。
Karpathy称之为”钢铁侠战衣”哲学:伟大AI产品增强用户,而非替代。Simon Willison警告”代理是复杂性的商人”——人类离开循环后,他们不知道发生了什么。
两个AI模型同意一个变更——这是强信号,不是命令。用户总有模型缺乏的上下文:领域知识、商业关系、战略时机、个人品味、未分享的未来计划。
正确模式是 生成-验证循环:AI生成推荐 → 用户验证并决定 → AI永远不因自信跳过验证步骤。
Karpathy称之为”钢铁侠战衣”哲学:伟大AI产品增强用户,而非替代。Simon Willison警告”代理是复杂性的商人”——人类离开循环后,他们不知道发生了什么。
AI辅助压缩比
| 任务类型 | 人工团队 | AI辅助 | 压缩比 |
|---|---|---|---|
| 脚手架/样板代码 | 2天 | 15分钟 | ~100× |
| 测试编写 | 1天 | 15分钟 | ~50× |
| 功能实现 | 1周 | 30分钟 | ~30× |
| Bug修复+回归测试 | 4小时 | 15分钟 | ~20× |
| 架构/设计 | 2天 | 4小时 | ~5× |
| 研究/探索 | 1天 | 3小时 | ~3× |
🧭 三、23个专家技能 + 8个工具技能
🏗️ 产品构思与规划(5个)
| 技能 | 角色 | 做什么 |
|---|---|---|
/office-hours | YC合伙人 | 6个强制问题重新框定产品。挑战前提,生成实现替代方案。设计文档直接喂入下游技能 |
/spec | 规格作者 | 5阶段将模糊意图转化为精确可执行规格。可直接创建GitHub Issue |
/plan-ceo-review | CEO/创始人 | 重新思考问题。找到请求中隐藏的10星产品。4种模式:扩展/选择性扩展/保持/缩减 |
/plan-eng-review | Eng Manager | 锁定架构、数据流、图表、边界情况、测试。强制暴露隐藏假设。图表使规划无法含糊 |
/plan-design-review | 高级设计师 | 交互式计划模式设计审查。7轮评分0-10,解释10分长什么样,修复计划 |
🎨 设计系统(4个)
| 技能 | 角色 | 做什么 |
|---|---|---|
/design-consultation | 设计伙伴 | 从零构建完整设计系统。调研竞品,提出安全选择+创意风险,生成HTML预览 |
/design-review | 会写代码的设计师 | 80项在线视觉审计+修复循环。原子提交,前后截图。AI Slop评分 D→A |
/design-shotgun | 设计探索者 | 生成3个AI设计变体,浏览器对比板,迭代直到批准方向。品味记忆偏向偏好 |
/design-html | 设计工程师 | Pretext原生HTML生成。文本重排、高度自适应、智能API路由、框架检测 |
🔍 审查与调试(4个)
| 技能 | 角色 | 做什么 |
|---|---|---|
/review | 偏执Staff Engineer | 找通过CI但在生产爆炸的Bug。自动修复明显的。标记完整性缺口。枚举处理器追踪 |
/investigate | 调试器 | 系统化根因调试。铁律:无调查不修复。3次修复失败后质疑架构而非盲目尝试 |
/codex | 第二意见 | OpenAI Codex独立审查。3模式:review/challenge/consult。跨模型分析:两个医生同一病人 |
/autoplan | 审查流水线 | 一条命令:CEO→设计→Eng自动运行。6条编码决策原则。仅品味决策需人工批准 |
🧪 测试与质量(4个)
| 技能 | 角色 | 做什么 |
|---|---|---|
/qa | QA Lead | 测试应用、找Bug、原子提交修复、重新验证。自动生成回归测试。4模式:diff/全量/quick/regression |
/qa-only | QA Reporter | 同/qa方法论但只报告不修改。纯Bug报告 |
/benchmark | 性能工程师 | 基线化页面加载、Core Web Vitals、资源大小。PR前后对比。趋势追踪 |
/canary | SRE | 部署后监控循环。控制台错误、性能回归、页面失败。周期截图与基线对比 |
🔒 安全与发布(4个)
| 技能 | 角色 | 做什么 |
|---|---|---|
/cso | 首席安全官 | OWASP Top 10 + STRIDE威胁建模。注入/认证/加密/访问控制全扫描 |
/ship | 发布工程师 | 同步main、跑测试、审计覆盖、推送、开PR。无测试框架则自动引导 |
/land-and-deploy | 发布工程师 | 合并PR、等CI、部署、验证生产健康。一条命令从”approved”到”verified in production” |
/setup-deploy | 部署配置器 | 一次性部署配置。自动检测平台(Fly/Render/Vercel/Netlify/Heroku/GHA) |
📱 iOS真机(4个)
| 技能 | 角色 | 做什么 |
|---|---|---|
/ios-qa | iOS QA Lead | USB CoreDevice隧道+嵌入式StateServer。读Swift源码、codegen访问器、驱动真iPhone |
/ios-fix | iOS修复器 | 捕获复现快照→修复→重编译→重部署→验证。快照成为回归测试fixture |
/ios-design-review | iOS设计师 | 真iPhone上10维Apple HIG审计。每维度0-10分,<7分提出修复建议 |
/ios-sync | iOS桥接同步 | 升级gstack或新增@Observable类后重新生成访问器和Swift模板 |
🛠️ 工具技能(8个)
| 技能 | 角色 | 做什么 |
|---|---|---|
/browse | QA工程师 | 持久化Chromium浏览器。~100ms/命令。70+命令。ref元素选择。3模式:headless/headed/pair-agent |
/scrape | 数据提取器 | 从网页拉数据。首次原型~30s,后续编码化运行~200ms |
/skillify | 技能编码器 | 将/scrape原型编码为永久Playwright脚本+测试+fixture |
/learn | 记忆 | 管理跨会话学习。审查、搜索、修剪、导出项目特定模式和偏好 |
/context-save | 保存状态 | 保存工作上下文(git状态、决策、剩余工作),任何未来会话可恢复 |
/context-restore | 恢复状态 | 从保存的上下文恢复,跨Conductor工作区交接 |
/retro | Eng Manager | 团队感知周复盘。每人分解、发布连续、测试健康趋势、成长机会 |
/health | 质量仪表板 | 类型检查+lint+测试+死代码检测。加权0-10分,趋势追踪 |
🛡️ 安全护栏 + 其他
| 技能 | 角色 | 做什么 |
|---|---|---|
/careful | 安全护栏 | 危险命令前警告(rm -rf / DROP TABLE / force-push / reset –hard) |
/freeze | 编辑锁 | 限制文件编辑到单个目录。调试时的意外防护 |
/guard | 完整安全 | /careful + /freeze 一条命令。生产工作最大安全 |
/pair-agent | 远程代理桥 | 配对远程AI代理与本地浏览器。范围隧道+锁定允许列表+会话令牌 |
/document-release | 技术作者 | 更新所有项目文档匹配刚发布的内容。自动捕获过时README |
/document-generate | 技术作者 | 为功能生成Diataxis文档(教程/how-to/参考/解释) |
/make-pdf | PDF生成器 | Markdown→出版级PDF。Mermaid/Excalidraw渲染为矢量图 |
/diagram | 图表制作 | 英文→mermaid源码+可编辑.excalidraw+渲染SVG/PNG。完全离线 |
🌐 四、浏览器架构 — 技能的”眼睛”
核心洞察
AI代理与浏览器交互需要 亚秒延迟 和 持久状态。如果每次命令冷启动浏览器,等3-5秒。如果浏览器在命令间死亡,丢失cookies/tabs/登录。
gstack运行长驻Chromium守护进程,CLI通过localhost HTTP通信。首次调用~3s启动,后续每次~100-200ms。
gstack运行长驻Chromium守护进程,CLI通过localhost HTTP通信。首次调用~3s启动,后续每次~100-200ms。
Claude Code
$B snapshot -i
$B snapshot -i
→
CLI (编译二进制)
读state文件
POST /command
读state文件
POST /command
→
Server (Bun.serve)
分发命令
与Chromium通信
分发命令
与Chromium通信
→
Chromium (headless)
持久tabs
cookies保留
30min空闲超时
持久tabs
cookies保留
30min空闲超时
为什么选Bun
编译二进制
bun build --compile → 单个~58MB可执行文件。无node_modules、无npx、无PATH配置原生SQLite
Cookie解密直接读Chromium的SQLite DB。无需better-sqlite3、无需gyp编译
原生TypeScript
bun run server.ts 直接运行。无编译步骤、无ts-node内置HTTP
Bun.serve() 快速简单。~10个路由,不需要Express/FastifyRef系统 — 无CSS选择器的元素寻址
工作原理:
为什么用Locator而非DOM注入:
– CSP:许多生产站点阻止DOM修改 → Locator外部于DOM
– React/Vue水合:框架协调可剥离注入属性 → Locator不受影响
– Shadow DOM:无法从外部触及shadow根 → Locator通过ARIA树工作
过期检测:SPA可在不触发framenavigated的情况下修改DOM。
snapshot -i → Playwright的 page.accessibility.snapshot() → 解析ARIA树 → 分配 @e1, @e2, @e3... → 构建 getByRole(role, {name}).nth(index) Locator → 存储Map为什么用Locator而非DOM注入:
– CSP:许多生产站点阻止DOM修改 → Locator外部于DOM
– React/Vue水合:框架协调可剥离注入属性 → Locator不受影响
– Shadow DOM:无法从外部触及shadow根 → Locator通过ARIA树工作
过期检测:SPA可在不触发framenavigated的情况下修改DOM。
resolveRef() 在使用前执行 count() 检查——~5ms开销而非30秒超时。
🛡️ 五、6层提示注入防御
Chrome侧栏代理读取敌意网页——这是gstack最暴露于提示注入的部分。防御是分层的,非单点。
| 层 | 名称 | 机制 |
|---|---|---|
| L1-L3 | 内容安全 | 数据标记 + 隐藏元素剥离 + ARIA正则 + URL黑名单 + 信任边界信封包装。应用于每个页面内容命令和工具输出 |
| L4 | ML分类器 (TestSavantAI) | 22MB BERT-small ONNX模型(int8量化),本地运行无网络。扫描每条用户消息和工具输出。可选721MB DeBERTa-v3集成 |
| L4b | 对话分类器 | Claude Haiku扫描完整对话形状(消息+工具调用+输出),非仅文本。门控LOG_ONLY:0.40 |
| L5 | 金丝雀令牌 | 随机令牌注入系统提示。滚动缓冲检测跨text_delta和input_json_delta流。令牌泄漏→确定性BLOCK |
| L6 | 集成组合器 | BLOCK需两个ML分类器在≥WARN(0.75)一致同意,非单次高置信命中。工具输出扫描单层直接BLOCK |
双监听器隧道架构
本地监听器(127.0.0.1:LOCAL_PORT):服务完整命令面 + cookie-picker + inspector + welcome
隧道监听器(127.0.0.1:TUNNEL_PORT):仅服务锁定允许列表——
安全属性来自物理端口分离:隧道调用者无法到达
隧道监听器(127.0.0.1:TUNNEL_PORT):仅服务锁定允许列表——
/connect(配对仪式)+ /command(范围令牌+命令白名单)+ /sidebar-chat安全属性来自物理端口分离:隧道调用者无法到达
/health或/cookie-picker——这些路径在该TCP socket上不存在。头部推断不可靠;socket分离是。
🎬 六、从零构建「智能列表发布系统」
场景:你在做一个Craigslist风格的列表应用。用户说”让卖家上传物品照片”。这个看似简单的需求,在gstack流水线下会如何被重新思考、设计、实现、审查、测试、安全审计、发布、监控?
Phase 1 /office-hours — 重新框定产品
1
六问深挖:YC风格合伙人不接”上传照片”的字面请求。追问痛点——具体例子,非假设。
用户描述:助手遗漏事项、多Google日历信息过时、准备文档是AI slop、活动地点错误追踪耗时…
用户描述:助手遗漏事项、多Google日历信息过时、准备文档是AI slop、活动地点错误追踪耗时…
2
重新框定:”你说的不是’日历简报应用’。你描述的是个人参谋长AI。”提取5个用户未意识到的能力:
① 跨账户监控日历 + 检测过时信息
② 生成真正的准备功课(非物流摘要)
③ 管理CRM——谁、关系、历史
④ 优先级排序——标记何时需提前准备
⑤ 用金钱换杠杆——主动寻找委托/自动化机会
① 跨账户监控日历 + 检测过时信息
② 生成真正的准备功课(非物流摘要)
③ 管理CRM——谁、关系、历史
④ 优先级排序——标记何时需提前准备
⑤ 用金钱换杠杆——主动寻找委托/自动化机会
3
前提挑战:呈现可证伪声明让用户验证——”日历是锚数据源,价值在智能层”、”CRM是must-have非nice-to-have”…每个接受的前提成为设计文档的承重墙
4
实现替代方案:3个具体方案+诚实工作量估算
– 方案A:日简报优先(最窄楔子,M工作量,人工~3周/CC~2天)
– 方案B:CRM优先(L工作量,人工~6周/CC~4天)
– 方案C:全愿景(XL工作量,人工~3月/CC~1.5周)
推荐A——从真实使用中学习,CRM数据第二周自然到来
– 方案A:日简报优先(最窄楔子,M工作量,人工~3周/CC~2天)
– 方案B:CRM优先(L工作量,人工~6周/CC~4天)
– 方案C:全愿景(XL工作量,人工~3月/CC~1.5周)
推荐A——从真实使用中学习,CRM数据第二周自然到来
5
设计文档:写入
~/.gstack/projects/,直接喂入下游 /plan-ceo-review 和 /plan-eng-reviewPhase 2 /plan-ceo-review — 找到10星产品
1
Brian Chesky模式:不实现明显的ticket,从用户视角重新思考问题。
“让卖家上传照片” → 弱助手加文件选择器保存图片。
这不是真正的产品。
“让卖家上传照片” → 弱助手加文件选择器保存图片。
这不是真正的产品。
2
重新提问:”照片上传”是特性吗?真正的特性可能是帮助创建一个真正能卖出去的列表:
– 能从照片识别产品?
– 能推断SKU/型号?
– 能搜索网络并自动起草标题和描述?
– 能拉取规格、类别、定价对比?
– 能建议哪张照片转化率最高?
– 能检测上传照片丑/暗/杂乱/低信任?
– 能让体验感觉高端而非2007年死表单?
– 能从照片识别产品?
– 能推断SKU/型号?
– 能搜索网络并自动起草标题和描述?
– 能拉取规格、类别、定价对比?
– 能建议哪张照片转化率最高?
– 能检测上传照片丑/暗/杂乱/低信任?
– 能让体验感觉高端而非2007年死表单?
3
4种模式:SCOPE EXPANSION(梦大)/ SELECTIVE EXPANSION(逐个挑选)/ HOLD SCOPE(最大严谨)/ SCOPE REDUCTION(最小可行版)
视野和决策持久化到
视野和决策持久化到
~/.gstack/projects/,超越对话存活Phase 3 /plan-eng-review — 让想法可构建
1
技术脊柱:一旦产品方向正确,需要完全不同的智能——不是更多发散,而是:
架构 / 系统边界 / 数据流 / 状态转换 / 失败模式 / 边界情况 / 信任边界 / 测试覆盖
架构 / 系统边界 / 数据流 / 状态转换 / 失败模式 / 边界情况 / 信任边界 / 测试覆盖
2
图表解锁:LLM在被迫画系统时变得远更完整。序列图、状态图、组件图、数据流图、测试矩阵——图表强制隐藏假设暴露,使含糊规划更难。
– 上传/分类/丰富/草稿生成的架构?
– 哪些步骤同步,哪些后台作业?
– 上传成功但丰富失败怎么办?
– 产品识别低置信度怎么办?
– 重试如何工作?如何防止重复作业?
– 上传/分类/丰富/草稿生成的架构?
– 哪些步骤同步,哪些后台作业?
– 上传成功但丰富失败怎么办?
– 产品识别低置信度怎么办?
– 重试如何工作?如何防止重复作业?
3
Review Readiness仪表板:每次审查后显示仪表板。Eng Review是唯一必需门控。CEO和Design是信息性的。
Phase 3.5 /plan-design-review — 计划中的设计缺口
1
7轮评分:信息架构 → 交互状态覆盖 → 用户旅程 → AI slop风险 → 设计系统对齐 → 响应式/无障碍 → 未解决设计决策
每维度0-10分,解释10分长什么样。低分=大量修复,高分=快速通过。
每维度0-10分,解释10分长什么样。低分=大量修复,高分=快速通过。
2
典型发现:”计划描述用户仪表板但从未指定用户首先看到什么。说’带图标的卡片’——看起来像每个SaaS模板。提到0个加载状态、0个空状态、无移动行为。”
初始评分4/10 → 修复后8/10
初始评分4/10 → 修复后8/10
Phase 4 /design-consultation + /design-shotgun + /design-html — 设计到代码
1
/design-consultation:从零构建设计系统。调研竞品(Linear/Vercel/Datadog/Posthog),提出安全选择+创意风险:
– 安全:Geist正文、Slate中性色、Grid纪律布局(匹配类别期望)
– 风险:Instrument Serif显示标题(dev工具无人用serif)、单teal强调色(非blue)、4px紧凑密度
生成HTML预览页——真实产品页面,非色板样本
– 安全:Geist正文、Slate中性色、Grid纪律布局(匹配类别期望)
– 风险:Instrument Serif显示标题(dev工具无人用serif)、单teal强调色(非blue)、4px紧凑密度
生成HTML预览页——真实产品页面,非色板样本
2
/design-shotgun:生成3个视觉变体 → 浏览器对比板 → 批准方向 →
approved.json 喂入 /design-html3
/design-html:Pretext原生HTML生成。文本重排、高度自适应、智能API路由(简单布局用prepare()+layout(),卡片网格用自尺寸卡片,聊天UI用walkLineRanges())。3视口截图验证。精修循环直到”done”
Phase 5 /review + /codex — 双AI审查
1
/review(Claude视角):偏执Staff Engineer找通过CI但在生产爆炸的Bug:
– N+1查询(列表照片/草稿建议)
– 信任客户端文件元数据而非验证实际文件?
– 两个tab竞态覆盖封面照片选择?
– 失败上传在存储中留孤儿文件?
– “恰好一张hero图”规则在并发下会断?
– 丰富API部分失败→优雅降级还是保存垃圾?
– 拉取web数据到草稿生成→提示注入/信任边界?
自动修复明显的(死代码、过时注释、N+1查询),呈现模糊的
– N+1查询(列表照片/草稿建议)
– 信任客户端文件元数据而非验证实际文件?
– 两个tab竞态覆盖封面照片选择?
– 失败上传在存储中留孤儿文件?
– “恰好一张hero图”规则在并发下会断?
– 丰富API部分失败→优雅降级还是保存垃圾?
– 拉取web数据到草稿生成→提示注入/信任边界?
自动修复明显的(死代码、过时注释、N+1查询),呈现模糊的
2
/codex(OpenAI视角):完全不同AI独立审查同一diff。不同训练、不同盲点、不同优势。
跨模型分析:重叠=高置信、Codex独有=不同视角、Claude独有=不同视角。”两个医生同一病人”
跨模型分析:重叠=高置信、Codex独有=不同视角、Claude独有=不同视角。”两个医生同一病人”
Phase 6 /qa + /benchmark — 测试与性能
1
/qa:读git diff → 识别受影响页面 → 启动浏览器 → 逐一测试。4模式:
– Diff-aware:自动读diff,测试受影响页面
– Full:系统探索整个应用,5-15分钟
– Quick:30秒冒烟测试
– Regression:与基线diff
自动生成回归测试——每个修复附带完整归因追踪
– Diff-aware:自动读diff,测试受影响页面
– Full:系统探索整个应用,5-15分钟
– Quick:30秒冒烟测试
– Regression:与基线diff
自动生成回归测试——每个修复附带完整归因追踪
2
/benchmark:基线化加载时间、Core Web Vitals(LCP/CLS/INP)、资源数、传输大小。PR前后对比,趋势追踪
Phase 7 /cso — 安全审计
1
OWASP Top 10 + STRIDE:扫描注入漏洞、破坏认证、敏感数据暴露、XEE、破坏访问控制、安全配置错误、XSS、不安全反序列化、已知脆弱组件、不足日志
每个发现包含:严重性、证据、推荐修复
每个发现包含:严重性、证据、推荐修复
2
列表应用典型发现:
– CRITICAL:用户搜索SQL注入
– HIGH:会话令牌存localStorage
– MEDIUM:/api/login缺速率限制
– LOW:X-Frame-Options头未设置
– CRITICAL:用户搜索SQL注入
– HIGH:会话令牌存localStorage
– MEDIUM:/api/login缺速率限制
– LOW:X-Frame-Options头未设置
Phase 8 /ship → /land-and-deploy → /canary — 发布到监控
1
/ship:同步main → 跑测试 → 审计覆盖 → 推送 → 开PR。无测试框架则自动引导(检测运行时、研究最佳框架、安装、写3-5真实测试、设CI/CD、创建TESTING.md)
覆盖审计:构建代码路径图 → 搜索对应测试 → ASCII覆盖图+质量星。缺口自动生成测试
覆盖审计:构建代码路径图 → 搜索对应测试 → ASCII覆盖图+质量星。缺口自动生成测试
2
/land-and-deploy:合并PR → 等CI → 等部署 → 生产金丝雀检查。一条命令从”approved”到”verified in production”
3
/canary:部署后监控循环——每2分钟检查8个关键页面。控制台错误、性能回归、页面失败、视觉异常。周期截图与部署前基线对比
Phase 9 /retro + /learn — 复盘与记忆
1
/retro:团队感知周复盘。分析提交历史、工作模式、发布速度。每人分解+具体赞美+成长机会。指标:提交数/LOC/测试比/PR大小/修复比。热点文件、发布连续、本周最大发布
2
/learn:gstack从每个会话学习。模式、陷阱、偏好、架构决策累积在
~/.gstack/projects/$SLUG/learnings.jsonl。其他技能自动搜索学习并在相关时显示”Prior learning applied”🔄 七、完整流水线 — 一条命令到一条命令
/office-hours
重新框定
重新框定
→
/plan-ceo
10星产品
10星产品
→
/plan-design
设计缺口
设计缺口
→
/plan-eng
可构建
可构建
→
/design-html
设计→代码
设计→代码
→
/review
+ /codex
+ /codex
→
/qa
测试
测试
→
/cso
安全
安全
→
/ship
发布PR
发布PR
→
/land
部署
部署
→
/canary
监控
监控
→
/retro
复盘
复盘
或用 /autoplan 一条命令自动运行 CEO → Design → Eng 审查,仅品味决策需人工批准
📝 八、SKILL.md模板系统 — 文档永不漂移
问题:SKILL.md告诉Claude如何使用浏览命令。如果文档列出不存在的flag,或遗漏新增命令——代理报错。手维护文档总是漂移。
解法:
模板包含需要人类判断的工作流/提示/示例。占位符从源码构建时填充:
解法:
SKILL.md.tmpl(人写散文+占位符)→ gen-skill-docs.ts(读源码元数据)→ SKILL.md(提交,自动生成段)模板包含需要人类判断的工作流/提示/示例。占位符从源码构建时填充:
| 占位符 | 来源 | 生成什么 |
|---|---|---|
{{COMMAND_REFERENCE}} | commands.ts | 分类命令表 |
{{SNAPSHOT_FLAGS}} | snapshot.ts | Flag参考+示例 |
{{PREAMBLE}} | gen-skill-docs.ts | 启动块:更新检查/会话追踪/贡献者模式 |
{{QA_METHODOLOGY}} | gen-skill-docs.ts | /qa和/qa-only共享QA方法论 |
{{DESIGN_METHODOLOGY}} | gen-skill-docs.ts | /plan-design-review和/design-review共享设计审计方法论 |
{{REVIEW_DASHBOARD}} | gen-skill-docs.ts | /ship预飞审查就绪仪表板 |
{{TEST_BOOTSTRAP}} | gen-skill-docs.ts | 测试框架检测/引导/CI/CD设置 |
{{GBRAIN_CONTEXT_LOAD}} | resolvers/gbrain.ts | Brain优先上下文搜索+关键词提取+健康感知 |
3层测试
| 层 | 什么 | 成本 | 速度 |
|---|---|---|---|
| 1 — 静态验证 | 解析SKILL.md中每个$B命令,对照注册表验证 | 免费 | <2s |
| 2 — E2E via claude -p | 启动真实Claude会话,运行每个技能,扫描错误 | ~$3.85 | ~20min |
| 3 — LLM-as-judge | Sonnet评分文档清晰度/完整性/可操作性 | ~$0.15 | ~30s |
📱 九、iOS真机QA — 不模拟,真驱动
gstack-ios-qa daemon
Mac (bun/TS)
轮换boot token
铸造session token
能力层级
Mac (bun/TS)
轮换boot token
铸造session token
能力层级
⇄ USB CoreDevice (IPv6)
iOS app
StateServer
(仅loopback)
StateServer
(仅loopback)
核心洞察
不模拟、不跑XCTest、不启动WebDriverAgent。在应用内嵌入HTTP服务器,从Mac侧守护进程通过USB CoreDevice IPv6隧道驱动。
读Swift源码 → 找
读Swift源码 → 找
@Observable类+@Snapshotable字段 → codegen类型化访问器 → 部署调试桥 → 运行闭环find→fix→verify循环
能力层级
observe:/screenshot, /elements, GET /state/*, /healthz
interact:observe + /tap, /swipe, /type, /session/*
mutate:interact + POST /state/<key>
restore:mutate + POST /state/restore
默认铸造token=interact。更高层级需显式owner铸造。
interact:observe + /tap, /swipe, /type, /session/*
mutate:interact + POST /state/<key>
restore:mutate + POST /state/restore
默认铸造token=interact。更高层级需显式owner铸造。
🔓 解锁:USB-tethered + Tailscale = 任何代理的远程iOS QA
一台Mac + 一台iPhone + Tailscale免费层 = 替代BrowserStack/Sauce Labs。
任何HTTP能力代理在你的tailnet上可驱动iOS应用——一旦你铸造了session token。Tailscale ACL限定哪些身份可在哪能力层级到达Mac。
任何HTTP能力代理在你的tailnet上可驱动iOS应用——一旦你铸造了session token。Tailscale ACL限定哪些身份可在哪能力层级到达Mac。
🎯 十、总结
gstack · AI驱动软件工厂 · 核心要点
🌊 哲学
- 煮沸海洋:完整性边际成本趋近零,做完整的事
- 先搜索再构建:三层知识(久经考验/新且流行/第一性原理)
- 用户主权:AI推荐,用户决定。生成-验证循环
- AI压缩比:脚手架100×、测试50×、功能30×、Bug修复20×
🧭 技能
- 23专家+8工具=31个slash命令
- 完整流水线:构思→规划→设计→审查→测试→安全→发布→监控→复盘
- /autoplan:一条命令自动CEO→Design→Eng审查
- 跨AI协作:/codex第二意见+跨模型分析
🌐 浏览器
- 持久Chromium守护进程:~100ms/命令
- Ref系统:ARIA树元素寻址,无CSS选择器
- 3模式:headless/headed/pair-agent隧道
- /scrape+/skillify:首次30s→后续200ms
🛡️ 安全
- 6层提示注入防御(L1-L6)
- 双监听器隧道架构(物理端口分离)
- Bearer令牌+范围令牌+会话cookie
- Unicode净化、CSP尊重、shell注入防护
📱 iOS
- USB CoreDevice隧道+嵌入式StateServer
- 读Swift→codegen访问器→驱动真iPhone
- 4能力层级:observe/interact/mutate/restore
- Tailscale远程代理+ACL范围控制
📝 工程
- SKILL.md模板系统:文档永不漂移
- 3层测试:静态/E2E/LLM-as-judge
- Bun编译二进制:58MB单文件,无node_modules
- ETHOS.md注入每个技能前导
基于 garrytan/gstack · Garry Tan (YC CEO) · MIT协议 · 23专家+8工具