行业现存痛点
大模型驱动的多步编码代理运行过程中,绝大多数上下文预算没有消耗在核心推理逻辑上,而是被工具调用的全量返回内容占用。单次文件读取操作可能返回数百行无关代码,shell命令执行后输出完整堆栈跟踪,批量搜索返回数十条结果但代理最终只会参考其中一条。这类冗余内容会随着多轮迭代快速累积,直接拉高token成本,部分场景下冗余内容占比甚至超过95%。
现有上下文优化方案大多绑定在特定大模型或代理框架内部,修改成本高,无法适配已广泛使用的各类编码助手、第三方兼容端点。团队若要降低token支出,往往只能选择直接替换参数更小、推理效果更差的模型,无法在保留原有推理质量的前提下控制成本。
这种把上下文优化作为附属功能嵌入框架的模式,使得优化逻辑和代理主逻辑深度耦合,不同工具之间的优化策略无法复用,调整过滤规则需要修改大量核心代码,维护成本随代理功能迭代持续上升。
项目概述
该项目使用C语言开发,定位为独立于大模型和代理运行框架之外的上下文优化运行时,将原本嵌入代理内部的上下文过滤逻辑抽离为单独的通用组件。项目核心设计思路是把所有工具调用的返回内容放在沙箱环境中处理,全量原始输出不会进入大模型对话上下文,仅筛选出和当前代理任务强相关的片段传递给大模型。
项目无内置依赖付费服务,所有功能完全开放可配置,所有过滤规则和处理逻辑都可由使用方自行调整,不存在黑盒处理环节。官方公开的基准测试数据显示,多步编码循环场景下,该项目的过滤处理不会改变代理的最终决策质量。
技术架构深度分析
项目整体采用分层无状态代理架构,所有处理逻辑拆分为三个完全独立的核心模块,模块之间通过标准化的本地管道传输数据,没有共享全局状态,单实例可同时处理数十个代理会话的并发请求,不会出现不同会话的过滤规则互相干扰的问题。
技术选型逻辑
核心代码全部使用C语言实现,没有引入任何重型运行时依赖,编译后单二进制文件体积不足数兆,运行过程中内存占用峰值低于10MB。这种选型直接规避了脚本语言启动慢、额外开销大的问题,保证代理每一次工具调用经过代理处理时,额外增加的延迟控制在极低水平。
架构层面没有采用常见的网络代理端口模式,而是优先实现CLI代理的运行方式,不需要用户修改原有代理助手的网络配置,直接把原有代理的启动命令作为子进程挂接即可完成接入,适配门槛大幅降低。
核心模块组织方式
- 第一模块为工具调用拦截层:该层挂接在代理进程和系统调用之间,捕获所有代理发起的文件读取、shell执行、搜索请求,将请求转发给沙箱处理模块,不会修改代理发起的原始请求参数,保证代理的工具调用行为完全和原有逻辑一致。
- 第二模块为沙箱处理层:所有工具调用的全量原始输出全部在该层完成缓存,不会直接流向大模型侧。该层内置轻量语义匹配规则,针对不同类型的工具输出做切片标记,把和当前代理任务目标无关的内容直接标记为可丢弃。
- 第三模块为上下文重建层:该层从沙箱缓存中仅提取标记为相关的片段,按照原有输出的顺序重新组装成精简后的内容,返回给代理进程,代理感知不到内容被裁剪的过程,只会收到符合预期格式的工具返回结果。
分层设计的核心优势在于,所有和大模型、代理框架相关的适配逻辑都集中在拦截层,沙箱处理和上下文重建模块完全不需要感知上层代理的类型,后续新增适配新代理的支持时,仅需修改拦截层的少量代码,其余核心逻辑完全复用。
核心功能详解
多步代理循环60%-98%上下文削减
针对多步编码场景下累积的冗余工具输出做逐轮过滤,不需要修改代理的核心推理逻辑,直接降低每一轮对话传递给大模型的总token量。该效果在官方公开的基准测试中覆盖了从单文件小项目到多模块大型代码库的不同场景,平均削减比例落在该区间范围内,没有出现因为裁剪导致代理任务中断的情况。
工具输出沙箱隔离
所有工具调用的全量原始输出始终保存在沙箱本地缓存中,完全不会流入大模型的对话上下文链路,从数据流转层面切断冗余内容传递的路径。沙箱缓存的内容仅在代理后续明确需要访问特定片段时才会按需提取,其余时间不会参与任何上下文组装过程。
开箱即用主流编码助手适配
CLI代理模式默认适配三类主流编码助手,不需要额外编写适配插件,仅需调整启动参数即可完成挂接。适配过程不需要修改编码助手的内部配置文件,也不需要替换原有工具的可执行文件,启动后自动接管所有工具调用的输出处理流程。
Anthropic兼容端点全适配
完全兼容所有符合Anthropic接口规范的第三方大模型端点,和各类模型切换成本优化方案可以并行使用。二者叠加后可以在不降低代理决策质量的前提下,进一步拉低整体token支出,不需要为了适配上下文优化功能调整已有的模型路由配置。
自定义重写规则开放配置
所有内容过滤、敏感信息重写的策略都通过配置文件定义,支持针对不同类型的工具输出单独设置过滤阈值。团队可以根据自身业务场景调整裁剪的严格程度,比如在处理代码文件时保留函数签名部分,处理日志输出时自动过滤无关的调试信息。
极低运行额外开销
代理每一次工具调用经过该代理处理时,新增的延迟低于50毫秒,完全不会被用户感知到,也不会拖慢原有代理的运行速度。轻量的运行时特性保证其可以在普通开发机、容器环境中无压力部署,不需要为该组件单独分配额外的服务器资源。
项目地址:https://github.com/mksglu/context-mode
⭐ Stars:29096
🔍 来源:GitHub
Context window optimization for AI coding agents. Sandboxes tool output (98% reduction), persists session memory, and enforces routing across 17 platforms via MCP + hooks.

微信扫一扫,打赏作者吧~
网友评论