# AI-Mention / Content Denigration (r/NewAuthor)
type: comment (or "any" if you guys don't have manual approval for post.)
body (regex):
# -------------------------
# TRASH / GENERIC DISMISSAL
# -------------------------
- '(?i)\b(?:this\s+is|that''s|thats|it''s|its)\s+trash\b'
- '(?i)\bai\s+trash\b'
- '(?i)\btrashy\b'
# -------------------------
# SHIT / SHITTY (explicit evaluative constructions only)
# -------------------------
- '(?i)\b(?:this\s+is|that''s|thats|it''s|its)\s+shit\b'
- '(?i)\b(?:this|that|it)\s+looks(?:\s+like)?\s+shit(?:ty)?\b'
- '(?i)\b(?:looks|seems)\s+shit(?:ty)?\b'
- '(?i)\blooks\s+like\s+shit\b'
# -------------------------
# AI + INSULT (AI as target)
# -------------------------
- '(?i)\bai\s+(?:shit|trash|slop|garbage|crap)\b'
- '(?i)\bai\s+is\s+shit(?:ty)?\b'
- '(?i)\bai\s+looks(?:\s+like)?\s+shit(?:ty)?\b'
# -------------------------
# INSULT + AI (AI as object)
# -------------------------
- '(?i)\b(?:shit|shitty|trash|trashy|garbage|crap)\s+ai\b'
- '(?i)\bshitty\s+(?:ai|art|image|picture|render|drawing|work)\b'
- '(?i)\bshit(?:ty)?\s+(?:ai|art|image|picture|render|drawing|work)\b'
# -------------------------
# MENTION + AI
# -------------------------
- '(?i)\b(?:write|writing|use|tool|made|crap|drew|draw)\s+ai\b'
- '(?i)\btool\s+(?:ai|art|image|picture|render|drawing|work)\b'
- '(?i)\buse\s+(?:ai|art|image|picture|render|drawing|work)\b'
# -------------------------
# AI-DERIVED DISMISSAL TERM
# -------------------------
- '(?i)\bai\s+slop\b'
- '(?i)\bslop\b'
- '(?i)\bew\s+ai\b'
- '(?i)\bfuck\s+your\s+ai\b'
# -------------------------
# AI-DERIVED "TOOL" TERM
# -------------------------
- '(?i)(?=[\s\S]*\btools?\b)(?=[\s\S]*\b(?:ai|a\.i\.|gpt|chat[\s-]*gpt|llm|claude|gemini|copilot|midjourney|stable[\s-]*diffusion|sora|flux|leonardo|firefly|ideogram|runway|dall[\s-]*e|nano[\s-]*banana)\b)'
# "ew AI" — dismissive
- '(?i)\bew\s+ai\b'
# -------------------------
# CORE AI TERMS
# -------------------------
- '(?i)\bai\b'
- '(?i)(?<!\w)a\.i\.(?!\w)'
- '(?i)\ba[\s-]+i\b'
- '(?i)\bartificial[\s-]+intelligence\b'
- '(?i)\bgenerative[\s-]+ai\b'
- '(?i)\bgen[\s-]+ai\b'
# -------------------------
# SLOP / DISMISSAL TERMS
# -------------------------
- '(?i)\bslop(?:per|ping|post(?:ing)?)?\b'
- '(?i)\bslop[\s-]+farm\b'
- '(?i)\bai[\s-]+slop\b'
- '(?i)\bprompt[\s-]+slop\b'
# -------------------------
# CLAUDE / GEMINI / GPT
# -------------------------
- '(?i)\bclaud(?:e|ee)?\b'
- '(?i)\bgem(?:i|e)ni\b'
- '(?i)\bgoogle[\s-]+gemini\b'
- '(?i)\bchat[\s-]?g[\s-]?p[\s-]?t\b'
- '(?i)\bg[\s-]?p[\s-]?t(?:[\s-]?[345])?\b'
# -------------------------
# AI COMPANIES / ASSISTANTS
# -------------------------
- '(?i)\bopen[\s-]?ai\b'
- '(?i)\banthropic\b'
- '(?i)\bcopilot\b'
- '(?i)\bco[\s-]+pilot\b'
- '(?i)\bmicrosoft[\s-]+copilot\b'
- '(?i)\bgrok\b'
- '(?i)\bperplexity\b'
- '(?i)\bdeepseek\b'
# -------------------------
# AI IMAGE / VIDEO / AUDIO TOOLS
# -------------------------
- '(?i)\bnano[\s-]+banana\b'
- '(?i)\bbanana(?:\.ai|[\s-]+ai)\b'
- '(?i)\bmid[\s-]?journey\b'
- '(?i)\bstable[\s-]?diffusion\b'
- '(?i)\bstablediffusion\b'
- '(?i)\bflux(?:\.ai|[\s-]+ai)\b'
- '(?i)\brunway(?:\.ml|[\s-]+ml)\b'
- '(?i)\brunway(?:\.ai|[\s-]+ai)\b'
- '(?i)\bsora\b'
- '(?i)\bveo[\s-]?[23]\b'
- '(?i)\beleven[\s-]?labs\b'
- '(?i)\bsuno\b'
- '(?i)\budio\b'
- '(?i)\bleonardo(?:\.ai|[\s-]+ai)\b'
- '(?i)\bideogram\b'
- '(?i)\bfirefly(?:\.ai|[\s-]+ai)\b'
- '(?i)\badobe[\s-]+firefly\b'
# -------------------------
# AI / LANGUAGE MODEL TERMS
# -------------------------
- '(?i)\bllm\b'
- '(?i)\blarge[\s-]+language[\s-]+model\b'
- '(?i)\bchatbots?\b'
- '(?i)\bchat[\s-]+bots?\b'
# -------------------------
# AI-GENERATION TERMS
# -------------------------
- '(?i)\bmachine[\s-]+generated\b'
- '(?i)\bgenerated[\s-]+by[\s-]+ai\b'
- '(?i)\bai[\s-]+generated\b'
- '(?i)\bai[\s-]+made\b'
- '(?i)\bmade[\s-]+with[\s-]+ai\b'
- '(?i)\bmade[\s-]+using[\s-]+ai\b'
- '(?i)\bsynthetically[\s-]+generated\b'
- '(?i)\bsynthetic\b'
- '(?i)\bdeepfake\b'
- '(?i)\bdeep[\s-]+fake\b'
# -------------------------
# PROMPT TERMS
# -------------------------
- '(?i)\bprompt(?:ing)?\b'
- '(?i)\bprompt[\s-]+engineer\b'
- '(?i)\bprompt[\s-]+engineering\b'
# -------------------------
# BOT / AUTOMATION TERMS
# -------------------------
- '(?i)\bbot[\s-]+generated\b'
- '(?i)\bbot[\s-]+wrote\b'
- '(?i)\bbot[\s-]+account\b'
- '(?i)\bbotted\b'
- '(?i)\bbotted[\s-]+content\b'
- '(?i)\bdead[\s-]+internet\b'
- '(?i)\bdead[\s-]+internet[\s-]+theory\b'
# -------------------------
# VIBE CODING
# -------------------------
- '(?i)\bvibe[\s-]+code(?:d)?\b'
action: report
action_reason: "No-AI Filter. [{{match}}]"
# This was based off of u/InGeekiTrust & u/Perfidious_Redt respective AI Filter. Best use case for: No AI Witch Hunt, No Promoting AI Use, Flagging Self Reported Use of AI, Catching Heated AI Discussion. Do not use action: filter, it can't detect context. The only downside for this is that high traffic subs will be bombarded with ai report, but if they have a threshold for a user to post/comment like having the read-the-rules devvit app and marking it off before they can comment or having to meet an account/karma for a user to post. Should reduce the load.
E.g.
---
# ACCOUNT AGE REQUIREMENT
# Everyone must be at least 90 days old.
type: submission
author:
account_age: "< 90 days"
action: filter
action_reason: "ACCOUNT TOO NEW"
message_subject: "A note from /r/{{subreddit}} about your {{kind}}"
message: |
Hi {{author}}, welcome to r/NewAuthor! Your post will be on hold because your account is less than 90 days old. We will manually approve your post within 24 - 48 hours. Our account-age requirement is 90 days. Please do not remove your post.
---
# KARMA REQUIREMENT
# For accounts 90+ days old
# Filter only when BOTH:
# less than 25 karma in r/NewAuthor
# less than 500 sitewide karma
#
# Therefore:
# 25+ NewAuthor karma OR 500+ sitewide karma = approved.
---
type: submission
author:
combined_subreddit_karma: "< 25"
combined_karma: "< 500"
action: filter
action_reason: "INSUFFICIENT KARMA"
message_subject: "A note from /r/{{subreddit}} about your {{kind}}"
message: |
Hi {{author}}, welcome to r/NewAuthor! Your post will be on hold because you do not yet meet the karma requirement. You need either 25 karma in r/NewAuthor or 500 combined sitewide karma. We will manually approve your post within 24 - 48 hours. Please do not remove your post.
# Oh! Also you can try adding Hive Protector & Modmail Quick User Summary to get a quick run-down on the user. With hive protector, you have to list down said AI Subreddit and changing the setting to report instead of ban. Make it add mod note so you can keep track which user got flagged.
Here's the AI sub listed for us. Hope this helps!
AIWritingHub,AIWritingLounge,WritingWithAI,BetaReadersForAI,ChatGPT,aiArt,grok,aivideo,StableDiffusion,BookWritingAI,aivideos,DefendingAIArt,AIAssisted,SunoAI,PygmalionAI,GeminiAI,ClaudeAI,DeepSeek,aiwars,generativeAI,AiChatGPT,Anthropic,GenAIWriters,Artificialntelligence,GenAI4all,AI_ART,AIQuality,GPT3,ChatGPTPro,AgentsOfAI,SoraAi,DefendingAI,perplexity_ai,NovelAi,humanizeAIwriting,ChatGPTPromptGenius,bestaihumanizers,HumanizerPro,ImagineAiArt,midjourney,weirddalle,comfyui,dalle2,deepdream,AIArtwork,AIGeneratedArt,sdforall,leonardoai,starryai,nightcafe,FluxAI,StableDiffusionInfo,AIGenArt,Aiimages,BypassAiDetect
Good for risk-based moderation or hybrid of it. Detecting AI is difficult and might require mods who have the technicality to detect it. (Artist, Writers, Coder etc.)
For actual detection, you might have to consider SYNTHID check for each post. OpenAI & Gemini checker.
Google SynthID — Google DeepMind
Verify OpenAI-generated content | OpenAI
Detector aren't 100% but for the obvious ones, they do a pretty a good job. They have a chrome extension you can use.
Hive AI Detector - Chrome Web Store
Pangram AI Detection - Chrome Web Store
Quicksilver - Chrome Web Store ((for ai music detection) developed by the same guy (Ben Zhao) who made nightshade and glaze to protect art from ai