Skip to main content
Wildcat Docs
WildcatSage

Custom commands & variables

Variables you can put in custom command responses, with examples, and how AI commands write a new reply each time.

Response Variables

You can use response variables to insert dynamic text into custom commands. Put $(variable) in your command response. The bot replaces the variable when a user runs the command.

Response Variables
Variable What it does Example output
$(user) Username of the person who ran the command WildcatGamer
$(channel) Channel name WildcatStreamer
$(args) All text after the command name as one string If a user runs !shout hello world, $(args) = hello world
$(1) $(2) ... A single word by position: $(1) is the first word, $(2) is the second word If a user runs !shout hello world, $(1) = hello, $(2) = world
$(count) Total number of times users ran this command 42
$(random X-Y) A random number between X and Y 17 from $(random 1-20)
$(uptime) Current stream uptime 2h 30m
$(game) Current stream game title Metroid Prime
$(followage) How long the user has followed the channel 2 years 3 months
$(checkin_count) The viewer daily check-in total (Channel Point Rewards only) 14
$(pronouns) Pronouns of the user who ran the command They/Them
$(pronoun_subject) Subject pronoun of the user who ran the command they
$(pronoun_object) Object pronoun of the user who ran the command them
$(pronoun_possessive) Possessive pronoun of the user who ran the command their
Variable Compatibility:
  • Custom Commands and Daily Check-In: Support all variables, including user-specific variables.
  • Timed Messages (Timers): Run on a schedule without an active user. Timers support only channel and stream variables ($(channel), $(game), $(uptime), $(count), $(random X-Y)).

Examples

Here are example custom commands:

Response variable examples
Chat command Bot response
!command add hi Hello $(user)! Welcome! Hello WildcatGamer! Welcome!
!command add roll $(user) rolled a $(random 1-20)! WildcatGamer rolled a 17!
!command add live We have been live for $(uptime) playing $(game)! We have been live for 2h 30m playing Metroid Prime!
!command add hug $(user) hugs $(1)! WildcatGamer hugs WildcatStreamer!
!command add cheer $(user) arrived! Welcome $(pronoun_object)! WildcatGamer arrived! Welcome them!
!command add uses This command was used $(count) times! This command was used 42 times!

AI Commands

AI commands use a prompt instead of a fixed text response. The bot sends the prompt to an AI model to generate a unique reply every time. You can also use response variables in prompts.

You can create AI commands in the Web Dashboard. Select + Add, enable AI Mode, and enter your prompt. You can also create AI commands in chat with !command addai <name> <prompt>.

AI command examples
AI Prompt Bot response
Name: vibe
Prompt: Tell $(user) what kind of vibe "$(args)" gives off in one sentence.
If a user enters !vibe I just ate an entire pizza, the AI can reply: "WildcatGamer your message gives off deeply respectable goblin energy." Replies vary with each use.
Name: hug
Prompt: Write a short, funny hug message from $(user) to $(1).
If a user enters !hug WildcatStreamer, the AI can reply: "WildcatGamer wraps WildcatStreamer in a hug so warm it could melt a glacier."
Name: fortune
Prompt: Give $(user) a short fortune cookie message.
A unique fortune for each use: "WildcatGamer, today you will find a rare item in an unexpected place."

Tip: You can convert a text command to AI mode in the dashboard by enabling AI Mode. You can also run !command options <name> type=prompt in chat. Switch back with type=text.

Preview: Before you save an AI command, select Preview. The bot writes one sample reply from your prompt and the current stream context. The bot does not post the sample to chat. Each preview is a new reply, so the real message will be different. If the prompt uses $(args), enter sample arguments in the field next to the button.