Skip to content

mksglu/context-mode

⭐ 14,220  ·  TypeScript  ·  GitHub 仓库

AI编码代理的上下文窗口优化。沙盒化工具输出,减少98%。支持15个平台。

antigravity claude claude-code claude-code-hooks claude-code-plugins claude-code-skill codex codex-cli

一句话总结

Sandboxes 工具在 15 个 AI 编码平台上实现了 98% 的上下文缩减。

🔥 核心能力与独特卖点

  • 沙盒化工具执行(98% 上下文缩减) — 通过 ctx_executectx_batch_execute,将原始、冗长的工具输出(例如 315 KB)替换为结构化摘要(例如 5.4 KB)。解决了长时间编码过程中上下文窗口溢出的关键痛点。

  • 跨压缩的会话连续性 — 在本地 SQLite 数据库中跟踪每一次文件编辑、Git 操作、错误和决策,支持 FTS5 全文搜索和 BM25 排序。在对话压缩后仍能存活,不会将过时数据重新注入上下文,彻底消除“丢失线索”问题。

  • 用代码思考范式 — 代理不再将 50 个文件塞入上下文,而是编写一个脚本,仅计算并记录结果。将十次工具调用合并为一次,实现约 100 倍的上下文节省,同时让代理的推理聚焦于逻辑而非数据。

  • 输出 Token 压缩(65-75% 缩减) — 强制使用简洁、技术精确的回复,不含任何填充词、客套话或模棱两可的表达。在保持完整技术准确性的同时,大幅降低 LLM 输出成本和延迟。

  • 多平台自动路由 — 支持 15 个平台(Claude Code、Gemini CLI、Cursor、Copilot、Codex CLI、Zed 等),在支持钩子的平台上实现自动钩子路由,在其他平台上无缝回退到 MCP 模式。

Architecture

技术架构

组件描述
MCP 服务器11 个工具:6 个沙盒工具(ctx_executectx_batch_executectx_execute_filectx_indexctx_searchctx_fetch_and_index)+ 5 个元工具(ctx_statsctx_doctorctx_upgradectx_purgectx_insight
SQLite + FTS5本地知识库,支持全文索引和 BM25 搜索,用于检索相关会话上下文
钩子系统PreToolUse、PostToolUse、PreCompact 和 SessionStart 钩子,用于在支持钩子的平台上自动执行路由策略
插件架构完整的 Claude Code 插件(斜杠命令、状态行)+ 针对无钩子平台的 MCP 模式
运行时Node.js 18+;通过 npm 全局安装和 npx 执行进行分发

快速入门指南

Claude Code 插件安装(支持钩子):

bash
/plugin marketplace add mksglu/context-mode
/plugin install context-mode@context-mode

仅 MCP 安装(无钩子):

bash
claude mcp add context-mode -- npx -y context-mode

全局安装(Gemini CLI 等):

bash
npm install -g context-mode

验证:

/context-mode:ctx-doctor

可选状态行(Claude Code):

json
{
  "statusLine": {
    "type": "command",
    "command": "context-mode statusline"
  }
}

优点、缺点与用例

优点

  • 工具输出减少 98% — 将 315 KB 有效载荷转换为 5.4 KB 摘要
  • 输出 Token 节省 65-75% — 在不牺牲准确性的前提下降低 LLM 成本和延迟
  • 会话连续性 — 在对话压缩后仍能存活,并保留完整的可搜索历史
  • 支持 15+ 平台 — 单一工具即可在 Claude Code、Cursor、Copilot、Gemini CLI 等平台上运行
  • 开源(ELv2 许可证),已在多家大型科技公司积极采用

缺点

  • 需要 Node.js 18+ — 在较旧或受限的运行时上不可用
  • 无钩子平台需要手动路由 — 在仅 MCP 环境中需要额外设置步骤
  • Claude Code 插件需要 v1.0.33+ — 旧版本不兼容
  • 输出压缩风格 — 简洁的“原始人”回复可能让某些用户感到不自然
  • 新会话会删除之前的数据 — 必须使用 --continue 标志才能在会话间保留历史

谁不应该使用?

  • 单命令用户 — 如果你很少运行多步骤编码会话,设置成本将超过收益
  • 旧版 Node.js 环境 — 不支持 Node 16 及以下版本
  • 需要冗长 LLM 输出的团队 — 如果你的工作流程依赖对话式、解释性回复,压缩风格会显得受限
  • 非编码 AI 代理用例 — 这是专为编码代理设计的;通用聊天或内容生成工作流程不会受益

理想用例

  • 长时间编码会话 — 重构、调试或功能开发,涉及数百次工具调用
  • 多平台代理团队 — 同时使用 Claude Code、Cursor、Copilot 和 Gemini CLI 的团队
  • 成本敏感型部署 — 输出 Token 减少 65-75%,工具上下文减少 98%
  • 复杂代码库导航 — 将“读取 50 个文件”的模式替换为“编写一个计算答案的脚本”
  • 自动化 CI/CD 代理流水线 — 在长时间运行的自动化任务中,跨压缩维护会话状态

社区与活跃度

Context Mode 已在 GitHub 上获得 14,220 颗星,这标志着强大的社区认可和实际应用。该项目积极维护,最新更新于 2026 年 5 月 10 日,表明其持续开发和对用户反馈的响应。支持 15+ 个平台,并被微软、谷歌、Meta、亚马逊、英伟达、Stripe、GitHub 等大型科技公司采用,它正迅速成为 AI 编码代理生态系统中上下文窗口优化的标准工具。清晰的、可量化的价值主张(98% 缩减)加上广泛的平台兼容性,使这个项目拥有强大的发展势头——每个使用 AI 编码代理的团队都应在今天进行评估。

热点项目数据来自 GitHub API,实时更新