Back to browse
GitHub Repository

Terminal UI for bulk Gmail unsubscribe — groups senders, one-key unsubscribe/delete

1 starsPython

MailScrub – terminal UI for bulk Gmail unsubscribing

by brooksc·Apr 23, 2026·2 points·0 comments

AI Analysis

●●SolidSolve My ProblemCozy

Deletes newsletter backlogs Gmail ignores, caching headers locally for speed and privacy.

Strengths
  • Local SQLite cache keeps navigation fast without requiring constant API calls.
  • Handles RFC 2369 List-Unsubscribe headers automatically via HTTP or mailto.
  • Alerts you if a sender reappears after you unsubscribed them.
Weaknesses
  • Requires manual Google Cloud OAuth setup which adds ten minutes of friction.
  • Only tested on Mac so far, limiting immediate adoption for Windows users.
Category
Target Audience

Developers or privacy-conscious users drowning in newsletter clutter

Similar To

Unroll.me · Cleanfox · Gmail Manage Subscriptions

Post Description

Built this for myself — I had 13K unread emails and no patience to deal with them one at a time.

Gmail's new "Manage subscriptions" is handy but it only unsubscribes going forward. It doesn't touch the 500 old emails already in your inbox from that sender. MailScrub does both: unsubscribe and nuke the backlog in one shot.

It's a terminal UI that pulls down your Gmail headers into a local SQLite db, groups them by sender, and lets you blaze through them. For senders with a List-Unsubscribe header it handles the HTTP/mailto request automatically. For ones without it, it opens browser tabs.

Nothing leaves your machine — you auth against your own Google Cloud OAuth client.

https://github.com/brooksc/MailScrub

Biggest gotcha: you need to set up a personal Google Cloud project to get an OAuth client (~10 min, instructions in the README). I couldn't find a way around this for Gmail API access. Open to ideas. Only tested on Mac so far.

Similar Projects

AI/ML●●●Banger

Traul – Local-first search engine for all comms for AI agents

Finally gives AI agents memory across Slack, Telegram, and Gmail without sending data to the cloud.

Solve My ProblemBig BrainDark Horse
dandaka
302mo ago