Sentinel

See what a file would make your AI agent do.

AI coding agents follow instructions written in ordinary project files. Sentinel reads those files and tells you, in plain words, what they ask for.

  • CLAUDE.md
  • AGENTS.md
  • .cursorrules
  • settings.json
  • .mcp.json
Sentinel in one picture A project file contains a line nobody can see. Sentinel scans the file, highlights the hidden instruction, and cuts the path that would have carried your keys away. CLAUDE.md a line you cannot see your AI agent your code your keys

    Your result appears here.

    Pick a sample on the left, paste a file, or upload one. Then scan it.

    How a file takes over an agent

    No virus, no software bug. The agent does exactly what the file says, with your access to code, terminal and keys.

    Invisible text

    Characters with no width spell out an instruction. A reviewer sees a clean file. The agent reads every character.

    Seen in TrapDoor, May 2026, and the Rules File Backdoor, March 2025.

    Commands that run by themselves

    A settings file tells the editor or the agent to run a script the moment the project is opened. Nothing asks first.

    Seen in Miasma, June 2026: 73 Microsoft repositories switched off in 105 seconds. And in ChainDrop, August 2026.

    A tool that changes after approval

    A tool server behaves until it is trusted, then rewrites its own description into new orders.

    Seen in Deadbugz, August 2026. Sentinel catches the change that adds the server. What the server does later needs a guard that watches the agent while it runs.

    How Sentinel works

    Four steps, all on your computer. Nothing is sent anywhere and nothing from the scanned project is ever run.

    Optional, off by default. A sandboxed AI follows the file among decoy secrets while Sentinel watches what it reaches for. It can raise a warning. Only hard evidence can block.

    What we measured

    We ran Sentinel and two leading open-source scanners on the same 930 popular, healthy public projects, all at their default settings. Every square is one project. More green is better.

    Sentinel fewest false alarms99.7% pass3 false alarms in 930 projects
    Scanner B87% pass120 false alarms in 930 projects
    Scanner A58% pass386 false alarms in 930 projects

    Where we got it wrong

    Our first version wrongly called 22 of 590 healthy projects compromised. We found the causes, fixed them, and re-tested on 340 projects it had never seen. It now calls none of the 930 compromised.

    An experiment that fell short

    A sandboxed AI followed 30 disguised attack files among decoy secrets. It caught 11, with no false alarms. That is below our own bar, so the feature ships switched off.

    The projects are presumed healthy, not audited one by one, and both other scanners check far more things than Sentinel does. Tool names, versions, method and raw output are in the benchmark results.

    Use it

    You need Python 3.10 or newer and Git. Nothing else.

    1. Windows: press Start, type PowerShell, press Enter. Mac or Linux: open Terminal.
    2. Copy the block for your system below and paste it into that window. Paste all four lines at once.
    3. Wait until it says Open http://127.0.0.1:8000, then open that address in your browser. Leave the window open.

    Windows (PowerShell)

    git clone https://github.com/GarvitAgrawal04/SENTINEL.git
    cd SENTINEL
    git pull
    .\setup.bat

    macOS or Linux

    git clone https://github.com/GarvitAgrawal04/SENTINEL.git
    cd SENTINEL
    git pull
    bash setup.sh

    Ran it before? The same four lines are safe to run again. “Already exists” on the first line is fine: the third line brings your copy up to date.

    What you should see
    ==> Using Python 3.12
    ==> Creating the virtual environment in .venv
    ==> Installing dependencies (first run takes a minute or two)
    ==> Self-test
    ALL PASS
    ==> Open http://127.0.0.1:8000 in your browser

    What Sentinel does not do

    • It checks files. An attack that begins after a tool server is approved needs a guard that watches the agent while it runs.
    • Its rules catch patterns. A cleverly reworded instruction can pass them, and one of our own tests documents that miss.
    • A clean result means checked, not safe.