DOCUMENTATION
Set up tickets, moderation and more
Configuration is Discord-native: use /settings, then run /setup-check to find missing permissions. A bounded signed-in operator page can edit four allowlisted fields where the deployment enables it; it is not a general-purpose dashboard.
For step-by-step instructions, see the guides. See features for details.
Quick start in four steps
- Add the bot
Invite the hosted bot from the invite page, or run your own instance from the source download. The person adding the bot needs Manage Server.
- Configure this server
Run
/settingsas an administrator. Pick a category to edit, then choose a channel, category, or role from this server; use Clear setting to unset it. The second selector turns features on or off, and the Minecraft address and welcome message use text forms. Settings are stored per Discord server. - Post panels and start workflows
Run
/tickets,/staff-applications, and/rolepanelwhere their panels should appear, and use/giveawayand/suggestonce their destinations are configured and enabled below. - Verify with /setup-check
Run
/setup-checkas an administrator. It reports missing settings and what the bot can currently see and do, using current cached Discord observations, which can be incomplete or stale.
Tickets
Open /settings, then the Tickets group. Choose the destinations from this server: ticket category, staff role, and panel channel; for staff reports also choose the staff-report category and senior staff role. Use Preview to see which ticket types can currently be opened and why any are omitted. Then use Publish / Update to post the managed panel (buttons plus a ticket-type dropdown) or to update that same message when settings change.
Open Tickets → Transcripts to choose a private text channel for normal ticket transcripts, or leave it unset. You can override or disable each normal type separately. Staff reports never inherit the shared channel: they stay off until you explicitly choose a separate senior-only channel. Test destination checks the channel privacy and the bot's View, Read History, Send and Attach Files permissions without sending ticket content. Close-time delivery is best-effort; if Discord's acknowledgement is uncertain the ticket is parked for manual review, never resent automatically.
Members choose an available ticket type, complete the form (or an administrator-configured versioned question flow), and get a private ticket channel visible to themselves and staff. The opener or authorized staff closes the ticket from the Close ticket button. If ticket feedback is enabled, the bot attempts to DM the opener a one-time 1–5 satisfaction rating after the close commits; a closed DM does not undo the close. Moving the panel to a new channel needs an explicit confirmation, and the old message is disabled only after the new one is recorded. If delivery is uncertain the bot says so: use Inspect / Recover to check the stored panel before retrying — it never reposts automatically.
Need help while others configure? The server owner or an administrator can grant up to 20 delegated editors from /settings → Access. Editors can configure ARK Bot but cannot manage access or gain Discord permissions.
Staff applications
In /settings, choose the application channel and enable staff applications. Run /staff-applications to post the application panel to that channel. Members complete a two-part form (part two within 15 minutes); staff review each submission with the Accept and Deny buttons, and the applicant is notified by DM when possible.
Moderation
Use /warn with a reason, review history with /warnings, and use /timeout (duration like 30m / 2h / 7d, Discord maximum 28 days), /ban, and /clear (2–100 recent messages) as needed. Each command requires its Discord permission, and Discord role hierarchy limits who can be moderated: protected, higher-ranked, and bot accounts are rejected. Actions are recorded to the moderation-log channel when configured.
In /settings you can also enable automatic link timeouts and the honeypot channel, which removes intruders that post where only bots should. /server shows the configured Minecraft address for any member.
Giveaways
Run /giveaway create with a title, description, duration (30m / 2h / 7d), and winner count (1–20). The giveaway posts to the configured giveaway channel, or the current channel when none is set. Members join with the entry button (one entry each); winners are drawn automatically when it ends. Moderators can use /giveaway list, /giveaway status, /giveaway cancel and /giveaway reroll. Cancelling is restricted to giveaways that have not begun settlement.
Roles and suggestions
Self-assignable role panels
Manage existing role panels in their original channel using /reactionrole panels and /reactionrole disable. Disable makes saved button and reaction actions inactive even if Discord cannot edit the old message; remove stale controls manually when instructed.
Run /rolepanel in the channel where the panel should appear. It requires Manage Roles, one required role, and up to four optional roles; every role must be distinct. Members use the Add and Remove buttons to change their own roles. Managed, privileged, and unmanageable roles are rejected, and hierarchy is checked both at creation and on every click. If the buttons report the panel is unavailable, an admin can remove the message and create the panel again.
Suggestions
In /settings, choose the suggestion channel and enable suggestions. Members run /suggest to submit and /suggestions list, /suggestions status or /suggestions withdraw to manage their own posts. Each member gets one changeable vote per open suggestion. Members with Manage Server can browse all submissions and use /suggestions decide to accept or deny an open entry, even when its original post is unavailable.
AI and privacy
ARK AI is optional. Only the bot operator sets the provider endpoint, API key, and model through environment configuration — never through a Discord form. The hosting operator supplies provider credentials for an enabled AI deployment; self-hosted operators configure their own. Enable /ask and /ark in /settings, optionally restricting them to public channels.
Memories and conversation context stay scoped to this server: /remember, /memory, and /forget manage notes only you saved in this server, and replies never reveal another user\u2019s history or private tickets.
All 50 registered slash commands
Use /help for command groups, or /help topic:ticket to list a command’s actions. Discord shows required options as you type. Some commands require permissions or enabled features.
/settings- Configure ARK Bot with buttons and selectors
/tickets- Post a ticket creation panel
/staff-applications- Post a staff application panel
/giveaway- Start a server giveaway
/ask- Ask ARK AI a question
/ark- Ask ARK AI
/remember- Store a private-to-you, server-scoped AI memory
/memory- Search your server-scoped AI memories
/forget- Delete one of your ARK AI memories
/warn- Warn a user
/warnings- View a member’s recent warnings
/timeout- Timeout a member
/ban- Ban a member
/clear- Delete recent channel messages
/server- View this server’s configured Minecraft address
/suggest- Submit a server suggestion
/suggestions- Manage and inspect your server suggestions
/ping- Check bot responsiveness
/rolepanel- Post a self-assignable role panel
/setup-check- Check configured features and current bot access
/ticket- Manage support tickets
/security- Anti-nuke trust and emergency controls
/raid- Anti-raid protection
/tag- Server tags (literal auto-responses)
/autoresponse- Manage auto-responses
/level- Leveling ranks
/starboard- Starboard status
/voice- Manage your temp voice room
/case- View moderation cases
/mod- Channel and member moderation
/poll- Create and close polls
/birthday- Opt-in birthday reminders (month/day only)
/afk- Mark yourself AFK; people who mention you get a notice
/todo- Manage your private server-scoped todo list
/staff-timeline- Staff: one actor-aware timeline of moderation cases and security events
/music- Play operator-allowlisted local audio in your voice channel (off by default)
/command-access- Restrict commands to channels and roles
/faq- Search approved server FAQs or manage knowledge entries
/language- Set or view the server help language
/reactionrole- Bind emoji reactions to roles on an existing ARK role panel
/embed- Preview or publish one managed server embed
/modmail- Consent-based DM relay for an existing open ticket
/ticket-ai- Private staff-reviewed AI suggestions for an open ticket
/social- Staff: manage opt-in social feed subscriptions
/balance- Show your virtual server-economy balance
/pay- Send virtual server currency to a member (no real money)
/economy- Manage the server virtual economy (virtual units only)
/api- Manage the authenticated API keys and webhook endpoints
/ticket-retention- Manage closed-ticket retention markers before enabling auto-delete
/help- Find commands and their actions
Self-host and troubleshooting
Prefer to run your own bot? See the source download: your own Discord application and database, with AI credentials you control. The archive contains no credentials.
Troubleshooting
Run /setup-check first — it names the exact missing setting or permission, including wrong channel types and roles the bot cannot see. Check that the bot role sits above members it must moderate, that it can view and send in every configured channel, and that each feature is both configured and toggled on in /settings. /ping confirms the bot is responding.