Launching today

VibeDrift
Stop your AI agent getting worse as your codebase grows
54 followers
Stop your AI agent getting worse as your codebase grows
54 followers
AI agents get worse as your codebase grows - duplicate helpers, clashing patterns, and broken features. That's drift. VibeDrift detects it in one quick local scan and feeds your agent the context to stop creating it. Free to use, runs locally, and zero code leaves your machine.












Hey Product Hunt 👋 I'm Sami, maker of VibeDrift.
I built this because of something I kept living through: around session 30 of any AI-assisted project, the agent that felt like magic starts breaking things. It rebuilds functions that already exist. It "fixes" checkout and breaks login. Everyone blames the model — but the model didn't change. The codebase did.
Every session quietly adds a new pattern: a third way to fetch data, a second error style, a duplicate helper under a different name. A stateless agent reads that mess and adds a fourth. We call it drift, and it's why vibe coding hits a wall.
VibeDrift fights it from both ends:
🔍 Detect — npx @vibedrift/cli . scans your repo locally, in seconds, and shows you exactly where your codebase disagrees with itself — ranked by blast radius, each with a fix prompt written for your agent to execute.
🧠 Prevent — the MCP server + a .vibedrift/ context folder give your agent a memory. Mid-task, Claude Code or Cursor asks "does a function like this already exist?" and gets an evidence-backed answer before writing the drift.
A few things we did differently:
• We ran a controlled eval — same model, same tasks, with and without VibeDrift — and published the parts where it did nothing, along with where it cut drift by a statistically significant margin. Full methodology: vibedrift.ai/blog/does-a-drift-checker-change-agent-output
• We scanned 500+ public repos to see how real codebases score. The finding that surprised us: AI-era repos held a higher median consistency score than some of the most respected older projects — while a few 60k+ star repos scored worse than 10-year-old libraries like lodash. Popularity and internal coherence barely correlate.
• The local pipeline is fully open source (MIT): github.com/VibeDrift/VibeDrift. The scan is free, runs on your machine, and zero code leaves it.
• There's no new habit to form. You install it once; your agent uses it.
Free tier is genuinely useful (scans, agent memory, all 5 local MCP tools, 1 deep scan/mo). Pro ($15/mo) adds cloud deep scans for the stuff heuristics can't catch.
Here's a standing offer, same as we've been doing on Reddit: drop any public repo in the comments and we'll scan it live and post the score + top finding.
Anishek and I will both be here all day — ask us anything, including the uncomfortable ones. 🫡
One thing that didn't fit in the gallery: you don't even need the CLI to try this.
We built a Vibe Check page - paste any public GitHub repo URL and it runs the scan for you, right in the browser. Your repo, your favorite framework, that project you inherited and have suspicions about. No install, no signup: [vibedrift.ai/vibe-check]
Fair warning from watching people do this all week: checking someone else's repo is fun, checking your own is educational. 😄 If you get a score that surprises you (either direction), post it here - genuinely curious what today's range looks like.
this is a real problem, we hit it constantly. question on the detection side - how do you tell drift apart from an intentional pattern change, like mid-migration where half the codebase is on the old data-fetching approach and half is on the new one on purpose. does it just flag both as "disagreement" and let the fix prompt sort it out, or is there some signal for "this divergence is temporary and expected"
How does it actually decide what counts as drift versus intentional variation in coding style across a team, especially when the codebase is already inconsistent?