Overscope - audit what your AI coding agent changed vs. what you actually asked for A developer built Overscope, an offline, regex-based tool that audits whether an AI coding agent's diff matches the original request, flagging added dependencies, unintended file edits, and deletions. The tool compares signals from the prompt (verbs, explicit paths, "don't touch X" instructions) against the diff and reports "unknown" rather than guessing when heuristics are inconclusive. It is available under MIT for Python 3.12+ via `uv tool install`, with an optional Tauri desktop app. I built this tool with the help of Claude, to be clear since coding agents almost never stick to what I tell them to do. I’ll say “add this to this existing endpoint,” and it does that, but it also adds a dependency and also goes in to edit something I told it clearly to leave completely alone. Or maybe it deletes a file, rewrites it, and says, “done, added ” On something small, it’s quite easy to catch, but at the end of the day you’re bound to just commit it as is without caring too much to check. There’s no model in this. I didn’t make it so another LLM reviews your, well, LLM’s work. It uses a regex-based system with signals from your request verbs, explicit paths, keywords, “don’t touch X” and from the diff paths, files, etc. , then comparing the two with some keyword matching and some rules. So it runs offline, quickly, and it doesn’t write to your repository for you. A revert gets copied to the clipboard, but never run for you. Just to put that out there. It’s all heuristics. At least most of the time, from my testing, it prints unknown when it doesn’t know, rather than blindly throwing the dart. Python 3.12+, MIT. You can go ahead and install with uv tool install git+https://github.com/sandeepwastaken/overscope and run overscope inside the repo. There's a small Tauri desktop app too in /web/ if you want that That’s what Claude helped me the most with :P I'd most like feedback on where the scope calls feel wrong on real repos, since that's the part I'm least sure about. Thanks :