100% local · no cloud · no account

Your feed, without the noise.

A Chrome extension that filters X and YouTube with a small AI model running on your own machine. Noise gets blurred. Signal gets through. Nothing leaves your laptop.

Requires a Mac with Chrome and ~2 GB disk for the model. Everything is open source.

x.com/home 14 shown · 41 hidden
@arvidkahl · 2h

When someone signs up to your SaaS, grab their email domain, get a summary from Firecrawl, have an LLM generate the best starting configuration…

✓ AI: specific tool and tactic
@viralclips · 3h

You won't believe what happened next 🤯 wait for the end

prefilter: clickbait-phrase 👁 Show
@levelsio · 5h

I mass launched 70+ startups since 2013. Here's my stack: a $5/month VPS, PHP, jQuery, SQLite. No frameworks. No team. $2.7M ARR.

✓ AI: concrete numbers, real stack
The on every card tells the filter it was wrong — and it learns from that.

Three gates. All on your machine.

Every tweet on your home feed gets a decision in under a second. Nothing is sent anywhere — the model runs in Ollama on localhost.

01 · regex prefilter

Obvious junk dies instantly

Engagement bait, crypto pumps, NSFW, clickbait phrasing — caught by patterns before the model is even asked. A tech/business safelist protects real content from false positives.

02 · local model

A 4B model scores the rest

Novelty, specificity, density, authenticity — scored by Gemma running locally (~780ms median). Concrete numbers and real experience read as signal; vague hype reads as noise.

03 · your threshold

You control the strictness

Only confident noise calls get blurred. Everything is reversible: peek under any blur, and if the call was wrong, one tap on ✗ fixes it and records the mistake.

Filter accuracy is a number here, not a feeling.

Every version of the filter runs against a 109-tweet golden set before it ships — real tweets, tiered by what missing them would cost. A regression gate blocks any change that loses signal.

100%
critical-signal recall
job leads, paid pilots, key releases — zero lost
96.2%
signal recall
the metric you could never feel by scrolling
89.3%
noise caught
including tech-flavored engagement bait
Why measure at all? A feed filter has two failure modes with very different visibility. Noise that leaks through is annoying — but you see it, so you fix it. Signal that gets hidden is invisible — you never know what you lost, so every hand-tuned "improvement" quietly drifts toward over-hiding. The eval suite guards the side no human can feel, and the ✗ button turns your real corrections into test cases.

Open YouTube for music. Leave with music.

The same extension runs an inverted filter on YouTube: everything is blurred by default, and only music (and optionally motivational videos) is revealed. For when you came to press play, not to lose an evening.

blur-by-default

The homepage can't grab you

Every thumbnail is blurred until the local model confirms it's music. The trending video you didn't come for stays a gray rectangle.

title + channel only

Fast enough to be invisible

Classification uses just the title and channel with a 2B model, so the grid resolves in a blink. Search and channel pages are never touched.

shorts nudge

Doom-scroll circuit breaker

A counter tracks Shorts binges. Past your limit — 10 Shorts or 5 minutes — a gentle full-screen nudge asks if this is really where the evening goes.

Five minutes, one script.

The setup script installs the local AI runtime, downloads the right model for your machine, fixes permissions, and proves the whole pipeline with a live classification before you ever open Chrome.

Get the code and run setup

git clone https://github.com/phuaky/xrai.git && cd xrai
bash scripts/setup.sh
# ...
✓ Model classified a test tweet: {"prediction":"noise","confidence":0.78}

Load the extension

Open chrome://extensions → enable Developer mode → Load unpacked → select the extension/ folder.

Open x.com

The rai pill appears bottom-right with live shown/hidden counts. 👁 peeks under any blur, ✗ corrects mistakes, ⚙ tunes everything.

Reads your screen. Touches nothing else.

rai behaves like an ad blocker, not a bot.