
Over-Reach Detector
io.github.choreoatlas由 GitHub 帳號 choreoatlas 發布v0.0.6更新於 Oct 24, 2026
Detect when AI code changes exceed declared task scope (MCP server).
概覽
稽核 AI 編碼代理:比對宣告的工作範圍與實際改動的檔案,並回報越界情況。
- 可以做什麼
- 依宣告範圍檢查變更:傳入宣告的檔案 glob、宣告的類別(tests、docs、infra、config、code)以及實際修改的檔案清單。
- 取得包含 in_scope、over_reach 或 empty 狀態的報告,以及越界檔案與推斷出的越界類別。
- 報告可選擇 JSON 或 markdown 格式輸出。
- 除 MCP 伺服器外,也可透過命令列或 Python 直接呼叫同一套檢查邏輯。
- 適用情境
- 當 AI 編碼代理在程式碼儲存庫中工作時,用來快速、可重複地確認它是否只改動了任務允許的檔案與類別,例如在審閱變更前,或作為代理工作流程中的揭露步驟。
- 執行需求
- 以 Python 套件形式透過 stdio 在本機執行(PyPI 上的 over-reach-detector,可用 uvx 執行),需在代理的 MCP 設定中註冊啟動指令。未宣告需要帳號、API 金鑰或環境變數。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Over-Reach Detector,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Over-Reach Detector (MCP server)
Detect and report when AI coding agents change files outside their declared task scope. Designed to plug into Cursor, Claude Code, and other MCP-compatible AI coding agents via the standard stdio transport.
Compares two things:
- Declared scope — the files (as fnmatch globs) and categories (tests, docs, infra, config, code) the task is allowed to touch.
- Actual diff — the files the AI actually modified.
If the actual diff exceeds the declared scope, the tool returns status=over_reach and lists the offending files and categories.
What this tool does and does not do
over-reach-detector is an audit/disclosure tool, not a sandbox and not a blocker.
It compares a declared task scope with the actual files/categories changed by an AI coding agent. If the actual changes exceed the declared scope, it reports that mismatch.
It does not prevent file writes by itself. It does not decide whether to revert, approve, or block a change. The caller remains responsible for enforcement, rollback, or human review.
Install
From PyPI:
From source:
Quick start
Run all tests: python -m pytest -v
Try the CLI directly: python -m over_reach_detector.detector --input fixtures/example_pr_1.json --format markdown
Use as MCP server
Start the server (stdio transport): over-reach-detector (or python -m over_reach_detector.server from source)
Register with your AI agent:
- Cursor: in
~/.cursor/mcp.json, add (afterpip install over-reach-detector):
Dev / from source: use "command": "python", "args": ["-m", "over_reach_detector.server"] (run from repo root).
- Claude Code: after
pip install over-reach-detector, runclaude mcp add over-reach-detector over-reach-detector(writes to~/.claude.json). Dev / from source:claude mcp add over-reach-detector /absolute/path/to/python -m over_reach_detector.server.
The tool
check_scope_tool takes:
declared_files: list of fnmatch globs (e.g.["docs/*.md", "tests/*.py"])declared_categories: subset of["tests", "docs", "infra", "config", "code"]actual_files: list of file paths the AI modifiedoutput_format:"json"(default) or"markdown"
Returns a report with:
status:in_scope(within declared scope) |over_reach(reported mismatch) |emptyfile_overreach: files not matching any declared globcategory_overreach: inferred categories outside the declared set
Scope discipline
Current scope: CLI + MCP stdio server + 1 tool. Python only. fnmatch-based globs.
Out of scope (forbidden): code quality review, security audit, completeness governance, languages other than Python, multi-tool MCP servers, HTTP/SSE transport, GitHub Actions integration. These are deliberately deferred to later versions or never.
Example usage
Call check_scope_tool directly from Python (same logic the MCP server exposes):
License
MIT — see LICENSE.
來源:README.md,提交 c72bc0f
工具
0版本歷史
1- v0.0.6最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分