Commands - OtaK/AwesomeBot GitHub Wiki
Listed on this page are the various commands that AwesomeBot contains, along with short descriptions of what those commands do. Click on a command name for detailed information on that command.
Public commands are available in any channel/server where the bot is connected. The bot will respond when the message begins with his mention, for example: @AwesomeBot <command> <option1> <option2>. This can be changed per-server, however. You can always use @AwesomeBot help to get the syntax for a specific server. For PM commands, simply start the message with the command name.
Each of the following are available for use in a public chat. Tag the bot and use one of these commands.
| Command | Description |
|---|---|
| 8ball | Predicts the answer to a question |
| about | Tells you all about the bot and where to get more info |
| alert | Allows members to message the admins |
| anime | Searches anime shows using Hummingbird |
| appstore | Searches the Apple App Store for one or more apps |
| archive | Produces a JSON file of the last n messages in the channel |
| avatar | Posts a user's profile picture |
| ban | Removes a member from the server and prevents them from coming back |
| calc | Quickly evaluate a mathematical expression |
| cat | Random picture of a cat! |
| catfact | Random fact about cats |
| chatterbot | Displays the chatterbot currently in use |
| choose | Randomly chooses from a set of options |
| convert | Converts between units of measurement and currencies |
| cool | Sets a command cooldown for the channel |
| countdown | Set a timer for an event |
| ddg | DuckDuckGo Instant Answers |
| emoji | Fetches the large version of an emoji |
| eval | Maintainer only: executes some JS code |
| fortune | Tells your fortune (not really) |
| games | Lists the games being played on this server in descending order |
| gif | Gets a GIF from Giphy with the given tags |
| giveaway | Easy way to randomly give away a secret of some sort |
| help | Shows the complete list of bot commands and features specific to this server or help for a single command |
| image | Searches Google Images with the given query and returns the first or a random result |
| imdb | Provides movie and TV show data |
| imgur | Uploads an image to Imgur |
| info | Lists basic stats about this server |
| join | Returns the OAuth URL to add the bot to a server |
| joke | Tells a random joke! |
| kick | Removes a member from the server |
| linkme | Searches the Google Play Store for one or more apps |
| list | In-chat to-do list |
| manga | Searches manga data |
| meme | Generates a dank new meme |
| messages | Shows the number of messages a user has sent in the past week |
| nuke | Deletes number of messages in a channel, optionally only from specific user. |
| numfact | Random fact about a number |
| ping | A useful command to tell if the bot is alive |
| points | A quick way to get the number of points for a user |
| poll | Quick way to run a poll on a server |
| pokedex | Searches Pokemon database by Pokedex number |
| profile | An all-in-one command to view or set information about users |
| quiet | Turns off the bot in the channel |
| Gets the top 1-5 HOT posts from a given sub on Reddit | |
| remindme | Set a reminder for yourself in a given number of days, hours, minutes, or seconds |
| role | View or give yourself roles |
| roll | Generate a random number. Without any parameters, this will roll a 6-sided die |
| room | Allows anyone to create a temporary channel with a few other members |
| rss | Gets 1-5 entries from the provided RSS feed |
| say | Says something in the chat |
| search | Searches Google for a given query; returns the top 1-5 hits |
| shorten | Uses goo.gl to shorten or decode a URL |
| stats | Shows the most active members, richest users, most played games, and most used commands on the server for this week |
| stock | Fetches basic information about a stock symbol from Yahoo! Finance |
| strikes | Shows strikes for a user |
| tag | A quick snippet response system, inspired by the command in 42 |
| time | Gets the time in a city or country |
| translate | Uses Microsoft Translate to translate a word/phrase into another language |
| trivia | AwesomeTrivia, a fun question-and-answer group quiz game |
| Fetches the Twitter timeline for a given user and shows the last 1-5 tweets | |
| urban | Defines the given word from Urban Dictionary |
| vote | Votes on an active poll or shows ongoing results |
| weather | Gets the current weather and forecast for the given location from MSN Weather |
| wiki | Shows the first three paragraphs of the Wikipedia article matching the given search query |
| wolfram | Displays an entire Wolfram|Alpha knowledge page about a given topic or person |
| xkcd | Fetches today's XKCD comic or by ID |
| year | Displays the exact amount of time until next year! |
| youtube | Gets a YouTube link with the given query, including channels, videos, and playlists |
Anything else will be passed to the active chatterbot Program O.
Usage: 8ball followed by a question
The 8-Ball was a toy that would give you a preset answer after you asked it a question and shook the toy. This command emulates that toy. Giving you one answer out of the selection of preset responses, use it to predict your future or make potentially life-changing decisions. The 8-Ball is never wrong.
The about command tells you about the bot and where to find additional information. It does not take any parameters or options. In the official AwesomeBot, it returns the following:
Usage: anime <search query>followed by the number of your desired selection
This command allows you to quickly look up information on a certain anime from Hummingbird.
Usage: appstore app1[,app2,...] or linkme app1[,app2,...]
Have you ever wanted to quickly link a cool app for someone? This command lets you do just that. It doesn't even require tagging the bot; regardless of platform, you can easily search for app listings and pull up their ratings and prices. For the Google Play store, use linkme; for the Apple App Store, use appstore. The syntax is the same for both commands, but we will use linkme for examples here.
To fetch an app link, send a message with linkme <app name> and the bot will send a listing with the name, developer, rating, price, and URL. You can fetch multiple apps by using linkme app1, app2, app3. Some apps are restricted by region, but AwesomeBot searches the US store by default.
Usage: avatar <username>
Wanted to see someone's avatar, but didn't want the spam that comes with profile? Well this one's for you. Simply say avatar followed by the username of the person whose avatar you want to see. It's that's easy.
Usage: ban <username>
Pretty straightforward this one, bans the username specified in the command.
Usage: cat
Would you like a picture of a cat? Of course you would, which is why this command exists. If you're lucky you might even get a gif.
Usage: catfact
Entertain your server with more facts about cats than you ever imagined!
Usage: choose option1|option2|...
Sometimes you have a tough decision to make, and the best way out is to seek AwesomeBot's wisdom - use the choose command. Provide 2 or more options, separated by |, and AwesomeBot will randomly pick one.
Usage: convert <numerical quantity> <original unit> to <desired unit>
This command converts between units of measurement and currencies. Here's a list of supported units:
- Length
- mm
- cm
- m
- in
- ft
- mi
- Mass
- mcg
- mg
- g
- kg
- oz
- lb
- Volume
- mm3
- cm3
- ml
- ltr
- m3
- km3
- tsp
- tbsp
- in3
- fl-oz
- cup
- pnt
- qt
- gal
- ft3
- yd3
You can also use standard currency codes, with data provided by Open Exchange Rates, or F or C for temperature conversions.
Usage: emoji <emoji or name>
We don't know why you'd ever want to use this, but here it is: provide the name of an emoji or just a plain emoji as the parameter for this command and you'll get a larger version (iOS emojis, sorry).
Usage: eval <code>
If you are the bot maintainer, you can use this command to run some JS code for testing purposes. This is useful for live debugging.
Lists all of the games being played on the server in descending order of number of players. Also shown are the specific members playing each game and the cumulative time spent on each game in the past week.
Fetches a GIF from Giphy with the given tags. There isn't anything else to it; just use gif <tags to search for> and let the memes flow...
Usage: help [<command name>] [public]
We've gone full meta. This command provides information about bot commands. With no options, you'll receive a complete list of commands and features specific to the server via PM. If you include a command name as a parameter, you can view the extended help for that command. Using the public option at the end will show the appropriate help content in the main chat instead of via PM.
Usage: image <query> [random]
Much like the GIF command, the image command simply fetches the top Google Image Search result for a given query. Using the random option at the end will make it a random hit instead of top (for example: image AwesomeBot random).
Usage: imdb <search query>
Searches IMDb for your search query and returns the most relevant result.
Usage: imgur followed by a URL to an image
Quick and simple command to upload an image to Imgur and give you a hotlink to it.
Usage: info
Displays basic information on your server, such as the number of members and the server owner.
With the new Discord official API, bots cannot accept normal invites to servers. Instead, you can use this command (it does not take any parameters) to get the OAuth URL for the bot, which will allow you to add it one of your servers. Note that you must have the Manage Server permission in a server to add a bot to it.
This one is dead simple. Use the command and it will tell you a joke!
Usage: kick <username>
Much like the ban command, this command will kick the specified username.
Usage: list <new entry> or list ["done", or "remove">] [<no. to finish or remove>]
A basic to-do list for your server. New entries are added with the first command, and entries can be marked complete or deleted with done and remove respectively. Simply typing list will display your entire to-do list.
Usage: manga <search query>followed by the number of your desired selection
This command allows you to quickly look up information on a certain manga from Manga Eden.
Usage: meme image name|top text|bottom text
Dank memes are loved by many, but there's never enough for everyone. With AwesomeBot, you can create new memes using the meme command. Provide the name of the meme image, top text, and bottom text as parameters separated by |. For example, you could use meme one doesn't simply|one does not simply|defeat awesomebot:
Usage: messages [<user or "me">]
This command is much like the points command, providing a simple way to check the number of messages you or another user have sent on the server in the past week. Use without a parameter to view the list for the entire server, use the me option to check for yourself, or provide a username as the parameter.
Usage: numfact <number>
Use this command to get an interesting (if a little useless) fact on the number you chose. Did you know that a haiku has 17 syllables in it? Well now you do! (numbers must be in arabic numeral form)
The simplest command of them all! Ping gives you basic runtime stats for the bot: version, uptime, number of servers/users, and, if available, the status page URL. This command is also really useful for checking if the bot is alive. For more information on the status page, click here.
Usage: points [<user, "me" or "lottery">]
The points command provides a minimal way to check how many points a user has or get a list of all the members with positive points on the server. points me gets your points, points <username>, and just points lists users' points on the server in descending order.
We'll also take this opportunity to describe the AwesomePoints karma system. This is one of AwesomeBot's exclusive features, and it's integrated throughout the bot. It works much like karma on Reddit, but can be disabled per-server and there's no downvoting. Use @user +1, @user ^, @user up, ^ (for the previous message) to upvote a user. This will give them 1 point without taking any away from you. @user gild, on the other hand, will give the user 10 points from your points. On servers with spam/NSFW filter enabled, you'll lose 50-100 points for violations. If the server has stats enabled, you'll get points proportional to your activity level if you are one of the 5 most active on the server at the end of the week.
Another way to get points is by winning the PointsBall lottery. Use points lottery to buy a ticket, which costs 500 points. You can buy as many tickets as you wish, only limited by the number of points you have. You can use points lottery end to choose the lottery winner immediately or wait an hour. There are some restrictions on this, though. There must be at least one other person who bought a lottery ticket and the winner cannot be a blocked user, so try not to spam when buying tickets. PointsBall winnings increase with time, starting at 20 and going up to 1 million before the count resets. There's no way to tell how much you win until the winner is chosen, which adds to the fun!
Usage: profile <username>
This is the all-in-one command to view information about users. If no parameters are provided, it will show your user profile. This includes ID, avatar URL, points, strikes, the time you joined the server, when you last opened Discord, and any custom information you have set. If the parameter is a username, that user's profile will be displayed.
Usage: quiet <"all" or no. of seconds>
This command is admin-only. It allows you to turn the bot off the in the current channel, or all channels with the all option. Alternatively, use a number of seconds as the parameter to turn the bot off for that amount of time. You can turn the bot back on at any time with the start or start all commands.
Usage: reddit <subreddit> [<count>]
Fetches the n HOT posts from a given subreddit. If count is not provided or is not within 1 and 5, n defaults to 5. When providing the subreddit, exclude /r/ from the name. The response will include the score, title, poster, and link for each result.
Usage: remindme <numerical quantity> <"d", "h", "m", or "s"> <note> or remindme to <note> in <numerical quantity> <"d", "h", "m", or "s">
Sets a reminder to do something in a given amount of time. You'll get the reminder via PM. Reminders are persistent across bot restarts. Make sure to use the above syntax. It's that simple.
Usage: role or if custom roles are enabled on your server
By default role will display a list of the roles in your server as well as the users who have those roles. If you have role selection enabled on your server, you can you this command to add yourself to a role by typing role <rolename>. You can add other users to roles with role <role name or hex code>[|<username or hex code>].
Usage: roll [<minimum number inclusive>] [<maximum number inclusive>]
The roll command generates a random number. Without any parameters, it will roll a 6-sided die. With one parameter, a number between 1 and <number> (inclusive) will be rolled. Otherwise, include a minimum integer and maximum integer as the range for the random number.
Usage: rss <feed name> [<count>]
Gets the top n articles from an RSS feed. Feeds are registered per-server, with the one default being gnews for Google News. Bot admins may have added additional RSS feeds in the server; you can view these in the help command. You can also provide a full RSS feed URL for other feeds. Count is a value between 1-5 and defaults to 5 if it is not provided. The response for this command will include the title of each RSS article.
Usage: say <what you want the bot to say>
The say command makes the bot say something. This might seem useless, but if you delete the message with your command afterwards, it can give the impression that the bot is sentient ;)
Usage: search <query> [<count>]
Have you ever been too lazy to switch out of Discord and Google something? AwesomeBot saves the day! This command allows you to retrieve n results from Google for a given query. Use count to specify the number of hits to return (1-5), or exclude it to use the default of 5.
Usage: shorten <URL>
Quickly shorten URLs with this command. It's pretty simple: provide a full URL as the parameter to get a shortened goo.gl link, or provide a goo.gl URL to get the full target link.
Usage: stats [clear]
The stats command is the frontend for the AwesomeBot's comprehensive stats system. It shows the most active members, richest members (by points), most played games, and bot command usage on the server in the past week. If you are a bot admin, you can use the clear option to reset stats. Here's an example of the stats command output:
Usage: stock <symbol>
Fetches information about a given stock symbol from Yahoo! Finance. That's pretty much it. Here's an example:
Usage: strikes or strikes <username>
Use this command to view a list of users on your server who have strikes, or see detailed information on a user's strikes if the command is used with a username.
Usage: tag <key>|[<value or ".">]
Inspired by the tag command in the 42 bot, this command provides access to a database of custom tags. To set a tag, use, for example, tag Bob|...the Builder!. This will make the bot return ...the Builder! whenever you use tag Bob. You can use tag Bob|. remove the value for this tag. There are a few built-in tags: shrug, lenny, some copypastas, and the name of any Twitch emote. Bot admins can delete all tags on the server with tag clear. You can view all tags by using the command without any parameters.
Usage: time <city>
Members of the Discord community are located all around the world, in different timezones. Use this command to check the time in a certain city or country, or without a parameter to check the UTC time.
Usage: translate <text> <source lang> to <target lang>
Discord is a global service, with users speaking a variety of languages. This command allows you to easily translate a word or phrase from a given language to your native tongue. For example, translate Gracias ES to EN will return Thank you. You must use language codes (e.g. EN, ES, etc.) instead of the full language name.
Usage: trivia <start, end, next, or answer> [<question set to use>]
One of AwesomeBot's best features is its fun, built-in group trivia game. You can start a game in a public channel with trivia start (to use the default set) or trivia start <question set name> (to use a custom set; a list of custom sets is available in the help command). Once started, you can use trivia next to skip trivia <answer> to provide a response. Your answer doesn't have to match the real answer exactly, but should be within a few characters' difference. You'll be awarded 5 points for each correct answer. Once you're done, use trivia end to view your group score.
Usage: twitter <username> [<count>]
The Twitter command uses TwitRSS.me to fetch a Twitter user's timeline. By default, 5 tweets are returned, but you can include the count parameter set a value between 1 and 5.
Usage: urban <word>
If you've ever wanted to quickly grab a definition, this command is for you! It shows the community-sourced definition of the given word/phrase and its score.
Usage: vote [<no. of option>]
Before using this command, you must start a poll in the channel. Then, you can use the vote command without any parameters to show the current results, including the number of votes for each option and current winner. Or, you can provide the number of the option you want to vote for as a parameter. For example, in this poll:
What's your favorite flavor of ice cream?
0: Chocolate
1: Vanilla
2: Strawberry
3: Other
a vote for "Vanilla" would be: vote 1
Usage: weather <location> [<"F" or "C">]
This command gets the current weather conditions and forecast from MSN Weather for the provided location, including temperature, wind speed, and precipitation. If you wish, you can add F or C as an option at the end of the command to change the temperature units. You can set a default location by PMing the bot profile Location,<city>; then you can use the weather command without any parameters.
Usage: wiki <article name>
Well, this is pretty simple: this command fetches the first 3 paragraphs of a Wikipedia article. Make your query as specific as possible.
Usage: wolfram <query>
For more detailed information than a Wikipedia article, you can use the wolfram command to get the full Wolfram|Alpha result for a query. This includes all sections and images.
The precise time until next year!
Usage: youtube <search term(s)>
This command searches YouTube for the provided keyword(s) and return the first result, which could be a video, playlist, or channel. Discord will allow you to play videos inline.
Each of the following NSFW commands are available for use in a public chat. Tag the bot and use one of these commands.
| Command | Description |
|---|---|
| e621 | Searches by tag on e621.net |
| rule34 | Searches by tag on rule34.xxx |
| safebooru | Searches by tag on safebooru.org |
The following commands work via PMing the bot on Discord. Tagging the bot is not necessary.
| Command | Description |
|---|---|
| afk | Sets an AFK message to be shown when you are tagged |
| config | Provides a link to the online settings page for a server or the bot in general |
| mentions | Lists the messages in which you have been tagged in the past week |
| pmmentions | Toggles the option to have messages in which you are tagged be sent to you via PM |
| poll | Starts a new poll in the main chat |
| profile | Adds a value in your user profile |
| reminders | Shows pending reminders and allows you to cancel |
| remindme | Set a reminder for yourself in a given number of days, hours, minutes, or seconds |
| say | Says something in the main chat |
| vote | Discreetly votes on a poll in the main chat |
Anything else will be passed to Cleverbot.
Usage: afk <message>
Sometimes you know you're going to be away from keyboard (AFK) for some time and want to let others know if they tag you. With AwesomeBot, you can use the afk command to set a message (e.g. afk doing the dishes) via PM and when someone tags you in any server, they'll get: @you is AFK: doing the dishes. When you're back, use afk . to remove the message or just send a message in any server (and the AFK message will be auto-removed).
Usage: config [<server name>]
This command's sole purpose is to give you a link to the bot's web interface (the maintainer must have set this up). If you're the bot maintainer, use config without any parameters to access the maintainer console. If you want to configure a single server, provide the exact server name as the parameter to access the admin console.
Login is done using a token that is present in the URL that you will receive. You can either click the link or enter the token in the box on the status page. The timeout for each online console session is 5 minutes, so you must either logout or wait that time to use the command again.
Usage: mentions <server name>
Shows the full list of messages in which you have been mentioned in the past week on the given server. This is a handy way to check the mentions you've missed since you were away. The list includes the content of the message, time it was sent, and author, sorted in reverse chronological order. When you use the command, the list is cleared until you are mentioned again.
Usage: pmmentions [<server name>]
This command is an extension of the mentions command; it toggles the option to have messages in which you are mentioned sent to you via PM when you are offline. This is best used if you've muted a server and still want notifications or if you can't rely on Discord's push notification system. Running the command for the first time will turn this option on in the given server; running it again will turn it off again.
Without any parameters, this command will toggle the option in all servers and display your current configuration.
Usage: poll <server name> <channel name>
Another one of AwesomeBot's best features is his ability to conduct live, in-chat polls; this command is the way to start one. Given that the bot admins in the server have enabled the poll option, you can provide the server name and channel name (exclude the #) as parameters to get started with creating a poll. You will be prompted for the title of the poll and the options. You can use the default yes/no option by responding with . or make your own, separated by commas. You can abort at any time with poll close, or use that same command to end the poll when everyone has voted. Here's an example of creating a poll:
Once the poll has been started, you can vote publicly in the channel in which it was created or discreetly via PM.
Usage: profile <key>,<value or ".">
The profile PM command is how you add information to your user profile. Separate the name of the section and the value with a comma. Once you've added a section, remove it by using . as the value.
Usage: `reminders []
Without any parameters, this command shows a list of pending reminders you've set along with how much time is remaining on them. If you provide the name of a reminder as the parameter, the bot will cancel it.
Usage: say <server name> <channel name> <what to say>
This command is an admin-only version of the public say command, useful for reminding members of the rules. Provide the server name and channel name (exclude the #) as the first two parameters and what you want the bot to say as the third parameter (you can use the usual Discord markdown syntax for this). The bot will speak in the main chat and other members will not be able to tell who sent the message.
Usage: vote <server name> <channel name> <no. of option>
Sometimes, you don't want your vote on a (sensitive) poll to be public, and that's totally fine! With AwesomeBot, you can vote on a public poll via PM using this command. Provide the server name and channel name (exclude the #) as the first two parameters and the number of the option you want to vote for as the third parameter. Of course, you can only vote once, but you could use . as the third parameter here to remove your vote and then vote again.











