ONX-01
🔐 Gate
GATEWho gets in. Verification by IP, browser fingerprint, cookie, TOR, VPN and virtual machines — what makes a ban hold after they change connection.
🔐 How verification works
One check is easy to beat. Six are not.
1 · Connection — same IP or same network block. On IPv6 the whole /64 is matched, so rotating inside it does nothing.
2 · Anonymous networks — VPN, datacenter proxy and TOR. The first thing a ban evader reaches for.
3 · Device fingerprint — new IP from airplane mode, but the same phone.
4 · Security cookie — VPN and an anti-detect browser; if the mark survived, still caught.
5 · Behaviour — fresh IP, fresh device, a bought account: nothing to recognise. But a raider acts like a raider.
6 · Discord phone verification — the only one that costs real money. You enable that in the server settings.
Shared networks
If many different accounts are seen on one IP (mobile data, a university), sharing it stops counting. There, action only follows if the device or cookie also match. Nobody gets banned for their carrier.
None of these is a perfect wall
The goal is not “impossible”. It is making evasion cost more time and money than it is worth.
/verification
🔐 Entry verification (admins only)
/verification setupSet up EVERYTHING automatically (roles, channel, perms)
modetextorequiredHow they verify
/verification enableEnable verification (existing roles)
verified-rolerolrequiredRole granted upon verification
modetextorequiredHow they verify
restricted-rolerolRole assigned on join until verified (optional)
/verification disableDisable verification
/verification publishPost a verification panel in a channel
channelcanalrequiredChannel
typetextoWhich panel (default: the verify button)
/verification vpnBlock VPN/proxy connections on the web portal
statustextorequiredon/off
/verification torBlock the TOR network (stops IP-ban evasion)
statustextorequiredon/off
/verification fingerprintDevice fingerprint: catches those who change IP but not device
statustextorequiredon/off
requiretextoBlock anyone who sends no fingerprint (turning JavaScript off was THE bypass)
/verification vmBlock virtual machines (careful: false positives, alerts only by default)
statustextorequiredon/off
/verification captchaAnti-bot captcha on the web portal (6-digit code)
statustextorequiredon/off
/verification min-ageMinimum Discord account age to verify
daysnúmerorequiredMinimum days (0 = no limit)
/verification altsWhat to do when two accounts share a connection (web portal)
actiontextorequiredAction
strict-gatetextoRemove the verified role from anyone who gets it without passing the portal
linked-accountstextoUse linked accounts (Steam, Xbox…) to catch ban evaders
anchoringtextoWait for the private network to link (avoids mobile/public false positives)
anchor-notetextoWarn the user when they verify on a public or mobile network
similaritynúmeroHow alike two devices must be to link them (75-100%)
/verification autokickKick those who don't verify in time (can rejoin)
hoursnúmerorequiredDeadline in hours (0 = disabled)
/verification block-ipBlock a user's last known IP (web portal)
/verification unblock-ipUnblock a user's IP (if an IP ban caught an innocent)
/verification log-channelChannel logging EVERYTHING about verification (anti-corruption)
channelcanalrequiredStaff channel
/verification forceForce a user to verify: stores ALL their roles and returns them once they pass
userusuariorequiredWho to force
even-if-verifiedsí/noForce it even if they already verified before (usually NOT needed)
/verification restore-rolesReturn their stored roles WITHOUT requiring verification (undo)
userusuarioWho to return them to (blank = to EVERYONE)
everyonesí/noReturn them to everyone who has them held
/verification forcedList whose roles are currently being held
/verification buttonsWho can press the undo buttons (server owner only)
actiontextorequiredWhat to do
userusuarioWho (not needed to view the list)
/verification networkMake IP bans reach the whole network, not just that connection
statustextorequiredon/off
/verification migrateMake long-standing members re-verify, in batches
amountnúmeroHow many in this batch. Leave it empty to migrate EVERYONE in the background
dry-runsí/noOnly show who would be affected, without changing anything
stopsí/noStops the background migration that is running
/verification reminderDM anyone who starts verification and does not finish it
minutesnúmerorequiredMinutes to wait before the reminder (0 = do not remind)
/verification blocksList blocked IPs and the known accounts on each
/verification apikeyUse THIS server’s own VPN key (its own quota, not shared)
keytextorequiredYour proxycheck.io key · “ver” to check · “quitar” to remove
/verification viewVerification status
/banip
⛔ Ban a user and ALL their multi-accounts on the same IP (anti-raid)
Options
userusuarioUser to ban by IP
idtextoOr their ID (if no longer in the server / already banned)
reasontextoReason
/reputation
🌐 Alert if a connection is blocked in other servers (never acts)
/reputation statusSee the cross-server reputation status
/reputation enableEnable cross-server reputation alerts
/reputation disableDisable cross-server reputation
/reputation thresholdIn how many servers it must be blocked to alert
serversnúmerorequiredThreshold (default 2)
/verification-code
🔑 Give a one-time code to someone who cannot log in to Discord
Options
userusuariorequiredWho you are giving it to
/review
🔎 Queue of verifications that need someone to decide
/review queueCases awaiting a decision
/review summaryCase counts and resolution outcomes
/review userCase for a specific user
userusuariorequiredWho for
···
Commands
/warn
⚠️ Give a warning to a member
Options
userusuariorequiredUser to warn
reasontextorequiredWarning reason
/isolate
🚧 Isolate a member: removes all roles, leaves only "Isolated"
Options
userusuariorequiredUser to isolate
reasontextoReason
/reach
🔑 Who can read your private channels, and since when
/seniority
🕰️ Recover how long you have really been here, even if you left and came back
/seniority viewInvestigate how long someone has really been here and since when it is on record
userusuarioWhose (yours by default)
/seniority setSet someone's join date, time or rank (staff only)
userusuariorequiredWho
datetextoDate in YYYY-MM-DD format (UTC)
timetextoTime in HH:MM format (UTC, defaults to 00:00)
ranknúmeroHistorical rank number
/atlas
🗺️ Community, suggestions and moderation teamwork without noise
/atlas accountYour moderation activity, visible only to you
/atlas suggestSend a suggestion without posting or mentioning anyone
texttextorequiredWhat you suggest and why
notify-mesí/noReceive one DM when the team replies (default: no)
/atlas my-suggestionsView your suggestions and their replies
/atlas queueSuggestions and pending team work
/atlas resolveReply to a suggestion without posting anything
idtextorequiredSuggestion ID
decisiontextorequiredWhat the team decided
responsetextoShort explanation for the member
/atlas shift-startPrivately show the team that you are available
/atlas shift-endEnd your shift without channel announcements
/atlas shiftsWho on the team is available now
/automate
⚙️ Chores that would take a whole afternoon, done in one go
/automate verificationClose EVERY channel to unverified people, in one pass
verifiedrolrequiredThe role that DOES see the channels
unverifiedrolThe role that does NOT see them (the one given on join)
memberrolBase role that does not see on its own either (three-role scheme)
public1canalChannel or category that stays VISIBLE to everyone
public2canalAnother visible channel or category
public3canalAnother one
public4canalAnother one
public5canalAnother one
privilegedtextoStaff/donor/veteran channels: by default they are not touched at all
applysí/noWithout this I only show you the plan and change nothing
/automate undoPut permissions back the way they were before the last run
/autoroles
🏷️ Automatically assign roles when a member joins the server
/autoroles addAdd a role to the welcome list
rolerolrequiredThe role that will be assigned on join
/autoroles removeRemove a role from the welcome list
rolerolrequiredThe role to remove from the list
/autoroles viewView the list of configured autoroles
/autoroles statusEnable or disable assignment without clearing the list
statustextorequiredSystem status
/autoroles clearClear all configured autoroles
/standing
🎫 Portable conduct: sign your members’ and accept outsiders’
/standing statusSee whether this server issues standing and whether it accepts it
/standing issueSign your members’ conduct so it counts elsewhere
activesí/norequiredTurn issuing on or off
/standing acceptWhat level of outside standing counts here
leveltextorequiredMinimum level, or none to not accept
/help
📚 Show all the bot commands and features
Options
commandtextoSearch a command by name (in any language)
/ban
🔨 Ban a member from the server
Options
userusuariorequiredUser to ban
reasontextoBan reason
daysnúmeroDays of messages to delete (0-7)
appealablesí/noWhether they can appeal the sanction (yes by default)
/mass-ban
⛓️ Prepare a ban of many accounts at once, with two-person confirmation
Options
userstextorequiredIDs separated by commas, spaces or line breaks
reasontextorequiredOne reason for all users
include-staffsí/noAlso include bots and staff (excluded by default)
/lock
🔒 Lock the current channel (no one can write)
Options
reasontextoReason
/delete-my-data
🗑️ Request deletion of your basic data in this server
/channel
📕 Per-channel content rules (admins only)
/channel modeSet a channel's mode
channelcanalrequiredChannel
modetextorequiredWhat is allowed
/channel removeRemove a channel's rule
channelcanalrequiredChannel
/channel viewList channels with active rules
/community
🌐 The public page of the server: board, records and badges, outside Discord
/community publishTurn the page on and give its link
/community hideTurn the page off (the link stops opening)
/community linkShow the link and the status again
/community modeWhat the page shows
whattextorequiredWhat is visible
/config-history
↩️ Config snapshots, to undo a change that broke something
/config-history saveSave a snapshot of the current configuration now
/config-history listSee the saved snapshots
/config-history restoreRoll back to an earlier snapshot
numbernúmerorequiredSnapshot number (from /config-history list)
/give-role
🎖️ Give a role to a user (mods or "Give roles" permission)
Options
userusuariorequiredUser to give the role to
rolerolrequiredRole to give
reasontextoReason
/data
🗂️ Resolve data requests (bot owner and those they authorise)
/data requestsList pending deletion requests
/data approveApprove deletion of a user's basic data
userusuariorequiredWho requested it
/data rejectReject a deletion request
userusuariorequiredWho requested it
reasontextoReason for rejection
/data authorizeAuthorise someone to resolve requests (owner only)
userusuariorequiredWho to authorise
/data revokeRemove someone's authorisation (owner only)
userusuariorequiredWhose authorisation to remove
/data authorizedList who can resolve requests
/data channelChannel where requests are posted with their buttons
channelcanalrequiredStaff channel
/data backupBackup of the bot data (verification, blocks, audit log)
actiontextorequiredWhat to do
/unisolate
✅ Remove isolation and restore saved roles
Options
userusuariorequiredUser to un-isolate
reasontextoReason
/unban
♻️ Unban a user by their ID
Options
idtextorequiredBanned user's ID
reasontextoReason
/unlock
🔓 Unlock the current channel
Options
reasontextoReason
/unmute
🔊 Remove the timeout (mute) from a member
Options
userusuariorequiredUser to unmute
reasontextoReason
/diagnose
🩺 Check security is set up right and the gate is closed
/emergency
🚨 The server is under attack: backup, webhooks, door and permissions, in order
/emergency enableRun the emergency sequence
confirmsí/noRequired: without this I only show you the plan
permissionssí/noAlso strip the dangerous permissions from every role
exceptrolRole that keeps its permissions (your admin one)
/emergency endIt is over: put the door and the permissions back
/links
🔗 Link protection: removes scams, IP loggers and porn
/links statusWhat is active right now
/links enableTurn link protection on
/links disableTurn link protection off
/links categoryWhat to do with each kind of link
typetextorequiredKind of link
actiontextorequiredWhat to do
/casefile
📁 A member’s full case file, signed and verifiable
Options
userusuariorequiredWho for
/exposure
🎯 If one account falls today, how much goes with it? The server’s real blast radius
/kick
👢 Kick a member from the server
Options
userusuariorequiredUser to kick
reasontextoKick reason
/info
👁️ Bot information, statistics and where to find us
/badges
🏅 What badges exist and how to earn them
/integrity
🔏 The state of the proofs here: log, checkpoints and mirror
/json
🧩 JSON workshop: format, compress, check and build
/json beautifyLeave a JSON pretty and tidy, with indentation
texttextoThe JSON to format
filearchivoA .json file, if it is long
indentnúmeroHow many spaces of indentation
/json minifyCompress a JSON by removing every spare space
texttextoThe JSON to compress
filearchivoA .json file, if it is long
/json checkSays whether a JSON is valid and, if not, which line fails
texttextoThe JSON to check
filearchivoA .json file, if it is long
/json createBuild a JSON by writing key = value pairs
/json embedPull the embed JSON out of a message already posted
messagetextorequiredLink to the message, or its identifier
/json sendPost an embed from its JSON (staff only)
jsontextorequiredThe embed JSON
/slowmode
🐌 Adjust the channel slow mode
Options
secondsnúmerorequiredSeconds between messages (0 = off, max 21600)
/clear
🧹 Delete recent messages from the channel
Options
amountnúmerorequiredHow many messages to delete (1-100)
userusuarioDelete only this user's messages
/keys
🔑 ONYX API keys for this server
/keys createCreate a key (shown ONCE)
nametextorequiredWhat it is for, so you recognise it later
scopetextorequiredWhat it allows
scope2textoAnother scope (optional)
scope3textoAnother scope (optional)
/keys viewThe keys of this server
/keys revokeRevoke a key for good
idtextorequiredThe id shown by /keys view
/my-standing
🎫 Your good conduct, to carry to other communities
/my-standing requestHave this server sign your conduct, to use elsewhere
/my-standing presentShow here the standing you bring from other communities
credentialtextorequiredWhat the mint gave back to you
/my-standing howHow a credential is built, step by step
/my-standing
Decide whether you appear on the public page of the server
/my-standing exitRemove me from the public page
/my-standing returnAppear on the public page again
/my-standing statusDo I appear on the page right now?
/my-data
🗂️ I DM you what data is stored about you
/panel
🔐 Link to the web security panel (staff only)
/profile
A member card: verification, veteran status, badges and endorsement
Options
userusuarioWhose profile to view (yours by default)
/ping
📶 AXIS latency and the state of its nodes
/prefix
View or change the bot text prefix (default ".")
/prefix viewShow the current text prefix
/prefix changeChange the text prefix
newtextorequiredThe new prefix (short, no spaces; e.g. . or !)
/protected
🛡️ The «Protected by AXIS» badge for this server
/protected viewWhether it meets the requirements, and what is missing
/protected claimClaim the badge (checked on the spot)
/protected removeRemove the badge from this server
/remove-role
➖ Remove a role from a user (mods or "Give roles" permission)
Options
userusuariorequiredUser to remove the role from
rolerolrequiredRole to remove
reasontextoReason
/reason
📝 Add or fix the reason of a sanction after the fact
/reason banRecord the reason of an existing ban
userusuariorequiredBanned user (by mention or ID)
reasontextorequiredBan reason
/reactionroles
🎭 Interactive reaction and button role panels
/reactionroles configOpen the visual interactive configuration panel and emoji selector
sectiontextoJump directly to a panel section
/reactionroles createCreate a new reaction roles panel
titletextoPanel title (e.g. Pick your games)
modetextoSelection mode
/reactionroles panelPublish a configured panel to a channel
channelcanalrequiredChannel where the message will be published
idtextoPanel ID (optional if you only have one)
/reactionroles viewList configured reaction role panels
/reactionroles clearDelete a reaction roles panel
idtextorequiredID of the panel to delete
/receipt
🧾 Your moderation receipt: what was decided, and proof it has not changed
/receipt viewOpen a receipt by its identifier
idtextorequiredThe identifier you received by DM
/receipt mineYour receipts on this server
/records
🏛️ Server records: the first member, the biggest day and how long we have been here
/report
🚩 Report a user to the staff team (you can attach images)
Options
userusuariorequiredUser you want to report
reasontextorequiredWhat happened?
imagearchivoProof image or video (optional)
image2archivoAnother proof image or video (optional)
image3archivoAnother proof image or video (optional)
/say
💬 Make the bot say something (logged, but sender hidden)
Options
messagetextorequiredWhat the bot will say
channelcanalChannel to send it to (default: this one)
/server
📊 Show server information and status
/setup
🧭 Set up the bot with 4 questions (start here)
/mute
🔇 Temporarily mute a member (timeout)
Options
userusuariorequiredUser to mute
durationtextorequiredDuration
reasontextoReason
/sync
🔗 Import sanctions from another bot into this one (admins only)
/sync enableChoose the trusted bot whose sanctions will be imported
botusuariorequiredThe trusted moderation bot
channelcanalChannel where that bot posts its logs (optional)
/sync disableStop importing sanctions from other bots
/sync punish-roleA punishment role that will be copied to that person's alt accounts
rolerolrequiredYour server's mute/punishment role
removesí/noStop watching this role
/sync applyExtend punishments already in place to alt accounts now
/sync viewSync status
/system
📡 ONYX subsystems on this server
/support
🔓 Who from outside may view this server — only with your permission
/support statusSee if there are requests or open access right now
/support allowGrant temporary access to whoever requested it
minutesnúmeroHow long it lasts (default 30, max 240)
/support rejectReject the pending request
/support revokeClose an access that was open, right now
/support historyEverything support has done in this server
/support modeLet them request access, or close the door completely
valuetextorequiredWhat to do with support requests
/tempban
⏳ Ban someone for a while and auto-unban on expiry
Options
userusuariorequiredUser to ban
durationtextorequiredHow long it lasts
reasontextoReason
/ticket
🎫 Ticket system: panel, types and permissions
/ticket type-createCreate a ticket type (support, report, appeal…)
nametextorequiredVisible button name
categorycanalCategory where the channels are created
staff-rolerolRole that handles THIS type (otherwise the general one)
emojitextoButton emoji
descriptiontextoOne line explaining what it is for
/ticket type-deleteDeletes a ticket type
idtextorequiredIts id (shown in /ticket ver)
/ticket panelPublishes the panel for opening tickets
channelcanalrequiredWhere to publish it
texttextoPanel text (optional)
/ticket staffRole that handles tickets by default
rolerolrequiredStaff role
actiontextoAdd or remove
/ticket limitsHow many tickets at once and how often they can be opened
opennúmeroOpen tickets per person (default 2)
waitnúmeroSeconds between openings (default 60)
/ticket addGrants access to this ticket to a person or a role
userusuarioWho
rolerolOr to a whole role
/ticket removeRemoves access to this ticket
userusuarioWho
rolerolOr to a whole role
/ticket closeCloses this ticket (saves the transcript)
reasontextoWhy it is being closed
/ticket renameRenames this ticket channel
nametextorequiredNew name
/ticket viewTicket system status
/veterans
The oldest members of the server, and where you stand
/surveil-all
🛰️ Full surveillance: mirror EVERYTHING a user does to a staff channel
/surveil-all addStart fully watching a user
userusuariorequiredUser to watch
/surveil-all removeStop fully watching a user
/surveil-all viewList of users under full surveillance
/surveil-all channelChannel where everything is mirrored (otherwise the alerts one)
channelcanalrequiredTarget channel
/vote
⭐ Support AXIS by voting on Top.gg
Nothing matches that.