MC

mksglu/context-mode

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

3.3万 stars 2278 forks 质量 85 趋势 99NOASSERTION

为AI编码代理优化上下文窗口。沙盒工具输出(减少98%),保留会话内存,并通过MCP+钩子在17个平台上强制路由。

概览

每个MCP工具调用都会将原始数据导出到你的上下文窗口。一个Playwright快照成本为56 KB。二十个GitHub文件成本为59 KB。一个访问日志——45 KB。30分钟后,40%的上下文就消失了。当代理将对话压缩到空闲空间时,它会忘记自己正在编辑哪些文件、正在进行的任务以及你上次请求的内容。此外,代理还浪费了输出代币在填充内容、客套和冗长解释上——双方都烧毁了上下文。 上下文模式是一个MCP服务器,解决了这个问题的四个方面: 1. — 沙箱工具将原始数据排除在上下文窗口之外。315 KB变成5.4 KB。减少了98%。2. — 每一次文件编辑、git操作、任务、错误和用户决策都会在SQLite中被跟踪。当对话压缩时,上下文模式不会将这些数据重新导入上下文——它将事件索引到FTS5,并通过BM25搜索只检索相关内容。模型会从你中断的地方直接接手。

概述(AI 翻译)

语境问题的另一半。

跨队伍使用

问题

每个MCP工具调用都会将原始数据导出到你的上下文窗口。一个Playwright快照成本为56 KB。二十个GitHub文件成本为59 KB。一个访问日志——45 KB。30分钟后,40%的上下文就消失了。当代理将对话压缩到空闲空间时,它会忘记自己正在编辑哪些文件、正在进行的任务以及你上次请求的内容。此外,代理还浪费了输出代币在填充内容、客套和冗长解释上——双方都烧毁了上下文。

上下文模式如何解决这个问题

上下文模式是一个MCP服务器,解决了这个问题的四个方面:

  1. 上下文保存 — 沙盒工具将原始数据排除在上下文窗口之外。315 KB变成5.4 KB。减少了98%。
  2. 会话连续性 — 每一次文件编辑、git操作、任务、错误和用户决策都会在SQLite中被跟踪。当对话压缩时,上下文模式不会将这些数据重新导入上下文——它将事件索引到FTS5,并仅通过BM25搜索检索相关内容。模型会从你中断的地方直接接着。

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

Context Mode

The other half of the context problem.

Used across teams at

在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "context-mode": { "command": "context-mode" } }, "hooks": { "BeforeTool": [ { "matcher": "run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode|mcp__context-mode|mcp__(?!.*context-mode)", "hooks": [{ "type": "command", "command": "context-mode hook gemini-cli beforetool" }] } ], "AfterTool": [ { "matcher": "", "hooks": [{ "type": "command", "command": "context-mode hook gemini-cli aftertool" }] } ], "PreCompress": [ { "matcher": "", "hooks": [{ "type": "command", "command": "context-mode hook gemini-cli precompress" }] } ], "SessionStart": [ { "matcher": "", "hooks": [{ "type": "command", "command": "context-mode hook gemini-cli sessionstart" }] } ] } }