exepal
On this pageWhat it checksVibe-coder stackAPI

Vibe-coder stack / AI config scanner

Is your .cursorrules, CLAUDE.md or MCP config safe?

Your AI coding agent reads these files every session and does what they say. A copied rules file can hide instructions you can't see, run a script from a stranger's server, or carry a live API key. Paste yours and check it in seconds, free.

Checks hidden Unicode and HTML-comment instructions, curl | sh and encoded commands, skip-permission flags, credential access, planted scripts, risky MCP servers, suspicious links and leaked keys. Rules only, no AI model. Your files are scanned in memory and not stored. Free, 30 scans a day.

Why rules files are an attack path

Cursor, Claude Code, Windsurf, Copilot and other coding agents treat files like .cursorrules, CLAUDE.md and AGENTS.md as instructions from you. People copy them from GitHub, Discord and "awesome rules" lists. Researchers have shown that invisible Unicode characters can hide extra instructions inside a file that looks normal on screen, so the agent quietly adds a script to your app or sends data somewhere. Text inside an HTML comment is hidden the same way when the markdown is rendered.

What it checks

  • Hidden text: Unicode tag characters, zero-width runs, bidi overrides and instructions inside HTML comments, decoded so you can read them.
  • Risky commands: curl … | sh, encoded PowerShell, rm -rf /, force-push to main, edits to .bashrc or git hooks.
  • Safety switched off: --dangerously-skip-permissions, bypassPermissions, "never ask for confirmation", --no-verify.
  • Data theft: reading ~/.ssh, .env or wallets, sending data to webhook collectors, tunnels or chat webhooks, markdown-image exfiltration.
  • MCP configs: allow-all shell, unpinned npx -y servers, MCP servers over plain http, hooks that download and run code.
  • Leaked keys: OpenAI, Anthropic, Stripe, Supabase, AWS, GitHub and more, shown masked.

Normal instructions ("use TypeScript", "IMPORTANT: run the tests") are not flagged.

Scan in CI or from your agent

The same scanner is an API and MCP tool, scan_rules, at $0.002 a scan, up to 20 files per call, with 20 free calls a day on a free key. Run it on every pull request that touches an agent config.

curl -X POST https://api.exepal.com/v1/scan/rules \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"files":[{"path":".cursorrules","text":"..."}]}'

Questions

Do you keep my files?
No. The file is scanned in memory on our server and only a count of scans is logged. Keys found in it are shown masked. If a real key shows up, rotate it: anyone who saw the file may have it.
Does a clean result mean the file is safe?
It means none of the known bad patterns were found. It can't judge whether an ordinary-looking instruction is a good idea for your project, so still read files you copy from strangers.
Which files can I scan?
.cursorrules, .cursor/rules/*.mdc, CLAUDE.md, AGENTS.md, GEMINI.md, .github/copilot-instructions.md, .windsurfrules, .clinerules, .mcp.json, Cursor's mcp.json and .claude/settings.json. Up to 10 files at once.
Is this part of something bigger?
Yes, it's one step of the vibe-coder stack: free checks for people building with Lovable, Bolt, Cursor and Claude Code, all on one key.
palnext step

Scan configs on every pull request.

The same scanner is an API and MCP tool at $0.002 a scan, with 20 free calls a day on a free key.