Executing Commands
How to use Nevi's commands: prefixes, shortcuts, arguments, quotes, and everything you need to know about the command system.
Slash commands vs text prefix
Nevi supports two ways to run commands:
Slash commands
Type / in Discord and pick a command from the popup. Discord handles the argument prompts for you.
Text prefix commands
Type your server's prefix followed by the command name. The default prefix is !, so you'd type !daily, !balance @user, etc.
Admins can change the prefix with /prefix set. Prefixes can be 1-5 characters with no spaces — common choices are !, ,, ., or n!.
Command shortcuts
You don't need to type the full command name. Nevi uses a greedy prefix matching system — type any unique starting characters of a command name and it will resolve automatically.
| You type | Resolves to |
|---|---|
!pr | !profile |
!bal | !balance |
!lea | !leaderboard |
!trivia | !trivia |
!serv | !serverinfo |
If what you typed matches multiple commands (ambiguous), Nevi will ask "Not sure what you mean, sorry! Did you mean...?" and suggest the closest match.
How resolution works
- Exact match — if you typed a full command name, it's used directly
- Priority alias — single or two-letter shortcuts that are hardcoded for common commands
- Greedy prefix — finds all commands that start with what you typed. If exactly one matches, it's used. If multiple match, it's ambiguous.
Priority aliases
Some very short shortcuts are reserved for specific commands so they always resolve without ambiguity:
b→bank→kickm→mutew→warnd→dailyf→farmh→helpp→pingq→queuebj→blackjacklb→leaderboardrr→reactionrolenp→nowplayingss→serverstatsui→userinfoga→giveawaycc→customcmdhb→hackbanPermission-aware shortcuts
Aliases are permission-aware. For example, w resolves to warn for moderators (who have access to it), but to work for regular users. Nevi picks the command you can actually use.
Subcommand shortcuts
Greedy matching also works for subcommands. If a command has subcommands like farm plant and farm plantall, you can shorten them:
| You type | Resolves to |
|---|---|
!farm p | !farm plant |
!farm pa | !farm plantall |
!farm h | !farm harvest |
!farm s | !farm seeds |
Choice-based arguments work the same way — typing eas resolves to easy if that's the only choice starting with those letters.
Required and optional arguments
Commands accept arguments in order — just type the values after the command name, separated by spaces. No need to write argument names.
<arg> = required
The command won't run without it. If you forget a required argument, Nevi will tell you what's missing — and some commands will even prompt you for it interactively.
[arg] = optional
Has a sensible default or is simply omitted. For example, !balance checks your own balance, but !balance @Alex checks Alex's.
Examples
!give @Alex 100 — first arg is the user, second is the amount
!farm view 2 — view plot number 2 (optional, defaults to 1)
!blackjack 500 — bet 500 on a game of blackjack
Quotes
Nearly all the time, you don't need quotes. Nevi's argument parser is smart — the last text argument in any command is greedy, meaning it automatically captures everything remaining in your message as one value.
No quotes needed
!autoresponse create hello Welcome to the server! Check out #rules
"Welcome to the server! Check out #rules" is captured as the response, even though it has spaces — because it's the last argument.
Quotes are only needed in one situation: when a multi-word value isn't the last argument and you need to separate it from arguments that come after it.
When quotes help
!giveaway create "Nitro Classic" 24h 1
Without quotes, Nevi would think "Classic" is the duration. The quotes group "Nitro Classic" as a single argument so 24h is correctly read as the duration.
Stacking quotes
!shop add "Cool Sword" "A legendary blade of power" 500
You can quote multiple arguments in a row to disambiguate them. Here the name, description, and price are each clearly separated.
A single unmatched quote (no closing quote) is treated as a regular character, so don't worry about stray quotes breaking anything.
Argument types
Different argument types are parsed differently from text:
| Type | What to type | Example |
|---|---|---|
| User | Mention or ID | @Alex or 123456789 |
| Channel | Mention or ID | #general or 123456789 |
| Role | Mention or ID | @Moderator or 123456789 |
| Number | Just the number | 100, 5, 2500 |
| Boolean | true/false or yes/no | true, no |
| Text | Just type it | hello world |
For arguments with fixed choices (like difficulty levels), greedy matching also applies — typing eas resolves to easy if it's the only choice starting with those letters.
Default subcommands
Many commands have a default subcommand that runs when you don't specify one. This means you can skip the subcommand name entirely for the most common action:
| You type | Same as |
|---|---|
!farm | !farm view |
!shop | !shop view |
!stars | !stars view |
!blackjack 500 | !blackjack bet 500 |
!config | !config view |
!autorole | !autorole list |
If you type something that doesn't match any subcommand, Nevi uses the default and treats your input as arguments to that subcommand instead.
Named argument syntax
While positional arguments are the primary way to use commands, Nevi also supports an optional named syntax using name:value pairs. This can be useful when you want to skip optional arguments or set them out of order.
Example
!farm plant 1 wheat plot:2
Plants wheat in slot 1 on plot 2. The plot:2 is a named argument that skips to the plot option directly.
You can mix positional and named arguments freely. Named arguments are extracted first, then the remaining values are mapped positionally. Most users will never need this — positional arguments are simpler and work for everything.
Related Commands
/helpgeneralView available commands
/prefixmanagementRequires adminManage the text command prefix for this server