List of Internet Relay Chat commands
This is a list of all Internet Relay Chat commands from RFC 1459, RFC 2812, and extensions added to major IRC daemons. Most IRC clients require commands to be preceded by a slash. Some commands are actually sent to IRC bots; these are treated by the IRC protocol as ordinary messages, not as
/
-commands.Conventions used here: Angle brackets are used here to indicate a placeholder for some value, and are not a literal part of a command. Square brackets are used to indicate that a value is optional.
User commands
ADMIN
Syntax:Instructs the server to return information about the administrators of the server specified by
AWAY
Syntax:Provides the server with a message to automatically send in reply to a PRIVMSG directed at the user, but not to a channel they are on.
If
CNOTICE
Syntax:Sends a channel NOTICE message to
Normally an IRC server will limit the number of different targets a client can send messages to within a certain time frame to prevent spammers or bots from mass-messaging users on the network, however this command can be used by channel operators to bypass that limit in their channel. For example, it is often used by help operators that may be communicating with a large number of users in a help channel at one time.
This command is not formally defined in an RFC, but is in use by some IRC networks. Support is indicated in a RPL_ISUPPORT reply with the CNOTICE keyword
CPRIVMSG
Syntax:Sends a private message to
Normally an IRC server will limit the number of different targets a client can send messages to within a certain time frame to prevent spammers or bots from mass-messaging users on the network, however this command can be used by channel operators to bypass that limit in their channel. For example, it is often used by help operators that may be communicating with a large number of users in a help channel at one time.
This command is not formally defined in an RFC, but is in use by some IRC networks. Support is indicated in a RPL_ISUPPORT reply with the CPRIVMSG keyword
CONNECT
Syntax:Instructs the server
This command should only be available to IRC operators. Defined in RFC 1459; the
DIE
Syntax:Instructs the server to shut down. This command may only be issued by IRC server operators. Defined in RFC 2812.
ENCAP
Syntax:This command is for use by servers to encapsulate commands so that they will propagate across hub servers not yet updated to support them, and indicates the subcommand and its parameters should be passed unaltered to the destination, where it will be unencapsulated and parsed. This facilitates implementation of new features without a need to restart all servers before they are usable across the network.
ERROR
Syntax:This command is for use by servers to report errors to other servers. It is also used before terminating client connections. Defined in RFC 1459.
HELP
Syntax:Requests the server to display the help file. This command is not formally defined in an RFC, but is in use by most major IRC daemons.
INFO
Syntax:Returns information about the
INVITE
Syntax:Invites
i
is set, only channel operators may invite other clients. Defined in RFC 1459.ISON
Syntax:Queries the server to see if the clients in the space-separated list
JOIN
Syntax:Makes the client join the channels in the comma-separated list
KICK
Syntax:Forcibly removes
KILL
Syntax:Forcibly removes
KNOCK
Syntax:Sends a NOTICE to an invitation-only
LINKS
Syntax:Lists all server links matching
LIST
Syntax:Lists all channels on the server. If the comma-separated list
LUSERS
Syntax:Returns statistics about the size of the network. If called with no arguments, the statistics will reflect the entire network. If
MODE
Syntax:The MODE command is dual-purpose. It can be used to set both user and channel modes. Defined in RFC 1459.
MOTD
Syntax:Returns the message of the day on
NAMES
Syntax:Returns a list of who is on the comma-separated list of
The response contains all nicknames in the channel prefixed with the highest channel status prefix of that user, for example like this
If a client wants to receive all the channel status prefixes of a user and not only their current highest one, the IRCv3 multi-prefix extension can be enabled :
See also NAMESX below for an alternate, older approach to achieve the same effect. However, by today most clients and servers support the new IRCv3 standard.
NAMESX
Syntax:Instructs the server to send names in an RPL_NAMES reply prefixed with all their respective channel statuses instead of just the highest one.
For example:
With NAMESX
Without NAMESX
This command can ONLY be used if the NAMESX keyword is returned in an RPL_ISUPPORT reply. It may also be combined with the UHNAMES command.
This command is not formally defined in an RFC, but is recognized by most major IRC daemons. The newer modern approach is to use IRCv3 protocol extensions to activate the multi-prefix extension for the regular NAMES command.
NICK
Syntax:Allows a client to change their IRC nickname. Hopcount is for use between servers to specify how far away a nickname is from its home server. Defined in RFC 1459; the optional
NOTICE
Syntax:This command works similarly to PRIVMSG, except automatic replies must never be sent in reply to NOTICE messages. Defined in RFC 1459.
OPER
Syntax:Authenticates a user as an IRC operator on that server/network. Defined in RFC 1459.
PART
Syntax:Causes a user to leave the channels in the comma-separated list
PASS
Syntax:Sets a connection password. This command must be sent before the NICK/USER registration combination. Defined in RFC 1459.
PING
Syntax:Tests the presence of a connection. A PING message results in a PONG reply. If
PONG
Syntax:This command is a reply to the PING command and works in much the same way. Defined in RFC 1459.
PRIVMSG
Syntax:Sends
QUIT
Syntax:Disconnects the user from the server. Defined in RFC 1459.
REHASH
Syntax:Causes the server to re-read and re-process its configuration file. This command can only be sent by IRC operators. Defined in RFC 1459.
RESTART
Syntax:Restarts a server. It may only be sent by IRC operator. Defined in RFC 1459.
RULES
Syntax:Requests the server rules. This command is not formally defined in an RFC, but is used by most major IRC daemons.
SERVER
Syntax:The server message is used to tell a server that the other end of a new connection is a server. This message is also used to pass server data over the whole network.
Defined in RFC 1459.
SERVICE
Syntax:Registers a new service on the network. Defined in RFC 2812.
SERVLIST
Syntax:Lists the services currently on the network. Defined in RFC 2812.
SQUERY
Syntax:Identical to PRIVMSG except the recipient must be a service. Defined in RFC 2812.
SQUIT
Syntax:Causes
SETNAME
Syntax:Allows a client to change the "real name" specified when registering a connection.
This command is not formally defined by an RFC, but is in use by some IRC daemons. Support is indicated in a RPL_ISUPPORT reply with the SETNAME keyword
SILENCE
Syntax:Adds or removes a host mask to a server-side ignore list that prevents matching users from sending the client messages. More than one mask may be specified in a space-separated list, each item prefixed with a "+" or "-" to designate whether it is being added or removed. Sending the command with no parameters returns the entries in the client's ignore list.
This command is not formally defined in an RFC, but is supported by most major IRC daemons. Support is indicated in a RPL_ISUPPORT reply with the SILENCE keyword and the maximum number of entries a client may have in its ignore list. For example:
STATS
Syntax:Returns statistics about the current server, or
SUMMON
Syntax:Gives users who are on the same host as
TIME
Syntax:Returns the local time on the current server, or
TOPIC
Syntax:Allows the client to query or set the channel topic on
TRACE
Syntax:Trace a path across the IRC network to a specific server or client, in a similar method to traceroute. Defined in RFC 1459.
UHNAMES
Syntax:Instructs the server to send names in an RPL_NAMES reply in the long format:
With UHNAMES
Without UHNAMES
This command can ONLY be used if the UHNAMES keyword is returned in an RPL_ISUPPORT reply. It may also be combined with the NAMESX command.
This command is not formally defined in an RFC, but is recognized by most major IRC daemons.
USER
Syntax:This command is used at the beginning of a connection to specify the username, hostname, real name and initial user modes of the connecting client.
USERHOST
Syntax:Returns a list of information about the nicknames specified. Defined in RFC 1459.
USERIP
Syntax:Requests the direct IP address of the user with the specified nickname. This command is often used to obtain the IP of an abusive user to more effectively perform a ban. It is unclear what, if any, privileges are required to execute this command on a server.
This command is not formally defined by an RFC, but is in use by some IRC daemons. Support is indicated in a RPL_ISUPPORT reply with the USERIP keyword.
USERS
Syntax:Returns a list of users and information about those users in a format similar to the UNIX commands who, rusers and finger. Defined in RFC 1459.
VERSION
Syntax:Returns the version of
WALLOPS
Syntax:Sends
WATCH
Syntax:Adds or removes a user to a client's server-side friends list. More than one nickname may be specified in a space-separated list, each item prefixed with a "+" or "-" to designate whether it is being added or removed. Sending the command with no parameters returns the entries in the client's friends list.
This command is not formally defined in an RFC, but is supported by most major IRC daemons. Support is indicated in a RPL_ISUPPORT reply with the WATCH keyword and the maximum number of entries a client may have in its friends list. For example:
WHO
Syntax:Returns a list of users who match
WHOIS
Syntax:Returns information about the comma-separated list of nicknames masks
WHOWAS
Syntax:Used to return information about a nickname that is no longer in use. If given, the server will return information from the last
Defined in RFC 1459.