This is a list of Internet Relay Chat commands. These are used in Internet Relay Chat (IRC) to perform various actions. Commands are indicated by the use of a "/" right before them. In most cases, this can be changed, e.g. to "$", so that "/me" would change to "$me". However, "/" is almost always the default. Arguments with <> around them are in most cases required for the command to work properly, and those with [] around them usually do not need to be in there. Hostmasks come in the form nick!ident@host. They accept the wildcard characters * and ?, which match any string of characters and any single character, respectively. For example, *!johndoe@example.com would match any nick with that ident and host. Note that "nick" can be used also, and it will be matched to a hostmask automatically by the IRC server.
User commands
editThese are commands that can be performed by any user.
msg
editSyntax:
/msg <user> <text>
This sends <text> in a private message to <user>.
Defined in: (unknown)
admin
editSyntax:
/admin [server]
This gives administrative details about the server the user is currently connected to or the specified server that is given.
Defined in: RFC 1459 "4.3.7 Admin message"
ctcp
editSyntax:
/ctcp <user> <command> [other]
This sends a CTCP <command> to <user>.
Defined in: (unknown)
disconnect
editSyntax:
/disconnect or /quit
This disconnects the user from the current server.
Defined in: RFC 1459 "4.1.6 Quit message"
help
editSyntax:
/help (or /raw help)
This returns a list of available IRC commands.
Defined in: (unknown)
ignore
editSyntax:
/ignore <nick!ident@host>
This makes the client not display text from the specified user. However, this command varies from client to client.
/unignore <nick!ident@host>
This removes the ignore.
Defined in: (unknown)
join
editSyntax:
/join <#channel,[#channel,#channel,...]> [key,[key,key,...]]
This joins the specified channels.
Defined in: RFC 1459 "4.2.1 Join message"
list
editSyntax:
/list <#channel> <-min#> <-max#>
This lists title and number of users on a channel.
Defined in: RFC 1459 "4.2.6 List message"
links
editSyntax:
/links
This retrieves list of all linked servers, and in what manner or order they relate to the currently connected server. On larger IRC networks, /links has been disabled to deter DDOS attacks.
Defined in: RFC 1459 "4.3.3 Links message"
lusers
editSyntax:
/lusers
This lists local users in their various forms, online operators or admins, number of channels, and in how many servers.
Defined in: (unknown)
An example of how it displays in mIRC:
There are 1014 users and 3 invisible on 1 servers
6 operator(s) online
32 channels formed
I have 1017 clients and 0 servers
me
editSyntax:
/me <text>
This displays the nickname, followed by <text>.
For example, when the user "MrWiki" writes "/me is going to go watch TV", it would be seen as "* MrWiki is going to go watch TV" by the channel. The way the output and input of an action may vary from client to client.
It is implemented with the CTCP ACTION command.
motd
editSyntax:
/motd [server]
This returns the Message of the Day for the server the user is currently connected to or the specified server if given.
Defined in: (unknown)
names
editSyntax:
/names <#channel,[#channel,#channel,...]>
This returns a list of nicknames on that channel, prefixed by @ and + for operator and voice modes respectively.
Defined in: RFC 1459 "4.2.5 Names message"
nick
editSyntax:
/nick <nickname>
This sets the user's nickname to <nickname>.
Defined in: RFC 1459 "4.1.2 Nickname message"
notice
editSyntax:
/notice <#channel|nickname> <text>
This sends a notice to the specified channel or user. Generally, this isn't used except by service bots and IRCops.
Defined in: RFC 1459 "4.4.2 Notice messages"
part
editSyntax:
/part <#channel,[#channel,#channel,...]> [reason]
This will cause you to leave the specified channels, or if the channel parameter isn't present it will cause you to leave the active channel. If no reason is given, a default (usually user-defined) is used.
Defined in: RFC 1459 "4.2.2 Part message"
query
editSyntax:
/query <nickname>
This starts a private chat with the selected user.
Defined in: (unknown)
quit
editSyntax:
/quit [reason]
This will make the server disconnect the user from it. At times if a server is laggy the user won't disconnect immediately, so instead some clients have the /disconnect command which forces the client to disconnect from the server. If no reason is given, a default (usually user-defined) is used.
In Mozilla's Chatzilla IRC client, this command will cause you to exit Chatzilla completely.
Defined in: RFC 1459 "4.1.6 Quit message"
quote
editSyntax:
/quote <command> (or /raw <command>)
This sends the given command directly to the server so it will be not processed by the client program (for example client command "/connect" has different function than server command "/quote connect").
Defined in: (unknown)
say
editSyntax:
/say <Words you want to say>
This says what the user wants to say on the channel, but is good for showing examples of executing commands. For example, "/say Hi" will do the same thing as just typing "Hi", and "/say /msg wikipedia Hi" will display "/msg wikipedia Hi" as opposed to messaging "wikipedia"
Defined in: (unknown)
silence
editSyntax:
/silence [-|+]<nick!user@host>
This is a form of serverside ignore. Prevents messages from the specified nick!user@host from being seen by the user.
Defined in: (unknown)
stats
editSyntax:
/stats <letter>
This acquires server stat information based on the associated letter input given. (For example: "/stats o" will list operators from the server's configuration.)
Defined in: RFC 1459 "4.3.2 Stats message"
Common server stats include:
Stats letter | Description |
---|---|
g | Lists G-Lines on the server |
k | Lists K-lines on the server |
m | Lists the server's specific available commands |
o | Lists those who have IRC operators privileges |
p | Lists the ports that can be connected through |
u | Lists the server's uptime |
Note: Most /stats usually require IRC operator status.
who
editSyntax:
/who <name> <o>
This lists users in current channel who 'match' the name parameter. If no <name> is given, all non-invisible (+i) users are returned. Addition of the 'o' parameter returns only Operators.
A common extension to this command is to allow for the request of the list of users on a channel. This is used by the X-Chat IRC Client to determine more information than the NAMES reply upon joining a channel, such as the user's host, away status, channel status, operator status, real name, and server.
From the ircd-hybrid help:
WHO <#channel|user>
The WHO command displays information about a user, such as their GECOS information, their user@host, whether they are an IRC operator or not, etc. In the reply, the first field indicates the last channel the user has joined. The second is the user's nickname. The third field describes the status information about the user. The possible combinations for this field are listed below:
H - The user is not away. A - The user is set away. * - The user is an IRC operator. @ - The user is a channel op in the channel listed in the first field. + - The user is voiced in the channel listed. % - The user is a half-op in the channel listed. (note: this is a hybrid-specific extension to the IRC protocol and not RFC-compliant)
The next field contains the username@host of the user. The final field displays the number of server hops and the user's GECOS information. This command may be executed on a channel, such as "WHO #lamers" The output will consist of WHO listings for each user on the channel.
This command may also be used in conjunction with wildcards such as * and ?.
Defined in: RFC 1459 "4.5.1 Who query"
whois
editSyntax:
/whois <nick,[nick,nick,...]>
This displays a small amount of information about the given nick(s).
Defined in: RFC 1459 "4.5.2 Whois query"
Channel operator commands
editThese commands can only be issued by users with operator or half-op privileges.
invite
editSyntax:
/invite <nick> <#channel>
Invites <nick> to join <#channel>.
kick
editSyntax:
/kick <#channel> <nick> [reason]
Removes <nick> from <#channel>. The kicked user can, of course, rejoin, so this is rarely effective in keeping someone out, but it does serve as a warning.
mode
editSyntax:
/mode <#channel|nick> <+/-parameters> <nick>
This sets a mode on [#channel], or on the specified user. The required level depends on the modes. Note that you can use it on yourself without any channel modes set on you (mIRC users can use //mode $me <+/-parameters> to set modes).
op
editSyntax:
/op <nick>
Gives channel operator status to <nick>.
deop
editSyntax:
/deop <nick>
Removes channel operator status from <nick>.
topic
editSyntax:
/topic [#channel] <text>
Sets the current topic to <text>. Only available to ops/halfops when channel mode +t is set; otherwise, anyone can use it. When no text is given, returns the current topic on the channel.
The most common modes are:
Name | Type | RFC/IRCd | Description |
---|---|---|---|
+b [hostmask [hostmask hostmask ...]] | Channel | RFC1459/2811 | Sets a ban on anybody matching the specified [hostmasks]. [hostmask] needs to be in the form of nick!ident@host, but you can use wildcards, e.g. *@host, *@ho??, etc. |
+o <nick [nick nick ...]> | Channel | RFC1459/2811 | Gives a nick operator status in the channel. |
+v <nick [nick nick ...]> | Channel | RFC1459/2811 | Voices nick. |
+h <nick [nick nick ...]> | Channel | IRCd-Hybrid | Gives nick half-operator status. |
+c | Channel | Bahamut | Blocks colour from being sent to the channel. |
+O | Channel | Bahamut | Only IRC operators can join the channel. |
+M | Channel | Unknown | Only allows registered users to send messages to the channel. |
+m | Channel | RFC1459/2811 | Makes channel moderated (only ops, half-ops and voiced people can speak). |
+t | Channel | RFC1459/2811 | Only ops can change the topic. |
+i | Channel | RFC1459/2811 | Makes the channel invite-only. |
+I [mask [mask mask ...]] | Channel | Unknown | Everybody matching the specified [masks] can join a +i channel without invite. |
+p | Channel | RFC1459/2811 | Makes the channel private (Meaning depends on IRCd. Some consider deprecated in favor of +s) |
+s | Channel | RFC1459/2811 | Makes the channel secret (Meaning depends on IRCd. Often suppresses listing in LIST and WHOIS unless already on channel.) |
+l [number] | Channel | RFC1459/2811 | Limits the number of people who can be in the channel to [number]. |
+k [key] | Channel | RFC1459/2811 | Key-locks the channel. You need to join using "/join #channel [key]". |
+e [mask [mask mask ...]] | Channel | Unknown | Makes everybody matching the specified [masks] exempted from any bans (+b) currently in place. |
+d | User | Unknown | Makes the user deaf. Channel messages are still seen, however private messages to the user will be blocked. |
+g | User | Unknown | Displays some wallops messages. e.g. !irc.server.xx! Nick (user@host) is now an IRC operator (O) |
+i | User | RFC1459/2812 | Makes the user invisible, i.e. nobody can use wildcards to match the nick in a /who or /whois command; they must know the exact nick. |
+k | User | ircu | Network service. Prevents a user from being deopped, kicked or killed. |
+R | User | Unknown | Prevents non registered users from messaging registered users on some networks. |
+s | User | RFC1459/2812 | Allows the user to view server notices such as server links/delinks, glines, and notices regarding High-Traffic Mode. |
+W | User | Unknown | Returns who is /whois'ing you on Nefarious IRCd. |
+w | User | RFC1459/2812 | Allows the user to view "wallops", or notices sent between Opers. In the case of IRCu if a non-oper used this mode, it will enable the user to see "walluser" messages (a type of network wide message sent by opers). |
+o | User | RFC1459/2812 | Sets the user as an IRC Operator. This mode should not be confused with the channel mode +o, which sets a user as a channel operator. |
+x | User | Unknown | Obfuscates the user's hostmask so as to make it impossible to find an IP from it. |
These modes differ from network to network and from IRCd to IRCd.
See also:
IRC operator commands
editIRC operators (IRCops) are given a special set of commands for server and network maintenance. Many of these can be abused quite easily, so care must be taken before making somebody an IRCop.
oper
editSyntax:
/oper <username> <password>
This will allow the user issuing the command to gain IRC Operator privileges.
kill
editSyntax:
/kill <nick> <reason>
This will disconnect a user from the network you issued the kill command on. But the user is allowed to reconnect after the kill
gline
editSyntax:
/gline <user@host>
This command globally bans anybody matching that hostmask from all servers linked to the IRC network. All such users will be automatically disconnected.
Time has to be specified in seconds or on most modern IRCds can be specified like 1d2h3m4s (1 day 2 hours 3 minutes 4 seconds). 0 can be given for a ban lasting an infinite amount of time.
kline
editSyntax:
/kline <nick!user@host>
Like gline, but only bans the given hostmask from the server the command was issued from. If there is more than one server linked to the network, the user can reconnect and get on another server. K-lines are commonly used to enforce geographical limits, so that, for example, somebody in Germany can't connect to a Canadian server.
opmode
editSyntax:
/opmode [!]<#channel> <-|+modes> [args]
The command user can perform mode changes on a channel without being opped or hopped. (Server mode.) The ! indicates that the channel is registered. (U:lined service being on the channel.)
shun
editSyntax:
/shun <user@host> <duration> [reason]
Shun forces the server to ignore any commands from the given context except for ping responses and the /admin command. Shunned users are not notified of the use of the command, though they could figure it out rather easily. Shuns are not implemented on many IRC networks for their end result doesn't provide much more functionality than a G-line or K-line.
wallops
editSyntax:
/wallops <message>
Sends a message to all users who currently have +w set in their usermodes. (Note: Depending on the config specifications, wallops can be specified to IRC operators only, even if non-opers have +w set, e.g. # F:WALLOPS_OPER_ONLY:FALSE)
References
edit- "The IRC Command Cosmos, an advanced guide to IRC commands". Retrieved 2007-06-08.