Context Engineering 管理有限 context window 内放什么、以什么顺序放、何时压缩或丢弃——使 Model 在关键步骤仍能看到决策所需信息。
Harness 的核心竞争力之一:同样 Model,上下文编排不同,任务成功率差异巨大。
多源信息 ──► 选择 · 排序 · 截断 · 摘要 ──► messages ──► Model
▲ │
└── RAG/Memory/历史/@-attachments
- 当前用户消息与 @ 显式附件
- 相关 Rules(按 glob)
- 活跃 Skill 全文或摘要
- 检索片段(RAG)
- 近期对话历史
- 长期 Memory(摘要形式)
| 手段 | 用途 |
|---|---|
| @file / @folder | 用户显式 grounding |
| 符号级索引 | 精准代码片段 |
| Summarization | 旧 turn 压缩 |
| Compaction | 自动合并冗长历史 |
| 工具结果截断 | 防止单次 grep 占满窗口 |
- 最近相关性:与当前编辑文件、错误栈优先。
- 可观测:记录每 turn 的 token 分布便于调优。
- 不把 RAG 当无限内存:检索 top-k 仍要 rerank。
- context-budget.md — 预算与压缩策略