Documentation
Everything you need to set up, operate, secure, and monetize Krios on your Discord server — from the first invite to enterprise-grade anti-nuke protection.
Getting Started #
Krios is an enterprise-grade Discord bot for security, moderation, and community growth, built and operated by DayronLabs LLC. This guide walks you through the entire onboarding journey: inviting the bot with the correct permission set, running the interactive setup wizard, and connecting the web dashboard so every module can be managed in real time. A typical server goes from first invite to fully protected in under five minutes, and nothing in this process requires technical knowledge beyond being an administrator of your server.
- 1
Invite the bot to your server
Open the dashboard, sign in with your Discord account, and locate the server you want to protect in the server grid. Servers where you hold the Administrator permission or ownership appear automatically; servers where Krios is not yet installed show an Invite button. Clicking it launches the standard Discord OAuth flow, where you confirm the target server and review the permissions being granted. Krios requests only what its modules actually use — Manage Roles, Manage Channels, Ban Members, Kick Members, Manage Messages, View Audit Log, and the ability to send messages and embeds. It never asks for your password and never gains access to your personal account.
- 2
Verify the role hierarchy
Discord enforces a strict role hierarchy: a bot can only act on members and roles positioned below its own highest role. After the invite completes, open Server Settings → Roles and drag the Krios role near the top of the list, above your moderator roles and below only the roles you explicitly want to remain untouchable. This single step is the most common cause of 'the bot is not acting' reports — if Krios sits below a rogue admin's role, Discord itself prevents the bot from intervening, no matter how the modules are configured.
- 3
Run the /setup wizard
In any channel the bot can read, run the /setup slash command. The interactive wizard provisions everything the modules depend on: a mute role with correctly denied permissions across all channels, a private log channel for moderation and security events, and a ticket category for the support system. Every resource the wizard creates is recorded in your server profile, so re-running /setup later is safe — it detects existing resources and only fills the gaps instead of duplicating them.
- 4
Set initial permissions for your team
Decide which roles can operate the bot day to day. Moderation commands such as /warn respect Discord's native permission system, so a member needs Moderate Members (or a role you grant via Server Settings → Integrations → Krios) to use them. The Integrations panel also lets you restrict individual slash commands to specific roles or channels — a recommended practice is limiting /ticket-panel and /setup to administrators while leaving /warn available to your full moderator team.
- 5
Open the web dashboard
Sign in with Discord at the dashboard and select your server. From here every module — anti-nuke thresholds, anti-raid, anti-link, the ticket system, and welcome cards — can be toggled and tuned without touching Discord again. Changes are written to the database the bot reads from, so they take effect immediately: there is no restart, no sync delay, and no cache to clear. Use /settings-status in Discord at any time to print a live summary of the active configuration and confirm everything matches what you set in the dashboard.
What you need before you start #
You must be the owner of the Discord server or hold the Administrator permission in it. Krios validates this against the Discord API on every dashboard session, so access cannot be spoofed by lower-ranked members. You also need a Discord account in good standing to complete the OAuth sign-in; no separate Krios account or password is created, and revoking access is always available from your Discord Authorized Apps settings.
If your community uses Discord's Community feature with membership screening or rules channels, Krios is fully compatible — the welcome module fires after a member passes screening, not before, so welcome cards are only sent for members who actually complete onboarding.
Recommended first-day checklist #
After the wizard finishes, take five extra minutes to harden your server: confirm the Krios role sits above your moderator roles, enable the Anti-Nuke module from the dashboard and review its default thresholds, publish a ticket panel in your support channel with /ticket-panel, and send a test /warn against an alt or a willing moderator to verify the log channel receives the event. Servers that complete this checklist on day one report dramatically fewer configuration issues later, because every subsystem has been exercised end to end while the setup is still fresh.
Anti-Nuke & Security Module #
The Anti-Nuke module is Krios's flagship protection layer. It exists to stop the worst-case scenario on Discord: a compromised or malicious account with elevated permissions destroying months of community building in seconds through mass bans, mass channel deletion, or role purges. Unlike traditional moderation bots that only react to ordinary members, Krios's anti-nuke engine is designed to act against administrators themselves — because in a real nuke attack, the attacker almost always already holds dangerous permissions.
How detection works #
Krios continuously watches your server's audit log and correlates every destructive action — bans, kicks, channel deletions, role deletions, and webhook creations — with the account that executed it. Each executor gets a rolling action counter per category, evaluated inside a configurable time window. When any counter crosses its threshold within that window, the engine classifies the behavior as a nuke attempt and triggers the configured response instantly, without waiting for human confirmation.
This windowed-threshold design is what separates legitimate administration from an attack. A moderator deleting one obsolete channel never trips the system; a script deleting fifteen channels in ten seconds does. Every threshold is independently configurable — maximum bans, maximum kicks, maximum channel deletions, maximum role deletions, and maximum webhook creations — so you can tune the sensitivity to match how your staff actually works.
Protection against mass-banning #
Mass-ban attacks are the most common nuke vector because a single compromised moderator account can ban hundreds of members through the API in under a minute. Krios tracks ban velocity per executor: when an account exceeds the configured ban threshold inside the detection window, the engine immediately strips the executor's ability to continue — applying the configured punishment (removing their roles, kicking, or banning the attacker, depending on your settings) — and logs a full forensic record of what happened, including the executor, the targets, and the exact timestamps.
Because detection is velocity-based rather than permission-based, this protection works even when the attacker is a long-trusted moderator whose account was phished. The account's history does not matter; its behavior in the last few seconds does.
Protection against mass channel and role deletion #
Channel and role destruction is the second pillar of a nuke: deleting every channel erases pinned knowledge, webhooks, and permission structures that can take days to rebuild. Krios applies the same windowed counters to channel deletions and role deletions independently, so an attacker cannot stay under the radar by alternating between the two. When either threshold trips, the engine stops the executor and raises a high-priority alert in your security log channel so your team knows exactly which structures were lost before the intervention.
Webhook creation is monitored as its own category because attackers frequently create webhooks in bulk to spam @everyone with malicious links after a takeover. Exceeding the webhook threshold receives the same treatment as any other nuke signal.
Rogue admin protection #
Most security bots silently exempt administrators, which makes them useless against the actual threat model — admins are precisely the accounts with the power to nuke. Krios takes the opposite stance: with the Anti-Nuke module enabled, administrators are subject to the same behavioral thresholds as everyone else. The only hard limit is Discord's own hierarchy — Krios can only act on accounts whose highest role sits below the Krios role, which is why placing the bot's role at the top of your hierarchy during setup is non-negotiable for full coverage.
For this protection to be meaningful, treat your role hierarchy as a security boundary: keep the set of roles above Krios as small as possible (ideally only the server owner), and audit it whenever staff changes. The server owner can never be acted upon by any bot — that is a Discord platform guarantee — so the owner account should be protected with 2FA and used sparingly.
Configuring thresholds and responses #
All anti-nuke settings live in the dashboard under your server's module configuration. You choose the detection interval, the per-category maximums, and the punishment applied to a detected attacker. Stricter thresholds (lower maximums, longer windows) catch attacks earlier at the cost of occasionally challenging unusually fast legitimate cleanup work; looser thresholds give staff more headroom but let an attacker do more damage before tripping the wire. A practical starting point for most communities is the default configuration, tightened after a week of observing your staff's normal activity patterns in the security log.
When the module intervenes, every action is written to the audit log system with full metadata. You can export this evidence at any time with /audit-export in JSON or CSV format, which is invaluable for post-incident review, for appeals, and for deciding whether a tripped threshold was an attack or a false positive that warrants tuning.
Moderation & Automated Systems #
Beyond nuke protection, Krios automates the everyday moderation load that burns out volunteer staff: spam floods, malicious links, raid waves, and the bookkeeping of warnings and escalations. Each automated system is independent — you can run anti-link without anti-raid, or warnings without either — and all of them write their actions to the same audit log so your team retains a single, searchable history of every intervention.
Anti-Spam #
The anti-spam system monitors message velocity and repetition per user and per channel. When a member crosses the spam heuristics — rapid-fire identical messages, mass mentions, or sustained message floods — Krios removes the offending messages and applies a graduated response, starting with a timeout via the mute role created during /setup. Because the mute role's channel overrides were provisioned by the wizard, a muted spammer is silenced everywhere at once, including in threads and voice text channels, with no per-channel configuration needed.
Anti-spam runs entirely on behavior, so it catches both human spammers and self-bot scripts. Every removal is logged with the original message content preserved in the log embed, allowing moderators to review exactly what was deleted and reverse the action if a false positive occurs.
Anti-Link #
The anti-link module blocks unauthorized links to prevent phishing, scam giveaways, and server-advertisement spam — the three most common payloads delivered to Discord communities. When enabled from the dashboard, Krios deletes messages containing links from members who lack an exempt role and notifies the channel briefly so the member understands why their message disappeared. Discord invite links receive special scrutiny since they are the primary vector for raid recruitment and competitor poaching.
Moderators and administrators are exempt by default, and the module is designed to be toggled instantly: many communities enable it permanently in general channels while leaving dedicated media or promo channels free, using Discord's per-command and per-channel integration settings for fine-grained control.
Warnings and escalation thresholds #
The /warn command issues a formal warning to a member with a required reason, stored permanently in the database and visible to your whole staff team. Warnings are the connective tissue of fair moderation: instead of each moderator acting on partial knowledge, every warning is centrally recorded with the issuing moderator, the reason, and the timestamp, so escalation decisions are based on a member's complete history rather than one moderator's memory.
Escalation is automatic and threshold-based: as a member accumulates warnings, Krios applies progressively stronger consequences — a timeout at the first threshold, a kick at the next, and a ban at the final one. This removes the awkwardness of staff having to personally decide when 'enough is enough' and guarantees identical treatment for identical behavior. Members are notified via DM when warned, including the reason, which courts have nothing to do with but community-trust research consistently shows reduces repeat offenses.
Anti-Raid #
Raids — coordinated waves of accounts joining simultaneously to spam, harass, or scout for nuke opportunities — are detected by monitoring join velocity and account characteristics. When a join wave matches raid patterns (many accounts joining within seconds, freshly created accounts, default avatars), Krios can automatically lock down entry by removing the suspicious accounts before they ever post. The module is Premium because it requires sustained, real-time analysis of the member stream, and it pairs naturally with Anti-Nuke: raids are frequently the reconnaissance phase of a later nuke attempt.
All raid interventions appear in the security log with the full list of affected accounts, so legitimate users caught in a wave (it happens — a popular streamer mentioning your server looks a lot like a raid) can be identified and re-invited quickly.
The audit log system #
Every automated and manual action Krios takes — warns, mutes, deletions, anti-nuke interventions, ticket events — flows into a unified audit log stored in the database, independent of Discord's own 45-day audit log retention. The /audit-export command exports this history as a JSON or CSV attachment, filterable by category and capped at the limit you choose, giving you durable, offline evidence for disputes, transparency reports, or staff reviews. Treat the export as your server's black box recorder: when something controversial happens, the answer to 'who did what, when' is always one command away.
Ticket System #
The Krios ticket system turns member support from chaotic DMs and lost pings into an organized, auditable workflow. Members open a private ticket with one click on a panel; staff respond in a dedicated channel only they and the member can see; and when the ticket closes, a transcript preserves the entire conversation for accountability. Setup takes a single command, and every aspect — the panel's appearance, the staff role, the category — is configurable per panel.
Publishing a ticket panel #
Run /ticket-panel in the channel where you want the panel to appear — typically a dedicated #support or #open-a-ticket channel that members can read but not write in. The command accepts options that define the panel completely: a title shown at the top of the embed, a description explaining what the ticket is for and what information members should prepare, the staff role that will be granted access to every ticket opened from this panel, the category under which ticket channels are created, and an accent color to match your server's branding.
Once published, the panel is persistent: it survives bot restarts and requires no maintenance. Members click the button, and Krios instantly creates a private channel visible only to the member, the configured staff role, and the bot itself. If your panels ever end up in a broken state — for example after channel deletions outside the bot — the /reset-panels command rebuilds them cleanly.
Organizing with categories #
Each panel binds to a Discord category, and every ticket opened from that panel is created inside it. This is the key to scaling support: create one panel per concern — general help, member reports, partnership inquiries, billing questions — each pointing at its own category and, if you want, its own staff role. Your moderation team sees report tickets, your admin team sees partnership tickets, and nobody wades through channels irrelevant to them. The /setup wizard provisions a default ticket category for you, but you are free to create additional ones and reference them when publishing specialized panels.
Ticket channels are named predictably after the opening member, so staff can see at a glance who a ticket belongs to. When a ticket is resolved, closing it removes the channel — keeping your category clean — while the record of the conversation lives on in the transcript.
Transcripts and audit trail #
Accountability is what separates a ticket system from a private channel. On Premium servers, every closed ticket generates a full HTML transcript: a styled, self-contained file reproducing the entire conversation — messages, embeds, timestamps, and participants — that can be archived, shared with the affected member, or reviewed during staff audits. Transcripts make 'a moderator was rude to me in a ticket' a verifiable claim instead of a he-said-she-said dispute, protecting both members and staff.
Ticket lifecycle events — opened, claimed, closed, by whom and when — are also written to the unified audit log, so ticket activity appears in /audit-export alongside moderation actions. For communities with formal support SLAs, this is the data source for measuring response times and ticket volume.
Best practices for support teams #
Keep the panel description specific: tell members what to include (their order ID, the user they are reporting, screenshots) so staff do not spend the first three messages extracting basics. Restrict the /ticket-panel command itself to administrators via Discord's integration settings, while granting the day-to-day staff role only the ability to participate in tickets. And establish a closing discipline — tickets that stay open indefinitely clutter the category and bury genuinely active conversations; close resolved tickets promptly and rely on transcripts whenever history is needed.
Commands Reference #
Krios ships with a deliberately focused set of slash commands. Configuration lives in the web dashboard; commands exist for day-to-day operations inside Discord. Each command respects Discord's native permission system and can be further restricted per role or per channel via Server Settings → Integrations → Krios.
| Command | Description |
|---|---|
/setup | Interactive wizard that provisions the mute role, log channels, ticket category, and base configuration. Safe to re-run; it detects existing resources and only fills gaps. |
/ticket-panel | Publishes a support ticket panel in the current channel, with options for title, description, staff role, target category, and embed color. |
/warn | Issues a formal warning to a member with a required reason. Warnings accumulate toward automatic escalation thresholds (timeout, kick, ban). |
/audit-export | Exports the unified audit log as a JSON or CSV attachment, filterable by category and entry limit. Your durable record of every bot intervention. |
/premium-status | Shows the server's current tier, subscription status, and which Premium features are unlocked. |
/settings-status | Prints a live summary of the active configuration of every module, exactly as the bot currently reads it. |
/reset-panels | Rebuilds the server's ticket panels if they end up in a broken state, for example after channels were deleted outside the bot. |
/system-reset | Administrator-only. Resets Krios's configuration for the server back to defaults so /setup can be run fresh. |
/ping | Health check that reports the bot's current latency to Discord — the quickest way to confirm Krios is online and responsive. |
Billing & Subscriptions #
Krios uses a simple, transparent two-tier model operated by DayronLabs LLC. Premium is licensed per server — not per user — and is billed through Stripe, with feature unlocks applied instantly via webhooks the moment a payment succeeds. There are no restarts, no license keys to paste, and no manual activation steps.
Free
Core protection for small communities, free forever: basic anti-spam, the warning system with automatic escalation, one ticket panel, and text-based welcome messages. No credit card required, no trial expiry.
Premium
The full enterprise suite for $4.99/month per server: absolute Anti-Nuke that acts against rogue administrators, advanced Anti-Raid, HTML ticket transcripts, automatic server backups, the leveling/XP system, advanced reaction roles, and custom welcome cards with uploaded backgrounds.
How server-based licensing works #
A Premium subscription is attached to a specific Discord server, not to your personal account. This means your whole staff team benefits from Premium features without anyone else paying, and it means buying Premium for one server does not affect any other server you manage. If you administrate several communities, each one subscribes independently, and you can see and manage all of them from a single billing view in the dashboard. The license follows the server: if you transfer server ownership, Premium remains active for the server until the subscription lapses.
Subscription state is verifiable at any moment from inside Discord with /premium-status, which reports the current tier, renewal status, and the exact feature set unlocked. The dashboard reflects the same state in real time — Premium-gated modules switch from locked to configurable the instant the Stripe webhook confirms payment.
Upgrading a server #
Open Dashboard → Billing, choose the server you want to upgrade, and complete the Stripe checkout. Stripe handles the payment page entirely — DayronLabs LLC never sees or stores your card number — and supports the standard methods available in your region. The checkout takes under a minute, and the unlock is immediate: webhooks notify Krios the moment the subscription becomes active, and every Premium module on that server becomes configurable without any further action from you.
If a payment fails at renewal, Stripe retries automatically over several days and emails you before anything changes. Premium features only deactivate if the subscription fully lapses, and your configuration is preserved — re-subscribing restores everything exactly as you left it, with no need to reconfigure thresholds, panels, or welcome cards.
Managing your subscription #
All subscription management — updating your payment method, downloading invoices, switching plans, or canceling — happens through the billing portal linked from Dashboard → Billing. The portal is Stripe's hosted customer portal, so changes apply immediately and securely. Canceling stops future renewals while leaving Premium active until the end of the period you already paid for; there are no cancellation fees and no retention dark patterns. Invoices are issued by DayronLabs LLC and remain downloadable from the portal for your records or your community's bookkeeping.
How to upgrade
Open Dashboard → Billing, pick the server you want to upgrade, and complete the Stripe checkout. Your subscription status is always visible in Discord via /premium-status.
Upgrade in the dashboard →