AI News HubLIVE
站内改写2 分钟阅读

MCP工具:捕获AI代理范围蔓延

Overreach 是一款独立的 MCP 工具,用于检测 AI 代理生成的代码差异是否超出用户提示指定的范围。它通过三个阶段:LLM 范围提取、确定性差异解析和比较,标记未授权的依赖、环境变量、端点、定时任务等。支持多种 LLM 提供商,无需 API 密钥时自动进入偏执模式。提供 CLI、MCP 服务器、预提交钩子和 CI 门控功能,帮助开发者确保 AI 代理行为可控。

来源Hacker News AI作者: Naveja

Overreach 是一款创新的开源工具,专门用于检测 AI 编码代理的范围蔓延问题。当开发者向 AI 代理提供提示并生成代码差异时,Overreach 能够自动判断该差异是否严格遵循了原始提示的要求,还是代理悄悄添加了未授权的修改,例如新的端点、依赖项、环境变量或定时任务。

该工具的核心工作流程分为三个阶段。第一阶段是范围提取,利用 LLM(如 Anthropic 的 Claude 或 OpenAI 的 GPT)解析用户提示,生成一份授权的范围 JSON,明确指出了哪些文件、功能、依赖、端点、环境变量和行为是用户实际要求的。此阶段是唯一调用模型的环节。第二阶段是差异解析,通过确定性正则表达式解析代码差异,提取实际添加的内容。第三阶段是比较阶段,使用集合运算和模糊匹配找出实际添加与授权范围之间的差异,从而产生发现项。这种设计使得后两个阶段无需调用模型,确保了工具的可审计性和测试的零成本。

Overreach 对发现项进行了分类和严重性分级。例如,环境变量、端点和定时任务被视为高风险;依赖项和文件修改为中风险;新功能为低风险。最终的综合得分根据最高风险项确定:高风险为 HIGH,中风险为 MEDIUM,低风险为 LOW。这种分级有助于开发者优先处理关键问题。

在部署方面,Overreach 提供了多种集成方式。CLI 工具可以直接运行手动检查,支持管道输入差异。MCP 服务器可与 Claude Code、Cursor、Codex 等主流工具无缝集成,自动暴露检查功能。预提交钩子可以在代码提交前拦截高风险的范围蔓延,阻止提交并输出错误信息。CI 门控则可以在 GitHub Actions 中运行,确保每次拉取请求都经过检查,失败则阻止合并。

Overreach 的设计充分考虑了灵活性。它支持 Anthropic、OpenAI(包括兼容服务如 OpenRouter、Groq)、Ollama 等多种 LLM 提供商,用户可以根据自己的环境选择最合适的模型。此外,如果没有 API 密钥,工具会自动进入偏执模式,基于正则表达式解析提示,标记所有差异中的内容为潜在未授权,虽然理解力不如 LLM,但仍能提供基本保障。

该项目完全开源,采用 MIT 许可证。它不自带遥测或回传功能,完全在本地运行,保护用户隐私。Overreach 的文档完善,包括详细的安装指南、使用示例、常见问题解答以及一个零密钥的演示命令,方便用户快速体验。通过社区反馈和问题跟踪,工具持续改进,确保准确性和实用性。