Spot likely bots, scams and sales pitches on Reddit. Browser extension and Safari userscript, runs locally.
JavaScript
1
26 commits
updated Oct 6, 2026

The screenshot uses a mock thread with fictional users.
Spot likely bots, scams and sales pitches on Reddit. Nobotty is a small browser extension that puts a label on comments from very new or low-karma accounts, hides scam and bot direct messages, and lets you choose whether sales pitches are hidden too. One click opens anything it collapsed.
It gives signals, not proof. A new account can be a real person, so Nobotty only labels and collapses. It never deletes or blocks.
Everything runs in your browser. No tracking, no server, no accounts. See PRIVACY.md.
chrome://extensions and turn on Developer mode.Open about:debugging#/runtime/this-firefox, click Load Temporary Add-on and choose manifest.json.
Safari cannot load an extension folder, but it runs userscripts through a free app.
userscript/nobotty.user.js into that folder.The userscript build has the same detection as the extension. It was tested against a mock inbox, not live Reddit.
Install Xcode, then run xcrun safari-web-extension-converter /path/to/nobotty, build and run the generated app and enable it in Safari Settings, Extensions (during development also Develop, Allow Unsigned Extensions). Shipping it on the App Store needs an Apple developer account.
Comments: account age and karma (Reddit's public about.json), auto-style usernames, identical text from two accounts, stock phrases, and (for suspicious accounts) the posting history described above. Points add up: 5 or more is red, 3 or 4 is orange, 0 or 1 with a known account is green. Direct messages: scam patterns, sales-pitch patterns and new accounts that send links. The patterns are plain regular expressions in content.js, so you can read and change them.
SEL and DM_SEL in content.js). The new chat interface is not verified yet. Please open an issue with the page's HTML if a selector stops working.npm install
npx playwright install chromium
npm test
npm run build # regenerates userscript/nobotty.user.js
The tests load the content script into a mock comment page and a mock inbox and check which items get labelled.
Issues and pull requests are welcome, especially new patterns, selector fixes and translations of the popup.
MIT, see LICENSE.
Spot likely bots, scams and sales pitches on Reddit. Browser extension and Safari userscript, runs locally.
JavaScript
1
26 commits
updated Oct 6, 2026

The screenshot uses a mock thread with fictional users.
Spot likely bots, scams and sales pitches on Reddit. Nobotty is a small browser extension that puts a label on comments from very new or low-karma accounts, hides scam and bot direct messages, and lets you choose whether sales pitches are hidden too. One click opens anything it collapsed.
It gives signals, not proof. A new account can be a real person, so Nobotty only labels and collapses. It never deletes or blocks.
Everything runs in your browser. No tracking, no server, no accounts. See PRIVACY.md.
chrome://extensions and turn on Developer mode.Open about:debugging#/runtime/this-firefox, click Load Temporary Add-on and choose manifest.json.
Safari cannot load an extension folder, but it runs userscripts through a free app.
userscript/nobotty.user.js into that folder.The userscript build has the same detection as the extension. It was tested against a mock inbox, not live Reddit.
Install Xcode, then run xcrun safari-web-extension-converter /path/to/nobotty, build and run the generated app and enable it in Safari Settings, Extensions (during development also Develop, Allow Unsigned Extensions). Shipping it on the App Store needs an Apple developer account.
Comments: account age and karma (Reddit's public about.json), auto-style usernames, identical text from two accounts, stock phrases, and (for suspicious accounts) the posting history described above. Points add up: 5 or more is red, 3 or 4 is orange, 0 or 1 with a known account is green. Direct messages: scam patterns, sales-pitch patterns and new accounts that send links. The patterns are plain regular expressions in content.js, so you can read and change them.
SEL and DM_SEL in content.js). The new chat interface is not verified yet. Please open an issue with the page's HTML if a selector stops working.npm install
npx playwright install chromium
npm test
npm run build # regenerates userscript/nobotty.user.js
The tests load the content script into a mock comment page and a mock inbox and check which items get labelled.
Issues and pull requests are welcome, especially new patterns, selector fixes and translations of the popup.
MIT, see LICENSE.