跳到主要内容

上下文与信息控制

上下文是 Ghast 在一次请求中能够看到的材料集合。它影响模型能否记住目标、理解文件和正确使用工具;它不是“聊天框里可见的文字”这么简单。

上下文的组成​

一次请求可能组合以下内容:

  1. 系统和安全规则。
  2. Personal instructions。
  3. 当前消息和附件。
  4. 近期对话消息。
  5. 历史对话的压缩摘要。
  6. Workspace 相关内容和 Tool 结果。
  7. 已加载 Skill 的说明、脚本和模板。
  8. 当前可用 Tool 的描述。
  9. 当前对话启用的 MCP Tool / Resource。
  10. 自动检索到的 Memory。
  11. Web Search 结果和相关 Team 状态。
  12. 任务运行中产生的中间结果。

具体组合由当前模式、模型、选择器和运行时决定,不要默认每次请求都会带齐全部内容。

影响最大的三类内容​

历史和结果​

长对话、完整日志、巨大 diff、网页原文和大量图片会让上下文快速变长。折叠卡片只改变界面显示,不一定减少已发送内容。

能力描述​

All Tools、多个 MCP Server、多个 Skill 会增加模型要阅读的说明。能力越多,选择空间越大,也会增加不必要的上下文。

长期信息​

Personal instructions、Memory、自动加载 Skill 和 Team Memory 会把过去内容带到新任务。长期内容应短、稳定、可确认,不要写临时猜测。

四个控制旋钮​

旋钮适合解决
当前消息当前任务的目标、范围和限制
Composer 选择本次可用 Tool、Skill 和 MCP
Chat Settings长期回复偏好、默认选择和压缩策略
Memory / Skill可复用事实或方法

实用的缩短策略​

  • 先读取入口和相关文件,再扩大范围。
  • 让 Grep / WebSearch 只返回与问题相关的结果。
  • 让模型总结已经确认的约束,并保存路径、ID、命令和版本。
  • 关闭不相关的 MCP Server 和 Skill。
  • 对长任务分阶段,每阶段留下一个可验证的交付。
  • 在主动压缩前,把精确参数、错误和外部对象 ID 写到短消息或文件中。

上下文状态​

当当前会话、模型和统计数据可用时,输入区会显示上下文使用量;它不依赖 Chat Settings 的 Show token usage。该开关只控制已完成消息是否显示 Provider 用量详情。压缩处理期间可以看到 Compacting context;成功后,压缩摘要和标记不会作为普通消息显示,界面也不会承诺出现 Context compacted、Earlier messages summarized 或 Tokens saved 之类的完成文案。应重新打开上下文用量,通过数字变化检查结果。不同 Provider 的 token 统计不一定完全可比。

什么时候开新对话​

开新对话通常比继续污染旧上下文更清楚,尤其是:

  • 任务目标已经改变。
  • 项目、分支、账号或外部页面改变。
  • 旧日志和错误不再相关。
  • 需要从只读审查切到写入执行。
  • 需要彻底切换模型或能力集合。

新对话不会替你迁移文件状态、外部状态或未写入的临时结论;先写一份短交接摘要。