Documentation
Setting up Braven
Five commands and you have a working ticket system. Everything else can wait until you want it.
1. Permissions
Braven needs Manage Threads, Create Private Threads, Send Messages in Threads and Read Message History in the channel you use for tickets.
Give your staff roles Manage Threads on that channel too. That is how staff see every ticket without being added to each thread one at a time.
2. Point Braven at a channel
Ticket threads are created in the channel you name here. Transcripts and the audit log are optional, and both are worth setting before your first busy night.
$ /setup channel channel:#support$ /setup staff-add role:@Moderator$ /setup transcripts channel:#ticket-logs$ /setup log channel:#staff-audit$ /setup show
/setup show prints everything currently configured, which is the fastest way to find the one channel you forgot.
3. Build a panel
A panel is the message members click. Categories are the buttons on it — one per kind of ticket you want separated.
$ /panel create channel:#support title:Support$ /panel category panel:1 label:General Support$ /panel category panel:1 label:Report a player$ /panel post panel:1
The posted panel keeps working forever. Braven routes its buttons by ID rather than holding a listener open, so restarts and deploys never produce “This interaction failed”.
Staff claim a ticket with the button or /ticket claim, and close it with /ticket close reason:.... On Pro and above, closing saves an HTML transcript and posts it to your transcript channel.
4. Duty tracking
Duty is free on every tier. Set the On Duty role and the log channel, and staff clock themselves in and out.
$ /setup duty role:@On Duty log:#duty-log$ /duty on$ /duty status
A session left open past the idle limit — eight hours by default — is closed automatically and flagged as auto-closed, so nobody accidentally logs a fourteen hour shift.
5. Activity and quotas
Once duty sessions and ticket timings exist, the reports are arithmetic over them. Both commands take a window in days.
$ /activity staff:@Mika days:30$ /leaderboard days:7$ /quota set role:@Moderator hours:6 tickets:20$ /quota check
With a management channel configured, Braven posts an under-quota report every week and leaves out anyone on approved LOA.
6. Applications and LOA
One form engine serves staff applications, whitelist intake, ban appeals and player reports. Long forms chain across several modals, because Discord caps a single modal at five inputs.
$ /form create name:Staff Application kind:staff$ /form question-add form:1 label:Why do you want to help?$ /loa request start:2026-09-01 end:2026-09-08 reason:Exams$ /loa list status:pending
Approved leave applies the LOA role on the start date, removes it on the end date, and excuses that person from the quota report in between.
7. Moderation and records
The actions are free on every tier and always written to a numbered case, so a server that upgrades later finds its history already there.
$ /mod warn user:@someone reason:Advertising$ /mod timeout user:@someone minutes:60 reason:Spam$ /mod ban user:@someone reason:Cheating$ /record lookup user:@someone$ /automod set rule:invites enabled:true action:delete
Automod, raid protection and the searchable record log are Pro. Every automod rule takes its own role and channel exemptions.
8. The dashboard
Sign in with Discord and you get a list of servers where you have Manage Server and Braven is installed. From there: plan and counts, activity charts, a searchable transcript browser, quotas and LOA, and every channel, role and threshold in one place.
Editing settings is a Pro feature; reading them is not. Anything that needs a Discord side effect — posting a panel, applying a role — stays a slash command.
9. Plans and billing
/plan shows the current tier and its limits. /subscribe links to checkout for that server.
$ /plan$ /subscribe$ /referral code
A failed payment keeps paid features live for three days rather than cutting a server off mid-shift, and downgrading never deletes configuration.
