CHATBOTS
Discord Real-Time Offense Classifier and Offender Ledger
Classifies each flagged Discord message for rule violations with an LLM and records the offense against the author in a Postgres offender ledger, returning a running strike count.
How it runs
The automated pipeline, trigger to output.
- TriggerMessage posted in watched Discord channelDiscord
- ActionClassify violation type and severity with OpenAIOpenAI
- LogicSkip if classified as no violation
- ActionInsert offense into Postgres offender ledgerPostgres
- ActionCount user's strikes in rolling windowPostgres
- OutputReply in-channel with category and strike countDiscord
What it does
Every message routed to a moderation channel (or caught by a content filter) is scored by an LLM against your server rules, then written to a per-user offender ledger in Postgres. The bot replies in-thread with the violation type and the author's current strike total so moderators see history at a glance.
When to use it
Run this as the foundation of any escalation system. You want a durable, queryable record of who violated which rule and when — not just ephemeral auto-mod deletions that vanish. It powers downstream pattern detection, reporting, and ban review.
How it works
- 1A Discord message event fires when a post lands in a watched channel.
- 2An OpenAI call classifies the message: violation category (spam, harassment, NSFW, none), severity 1-5, and a one-line reason.
- 3A logic step drops anything classified as "none" so clean messages are not stored.
- 4A Postgres insert appends the offense to the offender_ledger table keyed by Discord user ID.
- 5A Postgres query counts that user's total strikes in a rolling window.
- 6The bot posts a moderator-only reply in the channel with the category, severity, and running strike count.
Set it up
What you configure once, before turning it on.
- 1Connect DiscordCommunity channels + voice + bots.
- 2Connect OpenAIModels, embeddings, files.
- 3Connect PostgresAny Postgres URL — query, write, migrate.
- 4Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
- 5Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
- 6Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.
More Chatbots workflows
Discord Onboarding Completion to CRM Sync
The moment a member finishes Discord onboarding, captures their submitted profile answers, creates or updates a contact in HubSpot.
Discord FAQ-Gated Role Concierge
Greets each new Discord member in a private onboarding thread, walks them through required FAQ steps one at a time.
Discord FAQ Free-Text Answer Grader
When a member submits a free-text answer in their onboarding thread, an agent grades it against the canonical FAQ knowledge base, replies with targeted feedback.
Discord verify-button onboarding via web form webhook
Receives a completed external verification form by webhook, matches it to the Discord account, grants the verified role, and confirms back to the member in Discord.
Discord intro-gated role granting concierge
Watches your #introductions channel, uses AI to confirm a new member's intro is genuine and complete, then auto-assigns the verified Member role and welcomes them.
Daily Discord Digest of Repeated WAF False-Positive Reports
Each morning, scans logged Discord WAF reports in Postgres, groups them by the Cloudflare rule that keeps firing.
Run it inside a business
This workflow drops into a full company template. Import the org, and this is one of the playbooks its agents run.

Run this workflow in your colony.
14-day trial. No DevOps. No Sales call. Provisioned in under a minute.
