1
0
Fork
You've already forked uBlockOrigin-AI-Blocklist
0
Fork and expansion of laylavish' AI blocklist on github. Manually curated blocklist for uBlock Origin and uBlacklist aiming to remove ai results from search engine results. Currently supports DDG, Bing, Google, Startpage and Brave.
  • Python 100%
2026年02月19日 18:30:09 +01:00
adder.py Fixes to script 2026年01月31日 16:19:47 +01:00
additional_list_nuclear.txt resolved issues 283,285,288,290,292,293,295,297-299,303,306,310,313,315-319,323 of original repo 2026年02月08日 14:55:24 +01:00
LICENSE Small fixes 2026年01月31日 15:46:55 +01:00
list.txt added medium.com/@moraneus, evgenijohn.medium.com/crossplane-in-2024-c0631a49265e, evgenijohn.medium.com/python-pydantic-acfbd5d77977, openart.ai, thaura.ai 2026年02月19日 18:30:09 +01:00
list_uBlacklist.txt added medium.com/@moraneus, evgenijohn.medium.com/crossplane-in-2024-c0631a49265e, evgenijohn.medium.com/python-pydantic-acfbd5d77977, openart.ai, thaura.ai 2026年02月19日 18:30:09 +01:00
list_uBlacklist_nuclear.txt resolved issues 283,285,288,290,292,293,295,297-299,303,306,310,313,315-319,323 of original repo 2026年02月08日 14:55:24 +01:00
noai_hosts.txt test 2026年01月31日 16:12:20 +01:00
README.md resolved issues 283,285,288,290,292,293,295,297-299,303,306,310,313,315-319,323 of original repo 2026年02月08日 14:55:24 +01:00

uBlockOrigin & uBlacklist AI Blocklist

This is a fork of laylavish' blocklist of - at this moment - 1663 manually curated sites that contain AI generated content, for the purposes of cleaning search engines (Google Search, DuckDuckGo, and Bing) with uBlock Origin or uBlacklist. Laylavish' activity has ceased for unknown reasons since November 2025, and I began to fear that the project might become abandoned. I figured I would fork it over to Codeberg as permitted by the license and expand on it by adding support on uBlock Origin for Startpage and Brave (work on which was started by N1msi). Important note regarding Startpage and Brave below. Ecosia support is needed as well.

As the original repository states, this also works on mobile (iOS, iPadOS and Android via uBlacklist, as well as pihole/adguard (via Hosts file).

Important

There is a caveat to Startpage and Brave support due to the way they use javascript and proxy servers when it comes to image search. The user's device only gains access to the full link when an image is opened in expanded view, hence the blocklist for these search engines is unable to filter out specific subdomains such as e.g. subreddits or particular Twitter/Instagram users before the images are put in expanded view. Once they are put in expanded view however, the image can get blocked, signalling the user that the image they see comes from a blocked subdomain. This ONLY works for uBlock Origin, I couldn't figure out how to make the expanded view blocking work on uBlacklist. Hence there are multiple rules per website for Startpage and Brave. If you know anything about scriptlets for uBlock Origin, it may be possible to go the extra mile and try to reverse-engineer the javascript code on Startpage and Brave so that their javascript functions are used to query their servers before clicking on the images. This is a difficult task and at that point you're probably better off writing a new add-on/extension to run alongside uBlock Origin or uBlacklist.

Currently, there are two lists: The default list, and the nuclear list.

The nuclear list has sites that contain a mix of authentic and AI generated imagery (eg. DeviantArt, Artstation, Stock Photography sites, etc), which make it tricky to outright block in the main filter list. Laylavish designated it to a separate list that you can toggle on and off if you so desire. It should be used in conjunction with the main list.

If you want to contribute or add new sites to the list, check the Contributing section.

Installation Instructions

Pretty much all of these instructions were taken from the README of the original repo, minus some personal notes.

PC/Desktop Installation Instructions (click the dropdown to expand)

PC/Desktop installation

Installing it with uBlock Origin

One-click import The original repository lists a way to automatically add the list to the uBlock Origin filter list via link, but this seems to be outdated as it no longer works on Firefox. If anyone knows why or how to fix it, feel free to respond.

Manual Import, Automatic Updates

Note

Taken from original repository's README.

  1. Make sure that you have the uBlock Origin Add-on/Extension for Firefox, Chrome, or any browser that supports uBlock Origin.

  2. Click on the uBlock Origin Extension, and in the bottom right, there is a cog-wheel symbol--named the dashboard. Click it.

  3. Once you are in the dashboard, look towards the top. Click on the tab that says "Filter lists".

  4. Look towards the bottom, and expand the Import button.

  5. Copy and paste this URL into the dialogue box:

https://codeberg.org/just_a_husk/uBlockOrigin-AI-Blocklist/raw/branch/main/list.txt
  1. Apply changes, and you're set!
Here's a video guide on how to do this (click the dropdown to expand)

https://github.com/user-attachments/assets/c379a750-53eb-4813-8cea-757f34ab5a2d

With this method, updates will be applied automatically as more websites are added to the lists of the main branch. If you want to force an update of the filter list, pressing the stopwatch next to the newly added list, then pressing Update now will achieve that.

Important

If you find that your imported list isn't working, it may be due to an outdated web browsing session. If you haven't restarted your web browser for a long time, there's a chance the session won't update how it should, meaning importing the list into uBlock Origin or uBlacklist won't function correctly. Try creating a new session by closing (追記) all (追記ここまで) web browser windows, waiting until all processes are fully closed (4-5 second wait), then re-opening your web browser. That should help; if not, then try clearing your browser's cache.

Manual Import, Manual Updates

  1. Same as Step 1 of the previous method.

  2. Same as Step 2 of the previous method.

  3. Once you are in the dashboard, look towards the top. Click on the tab that says "My filters".

  4. Either click "Import and append..." to upload the file from your device after downloading it, or simply copy paste it into the textbox below the search bar.

  5. Apply changes, and you're set!


Installing it with uBlacklist

Note

Taken from original repository's README. I don't use uBlacklist, so I haven't verified these instructions. I still duplicated them in case something where to happen to the original repository.

One-click filter import (Only for Chrome, Firefox doesn't support one-click import)

If you use Google Chrome/Chromium and have uBlacklist installed, you can import the list in just one click. Click this link to automatically subscribe to the list.

Manual Import

  1. Make sure that you have the uBlacklist extension for Firefox, Chrome, or any browser that supports uBlacklist

  2. Click on your extensions list, select uBlacklist, then click on the "options" text, highlighted in blue.

  3. Enable other search engines by clicking on the 'Other search engines/SERPINFO' button, and click on the search engines you want this list to work on. A list of compatible search engines (with images support) is linked here.

  4. Scroll all the way down until you see the "Subscription" tab, and click on the blue "Add a subscription" button.

  5. Give a name for the added blocklist (eg. Main AI blocklist).

  6. Copy and paste this url

https://codeberg.org/just_a_husk/uBlockOrigin-AI-Blocklist/raw/branch/main/list_uBlacklist.txt

into the URL part of the dialogue box, then press the blue Add button.

  1. Set the update interval to an hour for near-realtime list updates, and you're done!
Mobile Intallation Instructions (click the dropdown to expand)

Mobile installation (iOS, iPadOS & Android)

Note

Taken from original repository's README.

iOS, iPadOS (Safari only)

Note

Both iOS and iPadOS don't have support for uBlock Origin. So, we'll be using uBlacklist for this. Safari is the only browser we can use that allows the use of extensions.

  1. Download uBlacklist, available on the App Store

  2. Go into settings, scroll down until you see Safari, and tap on it.

  3. Once in the Safari settings, in General, hit Extensions. Turn on the uBlacklist extension.

  4. While still in uBlacklist's settings, in the Permissions for uBlacklist section, scroll down to your preferred search engine and change the permission from "Ask" to "Allow."

Important

This may look cumbersome, but all you really need to do is just allow the extension to hit your search engine's locale, for example, google.fr or google.co.uk. You can go through all of them and allow them, but it's not necessary.

  1. Now scroll back up, and hit the blue Extension Settings button. It will bring you to Safari and open uBlacklist's settings panel.

  2. Scroll all the way down until you see the "Subscription" tab, and click on the blue "Add a subscription" button.

  3. Give a name for the added blocklist (eg. Main AI blocklist).

  4. Copy and paste this url

https://codeberg.org/just_a_husk/uBlockOrigin-AI-Blocklist/raw/branch/main/list_uBlacklist.txt

into the URL part of the dialogue box, then press the blue Add button.

  1. Set the update interval to an hour for near-realtime list updates, and you're done!

Android (via Firefox)

Installation for uBlock Origin (expand)

One-click import

Note

One-click import may not work due to the same reasons as in the desktop version.

If you have uBlock Origin installed, click this link to import the filter list in just a click! Quick and simple.

Manual Import

  1. Make sure that you have the uBlock Origin Extension for Firefox.

  2. Hit the three dots in the top right, and hit the Extensions button.

  3. Click on the uBlock Origin Extension, and in the bottom right, there is a cog-wheel symbol--named the dashboard. Click it.

  4. Once you are in the dashboard, look towards the top. Click on the tab that says Filter lists.

  5. Look towards the bottom, and expand the Import button.

  6. Copy and paste this URL into the dialogue box:

https://codeberg.org/just_a_husk/uBlockOrigin-AI-Blocklist/raw/branch/main/list.txt
  1. Apply changes, and you're set!
Installation for uBlacklist (expand)

Manual Import

  1. Make sure that you have the uBlacklist extension for Firefox, Chrome, or any browser that supports uBlacklist

  2. Hit the three dots in the top right, and hit the Extensions button.

  3. Click on your extensions list, select uBlacklist, then click on the "options" text, highlighted in blue.

  4. Enable other search engines by clicking on the 'Other search engines/SERPINFO' button, and click on the search engine(s) you want this list to work on. A list of compatible search engines (with images support) is here.

  5. Scroll all the way down until you see the "Subscription" tab, and click on the blue "Add a subscription" button.

  6. Give a name for the added blocklist (eg. Main AI blocklist).

  7. Copy and paste this url

https://codeberg.org/just_a_husk/uBlockOrigin-AI-Blocklist/raw/branch/main/list_uBlacklist.txt

into the URL part of the dialogue box, then press the blue Add button.

  1. Set the update interval to an hour for near-realtime list updates, and you're done!
Hosts file for pi-hole/adguard (click the dropdown to expand)

Hosts file for pi-hole/adguard

A list in HOSTS format for pi-hole/adguard or for use in your own operating system's hosts file. Currently outdated.

https://codeberg.org/just_a_husk/uBlockOrigin-AI-Blocklist/raw/branch/main/noai_hosts.txt

For use in your operating system, visit the url and copy-paste the contents inside your operating systems hosts file.

Here's a simple guide on how to access your hosts file on Linux, macOS, and Windows.

For pi-hole:

  1. Visit your admin's dashboard
  2. Click on Adlists
  3. Copy and paste the url into the address: box
  4. Hit the add button, and it should be added.

For Adguard:

  1. Open Adguard Home Dashboard
  2. Go to filters --> DNS blocklists.
  3. Click Add blocklist, then Add a custom list.
  4. Enter the name of the list (eg. AI blocklist) into the first dialogue box.
  5. Copy and paste the url into the second dialogue box.
  6. Hit save, and the list is added!

Allowlisting and Keyword Filtering

Allowlisting Sites (click the dropdown to expand)

Don't like a certain site being blocked? You can easily create an allowlist in your own personal uBlock Origin or uBlacklist filter list.

Here's how to do it.

Steps for uBlock Origin (expand)
  1. Toggle the DOM inspector </> through uBlock Origin's logger.
  2. Locate the URL you want to allowlist.
  3. Click on the filter you want to disable (eg. vecteezy.com); it should then be crossed out.
  4. Press the save icon, then the "Create" button.

Boom! Now it's allowlisted!

Or, if you don't want to go through that mumbo-jumbo, add this line in your filter list:

#@#a[href*="example.com"]:upward(li):remove()

Change "example.com" to the URL you want to allowlist. Copy & paste that in uBlock Origin's "My filters" list, and you're set!

Steps for uBlacklist (expand)
  1. Enter uBlacklist's options panel.
  2. In the text box, add this line in the text box:
@*://*.example.com/*
  1. Change "example.com" to a website you want allowlisted.
  2. Click save. Done!
Extended Filtering (click the dropdown to expand)

It is possible to filter AI results based on keywords. It was originally in the list, but it's been taken out to make it configurable and/or optional. I'm also personally not a fan of keyword-based filtering, as it's historically proven to be very limited in usefulness and often times the results are not the intended outcome. For example, if you filter out everything that contains the word "OpenAI", then you will also filter out papers criticizing Sam Altman, or filter out this webpage itself.

uBlock Origin

In your personal filter list, you can use this template to add your own keywords you would like to block.

! // This is for text in general
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(Your Text Here):upward(div):style(opacity:0!important)
! // This is for text in links. Notice the / before "Your Text Here" and the /i afterwards.
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/Your Text Here/i):upward(div):style(opacity:0!important)

Replace "Your Text Here" with your preferred keywords. A short list of optional procedural filters that you can use for uBlock Origin are listed in a dropdown below:

Optional procedural filters for uBlock Origin
! // All text
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/Stable Diffusion/i):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/AI Art/i):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/Generative AI/i):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/Ai/):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/AI/):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/midjourney/i):upward(div):style(opacity:0!important)
! // Links only
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/Stable Diffusion/i):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/AI Art/i):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/Generative AI/i):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/Ai/):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/AI/):upward(div):style(opacity:0!important)
startpage.com,search.brave.com,google.com,duckduckgo.com,bing.com##div>a:has-text(/midjourney/i):upward(div):style(opacity:0!important)

uBlacklist

For uBlacklist, you can use regular expressions to filter AI results based on keywords.

An example of a regular expression for uBlacklist would be: /ai *(generated)?|stable *diffusion/i

Below is a small list of optional regular expressions that can be used to filter out AI results based on keywords:

Optional regular expressions for uBlacklist
/(generative)? *AI *(art|generated|illustration)?/i
/(ada)?Lo(RA|Con) *(model)?|(stable)?.*diffusion|midjourney|niji|sd *(xl|1.5)|(text|txt|img|image) *(to|2) *(image|img|video)/i

Contributing

If you'd like to contribute to the list, feel free to clone this repo and create a pull request for the site(s) you'd like to add to the list. Make sure to update all files (including hosts file) wherever necesessary (except the nuclear list if you want the site to appear in the main list of course). If you don't know how to do that or don't want to, you can instead create an issue of the site that you'd like to be included in the list, wherein I'd look over it and add it in myself. Any way that you contribute is greatly appreciated, but the pull request is the most convenient method for me.

The current template for blocking websites is as follows (replace sitename.com with the domain you wish to add to the list):

! // DDG & Bing
duckduckgo.com,bing.com##a[href*="sitename.com"]:upward(li):remove()
! // Google
google.com##a[href*="sitename.com"]:upward(2):remove()
! // Startpage (see note on Startpage in the beginning of the README)
www.startpage.com##a[href*="sitename.com"]:upward(div.result):remove()
! // Image results without subdomain filtering
www.startpage.com##span:has-text(sitename.com):upward(div.image-inner-container):remove()
! // Image results with subdomain filtering
www.startpage.com##a[href*="sitename.com/subdomain"]:upward(div.expanded-image)
! // Brave (see note on Brave in the beginning of the README)
search.brave.com##div.snippet:has(a[href*="sitename.com"])
! // Image results without subdomain filtering
search.brave.com##span:has-text(sitename.com):upward(button.image-result):remove()
! // Image results with subdomain filtering
search.brave.com##a[href*="sitename.com"]:upward(div.images-selected-container)

The file adder.py is a python file that can be run from bash/shell/terminal to automatically add a website to either the main or nuclear list following the scheme above. Python 3.5 at minimum is required to run the program. Use python3 adder.py -h for an instruction manual on how to use it. It requires that you add the category of the website as well, as described below. For example, we can store the instructions in a file example.txt with contents:

deeznuts.com Sites that have .com domain extension
deezballs.ai Sites that have .ai domain extension
x.com/deezbomboklat Block list of AI "artists"/orgs (twitter)

Important

Do not add / to the end of the website names. So in the above example, deeznuts.com/ would not have worked.

And then we can execute the following command in the bash/shell/terminal of your choice to add the websites above to one of the categories below:

python3 adder.py -i example.txt

The original repository and by extension this fork split the sites into a lot of categories. For the main list:

  1. Sites that have .ai domain extension
  2. Sites that have .com domain extension
  3. Sites that have .art domain extension
  4. Sites that have .co domain extension
  5. Sites that have .net domain extension
  6. Sites that have miscellaneous domain extensions (.pub, .io, .cc, et cetera)
  7. Google Play AI applications
  8. Apple AI applications
  9. Gross nudify sites/deepfakes/porn (why isn't this illegal?!?!)
  10. Block list of AI "artists"/orgs (twitter)
  11. Block list of AI "artists"/orgs (youtube)
  12. Block list of AI "artists"/orgs (instagram)
  13. Block list of AI "artists"/orgs (pinterest) and indivual pinterest shit
  14. Block list of AI "artists"/orgs (behance)
  15. Block list of AI "artists"/orgs (ko-fi)
  16. Block list of AI "artists"/orgs (deviantart)
  17. Block list of AI "artists"/orgs (artstation) and individual artstation shit
  18. Block list of AI "artists"/orgs (facebook)
  19. s.id garbage
  20. ko-fi garbage
  21. Freepik garbage
  22. Medium garbage
  23. Miscellaneous crypto/nft shit
  24. Etsy shit
  25. Adobe shit
  26. Individual Adobe Stock shit
  27. Individual Instagram
  28. Fiverr shit
  29. Block list of AI subreddits
  30. Block list of AI reddit users
  31. Tumblr shit
  32. Pixels
  33. Amazon shit
  34. AI content farms/spam
  35. VoiceMod shit
  36. Getty Wallpapers
  37. Tiktok
  38. Behance (standalone galleries)
  39. Redbubble (standalone pins)
  40. Redbubble Accounts
  41. AI projects hosted on other sites

Additionally, for search engines that involve the use of AI overviews or AI chats, those get individual sections.

For the nuclear list:

  1. sites that have a lot of AI "art"/heavily support AI "art", but also have some authentic artwork
  2. Content Aggregators/SEO spam
  3. Things that use Anthropic, Open AI, etc api/backend/models, but its usage is abnormal to that of gAI image or chat models
  4. Subreddits
  5. Pinterest
  6. Alternate App Stores

Note

Despite coming up on 3 years of CS Engineering, my dumbass still has barely used any git or git platforms, so it might take a while for me to figure stuff out since I'm new to Codeberg. Plus, I tend to be pretty busy irl, so I may not be the most active curator. That said, I'd really appreciate help on resolving the backlog of issues from the original repository.

You can help on these too. It would be greatly appreciated, as that way I mostly only have to deal with updating this repository. This lowers my workload and thus the chances of this repository being abandoned.

To Do

  • Add Startpage and Brave support

  • Expand procedural filters list example to include Startpage and Brave

  • Add/Resolve issues (website additions) from original repository

  • Add/Resolve PR's (website additions) from original repository

  • Update pi-hole/adguard hosts file

  • Implement Mangochicken13's refactoring of the list

  • Resolve other issues from original repository

  • Add DDG/Bing ai overview removal

  • Add AI overview removal for uBlacklist

  • Ecosia support (for uBlock Origin)

Happy Pride Month!

LGBTQ+ Rights! 🏳️‍🌈🏳️‍⚧️

Special Thanks

Special thanks to:

Super SEO Spam Suppressor (SSSS) by NotaInutilis

An anticapitalist blocklist targeting websites abusing SEO tactics to spam web searches with data pollution and security risks: content farms, scrapers, copycats, generative AI, scams, advertisements, malwares, and useless wasteful garbage in general. It is best used with uBlacklist.

Blocklist for AI Music on Youtube by surasshu

A blocklist that targets AI music channels on YouTube, through the use of the Blocktube extension.

Journey Buster 3 by k0vac

A Chromium extension that lets you know if an image is AI generated, for use on Twitter.

Awesome List of uBlacklist Subscriptions by rjaus

A compilation of awesome uBlacklist subscriptions to block various sites from appearing in Google, Bing, or DuckDuckGo search.

Anti-AI Google Search Tips by laylavish

Tips and tricks to make Google Search (and other search engines that have similar operators) return authentic imagery.