Vibe Code Detector is an open-source browser extension that performs forensic analysis on any webpage to detect the AI tools, IDEs, and platforms used to build it. In the age of "Vibe Coding", every AI tool leaves a unique signature — this extension reads it.
Signatures from Cursor, Windsurf, Trae, Replit Agent, Devin, and Claude Code.
Markers from v0.dev, Lovable.dev, Bolt.new, Stackblitz, and Google AI Studio.
- Tailwind Density — high utility class ratio per element is a strong prompt-based styling indicator
- Shadcn/Radix DNA —
data-radix-*attributes combined with standard Shadcn CSS variables - Lucide Iconography — the default icon library for almost every AI code generator
- Placeholder Patterns — generic texts and layouts left behind by AI prompts
- Install directly from the Chrome Web Store.
- Download the latest
.zipfrom the Releases page. - Unzip the file.
- In Chrome, go to
chrome://extensions/and enable Developer Mode. - Click Load unpacked and select the unzipped folder.
git clone https://github.com/paladini/vibe-code-detector.git
cd vibe-code-detector
npm install
npm run buildThen load the extension/ folder in Chrome as described above.
The detector runs a multi-layer heuristic scan on the active tab:
- Utility Density — calculates the ratio of Tailwind classes per DOM element
- Component Fingerprinting — identifies specific Radix/Shadcn attribute patterns
- IDE Signatures — scans for internal markers like
__cursoror AI-generated comment blocks - Platform Metadata — checks for generator tags and deployment-specific signatures
The final score is a weighted sum across all heuristics, producing a confidence verdict: Human, Likely AI, or Almost Certainly AI.
| File | Purpose |
|---|---|
src/lib/vibe-detector.ts |
Single source of truth for all heuristics and scoring logic |
extension/content.js |
Plain-JS mirror of the detection logic (no ES module imports) |
src/components/VibePopup.tsx |
Extension popup UI — contains no inline heuristic logic |
extension/content.jsmust always be kept in sync withsrc/lib/vibe-detector.ts.
npm run dev # Start Vite dev server (App preview)
npm run build # Build the Chrome extension into extension/
npm run lint # Run ESLintCI runs on every push via GitHub Actions. Releases can be published by:
- bumping
extension/manifest.jsonandpackage.jsonversions onmain(the workflow automatically creates/updates the matchingvX.Y.ZGitHub release), - pushing a version tag (
v*.*.*), or - manually triggering the Release Extension workflow with an optional version input.
Published GitHub releases include the packaged extension zip and checksum, while the recommended user install path remains the Chrome Web Store listing:
- Chrome Web Store: https://chromewebstore.google.com/detail/vibe-code-detector/pfnebgaajbopnhipbigfldmdjpaemgcg
git tag v1.0.1
git push origin v1.0.1New AI tools appear every week. Contributions to keep heuristics current are very welcome:
- New heuristics — found a new tool's signature? Open a PR with examples.
- Scoring refinements — help balance weights for better accuracy.
- UI improvements — enhance the forensic aesthetic.
See CONTRIBUTING.md for full guidelines.
Distributed under the MIT License.
Built by Fernando Paladini · For a more transparent web.
.png)