Show HN: mailtrim – find what's actually filling your Gmail inbox

chevuru 29 points 13 comments April 05, 2026
View on Hacker News

I always assumed Gmail bloat came from large attachments. Turns out 3 senders were responsible for 30% of my inbox — thousands of tiny emails I'd never thought to clean up. I built mailtrim to surface this pattern: - ranks senders by actual storage impact (not just count) - confidence scoring on what's safe to bulk-delete - 30-day undo on everything — nothing is permanent by default - runs entirely locally, no email data leaves your machine Free, open source (MIT). No subscription, no backend. One friction point upfront: Gmail API setup is one-time, ~15 min. After that it's just `mailtrim stats` and `mailtrim purge`. Keen to hear feedback on the confidence/safety model especially — that's the part I'm least sure I've got right. https://github.com/sadhgurutech/mailtrim

Discussion Highlights (8 comments)

chevuru

Happy to help with setup if anyone tries it — GCP step is the only slightly annoying part right now.

chevuru

Curious if others have noticed the same pattern — a few senders making up most of the inbox.

yesensm

Very useful!

guessmyname

Why thousands? You never read or delete all your emails within a day? My inbox, which I have for almost two decades only has 28 emails in it. Not 28 unread emails, but 28 total emails. I delete everything within a day of receiving, except for every important things, hence why 28 of them still remain. Keeping thousands of emails in your inbox, while virtually free, is an attack vector for hackers, and also a gold mine for advertisement brokers who pay email providers money to show you ads based on your daily habits.

LiamPowell

Did you really use a LLM to generate the sample output in your readme instead of just running the application? I noticed the borders were all misaligned and wondered if you had hardcoded the number of spaces, but I looked at the code and you haven't. If you did generate the output with a LLM instead of just running it... why? Also: > It uses Claude AI for smart classification, but runs entirely locally: your emails never leave your machine. How can both of these things be true? How can Claude be used as a classifier without sending your emails to Claude? From looking at the code it appears that you do in fact just send off emails to Claude, or at least the first 300-400 characters, so that line is just a complete lie.

chris_seaman

Very cool! Congratulations on putting this together. Was also tinkering with Gmail bloat but, admittedly, with a less ambitious approach. Definitely going to give it a try.

trustfixsec

Nice approach. Confidence scoring on what's the safe one to delete is smart, and that's the hardest part of any cleanup tool. How are you handling false positives? I've been thinking about similar confidence scoring in a different domain (security) and the calibration is really tricky when the cost of getting it wrong is high.

DigitallyBorn

I would love it if it could run against archived messages (`in:anywhere -in:trash -in:spam`) ... I've been archiving all email for a very long time and being able to run stats and purge it would do wonders.

Semantic search powered by Rivestack pgvector
3,558 stories · 33,161 chunks indexed