GSD 2(gsd-build/gsd-2,npm 包名 gsd-pi)把上一代 Get Shit Done 的 Claude Code Slash Command 提示词框架,重写成基于 Pi SDK 的独立命令行 Coding Agent:用 TypeScript + Rust N-API 实现 .gsd/ 磁盘状态机驱动的 /gsd auto 自治循环,配合 git worktree 隔离、子任务级 fresh context、崩溃恢复、成本台账与 MCP 服务端,做长跨度规范驱动开发。面向已经习惯 Claude Code / Codex / OpenRouter 的开发者,是 Cursor / Aider / Cline / Claude Code 的开源 CLI 替代方案,可走 OpenRouter / Ollama / DashScope 自部署。
来源:README + dep-package.json + ARCHITECTURE.md 查看 GitHub 仓库 →GSD 一代靠几页 Markdown 提示词在 Claude Code 社区刷出热度,但「LLM 自己 Loop 自己」的玩法天然有上限:上下文越塞越脏、崩了从头再来、没有成本观测。v2 把这套规范工作流从「靠 LLM 守纪律」改成「TypeScript 程序强制执行」——每个 task 拿一个全新 200k 上下文窗口、worktree 隔离每个 milestone、卡住自动 retry+forensics、超预算自动暂停。这种「规范驱动 + 程序化控制」的路线,在 2025 年下半年 Claude Code、Codex、Aider 都在卷自治长任务的当下抢了一个具体生态位。配合 v2.78 的 slice-cadence worktree 合并、UnitContextManifest v2、Auto Pipeline 组件统一、24 个内置扩展,仓库从 v1 的「提示词库」彻底变成一个有自己 Pi SDK、Rust 引擎和 MCP 服务端的 Agent 平台,对想自部署、私有化或者免费替代 Claude Code 订阅的团队来说是一个值得评估的选项。
来源:README v2.78 章节 + What Changed From v1 表格auto.ts + auto-dispatch.ts + auto-stuck-detection.ts 实现的文件驱动状态机:读取 .gsd/STATE.md 决定下一步 unit,启新 agent session 注入 plan/summary/decisions 等 artifact,跑完写盘→再读盘。包含 soft/idle/hard 三档 timeout、滑动窗口 stuck 检测、artifact 缺失最多 3 次重试后暂停而不死循环。
来源:ARCHITECTURE.md Key Modules + README §How It Works硬性约束「一个 task 必须装得进一个 context window」,否则拆成两个。每个 slice 是一个可演示的纵向能力,每个 milestone 是可发布的版本。.gsd/ 下面 PROJECT.md / ROADMAP.md / DECISIONS.md / KNOWLEDGE.md / Mxxx-RESEARCH.md / Sxx-PLAN.md / Txx-PLAN.md / Txx-SUMMARY.md 各司其职。
来源:README §How It Works + Context Engineering 表git.isolation 可设 none/branch/worktree。worktree 模式每个 milestone 独立目录,slice 顺序提交不切换分支,milestone 完成后 squash-merge 到 main。v2.78 新增 git.collapse_cadence: slice 让每个验证通过的 slice 立刻 squash 进 main,并配 milestone_resquash 把 slice commit 再合成单 milestone commit。worktree-orphaned / worktree-unmerged-exit 等 telemetry 进入 /gsd forensics。
来源:README v2.78 Worktree Lifecycle 章节 + auto-worktree.ts 模块complexity-classifier.ts 用启发式(亚毫秒、不调 LLM)把 unit 分成 light/standard/heavy 三档,model-router.ts 配 model-cost-table.ts 在已配置的 provider 里挑性价比最高的模型,routing-history.ts 记录历史结果做自适应。budget_ceiling 触发 50%/75%/90% 三档预算压力,自动把工作下沉到便宜模型档位。token_profile=budget 据称可省 40-60%。
来源:README §Token Optimization + ARCHITECTURE.md Key Modulessession-lock.ts 用 proper-lockfile 做 OS 级独占锁,crash-recovery.ts 检测残留 lock 后从 session 文件合成 recovery briefing。v2.78 强化了 file-lock 真锁定、appendFile 锁包裹、TOCTOU ancestry guard、`.git/index.lock` 5 分钟陈旧后才强删、worktree 状态写入与 forensics 联动。Auto state machine 把 deterministic policy error 标记为 non-retriable(#4973),避免无谓重试。
来源:README v2.78 Reliability & Safety + crash-recovery.ts/session-lock.tspackage.json 是 npm workspaces,packages/ 下含 pi-tui、pi-ai、pi-agent-core、pi-coding-agent、native、daemon、mcp-server、rpc-client 八个内部包,extensions/ 单独切出第一个外置扩展(google-search)。native/crates/{ast,engine,grep} 用 Rust + N-API 实现 grep(ripgrep)、glob(gitignore-aware)、ast-grep、libgit2 git read、syntect 高亮、HTML→Markdown 等性能敏感操作,跨 darwin-arm64/x64、linux-arm64/x64-gnu、win32-x64-msvc 五平台预编译分发。
来源:dep-package.json workspaces + native/Cargo.toml + tree.txt通过 Pi SDK 接 Anthropic、OpenAI、Google、OpenRouter、GitHub Copilot、Bedrock、Azure OpenAI、Vertex、Groq、Cerebras、Mistral、xAI、HuggingFace、Vercel AI Gateway、Ollama、DashScope 等 20+ provider,支持 OAuth(Claude Max / Copilot / Codex)和 API key 双路径。每个 phase 可单独配模型 + fallback 链。扩展含 Browser Tools(Playwright)、Context7、Background Shell、LSP、Voice、cmux、GitHub Sync 等。子 agent:scout/researcher/worker/javascript-pro/typescript-pro。
来源:README §Use Any Model / §Bundled Tools / §Bundled Agentsgsd headless 适配 CI/cron,0/1/2 三类退出码,崩溃指数退避自动重启;gsd headless query 不调 LLM,~50ms 输出 JSON 状态。同时通过 packages/mcp-server 把 plan / dispatch / question / state 等核心工具暴露成 MCP 服务,让外部 IDE 集成。vscode-extension 提供 chat participant、sidebar dashboard、SCM provider、worktree 控制。
来源:README §Headless mode + packages/mcp-server + vscode-extension/ tree整体是 daemon-less 但 state-on-disk 的 client-server-less 架构:CLI 二进制 gsd 通过两段式 loader(先设 PI_PACKAGE_DIR 再 dynamic-import cli.ts)启动一个 Pi SDK 内嵌的 Interactive 会话,所有持久化状态都在仓库本地 .gsd/ 目录,跨 session 不依赖任何内存。auto 模式的派发管线是声明式表(auto-dispatch.ts):读盘→定 unit type→复杂度分类→预算压力调节→路由历史校正→选模型→拼 dispatch prompt(含 plan/summary/decisions/roadmap 等 inline artifact)→新 agent session→执行→快照 metric→校验 artifact→落盘→回到第一步。Rust 原生引擎通过 N-API 接到 Node 层,跨 darwin/linux/win 五平台预编译。Pi SDK 走 lazy provider loading,冷启动只载真正用到的 LLM SDK。模块化在 src/auto-*.ts 切得相当细:state.ts、session.ts、idempotency.ts、stuck-detection.ts、worktree.ts、recovery.ts、timers.ts、verification.ts、prompts.ts 各管一档,配合 metrics.ts/git-service.ts/preferences*.ts 形成 30+ 文件的 auto 子系统。这种切分对功能扩展友好,但模块边界有大量「半状态半工具函数」交叉,对新人理解曲线明显偏陡。设计上有过度工程嫌疑的部分:单个仓库同时维护 8 个 internal package + 24 个 extension + Rust workspace + VS Code extension + Web/Studio + Docker,复杂度已接近一个小型平台。设计不足的部分:.gsd/ 里仍是大量 Markdown + JSON + SQLite 混合存储,schema 漂移风险只能靠运行时 migration 和 v2.78 的 CI guards 兜底;token_profile 节省 40-60% 的说法 README 没给基准,需要使用者自己验证。
来源:README §Architecture + ARCHITECTURE.md Dispatch Pipeline + tree.txt中心为项目本体,内环 = 核心功能模块,外环 = 关键技术依赖;按 deep.json 中的 core_features 与 tech_stack.key_deps 自动生成
@anthropic-ai/sdk ^0.90 / @anthropic…@google/genai / openai ^6 / @mistral…@modelcontextprotocol/sdk ^1.27(MCP …playwright ^1.58(Browser Tools 扩展) +…proper-lockfile(session 锁)+ chokidar…@sinclair/typebox + ajv(schema 校验,Un…1. 想免费替代 Claude Code 订阅、用 OpenRouter / Ollama / DashScope 等更便宜或本地 provider 跑长跨度自动开发的国内开发者,可以用 GSD 2 自部署 + 自带 budget_ceiling 控成本。 2. 已经用 Claude Code 但受不了「LLM 自己 Loop 自己」上下文污染、希望每个 task 拿干净 200k 窗口、并且要 git worktree 隔离 + 自动 squash 的资深用户。 3. 在 CI 里跑长任务做夜间自动重构 / 文档同步 / 安全扫描 / 大规模批量改动的团队,用 gsd headless 配 remote-questions 把人工决策路由到 Slack / Discord。 4. 多人协作仓库希望强制 milestone 唯一名 + .gsd/ 部分 artifact 入库共享上下文的团队(unique_milestone_ids: true)。
来源:README §Headless / §Working in teams + 综合分析GitHub Releases 页面无 release 记录(API 返回空数组)。仓库通过 npm 持续发版,package.json 当前 version 为 2.78.1,README v2.78 章节列出本版本主要变更:1) Worktree Lifecycle & Forensics——新增 git.collapse_cadence: slice/milestone 偏好与 worktree-created/merged/orphaned/auto-exit 等 journal 事件,/gsd forensics 新增 worktree section;2) Auto Pipeline & Component System——unified component 模型,UnitContextManifest v2(#4924, #4934)+ CI schema guard,Composer migration phase 3,Milestone scope classifier + pipeline variants;3) Extensions Framework——install/update/uninstall/list/info/validate 全生命周期,Kahn 拓扑加载序,cmux↔gsd 解耦,第一个外置扩展 @gsd-extensions/google-search 落地;4) Models, Agent, UX——支持 GPT-5.5 Codex 含 xhigh thinking level,权限粒度选择器,Headless auto 默认 bypassPermissions(#4657),skillFilter 系统提示词;5) Reliability & Safety——大规模 git-safety 修复、atomic .gsd/ 写入真正生效、compaction 修复(#4665)、Write-gate 修复(#4950)、Auto state machine 多处 hardening。
来源:GitHub Releases API + dep-package.json version + README §What's New in v2.78GSD 2 是 2025 年下半年「规范驱动 + 程序化控制」一派开源 Coding Agent 里完成度较高的一个,把 v1 那种「靠 LLM 看懂提示词」的玩法,彻底改写成由 TypeScript 程序硬控的状态机加 git worktree 加成本台账,整体设计判断扎实、ADR 链条清晰、provider 中立、headless 与 MCP 都齐备,是 Cursor / Aider / Cline / Claude Code 之外一个值得评估的 CLI 替代方案,尤其适合想自部署、走 OpenRouter / Ollama / DashScope 路径压成本、并希望自动化夜跑长任务的国内开发者和团队。但务实地说,这个项目目前不适合所有人:如果你只是偶尔写写 Slash Command,v1 那套 Markdown 提示词其实够用且零迁移成本;如果你的 workload 是短交互 / 单文件改动,GSD 2 完整的 Plan→Slice→Task 三级分解+worktree 隔离反而是过度设计、上手成本远高于直接用 Claude Code;如果你企业法务对 OAuth ToS、AGPL 衍生、$GSD 代币这类信号敏感,建议先固定到稳定 tag、走 API key 而非 OAuth、并把 git.isolation 设成 worktree 隔离脏状态;想真正发挥它的价值,至少要把 budget_ceiling、verification_commands、git.collapse_cadence、token_profile 四个偏好按自己工作流配清楚,再用 gsd headless query 做监控接入,否则只会得到一个「能跑但说不清省没省钱」的黑盒。先看 docs/dev/ADR-009/010/013,再决定要不要把它纳入主力工作流。
来源:综合分析