用了 GSD,我再也不怕 Claude 「失忆」了|解决上下文腐烂的终极方案
🔥 用了 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 中关闭 research 和 plan_checking。
Q:团队多人协作怎么用?
将 .planning/ 目录提交到 Git。每人开始工作前运行 /gsd:progress 了解当前状态;里程碑完成后打 tag 版本管理。
十、总结
🎯 你描述你要什么,AI 把它正确地建出来——不是靠运气,而是靠结构。
GSD 用一个极简的思路解决了 AI 编程最棘手的问题:
- 状态外部化:决策活在文件里,不活在对话里
- 上下文新鲜化:每个任务独享 200k 全新上下文
- 执行原子化:每任务一 commit,精确可回滚
- 流程结构化:六阶段循环,每步职责清晰
如果你每周花超过 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 效率工具
更多推荐



所有评论(0)