Skip to content

Commands

Commands in Halloy are prefixed with /.

Example

sh
/me says halloy!

Types

Halloy will first try to run below commands, and lastly send it directly to the server. The argument(s) for a command are shown in tooltips, and those marked with a * will show an additional tooltip with argument-specific information on mouseover.

You can configure custom command aliases in buffer.commands.aliases. Aliases are resolved before built-in commands and take precedence when they use the same name.

CommandAliasDescription
awayMark yourself as away. If already away, the status is removed
chathistoryRetrieve message history[1]
clearClear the message history in the current buffer
cleartopicctClear the topic of a channel[2]
connectConnect to a server, specified by URL or current server if disconnected[3]
ctcpClient-To-Client requests[4]
delayDelay the specified number of seconds[5]
detachHide the channel, but leave the bouncer's connection to the channel active[1:1][6]
execRun a local shell command and send the first line of stdout to the current buffer[7]
formatfFormat text with markdown and colors
format-meSend an action with markdown and colors
format-msgOpen a pane with a target and send an optional message with markdown and colors
format-noticeSend a notice message to a target with markdown and colors
hoprejoinPart the current channel and join a new one
joinjJoin channel(s) with optional key(s)[8][9]
kickKick a user from a channel[2:1]
knockRequest an invite from an invitation-only channel[1:2]
listList channel(s) on the server[1:3]
medescribeSend an action message to the channel
modemSet mode(s) on a channel or retrieve the current mode(s) set[10]
monitorSystem to notify when users become online/offline[1:4]
motdRequest the message of the day
msgqueryOpen a pane with a target and send an optional message
nickChange your nickname on the current server
noticeSend a notice message to a target
partleaveLeave and close channel(s)/quer(ies) with an optional reason [11]
plainpSend text with markdown and colors disabled
plain-meSend an action with markdown and colors disabled
plain-msgOpen a pane with a target and send an optional message with markdown and colors disabled
plain-noticeSend a notice message to a target with markdown and colors disabled
quitdisconnectDisconnect from the server with an optional reason
rawSend data to the server without modifying it
reconnectReconnect to a current server if disconnected
setnameChange your realname[1:5]
sysinfoSend system information (OS, CPU, memory, GPU, uptime)
topictRetrieve the topic of a channel or set a new topic[2:2]
whoisRetrieve information about user(s)

  1. Command must be supported by the bouncer/server to be executed successfully; if not supported then the command will not appear in the command picker. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  2. The channel argument can be skipped when used in a channel buffer to target the channel in the buffer. ↩︎ ↩︎ ↩︎

  3. Connections made will not be remembered after quitting Halloy (i.e. when next starting Halloy it will not re-make the connection). Add the connection information to the servers section in the configuration file. ↩︎

  4. The nick argument can be skipped when used in a query buffer to target the other user in the buffer. ↩︎

  5. Can only be used in on_connect. ↩︎

  6. See soju's documentation on detaching from channels for more information. ↩︎

  7. The command is executed locally with sh -c on Unix-like systems and cmd /C on Windows. Only the first non-empty line of stdout is used. If that line starts with /, it is treated as a command; otherwise it is sent as a normal message. /exec is disabled by default and must be explicitly enabled in buffer.commands.exec. ↩︎

  8. Channels joined will not be remembered after quitting Halloy (i.e. when next starting Halloy it will not re-join the channels). Add the channel information to the channels setting for the server in the configuration file. ↩︎

  9. If not joined to the channel in the buffer, then the chanlist argument can be skipped to target the channel in the buffer. ↩︎

  10. The target argument can be skipped; in a channel buffer it will target the channel in the buffer, in a query buffer it will target the other user in the buffer, and in a server buffer it will target your user. ↩︎

  11. The targets argument can be skipped; in a channel or query buffer it will target the current buffer. ↩︎