Inspiration
Reddit moderators are volunteers. They give their time to keep communities healthy, But the tools Reddit provides haven't kept up with the scale of the problem. We watched mod teams burn out scrolling through endless queues, making the same judgment calls Repeatedly, with no memory of past decisions and no way to catch ban evaders before They rebuild.
The native mod queue treats a death threat and a discussion post exactly the same Just two items in a list.
We wanted to build something that actually respects moderators' time. A tool that brings intelligence to the queue, learns from the team's own decisions, and surfaces what actually needs human attention.
What it does
Modecule is an AI-powered moderation dashboard built natively on Reddit using Devvit. It sits inside your subreddit as a custom post and gives mod teams a complete, intelligent triage system.
Every post is automatically scored by Gemini AI with a reject chance from 0.0 to 1.0.
Each case card shows the risk score as a visual bar and human-readable reason chips
explaining exactly why it was flagged.
Core Features
Smart Priority Queue
Every post submitted to the subreddit is automatically scored by Gemini AI with a reject chance from 0.0 to 1.0. Posts are ranked highest danger first. Each case card displays a visual risk bar and human-readable reason chips explaining exactly why a post was flagged — moderators always know the why, not just the what. Individual Approve, Remove, Escalate, and Rescore actions are available directly from the queue.
Adaptive Learning System
Every moderator action writes a learning signal — fingerprint tokens, title/body snippets, reasons, and the action taken. When scoring new posts, Modecule retrieves the most similar historical signals and provides them as in-context examples to the LLM, so the model judges new content against your community's actual moderation history — not just static rules.
$$J(A,B) = \frac{|A \cap B|}{|A \cup B|}$$
This keeps moderation behavior aligned with moderator intent and handles novel phrasing that keyword rules would miss.
Ban Evasion Detection
Two-layer detection system:
detectBanEvasion— compares incoming post content against the subreddit's removed-content corpusdetectBannedUserMatch— compares against per-banned-user corpus for a stronger match signal
Matches append reason chips and metadata to the case card for moderator visibility. The ban evasion similarity threshold is configurable per subreddit from the Rules tab.
User History Panel
Click any username directly from the queue to open a full user stats panel showing approved / removed / reports received counts, full post history with scores and reason chips, and Ban / Unban actions with modal confirmation. Banning a user automatically seeds the banned-user similarity corpus for future evasion detection.
Bulk Moderation
Checkbox selection on every case card with a bulk action bar for Approve all / Remove all / Escalate all. Auto Approve and Auto Remove instantly action all posts at or below/above the configured threshold. Individual per-post actions always available alongside bulk.
Escalated Queue
Posts that need a second opinion can be escalated rather than forcing an immediate decision. The Escalated Queue tab shows all escalated posts with Approve and Remove options for senior moderator review.
Live Stats Dashboard
Seven real-time stat cards at the top of the dashboard:
Processed · Removed · Approved · In Queue · Escalated · Processed Reports · Reported Queue
Audit Log
Every mod action is logged with timestamp, moderator username, risk score, score source, and reason chips. Complete accountability for the entire mod team.
Configurable Rules
Per-subreddit controls tunable from the Rules tab:
- Auto Approve Threshold — posts below this score are auto-approved
- Auto Remove Threshold — posts above this score are auto-removed
- Ban Evasion Similarity Threshold — sensitivity of evasion detection
- Community Rules — plain text rules fed directly into the LLM scoring prompt
Moderator-Only Access
All moderation routes are gated behind a moderator check. Non-moderators receive a 403 with moderator_access_required. Regular community members cannot access or interact with the dashboard in any way.
Challenges we ran into
Non-deterministic AI scoring
The same post was scoring 0.33 one run and 0.82 the next. We traced it to
Gemini's default temperature setting and fixed it by locking temperature: 0 —
a small config change with a large impact on queue reliability.
Over-indexing on account signals
A question like "How do you stay consistent with learning programming?" was
scoring 0.82 purely because the author had low karma. We rewrote signal weighting
to make content analysis the dominant factor at 45% weight, with account signals
reduced to a supporting role at 20%.
Devvit web view architecture Unlike traditional web apps, there is no localhost preview — everything renders inside Reddit itself. Understanding the message-passing pattern between the React frontend and Hono backend took meaningful time to internalize.
Learning signal cross-contamination
We initially stored learning signals globally. Decisions from one subreddit were
influencing scores in another. We refactored all Redis keys to be namespaced
per subreddit.
Accomplishments that we're proud of
The adaptive learning system genuinely works — remove a few posts about a topic, submit a new similar post, and the score adjusts upward with a "Similar to previously removed content" chip surfaced for the moderator.
The user history panel — clicking a username from the queue and instantly seeing full post history with scores, reason chips, and a Ban User button feels like what Reddit should have shipped years ago.
The ban evasion architecture — fingerprinting posts on removal and running Jaccard similarity on every new submission is elegant in how little code achieves something genuinely useful for moderation teams.
What we learned
Devvit's web view framework is more capable than it initially appears. The combination of Hono + Redis + React gives you a real full-stack environment running entirely inside Reddit, with full access to Reddit's API for mod actions, user lookups, and trigger events.
We also learned that AI scoring without feedback loops degrades quickly. The first version was impressive on first run but inconsistent over time. The adaptive learning layer — using the mod team's own decisions as in-context examples — is what made the tool feel genuinely intelligent rather than a rule engine with an AI wrapper.
What's next for Modecule
- Full ban evasion pipeline — pattern matching across multiple accounts to detect coordinated ban evasion, not just individual post similarity
- Decay-weighted learning signals — older mod decisions should influence scoring less than recent ones as community norms evolve
- Multi-subreddit support — single Modecule installation managing multiple communities a mod team runs simultaneously
- Shift handoff summaries — auto-generated briefings when a mod ends their session so the next moderator has immediate context
- Mod analytics — response time trends, accuracy rates, queue health over time, and burnout indicators for team leads
Log in or sign up for Devpost to join the conversation.