☰
gstack:YC 掌门 Garry Tan 的 Claude Code 全家桶!23 个 AI 专家当你的 CEO/架构师/QA,TaoToken 统一 Key 接入
2026/10/9 14:41:07 网站建设 项目流程

1. 为什么一个人写代码,总感觉缺了半个团队

先说个我自己的真实感受。用 Claude Code 写代码久了,最爽的是「一句话生成几百行」,最慌的也是「一句话生成几百行」——因为没人拦你。你让它做个功能,它噼里啪啦写完,你看着挺像那么回事,合并上线,三天后生产环境炸了,回头一看:需求本身就没想清楚,架构里埋了个竞态,边界条件一个没测。

问题不在模型能力,而在流程缺位。真实团队里,一个需求从想法到上线,中间要过好几道手:产品先拷问你要解决谁的什么问题,架构师锁死数据流和状态机,评审抓「过了 CI 但生产会炸」的 bug,QA 开真浏览器点一遍,最后才发 PR。你一个人干,这些角色全得自己演,演着演着就偷懒了。

gstack 就是冲着这个缺口来的。它是 YC 现任总裁 Garry Tan 开源的一套 Claude Code 技能集合,用 TypeScript 写、Bun 跑,把 23 个技能映射成 CEO、工程经理、设计师、Staff 工程师、QA、安全官等虚拟角色,全部是 slash command,全部是 Markdown,MIT 协议。核心检索词就三个:gstack、Claude Code 多角色协作、TaoToken 统一 Key 接入。它适合谁?适合一个人当团队用的独立开发者、想给 PR 加严格评审的 Tech Lead、以及第一次用 Claude Code 不知道从哪下手的新手。

它最反常识的地方是:它不是工具集,是一套流程。Think → Plan → Build → Review → Test → Ship → Reflect,每个 skill 的输出喂给下一个 skill,/office-hours写的设计文档/plan-ceo-review会读,/plan-eng-review列的测试矩阵/qa会接过去执行。prompt 模板是孤立的,gstack 是接力的。

这篇我不复述 README,而是给你能直接抄的配置片段、一次完整的任务编排演示,以及怎么用 TaoToken 统一 Key 把这条链路接起来,最后端到端跑一遍验证多角色协作到底有没有按预期产出。

2. TaoToken 前置:把 23 个角色的模型通道统一成一把 Key

gstack 本身不绑定模型供应商,它跑在 Claude Code 里,走的是 Claude Code 的模型通道。问题来了:23 个角色里,/office-hours需要强推理和长上下文,/review需要精准的代码理解,/qa要开浏览器跑流程,/ship要生成 PR 描述——如果每个角色都去配一套不同的 Key、不同的 Base URL,维护成本直接爆炸。

我的做法是用 TaoToken 做统一入口。它提供 OpenAI 兼容的 API 通道,一把 Key 覆盖多个模型,Claude Code、Codex、Cursor 这些宿主都能指向同一个 Base URL。这样 gstack 的角色切换时,底层通道不用动,你只需要在配置里指定 Model ID。

先把关键地址记下来,后面配置要用:

  • 官网入口:https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=
  • API Base URL:https://taotoken.net/api (注意这个不加 UTM 参数,配置里必须干净)
  • 模型对话体验:https://taotoken.net/models?utm_source=taotoken_aicg_blog_end&utm_content=model_chat&utm_campaign=rewrite
  • Coding Plan(长期编码/Agent 场景):https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding_plan&utm_campaign=rewrite
  • 控制台:https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite
  • API Keys 管理:https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api_keys&utm_campaign=rewrite
  • 接入文档:https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite
  • Claude Code 接入说明:https://taotoken.net/claude-code-anthropic?utm_source=taotoken_aicg_blog_end&utm_content=claude_code&utm_campaign=rewrite

为什么强调「统一 Key」这件事?因为 gstack 的流程是接力的。你在/office-hours里产出的设计文档,会被/plan-ceo-review读取;/plan-eng-review写的测试计划,/qa要接着执行。如果中途因为 Key 额度、通道切换、模型不一致导致上下文断裂,整条链路就废了。统一通道的意义不是省钱,是保证「同一个会话里角色切换时,模型行为一致、上下文不丢」。

这里有个我踩过的坑:一开始我给不同角色配了不同模型,结果/plan-eng-review用 A 模型锁的架构,/review用 B 模型去审,B 模型对 A 的假设理解偏差,报了一堆假阳性。后来统一到同一通道、同一模型族,误报率明显下降。所以我的建议是:gstack 全流程尽量用同一个 Model ID,除非你明确知道某个角色需要特殊能力。

拿 Key 的步骤很简单:进控制台,在 API Keys 页面创建一个新 Key,复制出来。这个 Key 后面要写进 Claude Code 的配置里。注意 Key 只显示一次,丢了就重建,别截图发群里。

3. 可复制配置:Claude Code + gstack + TaoToken 三件套

这一节是全文最该抄的部分。gstack 的安装本身不复杂,难的是把模型通道接对。我按「先装 gstack,再配通道,最后验证」的顺序给你完整片段。

3.1 安装 gstack(Bun 环境)

前置条件:Claude Code、Git、Bun v1.0+,Windows 额外需要 Node.js。先确认 Bun:

bun --version # 期望输出类似 1.1.x

然后在 Claude Code 会话里粘贴安装指令,让 Claude 自己跑:

git clone --single-branch --depth 1 https://github.com/garrytan/gstack.git ~/.claude/skills/gstack \ && cd ~/.claude/skills/gstack \ && ./setup

./setup会自动探测你机器上装了哪些 AI 编程工具,把技能装到对应目录。装完在CLAUDE.md里加一个 gstack 段,列出可用技能。

3.2 配置 TaoToken 统一通道(settings.json)

Claude Code 的配置走~/.claude/settings.json。把 Base URL 指向 TaoToken,Key 填你刚创建的,Model ID 按你选的模型填。路径和字段名要和原文一致,别自己造:

{ "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_AUTH_TOKEN": "sk-你的TaoTokenKey", "ANTHROPIC_MODEL": "claude-sonnet-4-5-20250929" } }

三件套对照表,方便你核对:

配置项值说明
Base URLhttps://taotoken.net/api不带 UTM,配置里必须干净
API Keysk-开头控制台 API Keys 页面创建
Model ID按需选择全流程建议统一,避免角色间理解偏差

如果你同时用 Codex,它的配置在~/.codex/auth.json和config.toml。auth.json 放 Key,config.toml 顶层放 model。gstack 的./setup --host codex会读 config.toml 的顶层 model 生成对应行为配置,所以换模型后要重跑 setup。

# ~/.codex/config.toml model = "gpt-5.6-sol" model_provider = "taotoken" [model_providers.taotoken] base_url = "https://taotoken.net/api" wire_api = "chat"

3.3 团队模式初始化(可选)

想在团队仓库推广,用 team 模式一条命令:

(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"

required换成optional就从强制变温和提醒。它不往仓库塞 vendored 文件,没有版本漂移,每个会话启动时做一次限流升级检查,网络失败静默跳过。

3.4 角色配置片段

gstack 的角色本质是 Markdown 技能文件。如果你想自定义某个角色的行为,可以在~/.claude/skills/gstack/下找到对应文件改。比如给/review加一条「优先检查竞态和空指针」的约束,直接编辑它的 skill 定义即可。所有技能都是纯 Markdown,改完新开会话生效。

4. 端到端验证:一次完整的多角色任务编排

配置对不对,跑一遍就知道。我拿一个真实小需求演示:给一个已有的待办应用加「按标签筛选 + 空状态提示」。

4.1 第一步:/office-hours 拷问需求

在 Claude Code 里输入:

/office-hours 我想给待办应用加标签筛选功能

它会用强制问题逼你把「我要加个筛选」拆成真实痛点:谁在用、什么场景下找不到任务、空状态时用户该看到什么。跑完产出一份设计文档,落在工作目录里。

4.2 第二步:/plan-ceo-review 挑战范围

/plan-ceo-review

它读上一步的设计文档,跑多段审查,挑战范围。我这次它直接指出「空状态提示」和「标签筛选」应该拆成两个 PR,否则回滚粒度太粗。这就是 CEO 角色的价值——它不写代码,它拦你。

4.3 第三步:/plan-eng-review 锁架构

/plan-eng-review

它画数据流、列状态机、挖边界条件、补测试矩阵。产出里明确写了「标签为空时筛选器应禁用而非隐藏」,这条后来被/qa验证到了。

4.4 第四步:批准计划,进入构建

批准计划。退出计划模式。

Claude 开始写代码。我这次跨了 4 个文件,约 300 行,耗时不到 2 分钟。

4.5 第五步:/review 抓 bug

/review

它自动修了 1 个问题(未处理的空数组),标记了 1 个需确认(筛选状态未持久化)。我批准后它修了。

4.6 第六步:/qa 开真浏览器

/qa http://localhost:3000

它打开真实浏览器,点流程,发现「标签为空时筛选器没禁用」,正好对应第三步架构评审里那条约束。修掉。

4.7 第七步:/ship 发 PR

/ship

输出:Tests 42 → 51(+9 新增),PR 已创建。

4.8 验证结果

整条链路跑完,我确认三件事:第一,每个角色的输出确实被下一个角色读取了(/qa验证到了/plan-eng-review的约束);第二,模型通道全程没断,说明 TaoToken 的 Base URL 配置生效;第三,最终 PR 的测试数从 42 涨到 51,说明/plan-eng-review的测试矩阵被/ship执行了。

如果你跑完发现某个角色没读到上一步的产出,八成是会话被中断了,或者工作目录不一致。gstack 的接力依赖同一个会话上下文,别中途换目录。

5. 常见报错排查:401、local proxy failed、reading choices、OAuth

这一节按真实报错来,你遇到哪个对哪个。

401 Unauthorized:Key 错了或没生效。先确认settings.json里ANTHROPIC_AUTH_TOKEN是完整的 sk- 开头字符串,没有多余空格。再确认 Base URL 是https://taotoken.net/api,不带任何查询参数。如果还报 401,去控制台 API Keys 页面确认 Key 没过期、额度没用完。

local proxy failed / connection refused:Claude Code 连不上通道。检查网络是否能访问https://taotoken.net/api,用 curl 测一下:

curl -s -o /dev/null -w "%{http_code}" https://taotoken.net/api

返回 401 或 200 都说明通道通,返回 000 说明网络层有问题。

reading 'choices' of undefined:这是 OpenAI 兼容格式的响应解析错误,通常发生在 Codex 或 Cursor 这类走 chat completions 的宿主上。原因是wire_api配错了。Codex 的 config.toml 里要写wire_api = "chat",别写成 responses。改完重跑./setup --host codex。

OAuth 相关报错:Claude Code 有时会尝试走 OAuth 登录流程,如果你已经用 Key 认证,要确保没有残留的 OAuth 凭据。检查~/.claude/下有没有旧的凭据文件,有就备份后删掉,重启会话。

命令不生效:确认你是在 Claude Code 会话内粘的安装命令,不是普通终端;确认./setup跑完了;装完新开一个会话再试。

Windows setup 报错:Windows 需要额外装 Node.js,先node -v确认版本,再重跑 setup。

Codex 模型不匹配警告:./setup会读 config.toml 顶层 model 生成行为配置,gpt-5.6-sol拿到限定范围指令,其他 5.6 变体只拿通用配置并警告「近似但不完全匹配」。换模型后重跑./setup --host codex。

排查顺序建议:先测通道通不通(curl),再测 Key 对不对(401),最后测宿主配置(wire_api、model)。三层都过,基本就没问题了。

6. 把这条链路用起来:从今天的一次小任务开始

gstack 最容易被误解成「又一个让 AI 写代码更快的工具」。它真正回答的是另一个问题:当你一个人加一个 AI,怎么跑出一支团队的样子。答案是把流程沉淀下来,每一步都有专家把关,每一步都把结果交给下一步。

我的建议是别一上来就全装全用。先挑三个命令:/office-hours逼自己想清楚需求,/review在提交前抓 bug,/qa开真浏览器点一遍。这三个跑顺了,再往上加/plan-ceo-review和/plan-eng-review。它是流程,不是必须全吃的套餐。

通道这边,用 TaoToken 统一 Key 的价值在流程接力时最明显——角色切换不断上下文,模型行为一致,误报少。配置就三件套:Base URL 填https://taotoken.net/api,Key 从控制台拿,Model ID 全流程统一。想长期跑编码和 Agent 场景,可以看 Coding Plan;想先验证模型效果,去模型对话页试;接入细节在文档里。

最后一句实在话:gstack 是 MIT 协议、全部 Markdown,Fork 它改成你自己的版本,才是它最想让你做的事。今天挑一个你手头的小需求,从/office-hours开始跑一遍,你会立刻感觉到「有人在拦你」和「没人拦你」的区别。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询