Observer
The system, part by part

What Observer does.

It reads every message in your community, flags what needs a human, and gives your team the context to act, with every action logged.

01 · Sensors

Sensors & ingestion

The sensors that feed Observer. A centrally-hosted Discord bot, plus an open REST ingest API for everything else — including your game's own chat. All built around the same EventEnvelope schema.

  • Discord bot, hosted; you just invite it (beta now)
  • REST ingest API: one POST from your game server brings in-game chat (beta now)
  • One envelope schema for every source; add a platform without waiting on us
ingest
Discord community server · 6 channels 412/min
In-game in-game world chat 540/min
REST API community forum 38/min
[discord] #general gm gm
[game] trade chat anyone got tips for the boss
[api] forum/fan-art wb wb wb
[discord] #tech-help joined the game
[game] world chat ty :)
[api] forum/fan-art haha
[discord] #off-topic lol
[game] arena chat @server you up
[api] forum/fan-art ping
[discord] #lfg any good builds
[game] guild chat thanks!
[api] forum/fan-art see u tomorrow
[discord] #voice-chat wait what
[game] trade chat ?
[api] forum/fan-art lmaoooo
[discord] #general gn
12,847 messages last hour · classifier processed 100% ↓ 14 surfaced

02 · Queue

The moderation queue

The product's main surface. Every flagged event lands here with the conversation around it, sorted by recency and severity, ready for a human.

  • Filter by status, severity, server
  • Click any flag for the thread around it — judge in context, not from one line
  • Keyboard triage: j/k to move, a to acknowledge, f for false positive
/moderation/queue 14 in queue
live
K
@kraken99 Discord, #general
AI screening · 2m
@everyone come join my server, free diamonds
severe spam conf 98%
FJ
@flame_jr Discord, #general
AI screening · 38m
lmao you're so dumb get out
moderate harassment conf 74%
BD
@bored_dude Discord, #off-topic
AI screening · 1h
this game sucks and the devs are lazy honestly
mild incivility conf 62%

03 · Audit

Audit log

Every consequential action recorded, append-only: automated enforcements and their execution lifecycle, retention sweeps, erasure outcomes. The compliance evidence layer underneath everything else.

  • Append-only — the record survives the people who made it
  • Every automated action carries its dispatch → executed trail
  • Retention and erasure sweeps write durable audit rows
/audit append-only
A user amelia decision_executed ban 22:14
OB system Observer actor_score_recomputed +53 19:31
CL bot classifier run_completed batch 18:14

04 · Screening

AI screening

Every incoming message is classified with severity, categories, and confidence. Haiku for the bulk of the queue, Sonnet for context, Opus for edge cases.

  • Severity: mild · moderate · severe
  • Categories: harassment, hate, sexual content, threats, spam, child-safety, self-harm
  • Per-community profile + sensitivity dials — tuned to your norms, with an undialable child-safety floor

classify request · Haiku 4.5 · 87ms

lmao you're so dumb get out, no one wants you here
moderate harassment toxicity conf 74%

reasoning → Personal attack directed at a T1 new account in response to a low-stakes question. Not a generic slur; targeted incivility. Below auto-action threshold; held for human review.

05 · Long-form

Long-form pattern detection

Detects threats that span messages and days: grooming, raid coordination, slow-burn harassment. Long-form reads the whole conversation, not single messages.

  • Reads whole threads and DM histories over windows up to 90 days
  • Findings carry cited evidence — exact quotes, with why each matters
  • Watchlist re-scans specific actors on a schedule

@ada_92@newpop · 5 days

11 messages
A
ada_92 day 3
you sound young, how old r u? im 16
A
ada_92 day 4
don't tell anyone we talk lol
A
ada_92 day 5
lets switch to snapchat, more private

Long-form pattern detected

Grooming-pattern across 11 messages, 5 days: age inquiry · isolation · platform pivot.

06 · Trust

Trust & ActorRiskScore

A 0–100 risk score per actor with a transparent component breakdown — computed from flags, pattern findings, and history. It powers investigation triggers today; its dashboard view is on the roadmap.

  • A component breakdown, not a black-box number
  • Feeds automatic investigation openings on high-risk actors
  • Dashboard view: roadmap
A

@ada_92

account 4d old · 5th acct (fingerprint match)

ActorRiskScore

88 high
0 · calm 25 · watch 50 · elevated 75 · high
  • long-form pattern grooming + 40
  • flag history 3 in 30d + 22
  • account age 4 days + 14
  • watchlist active + 12

concept preview · dashboard view on the roadmap

07 · Privacy

Privacy & data rights

The right-to-be-forgotten machinery, built in: a public privacy-request page per community, verified erasure, legal holds, and per-server retention windows.

  • Public request form — share one link with your community
  • Verify → process: erasure with a durable compliance record
  • Legal holds and retention windows (60 days to 2 years)
/settings/privacy erasure requests

player "kh_altacct" · via public form

received 09:41 · verified 10:02 · processed 10:03

completed

discord user 6619… · filed by admin

received 11:17 · awaiting identity verification

verifying

subject hold · law-enforcement request #114

placed by amelia · survives sweeps until released

legal hold
retention: 1 year · disconnected servers prune at 60d corpus link severed on erasure

08 · Appeals · roadmap

Appeals workflow

On the roadmap: a user-facing appeal portal, senior-reviewer queue with SLA tracking, and reversals feeding back as training signal. Today, reversals live in the queue's false-positive flow.

  • Public appeal portal (your URL, your brand)
  • Reviewer SLA dashboards
  • Active learning: every reversal improves the model
/appeals/r-…8c2d in review
FJ

user · 22:16 · appeal opened

"was a princess bride quote in #off-topic"

OB

system · 22:16 · context pulled

3 messages before, 3 after, + #off-topic last hour for tone.

A

senior · 22:19 · resolved · reversal

"yeah this was a movie quote. reversing."

SLA: 3min · trust restored · false-positive context logged

09 · Lists

Term lists

Deterministic screening alongside the LLM. For the cases where you know exactly what you want caught and don't want to wait for a model to judge it.

  • Curated system lists to subscribe to, plus your own org lists
  • Normalization-aware matching — case, leet, and spacing tricks don't dodge it
  • Bulk import: paste a wordlist, one severity, done
lists/scam-links · org list 312 entries · severity: severe
# paste a wordlist: one term per line, # for comments
grabify.link
iplogger.com
free-nitro-gift
# matching is normalization-aware:
# "fr33 n1tro g!ft" still hits the entry above

# subscribed system lists run alongside yours:
slurs-en        # curated by Observer · read-only
scam-domains    # curated by Observer · read-only

10 · Studio

Studio

For studios running multiple communities: every server under one org, with shared lists, people records, and policies — and per-server overrides where communities differ.

  • Multiple communities under one org, one queue
  • Org-wide lists, whitelist, and cross-platform identity records
  • SSO/SAML and BYO Anthropic key: roadmap
studio.example.gg 4 communities

community 1

survival.example.gg

14 in queue · 4 severe

community 2

creative.example.gg

3 in queue · 0 severe

community 3

events.example.gg

1 in queue · 0 severe

community 4

discord.example.gg

7 in queue · 2 severe

roles: admin · moderator  |  members: 8 shared lists · one queue · per-server overrides

Bring Observer to your community.

The private beta is free, with full access while we refine Observer with a small group of operators.