文章

Context Gateway:AI Agent 的上下文压缩代理

Context Gateway:AI Agent 的上下文压缩代理

用 Claude Code 或 Cursor 写代码时,最烦的事情之一就是对话写到一半,context window 满了,agent 开始压缩历史记录 — 然后你得等它慢慢总结之前的对话,工作流被打断。

今天 HN 上有个 Show HN 项目直接解决了这个问题:Context Gateway,一个 YC 背书的开源项目,做的事情很直接 — 在 agent 和 LLM API 之间加一层代理,提前在后台压缩对话历史。

问题出在哪

AI coding agent 的 context window 是有限的。Claude 200K、GPT 128K,听起来很大,但在实际编码场景中消耗速度远超预期:

  • 每次读文件,几千 token
  • 工具调用的输入输出,几千 token
  • 错误信息、日志、diff,动辄上万 token

一个复杂的编码任务,十几轮对话就能把 context 塞满。满了之后 agent 要做 history compaction — 把之前的对话压缩成摘要。这个过程本身就要调一次 LLM,耗时 10-30 秒。

关键问题是:这个压缩发生在你等着它干活的时候

Context Gateway 的思路

Context Gateway 架构 Compresr.ai 的 Context Gateway 代理架构

思路不复杂但很实用:

  1. Gateway 作为代理层,拦截 agent 和 LLM 之间的所有请求
  2. 在后台持续监控 context 使用率(默认阈值 75%)
  3. 提前 在后台预计算压缩摘要
  4. 当 agent 真正需要压缩时,摘要已经准备好了,直接替换,零等待

本质上是一个 预计算 + 缓存 的思路,把同步阻塞变成异步预处理。

为什么这个方向值得关注

这个项目本身还很早期(刚上 HN),但它指向一个重要趋势:AI Agent 的基础设施层正在成型

过去一年,agent 领域的关注点主要在”让 agent 更聪明” — 更好的 prompt、更强的模型、更多的工具。但实际用下来,很多瓶颈不在智能层,而在工程层:

  • Context 管理:长对话如何高效压缩而不丢失关键信息
  • 成本控制:一个复杂任务动辄消耗几美元的 API 调用
  • 可靠性:网络抖动、API 限流、模型返回格式不一致

这些问题不性感,但直接决定了 agent 在生产环境中是否可用。

一些思考

Context Gateway 的方法有个隐含假设:压缩摘要的质量足够好,不会让 agent 丢失重要上下文。这在实践中不一定总成立 — 特别是涉及精确的代码修改历史时,摘要可能会丢掉关键细节。

另一个值得关注的方向是 分层 context:不是简单地压缩所有历史,而是区分”工作记忆”(当前任务直接相关)和”参考记忆”(背景知识),对不同层级用不同的保留策略。这可能比一刀切的压缩更有效。

不过,先解决”等待压缩”这个体验痛点,已经是实实在在的改进了。Agent 工具链的每一个小优化,累积起来就是生产力的质变。


如果你在日常开发中频繁使用 AI coding agent,推荐试试 OfoxAI(ofox.ai)— 一个账号接入 Claude、GPT、Gemini 等主流模型,在不同任务间灵活切换。

本文由作者按照 CC BY 4.0 进行授权