How ModFlow works
Learn what the bot changes in Discord, what it records, and exactly where moderators go next.
- Audience
- moderator · senior reviewer · team lead · server admin
- Availability
- private beta access
- Maturity
- alpha
Last reviewed
On this page
ModFlow in one minute
ModFlow is a Discord moderation bot, a background worker, and a web dashboard. The bot accepts commands and right-click actions. The worker finishes scheduled work such as temporary-action expiry and transcript processing. The dashboard lets authorized staff inspect the records those workflows create.
| Part | Use it for | Example | What changes |
|---|---|---|---|
| Discord bot | Act on the member or message already in front of you. | /mute user:@Maya duration:2h reason:Continued insults after warning | Discord applies the timeout; ModFlow records the action and replies privately to the moderator. |
| Background worker | Finish work that should not depend on a moderator staying online. | A temporary ban reaches its expiry time. | The scheduled job attempts the expiry action and records the outcome. |
| Web dashboard | Review several records, work a case, inspect history, or change server settings. | Open /dashboard, choose the server, then open a member or case. | You see the same server-scoped records with more room for review. |
Follow one real command
Suppose a member keeps insulting another member after a formal warning. A moderator decides that a two-hour timeout is the lightest action that fits.
/mute user:@Maya duration:2h reason:Continued personal insults after warning in #generalDiscord validates the request
ModFlow checks that the moderator may use the action, the member is still in the server, the bot can moderate them in the role hierarchy, and the duration is valid.
Check: Invalid permissions, missing members, hierarchy problems, and bad durations stop before a successful result is reported.
The action is applied
Discord receives a native timeout. If the member is connected to voice, ModFlow also applies the matching server voice mute.
Check: The member cannot send messages for the timeout period and the voice state matches the mute workflow.
ModFlow records what happened
The action record includes the server, member, moderator, reason, duration, case reference, and execution result. The configured moderation log is posted separately.
Check: Another authorized moderator can see who acted, why, for how long, and whether it worked.
The moderator checks the private reply
The slash-command response is ephemeral. Read the member, duration, reason, and case reference before closing it.
Check: The moderator verifies the actual result instead of assuming Enter meant success.
/history user:@MayaThe everyday moderation controls
| Job | Exact example | What ModFlow does | How to correct or continue |
|---|---|---|---|
| Record a formal warning | /warn user:@Maya reason:Repeated spam after two reminders | Creates a recorded warning and resolved case; it does not timeout, jail, or ban the member. | Use /history to confirm it. /undo can remove a recent warning (within 24 hours); use /removewarn for older warnings. |
| Temporarily stop text and voice participation | /mute user:@Maya duration:30m reason:Disrupting the event | Applies a native Discord timeout and matching voice mute when relevant. | Use /extendmute, /reducemute, /unmute, or /undo. |
| Move a member into private staff handling | /jail user:@Maya limit:1h reason:Private review needed | Runs the configured jail workflow, creates the jail/case record, and creates the private jail channel when setup allows. | Use /unjail or /undo; read the role-restoration summary. |
| Remove a member from the server | /ban user:@Maya reason:Coordinated phishing | Bans the member and asks Discord to remove the selected number of recent message days. | Use /unban with the user ID or /undo. |
| Open a case before punishment | /case create user:@Maya reason:Review repeated harassment priority:High | Creates an open CaseFlow case and returns its case number. | Use /case room and /evidence add or the message Apps menu. |
Adjust or reverse an action
Do not remove and recreate a mute just to change its time. ModFlow has explicit adjustment commands so the record shows what changed.
/extendmute user:@Maya add:30m reason:Continued disruption/extendmute user:@Maya total:2h reason:Senior review completed/reducemute user:@Maya subtract:30m reason:Reduced after review/reducemute user:@Maya total:1h reason:Reduced after review/unmute user:@Maya reason:Issue resolved/undo user:@Maya reason:Wrong member selectedWhere the result appears
| Place | What you find there | When to use it |
|---|---|---|
| Ephemeral Discord reply | The immediate success or failure, target, action details, and often a case reference. | Always read this before retrying a command. |
| /history user:@Member | That member's visible moderation incidents and profile pages for the selected server. | Check prior action and verify the new record. |
| Configured moderation log | The staff log embed created for actions such as warnings, mutes, jails, bans, and reversals. | Follow the server's live staff log without opening the dashboard. |
| Cases and Records in the dashboard | Longer case timelines, evidence, action outcomes, notes, and review context your role may access. | Investigate, compare, hand off, or recover from partial work. |
/dashboardGuides reserved for active development
Some guide locations are intentionally held back while their underlying workflows change. The reserved page identifies those future locations without publishing unstable steps, screenshots, options, or examples.
Continue with sign-in and server selection, then complete the first-shift lessons using the stable moderation, history, case, evidence, appeal, and Soundcheck surfaces.
Five principles for every ModFlow workflow
| Principle | What it means in practice | Before you continue |
|---|---|---|
| One server at a time | Every record, permission, and action belongs to the selected Discord server. | Read the server name and ID before every write. |
| Human decision first | ModFlow applies or organizes staff decisions; it does not replace server policy or moderator judgment. | State the behavior, policy basis, and proportional response. |
| Evidence and judgment are different | Source material supports review; it does not decide the outcome by itself. | Record what the evidence shows, what it does not show, and who decided. |
| Decision and execution are different | An approval can exist even when Discord action is pending, denied, failed, or already handled. | Verify the execution result separately. |
| The durable record matters | Another authorized staff member should be able to reconstruct the action without private side-channel memory. | Verify target, actor, reason, timing, result, and remaining work. |
Understand the staff audiences
| Role | Typical work | Typical boundary |
|---|---|---|
| Moderator | Warnings, mutes, jails, evidence capture, member history, routine cases. | May need senior review for sensitive evidence, ban decisions, exports, settings, or high-impact actions. |
| Senior reviewer | Complex case review, restricted evidence, appeals, Ban Review decisions, escalations. | A review decision can still require a separately authorized executor. |
| Team lead | Workload coordination, case reassignment, policy consistency, analytics review, team handoff. | Team labels never override action-specific permissions. |
| Server administrator | Server setup, roles/channels, permissions, settings, Health, sources, and plan access. | Server administration is not bot-owner, infrastructure, database, or global platform administration. |
Your server can combine these jobs differently. Always trust the live Discord permission, ModFlow team permission, record visibility, and action check over a role title.
Follow a complete moderation lifecycle
- STAGE 01
Intake
A report, message, command, queue item, appeal, or scheduled task creates a work item.
- STAGE 02
Scope
The operator confirms the server, target, source, audience, and required authority.
- STAGE 03
Evidence
Relevant visible material is preserved with its source and access boundaries intact.
- STAGE 04
Decision
An authorized reviewer documents the reasoning, outcome, and next steps.
- STAGE 05
Execution
The requested Discord action is attempted through a permission-checked control.
- STAGE 06
Verify and close
Staff confirm the result and any side effects, then assign remaining work or close the record with a reconstructable summary.
Read before writing
Open the member, record, or source and identify the current state before using a write control.
Check: The action is based on the latest known state.
Submit once
Use the narrowest supported command or dashboard control and wait for its final response.
Check: Duplicate writes are avoided.
Verify elsewhere
Check the linked record, history, queue, or current Discord state.
Check: The visible result—not the button press—determines completion.
Leave a handoff
Name the server, record, state, unresolved question, and next authorized owner.
Check: The next owner can verify the unresolved question without reconstructing the case.
Know where each job lives
| Surface | Best for | Examples |
|---|---|---|
| Discord slash commands | Fast, in-context actions with private feedback. | Warn, mute, jail, ban, history, cases, evidence, appeals, Soundcheck. |
| Discord Apps menus | Starting from the member or source message already visible. | History, Warn, Mute, Jail, Create Case From Message, evidence capture. |
| Overview and Moderation Actions | Selected-server status, action forms, and execution history. | Recent operations, direct staff action, recovery state. |
| Cases and Appeals | Longer evidence review, decisions, escalation, and appeal handling. | Case workspace, Review Queue, Ban Review, appellant status. |
| People & Data | Profiles, Moderation Log, Activity, staff notes, analytics, imports, and exports. | Chronology, metadata events, source reconciliation. |
| Settings and System Health | Server configuration, permission mapping, and readiness checks. | Roles, channels, logging, teams, Soundcheck access, setup repair. |
What is available now
ModFlow also includes server-scoped Watchlist review, assignments, scheduled actions, dashboard-to-Discord Jail and appeal conversations, and configurable Discord event logging. Access depends on the selected server, plan, permissions, feature flags, provider readiness, and the deployed version.