前端 · 2026年3月18日

GSD实测:32K Star的Claude Code上下文工程框架,Vibecoding终于有救了

用Claude Code写过大项目的都知道一个问题:上下文窗口填到一半,AI就开始胡说八道。前几轮生成的代码质量不错,到第五六轮就变成复制粘贴机器,逻辑混乱、风格不统一、之前约定的架构全忘了。

这就是所谓的context rot(上下文腐烂),也是vibecoding被人诟病”只能写Demo”的核心原因。

GSD(Get Shit Done)是最近开源的一个解决方案,3天上了HN首页,GitHub 32K Star。它不是又一个AI编码工具,而是一套”上下文工程”框架——通过元提示(meta-prompting)和规范驱动开发,让Claude Code在大型项目里保持一致性。

实际装了一把,看看是不是真的好用。

装上看看

一行命令:

npx get-shit-done-cc@latest

安装器会问你两个选择:用哪个runtime(Claude Code、Gemini CLI、Codex、Copilot等都支持),以及装到全局还是当前项目。

我选了Claude Code + 本地安装,几秒钟就装好了:

Installing for Claude Code to ./.claude

✓ Installed commands/gsd
✓ Installed get-shit-done
✓ Installed agents
✓ Wrote VERSION (1.25.1)
✓ Wrote package.json (CommonJS mode)
✓ Installed hooks (bundled)
✓ Wrote file manifest (gsd-file-manifest.json)
✓ Configured update check hook
✓ Configured context window monitor hook
✓ Configured statusline

装完一看目录结构,信息量很大:

.claude/
├── agents/           # 15个专用Agent定义
│   ├── gsd-executor.md
│   ├── gsd-planner.md
│   ├── gsd-debugger.md
│   ├── gsd-phase-researcher.md
│   ├── gsd-plan-checker.md
│   └── ... (共15个)
├── commands/gsd/     # 38个斜杠命令
│   ├── new-project.md
│   ├── discuss-phase.md
│   ├── plan-phase.md
│   ├── execute-phase.md
│   └── ...
├── get-shit-done/
│   ├── workflows/    # 40个工作流定义
│   ├── templates/    # 27个文档模板
│   ├── references/   # 12个参考文档
│   └── bin/          # 脚本工具
├── hooks/            # 会话钩子
└── settings.json     # Claude Code配置

总共164个文件,35000行Markdown。这不是一个简单的prompt wrapper,是一整套项目管理方法论。

核心思路:把”写代码”拆成工厂流水线

GSD的工作流分四步:

1. 初始化项目 /gsd:new-project

系统会不断追问你项目的细节——目标、约束、技术选型、边界情况,直到它觉得理解够了。然后自动产出四份文档:

PROJECT.md      - 项目概览
REQUIREMENTS.md - 需求清单(区分v1/v2/不做)
ROADMAP.md      - 分阶段路线图
STATE.md        - 当前状态跟踪

2. 讨论阶段 /gsd:discuss-phase 1

这步很关键。路线图里每个Phase就一两句话,信息量不够让AI做出你想要的东西。discuss-phase会根据功能类型问不同的问题:

– 做UI?问布局、间距、交互、空状态
– 做API?问返回格式、错误处理、参数校验
– 做内容系统?问结构、语气、深度

产出一份 CONTEXT.md,后续Research和Plan都基于这份文档。

3. 规划阶段 /gsd:plan-phase 1

这一步生成并行子Agent做调研:

├── Stack researcher      - 技术栈调研
├── Features researcher   - 功能实现调研
├── Architecture researcher - 架构调研
└── Pitfalls researcher   - 踩坑预警

调研完自动写Plan文件,然后还有一个Plan Checker Agent来验证计划的可行性,最多循环3次。

4. 执行阶段 /gsd:execute-phase 1

这是最核心的设计:Plan被拆成多个原子任务,每个任务在全新的上下文窗口里执行。

这就是为什么能解决context rot——不是在一个超长对话里堆需求,而是每个任务都拿到200K token的干净上下文,只装载必要的背景信息。

任务之间按依赖关系组成Wave,同一Wave内的任务并行执行:

WAVE 1 (parallel)       WAVE 2 (parallel)       WAVE 3
┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐
│ User    │ │ Product │ │ Orders  │ │ Cart    │ │ Checkout│
│ Model   │ │ Model   │ │ API     │ │ API     │ │ UI      │
└─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘

每个任务完成自动git commit,全程无需手动干预。

15个Agent的分工

装完看了下agents目录,每个Agent都有明确的职责边界:

Agent 职责 Prompt大小
gsd-planner 写执行计划 43K字
gsd-debugger 问题诊断 41K字
gsd-executor 执行具体任务 19K字
gsd-phase-researcher 阶段调研 19K字
gsd-plan-checker 计划验证 23K字
gsd-roadmapper 路线规划 17K字
gsd-codebase-mapper 代码库分析 17K字
gsd-verifier 结果验证 17K字
gsd-ui-auditor UI审计 14K字
gsd-project-researcher 项目调研 16K字

最大的planner prompt有4万多字,定义了计划的XML结构、任务拆分规则、依赖关系推导等等。这不是随便写的几行System Prompt,是经过大量迭代的工程化产物。

两个值得注意的设计

Context Window Monitor

GSD在settings.json里配了一个PostToolUse钩子:

{
  "hooks": {
    "PostToolUse": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "node .claude/hooks/gsd-context-monitor.js"
          }
        ]
      }
    ]
  }
}

每次工具调用后自动检测上下文使用量。一旦快满了就主动拆分任务,而不是等到AI开始胡言乱语才发现问题。

Nyquist验证层

借鉴信号处理的Nyquist采样定理(要想还原信号,采样频率至少是信号频率的两倍),GSD在规划阶段就为每个需求映射自动化测试。Plan Checker会检查:如果某个任务没有对应的验证命令,计划直接打回重做。

这意味着代码写完不是靠人肉review来确认质量,而是每个任务自带验证闭环。

跟其他方案对比

市面上类似的工具不少,挑几个有代表性的对比下:

工具 解决的问题 方法 侵入性
GSD Context rot + 需求失真 元提示 + 子Agent + 新上下文执行 中(38个命令,164个文件)
BMAD 需求管理 多角色Agent模拟(PM/架构师/开发) 高(流程复杂)
Speckit 规范驱动 从描述生成Spec文档
Cursor Rules 代码风格一致 项目级Prompt规则

GSD的核心差异就两个字:隔离。其他工具都是在同一个上下文里堆东西,GSD是把任务打散到独立的上下文里执行。这是目前解决context rot最合理的思路。

实际体感和问题

好的方面:

  • 上下文隔离确实能解决质量衰减问题,尤其是超过10轮对话之后差异明显
  • discuss-phase的追问机制很聪明,能把你脑子里模糊的想法逼成具体需求
  • Wave并行执行省时间,不用串行等
  • 支持6个runtime(Claude Code、Gemini CLI、Codex、Copilot、OpenCode、Antigravity),不锁定生态

问题也不少:

  • Token消耗惊人。15个Agent轮流上场,每个都带着几万字的Prompt,一个中型项目规划下来轻松烧掉几百万Token。如果用Opus跑,成本不低
  • 164个文件35K行Markdown。.claude目录突然多了这么多东西,有种被入侵的感觉。虽然不影响项目代码,但心理门槛不小
  • 强制流程。如果你只想快速改个Bug或加个小功能,走完new-project → discuss → plan → execute这套流程太重了。作者推荐用 /gsd:quick/gsd:do 来处理小任务,但文档里对这两个命令的说明不够清楚
  • README里放Dexscreener的$GSD Token链接。一个开发工具的README里放加密货币Token,观感不太好

谁适合用

GSD最适合的场景:

  • 用Claude Code(或其他AI编码工具)从零开始做中大型项目
  • solo开发者或小团队,没有专职PM来管需求
  • 项目复杂度到了”对话两三轮AI就开始忘事”的程度

不适合的场景:

  • 已有成熟开发流程的团队,GSD的流程和现有工作流会冲突
  • 小修小补,改个样式加个字段这种
  • 对Token成本敏感的

一句话总结:GSD把vibecoding从”写Demo”升级到了”做项目”,代价是学习曲线和Token账单。如果你的AI编码体验卡在”写到一半AI就废了”,值得试试。

项目地址:github.com/gsd-build/get-shit-done