- Safe and easy embeds
- Robust command system
- Built in help system
- Unit testing support
- Unopinionated
- Moonscript support
- Lightweight
- Argument parsing system
If your bot uses Comrade send an issue with it.
import Command from require 'comrade'
class commandname extends Command
new: =>
super!
@name = '' -- Override class name
@aliases = {''}
@permissions = {''} -- Uses overrides like if they have Moderation we can override them not having kick members
@hidden = false -- It won't appear in help and can only be ran by an owner
@allowDMS = false
@cooldown = 3000 -- Comes in with a built in MS parser so it can say '3 minutes remaining' or '3 hours'
@description = ''
@usage = ''
@example = ''
subcommand: (msg, args, client) =>
-- I only run when you say commandname subcommand
msg\reply 'Subcommand!'
execute: (msg, args, client) =>
-- Command logic
@help msg.channel -- Send the help message
commandname!
You can find more examples at the documentation
The documentation can be located at https://sovietkitsune.github.io/Comrade.
If you have any issues you can join the support Discord here in the #comrade channel.
You can install it using lit
. To install run
lit install SovietKitsune/Comrade
The Comrade library takes up very little space already, being less than an mb.
- Examples be an array
- Fixed preconditions
- Check embed limits
- Unload events and separation for plugin and commands
- Examples for documentation
- More advanced argument parsing system
- More test cases
- Pagination
- Branched prompts Phased out by etlua prompts, check an example. here