🔥 用了 GSD,我再也不怕 Claude 「失忆」了|解决上下文腐烂的终极方案

写给每一个在 Claude / ChatGPT 长对话里被「坑」过的开发者。

你有没有过这种经历:和 AI 聊了三四十轮之后,它开始「忘记」你们最开始约定的技术栈,然后写出一段跟前面完全不一致的代码?你不是一个人——这是所有 AI 编程工具的通病,有个专业名词叫 Context Rot(上下文腐烂)


📌 目录


一、什么是上下文腐烂?

你一定遇到过这些场景:

症状 具体表现
技术决策失忆 早期定好用 Prisma,第 40 轮突然用 Drizzle 重写
代码规范瓦解 命名约定、错误处理模式越写越乱
重复造轮子 明明有 useAuth(),又造了个 authHelper()
需求漂移 MVP 范围在漫长对话中被一点点偷换
实现不一致 同一类问题,前后给出截然不同的方案

根本原因:随着对话历史越来越长,模型的有效注意力被稀释,早期确立的技术决策从「活跃记忆」悄悄退出。

💡 上下文窗口不是越大越好,拥挤的上下文和新鲜的上下文,质量差距天壤之别。


二、GSD 是什么?

GET SHIT DONE(GSD) 是一套专为 Claude Code / OpenCode / Gemini CLI / Codex 设计的:

  • 元提示系统(Meta-Prompting)
  • 上下文工程(Context Engineering)
  • 规范驱动开发(Spec-Driven Development)

一句话理解:GSD 是给 Claude Code 用的「规格驱动 + 多智能体并行 + 文件化记忆」系统。

# 安装只需一行
npx get-shit-done-cc@latest

当前版本:v1.22.1(2026-03-03 更新)


三、GSD 的解决思路

核心洞察

🎯 不要让项目状态活在对话里,让它活在文件里。

GSD 的解法极其简单,却极其有效:

传统方式 GSD 方式
一个不断增长的单一对话 多个全新的 200k token 独立上下文
早期决策随对话稀释 决策持久化到结构文件,每次注入
规范执行越来越不稳定 始终从干净的状态出发
无法并行 波次并行执行,互不干扰

四个核心状态文件

GSD 在项目根目录维护四个文件,构成跨会话的持久记忆:

你的项目/
├── PROJECT.md         ← 项目愿景、目标、技术约束(始终加载)
├── REQUIREMENTS.md    ← v1/v2 功能范围,含唯一需求 ID
├── ROADMAP.md         ← 阶段结构、进度、依赖关系
├── STATE.md           ← 技术决策记录、阻塞项(始终加载)
└── .planning/
    ├── 1-CONTEXT.md   ← 讨论阶段锁定的实现决策
    ├── 1-RESEARCH.md  ← 领域调查发现
    ├── 1-1-PLAN.md    ← 原子任务计划(XML)
    └── ...

每个执行任务启动时,将以上文件精确注入,在 全新 200k token 上下文 中运行——而不是依赖那个越来越健忘的老对话。


四、六阶段开发循环详解

阶段总览

讨论 → 研究 → 规划 → 执行 → 验收 → 归档 → (下一里程碑循环)

Step 1:讨论阶段(Discuss)

/gsd:discuss-phase 1

做什么:在写任何代码之前,锁定实现决策。

  • 用哪个库/框架
  • API 的请求/响应结构
  • 数据库表设计
  • UI 组件的组织方式

⚠️ 跳过这步的代价:AI 可能做出你不喜欢的架构决策,等发现时已经写了大量代码,返工成本极高。

生成文件:{N}-CONTEXT.md


Step 2:研究阶段(Research)

/gsd:research-phase 1

针对专业领域(支付、AI、地图等)深度调研,评估 2-3 个技术方案。

研究级别 触发条件 耗时
Level 0 纯内部逻辑,遵循已有模式 跳过
Level 1 已知库的语法确认 快速
Level 2 评估 2-3 个方案 15-30 分钟
Level 3 有重大影响的架构决策 1+ 小时

Step 3:规划阶段(Plan)

/gsd:plan-phase 1

做什么:生成原子化任务计划(XML 格式)。

每个任务必须包含四个元素:

<task type="auto">
  <n>创建登录接口</n>
  <files>src/app/api/auth/login/route.ts</files>
  <action>
    使用 jose 库处理 JWT。
    对照 users 表进行凭据验证。
    无效凭据返回 401 状态码。
    成功登录设置安全 HTTP-only cookie。
  </action>
  <verify>
    curl 测试有效/无效凭据分别返回 200/401
  </verify>
  <done>
    有效凭据返回带安全 cookie 的 200;
    无效凭据返回 401;
    所有尝试记录在 audit_log。
  </done>
</task>

💡 关键:此阶段没有任何代码产生,你可以充分审查计划,要求修改。内置 gsd-plan-checker 自动验证计划是否完整映射到需求。


Step 4:执行阶段(Execute)

/gsd:execute-phase 1

这是 GSD 最核心的创新

WAVE 1(并行)              WAVE 2(并行)         WAVE 3
任务01: 用户模型    ───→   任务03: 订单 API  ───→  任务05: 结账 UI
任务02: 商品模型    ───→   任务04: 购物车 API

每个任务:全新 200k token 上下文 + 自动 git commit
  • 依赖感知的波次执行
  • 每个任务独享全新 200k token 上下文(彻底消灭上下文腐烂)
  • 每完成一个任务自动 git commit(原子化,精确可回滚)

Step 5:验收阶段(Verify)

/gsd:verify-work 1
  • 从阶段目标提取可测试的交付物清单
  • 引导你进行用户验收测试(UAT)
  • 自动诊断失败原因
  • 为失败项创建验证修复计划,可重新执行

Step 6:里程碑归档(Complete)

/gsd:complete-milestone    # 归档,打 Git tag
/gsd:new-milestone v2.0    # 开始下一版本

五、Agent 架构:薄编排器模式

GSD 使用「薄编排器」(Thin Orchestrator)设计,编排器自身只占 10-15% 上下文,将工作委托给六类专职 Agent:

Agent 职责
gsd-planner 创建可执行阶段计划,含任务分解、依赖分析、目标倒推
gsd-plan-checker 对照需求验证计划完整性;拒绝不完整映射
gsd-executor 在全新 200k 上下文中实现,原子化 git commit
gsd-verifier 执行后验证;确认阶段目标达成(不只是任务完成)
gsd-phase-researcher 调查领域知识、生态模式、架构选项
gsd-debugger 系统性排查执行失败;诊断根因

完整流水线

Researcher → Planner → Plan-Checker → Executor → Verifier

需求 ID 在整个链条中保持完整追踪,确保「交付的就是需求的」。


接手已有项目:4 个并行 Agent 扫描代码库

/gsd:map-codebase

自动启动 4 个并行 Agent 分析:

Agent 分析内容
Tech stack analyzer 框架、库版本、依赖关系
Architecture analyzer 模块结构、设计模式、数据流向
Conventions analyzer 命名规范、代码风格、测试策略
Concerns analyzer 技术债务、安全隐患、性能瓶颈

六、上下文实时监控机制

GSD 内置三级预警:

状态 剩余上下文 系统行为
✅ NORMAL > 35% 静默运行,最佳性能
⚠️ WARNING ≤ 35% 建议完成当前工作后暂停
🔴 CRITICAL ≤ 25% 指示立即保存检查点

防抖机制:首次警告立即触发;后续警告需间隔 5 次工具调用;严重级别升级时跳过防抖。

收到 CRITICAL 警告时:

/gsd:save-session    # 保存当前检查点
# 开始新会话
/gsd:resume-work     # 完整恢复上下文,无缝继续

七、安装与快速上手

安装

# 交互式安装(推荐)
npx get-shit-done-cc@latest

# 直接指定运行时
npx get-shit-done-cc --claude --global    # Claude Code 全局
npx get-shit-done-cc --claude --local     # Claude Code 本地
npx get-shit-done-cc --all --global       # 所有运行时

验证安装

/gsd:help    # 有响应即表示安装成功

新项目标准启动

/gsd:new-project          # 交互式初始化
/gsd:discuss-phase 1      # 锁定实现决策
/gsd:plan-phase 1         # 生成原子化任务计划
/gsd:execute-phase 1      # 并行执行
/gsd:verify-work 1        # 验收

已有项目

/gsd:map-codebase         # 先分析代码库
/gsd:new-project          # 融入已有架构初始化

多运行时支持

运行时 验证命令 安装参数
Claude Code /gsd:help --claude
OpenCode /gsd-help --opencode
Gemini CLI /gsd:help --gemini
Codex $gsd-help --codex

八、适用场景与成本控制

✅ 非常适合

场景 原因
中大型项目(> 10 个文件) Context Rot 问题最严重,效果最显著
多阶段功能迭代 路线图 + 里程碑系统完美匹配
接手陌生代码库 map-codebase 快速建立理解
需求明确的项目 防止 AI 自作主张跑偏
需要清晰 Git 历史 每任务一 commit,便于回滚
团队协作 结构化文档让每次会话都能快速恢复
专业领域(AI、支付) research-phase 深度调研生态

❌ 不太适合

场景 建议替代
单文件小脚本 直接对话,GSD 流程过重
一次性临时任务 /gsd:quick 快速模式
纯探索性研究 GSD 针对「构建」优化
原型验证 / PoC 先验证想法,再用 GSD 正式构建

💰 成本控制

# 切换预算模式
/gsd:set-profile budget    # 使用 Sonnet/Haiku,降低 60-70% 成本

# 进一步关闭可选功能
# 在 .planning/config.json 中:
{
  "research": false,       # 关闭深度研究
  "plan_checking": false,  # 关闭计划检查
  "depth": "quick"         # 3 个阶段,最少研究
}

九、常见问题 FAQ

Q:执行中途失败了怎么办?

/gsd:progress              # 查看哪些任务已完成
/gsd:debug "描述失败情况"   # 系统性诊断
/gsd:execute-phase 1       # 重新执行(已完成任务自动跳过)

Q:需求临时变更怎么处理?

/gsd:add-phase             # 新需求加到末尾
/gsd:insert-phase 3        # 插入到特定位置(创建 3.1 子阶段)
/gsd:remove-phase 5        # 删除不再需要的阶段

Q:计划检查器拒绝了我的计划?

检查 {N}-{K}-PLAN.md 中每个任务是否都有对应的需求 ID 映射。计划检查器会给出具体拒绝原因,按提示修改后重新运行 /gsd:plan-phase

Q:API 成本太高?

运行 /gsd:set-profile budget 即可切换到低成本模式。对于简单项目,还可以在 config.json 中关闭 researchplan_checking

Q:团队多人协作怎么用?

.planning/ 目录提交到 Git。每人开始工作前运行 /gsd:progress 了解当前状态;里程碑完成后打 tag 版本管理。


十、总结

🎯 你描述你要什么,AI 把它正确地建出来——不是靠运气,而是靠结构。

GSD 用一个极简的思路解决了 AI 编程最棘手的问题:

  1. 状态外部化:决策活在文件里,不活在对话里
  2. 上下文新鲜化:每个任务独享 200k 全新上下文
  3. 执行原子化:每任务一 commit,精确可回滚
  4. 流程结构化:六阶段循环,每步职责清晰

如果你每周花超过 4 小时和 AI 写代码,GSD 值得认真一试。


资源链接

  • 🐙 GitHub:https://github.com/gsd-build/get-shit-done
  • 💬 Discord 社区:https://discord.gg/gsd
  • 🐦 Twitter/X:@gsd_foundation

本文基于 GSD v1.22.1 文档整理。如有疑问欢迎在评论区讨论。

觉得有用的话,一键三连支持一下 🙏


标签Claude AI编程 Context Engineering Claude Code OpenCode 提示工程 LLM 效率工具

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐