CLI Command Reference
A complete list of BotBox CLI commands and their options.
Global Flags
Available on every command.
--headless— Run without the interactive TUI. Passing any value flag implies this. See Headless Mode.-h, --help— Help for the command--version— Print the installed BotBox version
Project Management
Create a new project:
shbotbox create [project-name]Initialize in current directory:
shbotbox initFlags for
createandinit:--name— Bot name, can also be the first positional argument oncreate--description— Bot description--author— Bot author, defaults touser.default_userfrom the global config--prefix— Single non-alphanumeric command prefix, defaults todefaults.command_prefix--env—envordoppler(defaultenv)--token— Bot token, or setBOTBOX_TOKENinstead--guild— Guild ID, used with--env env--doppler-project— Doppler project, required with--env doppler--doppler-env— Doppler environment, used with--env doppler--license—mit,apache-2.0,gpl-3.0,bsd-3-clause,unlicense,no-license(defaultmit)--force— Overwrite existing files without prompting
Cog Management
Add a cog:
shbotbox add [cog-name]Flags for
add:--commands— JSON array of commands to generate. Accepts inline JSON,@path/to/file.json, or-for stdin
Commands are
slash,prefix, ormodal. Modal commands take aFieldsarray instead ofArgs, see Modal Commands.Remove a cog:
shbotbox remove [cog-name]Flags for
remove:-y, --yes— Remove without the interactive TUI or confirmation
Configuration
Show config:
shbotbox config botbox config -gDisplay config (alternative):
shbotbox config display botbox config display -gFlags for
configandconfig display:-g, --global— Show global CLI configuration-l, --local— Show local project configuration (default)-f, --format— Output format (default,json,yaml)-k, --keys-only— Show only configuration keys
List keys/values:
shbotbox config list botbox config list -gFlags for
config list:-g, --global— Target global configuration-l, --local— Target local configuration (default)
Get/set a value:
shbotbox config get bot.name botbox config get bot.name --raw botbox config get -g user.default_user botbox config set bot.name "New Name" botbox config set -g cli.auto_update trueFlags for
config getandconfig set:-g, --global— Target global configuration-l, --local— Target local configuration (default)--raw— (getonly) Print only the value, useful for scripting
Sync config:
shbotbox config sync botbox config sync --headless--headlessprints a plain text report instead of rendering the TUI.
Project Upgrades
- Upgrade config schema:sh
botbox project upgrade
Updates
Update BotBox:
shbotbox updateOnly works if BotBox was installed with
go install. Homebrew installs update withbrew upgrade botbox.
Running Your Bot
- Run your bot:sh
botbox run
For more details on each command, use --help:
sh
botbox <command> --help