Type: concept
Confidence: 0.85
Created: 2026-04-18
Updated: 2026-04-18
Tags: ai-toolscontext-managementAI工程

上下文管理策略

概述

上下文管理策略是 Ralph Loop 系统中应对 LLM 上下文窗口只增不减问题的六种核心方法,包括固定栈分配子 Agent 卸载观察遮蔽、规范文件持久化、上下文预算管理干净状态协议

关键内容

  1. 根本问题:LLM 上下文只有 malloc() 没有 free(),每次工具调用都会追加内容且无法释放,最终进入愚钝区导致质量急剧下降。Ralph 的根本解法是在进入 Dumb Zone 前主动退出,让外循环重启新实例。
  2. 固定栈分配:每次迭代以完全相同的方式分配上下文(System Prompt → Project conventions → Core constraints → File references),利用 LLM 对开头和结尾注意力更高的特性,把最重要约束放在最前面。
  3. 子 Agent 卸载:将消耗大量 tokens 但只需结论的操作(运行测试套件、编译、截图分析)卸载给子 Agent,主 Agent 只接收简洁结论,上下文增加从 ~50,000 tokens 降至 ~100 tokens。
  4. 观察遮蔽:当上下文接近限制时,保留最近 N 轮对话,将旧消息替换为摘要占位符。Ralph 认为此策略不适合其"每 Story 一迭代"模式,但在 Story 实现过程中的子任务间可使用。
  5. 规范文件 vs 上下文内容:黄金规则——任何需要跨会话持久化的信息必须在文件里,不能只在上下文里。发现新约定更新 AGENTS.md,完成 Story 更新 prd.json + progress.txt。
  6. 上下文预算管理:估算 CLAUDE.md 各部分 token 消耗,理想情况下固定内容 ~5,000 tokens,prd.json ~15,000 tokens,实现过程工具调用 ~50,000 tokens,总计 ~105,000 tokens(52.5%),保留 48% 安全缓冲区。
  7. 干净状态协议Clean State Protocol:每次迭代结束前验证 git status 为空、build 无错误、测试通过、prd.json 语法正确、progress.txt 已更新,确保不把破损状态传递给下一个 Agent。

来源

相关