
ok so open For You right now.
count.
how many posts until a giveaway.
a "let's connect".
rage bait built for ratio.
a recycled meme.
another "USA has ChatGPT, China has DeepSeek, Europe has…" clone.
yeah.
X's algo isn't broken.
it's working.
bait is engaging.
anger is engaging.
FOMO is engaging.
so the feed keeps serving it.
I got tired of being free training data for that.
so I built XpressPurge — a browser extension that cleans For You with whole categories in one toggle, filters by meaning not only keywords, learns from one example, leaves a receipt every time something disappears, and runs the filtering AI on your device.
Free already gets unlimited exact rules + all 17 topic packs + receipts.
Pro / 14-day trial (no card) unlocks Smart Feed, See less / See more, Boost, Pack Studio, unlimited feed modes, AI Coach.
check the full tour.
"just use mute" — fair. I tried all of it.
I used X's tools first.
they help for specific scenarios.
they just don't solve what people actually complain about: genres, not one word and not one account.
Muted words — X lets you mute words, phrases, usernames, emojis, hashtags on Home and Notifications. one entry at a time. case-insensitive. still shows up in search. mute "airdrop" and you still get free mint, claim window, whitelist, next week's spelling. forever whack-a-mole. spammers rotate vocabulary faster than anyone maintains a list.
Mute account — that handle disappears without them knowing. engagement bait isn't an account problem. it's the same format from thousands of handles you'll never see twice.
Block — stronger. they can discover it if they visit your profile. same genre gap. social cost when the issue wasn't "this person" — it was "this kind of post."
Not interested in this post (and Not interested in a Topic) — signal into their recommender. X says it helps show less of that type. what you don't get: a receipt, an explanation, an undo history you own, or a portable rule. you're tuning their model. blind.
Following tab — drops For You recommendations. also drops discovery. you still get every repost and bait tweet from people you follow.
native tools are keyword-shaped and account-shaped.
the pain on X is meaning-shaped: engagement bait, AI slop formats, crypto farming, politics you didn't ask for, memes you never opted into.
that's the gap I built for.
quick one — which of those is currently wrecking your For You the most? reply even one word. I'll come back to packs.
the flame. magic first. stay in the feed.
every post gets a small flame.
two clicks. no settings rabbit hole.
- See less like this (Smart Feed / Pro) — post becomes a dislike example. future posts close in meaning get removed. for the stuff you can't name but know on sight.
- See more like this (Pro) — protect the good shape. engine learns what to defend, not only what to kill.
- Boost @handle (Pro) — people you follow on purpose, forced up and highlighted.
- Hide @handle — free. instant account rule.
- Quick keyword add — suggest from the post, edit, save.
- Add new rule — full builder (keyword, account, media, engagement, domain) without leaving the timeline.
my favorite detail: learning is self-correcting.
examples keep score.
you can restore what it hid too often → the example retires itself.
learns taste.
unlearns mistakes.
the line I keep saying:
'Not interested' trains their model. 'See less like this' trains yours — on your machine.
packs. free. whole category. one toggle.
I don't want to predict next week's scam vocabulary.
so packs.
curated weighted signals — terms, handles, domains, cashtags, emoji — around a theme.
strong signal can hide a post alone.
weak ones need company so one innocent word doesn't nuke something you wanted.
noise packs push toward hidden.
signal packs protect what you care about and push toward boosted.
strength slider per pack — Politics as a hard wall or a gentle dimmer.
17 built-in packs. free. unlimited.
the hate list people actually name:
- Crypto & Airdrops
- Engagement Bait
- Rage Bait
- AI Slop (yes — "USA has ChatGPT / China has DeepSeek / Europe has…")
- Reply-Guy Spam ("let's connect" energy)
- Politics, Memes & Brainrot, Sports, Adult & NSFW, Promo & Affiliate, Drama & Discourse, Job & Hiring Spam
and the protect list:
- AI & Machine Learning
- Software Engineering
- Startups & Funding
- Design & Craft
- Science
import packs other people share: free.
you do not need Pro to clean a feed with kits.

onboarding is dumb on purpose.
type what you're sick of in plain words.
matching packs switch on.
minutes. not a mute spreadsheet.
Smart Feed. meaning. on device. Pro.
this is why the rabbit hole was worth it.
beyond "better mute lists."
turn on Smart Feed → small model downloads once (checksum-verified).
then it runs entirely on your device.
every post → meaning fingerprint.
compared against your anchors:
- phrases you typed — Smart topics in your words: "AI research" protect, "crypto giveaways" remove
- examples you flagged — real posts via See less / See more
a post is hard-removed only when it's close enough to a dislike and clearly closer to that dislike than to anything you said you love.
that margin is deliberate.
silently deleting a post that sits between two things you care about is how filters die.
why meaning beats keywords: mute "AI" never catches a model-release post that only talks about weights, context windows, quantization. meaning-matching places it next to your "AI research" interest whether or not the letters A and I appear. reverse works for noise — one giveaway example covers phrasings you never predicted.
privacy is architecture, not a footer promise:
the model runs in an isolated environment with no network access.
interests, learned examples, post fingerprints — not uploaded or synced for filtering.
the AI that scores your feed cannot talk to the internet.
(billing, optional Coach, telemetry are separate. I'm not going to pretend the whole extension never touches a network. the filtering model can't.)


receipts. silent delete is how trust dies.
I don't hide a post without recording why.
two styles:
- Remove — gone from layout; full history under Recently removed in Activity
- Receipt — one-line strip in the feed: reason + evidence terms + Show / fix
Wrong call restores, whitelists, penalizes what caused the decision.
pack too aggressive? Help prevent this offers local fixes (whole-word, lower weight, remove term) before anything changes.
corrections stay on your device and feed back in.
opposite of Not interested with no paper trail.

how it decides — three layers, no doc dump
every post, ordered:
- Rules — your exact commands (keyword, account, media, domain, engagement). absolute. always win.
- Packs + heuristics — soft evidence (promo / engagement-bait signals included). strictness dial: "How much to remove."
- Smart Feed (Pro) — meaning gate on top, with interest protection so what you love isn't collateral damage.

feed modes = named setups (topics, packs, rules, engine, strictness).
free: 1 mode.
Pro: unlimited — work vs night vs no-politics-today without rebuilding everything.
sticky rules ("Always apply") ride every mode so hard bans never slip.
Pack Studio + AI Coach (Pro — power tools, optional)
Pack Studio — author custom packs, Live Test against your real recent feed before anything goes live, export as shareable files. import stays free for everyone.

AI Coach — optional, off by default, cloud.
I want this precise, because privacy claims only matter when they're honest.
Coach is a setup assistant, not the filter.
it never runs in the live feed path.
you describe the feed in plain English → it proposes Smart topics, packs, optional rules, strictness → checkboxes → Apply selected. nothing silent.
it can draft or repair a pack from a short brief.
what the cloud sees: what you type to it, plus pack terms you explicitly ask it to improve.
exception: if you flag a Wrong call and choose the optional AI repair step, a short excerpt of that one post can go — and a "What will be sent" panel shows the exact payload before every request.
no bulk feed history.
no embedding dump.
extension never holds a provider API key — requests go through XpressPurge API with license check.

trial: 15 Coach actions.
paid Pro: higher daily/minute quota.
free users still get full free filtering + local filter suggestions. Coach is not required to clean a feed.
mute vs this — the short list
Exact keyword mute
X: yes · XpressPurge: yes (rules)
Whole category, one click
X: no · XpressPurge: yes — 17 free packs
Filter by meaning
X: no · XpressPurge: yes — Smart Feed (Pro)
Learn from one example
X: no · XpressPurge: yes — See less / See more (Pro)
Protect what you love
X: weak / black box · XpressPurge: interests + signal packs + Boost
Why was this hidden?
X: no · XpressPurge: receipts + log
Undo that teaches
X: no · XpressPurge: Wrong call + self-retiring examples
Taste for filtering stays yours
X: no — trains their model · XpressPurge: on-device filtering model
Setup without a spreadsheet
X: partial · XpressPurge: onboarding in ~2 minutes
mute is still the right hammer for "never this exact word" or "this one account."
XpressPurge is for the rest of the feed.
free, Pro, try — then commit
Free forever
- unlimited exact hide rules
- all 17 built-in packs + import shared packs
- receipts, hidden log, Wrong call
- chrome cleanup (promoted clutter, trends junk, etc.)
that alone cleans most feeds. no account required for the free stack.
Pro (or trial)
- Smart Feed (on-device meaning)
- See less / See more
- Boost
- Pack Studio + Live Test + export
- unlimited feed modes
- continuous strictness
- AI Coach
- longer analytics ranges
Trial: 14 days · no card · one-shot per install
starts only when you click Start trial.
nothing silent.
after trial, free filters keep working. Smart Feed pauses until you upgrade — topics stay.

your turn
reply with the genre you'd delete from For You forever
airdrops · AI slop ("USA has ChatGPT…") · rage bait · reply-guy · politics · memes · engagement bait · something else
I'm collecting answers for the next packs.
mute one word if you want.
I'm interested in the genres that still get through.
anyway.
go count your For You.
then decide if mute is still the whole plan.
