A moderation dashboard for online communities. Observer reads every message in your Discord and Minecraft servers and flags the ones that need a human. Powered by LLMs — no keyword lists, no rule trees.
Live preview from app.observer.gg/moderation/queue. Three of fourteen items currently waiting on a moderator.
11 messages over 5 days · private DMs · last 3 excerpted:
· 11 more in queue ·
Observer isn’t a chat bot. It’s a moderation dashboard above your community — reading every message and flagging only what needs a human.
Today: Discord (hosted bot) and Minecraft (free, open-source plugin). Roblox, Twitch, and YouTube are next. Every flag from every surface lands in one queue at app.observer.gg.
Queue on the left. Selected item on the right with context, classification, and suggested action. Click to act. Every action logged.
queue
@flame_jr
#general · 38m ago
lmao you're so dumb get out, no one wants you here
@kraken99
#general · 2m ago
@everyone come join my server!! free diamonds
@ada_92 → minecraft_pop
DMs · 5d · long-form
don't tell anyone we talk lol
· 11 more ·
@flame_jr
Discord · survival.example.gg · #general
account age 8mo · 3 prior flags · 1 prior mute (reversed)
message in context
AI classification
Reasoning → Directed personal attack at a specific user (@new_player_42, T1 new account). Borderline-moderate — insult, not threat. Confidence below auto-action threshold, held for human review.
your policy says
conf < 80% → hold for human
All actions write to /audit · actor=@you · logged immutably.
Grooming. Raid coordination. Multi-account scams. Slow-burn harassment. These don’t show up in any single message — they unfold across days, accounts, and threads. Observer reads the conversation and flags the pattern.
@ada_92 → @minecraft_pop · Minecraft DMs · 5 days
11 messagesLong-form pattern detected
Grooming pattern across 11 messages, 5 days: age inquiry, isolation (“don’t tell anyone”), and platform pivot to a private app.
Sonnet · 1.4s · cross-referenced ada_92's prior 4 accounts (same fingerprint) · auto-escalated to senior reviewer queue
Synthetic example. Real flags are redacted in this view — mods see the full thread inside the dashboard.
Each message looks like normal phishing. Observer links the accounts by shared IP, creation timing, and message structure — and flags the campaign as one item.
Each victim sees one personalized DM and assumes it’s meant for them. The signals that tied the cluster together:
signal: creation cluster (47-min window)
signal: IP block: 185.220.101.0/24 (Tor exit)
signal: 2 message variants, 6 accounts
signal: common URL host: discord-verify.net
Multi-account scam cluster · fp=0x...8a7f
accounts in cluster
script A (used by 3 accounts, 12 victims)
"Hey @[role], your account was flagged. Verify here to keep posting: discord-verify.net/auth/[varies]"
Suggested: ban all 6 + alert 24 victims · per policy
Classification latency
<100ms
Median end-to-end. <400ms at p95. Haiku for most of the queue, Sonnet for context, Opus on the hard cases.
Audit coverage
100%
Every state change is recorded — actor, action, target, before, after, timestamp. Append-only, immutable.
Long-form window
5days
Default look-back for grooming, raid prep, and multi-account scams. Tunable up to 30 days.
Plugin license
$0
Apache 2.0, forever. The plugin is yours to inspect and run on your own server. Only the dashboard is the SaaS.
Beta targets. We’ll publish precision, recall, and real production numbers in our first public transparency report.
The Minecraft plugin is a thin sensor + actuator. Zero business logic. Apache 2.0. Below: one chat event’s journey through the system.
Plugin emits the chat event. Backend classifies and applies your policy. Plugin executes the decision and acks. Every line below is a real log entry.
build: observer-plugin-0.0.0.jar
runtime: paper-api 1.21.4 · folia-supported
transport: okhttp ws · auto-reconnect
integrations: LiteBans · LuckPerms · EssentialsX
plugin is Apache 2.0 · forever
Don’t see yours? Email hello@observer.gg.
A small team running a private beta. No drip campaigns. No qualification forms. No “book a meeting with our SDR.”
A short note asking which platforms you run and what your worst moderation moment was this month.
What you have, where it hurts, what you wish a tool did. We’ll tell you straight if Observer isn’t a fit.
Plugin install, Discord bot invite, dashboard onboarding. About 45 minutes. We do the work; you click approve.
Private Discord, weekly office hours. Your roadmap input shapes ours. Beta is free; pricing starts at 1.0.
We’re shipping with a small number of communities. Tell us which platforms, how many members, and what your current setup misses.