Record representing a chat bot command. The response field supports variable substitution (e.g. $user, $target, $randomNumber[min,max]) which is resolved at runtime.
tid
Timestamp-based ID
Properties
createdAt
string
datetime
Required
An RFC 3339 formatted timestamp.
description
string
Optional
Optional help text describing what the command does
maxLength: 300 bytesglobalCooldown
integer
Optional
Global cooldown in seconds shared across all users. 0 means no cooldown.
minimum: 0hidden
boolean
Optional
Whether the command is hidden from the !commands list
isReply
boolean
Optional
Whether the bot should reply to the triggering message rather than posting standalone
permissions
array
of
ref
#permissionLevel
Optional
Roles that are allowed to use this command. If omitted, the command is available to everyone.
maxLength: 10 itemsresponse
string
Required
Response text supporting variable substitution ($user, $target, $arg[n], $randomNumber[min,max], etc.). Length is validated at runtime after substitution.
trigger
string
Required
The command trigger without prefix (e.g., 'socials', 'hug', 'd6')
maxLength: 50 bytesminLength: 1 bytesuserCooldown
integer
Optional
Per-user cooldown in seconds. 0 means no cooldown.
minimum: 0View raw schema
{
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"trigger",
"response",
"createdAt"
],
"properties": {
"hidden": {
"type": "boolean",
"description": "Whether the command is hidden from the !commands list"
},
"isReply": {
"type": "boolean",
"description": "Whether the bot should reply to the triggering message rather than posting standalone"
},
"trigger": {
"type": "string",
"maxLength": 50,
"minLength": 1,
"description": "The command trigger without prefix (e.g., 'socials', 'hug', 'd6')"
},
"response": {
"type": "string",
"description": "Response text supporting variable substitution ($user, $target, $arg[n], $randomNumber[min,max], etc.). Length is validated at runtime after substitution."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"description": {
"type": "string",
"maxLength": 300,
"description": "Optional help text describing what the command does"
},
"permissions": {
"type": "array",
"items": {
"ref": "#permissionLevel",
"type": "ref"
},
"maxLength": 10,
"description": "Roles that are allowed to use this command. If omitted, the command is available to everyone."
},
"userCooldown": {
"type": "integer",
"minimum": 0,
"description": "Per-user cooldown in seconds. 0 means no cooldown."
},
"globalCooldown": {
"type": "integer",
"minimum": 0,
"description": "Global cooldown in seconds shared across all users. 0 means no cooldown."
}
}
},
"description": "Record representing a chat bot command. The response field supports variable substitution (e.g. $user, $target, $randomNumber[min,max]) which is resolved at runtime."
}