List of Internet Relay Chat commands

From Wikipedia, the free encyclopedia
Jump to: navigation, search

This is a list of all Internet Relay Chat commands from IETF RFCs 1459 and 2812. Most IRC clients need commands to have a slash ("/") before the command. Angle brackets ("<" and ">") mean what's placed in the secondary field, not a literal part of the command. Settings encapsulated in square brackets ("[" and "]") are optional and override the command's defaults.

User commands[change | edit source]

ADMIN[change | edit source]

Syntax:

ADMIN [<server>]

Instructs the server to return information about the administrator of the server specified by <target>, or the current server if target is omitted.[1]

Defined in RFC 1459

AWAY[change | edit source]

Syntax:

AWAY [<message>]

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.[2] If <message> is omitted, the away status is removed.

Defined in RFC 1459

CONNECT[change | edit source]

Syntax:

CONNECT <target server> [<port> [<remote server>]] (RFC 1459)
CONNECT <target server> <port> [<remote server>] (RFC 2812)

Instructs the server <remote server> (or the current server, if <remote server> is omitted) to connect to <target server> on port <port>.[3][4] This command should only be available to IRC Operators.

Defined in RFC 1459; the <port> parameter became mandatory in RFC 2812

DIE[change | edit source]

Syntax:

DIE

Instructs the server to shut down.[5]

Defined in RFC 2812

ERROR[change | edit source]

Syntax:

ERROR <error message>

This command is for use by servers to report errors to other servers. It is also used before terminating client connections.[6]

Defined in RFC 1459

INFO[change | edit source]

Syntax:

INFO [<target>]

Returns information about the <target> server, or the current server if <target> is omitted.[7] Information returned includes the server's version, when it was compiled, the patch level, when it was started, and any other information which may be considered to be relevant.

Defined in RFC 1459

INVITE[change | edit source]

Syntax:

INVITE <nickname> <channel>

Invites <nickname> to the channel <channel>.[8] <channel> does not have to exist, but if it does, only members of the channel are allowed to invite other clients. If the channel mode i is set, only channel operators may invite other clients.

Defined in RFC 1459

ISON[change | edit source]

Syntax:

ISON <nicknames>

Queries the server to see if the clients in the space-separated list <nicknames> are currently on the network.[9] The server returns only the nicknames that are on the network in a space-separated list. If none of the clients are on the network the server returns an empty list.

Defined in RFC 1459

JOIN[change | edit source]

Syntax:

JOIN <channels> [<keys>]

Makes the client join the channels in the comma-separated list <channels>, specifying the passwords, if needed, in the comma-separated list <keys>.[10] If the channel(s) do not exist then they will be created.

Defined in RFC 1459

KICK[change | edit source]

Syntax:

KICK <channel> <client> [<message>]

Forcibly removes <client> from <channel>.[11] This command may only be issued by channel operators.

Defined in RFC 1459

KILL[change | edit source]

Syntax:

KILL <client> <comment>

Forcibly removes <client> from the network.[12] This command may only be issued by IRC operators.

Defined in RFC 1459

LINKS[change | edit source]

Syntax:

LINKS [<remote server> [<server mask>]]

Lists all server links matching <server mask>, if given, on <remote server>, or the current server if omitted.[13]

Defined in RFC 1459

LIST[change | edit source]

Syntax:

LIST [<channels> [<server>]]

Lists all channels on the server.[14] If the comma-separated list <channels> is given, it will return the channel topics. If <server> is given, the command will be forwarded to <server> for evaluation.

Defined in RFC 1459

LUSERS[change | edit source]

Syntax:

LUSERS [<mask> [<server>]]

Returns statistics about the size of the network.[15] If called with no arguments, the statistics will reflect the entire network. If <mask> is given, it will return only statistics reflecting the masked subset of the network. If <target> is given, the command will be forwarded to <server> for evaluation.

Defined in RFC 2812

MODE[change | edit source]

Syntax:

MODE <nickname> <flags> (user)
MODE <channel> <flags> [<args>]

The MODE command is dual-purpose. It can be used to set both user and channel modes.[16]

Defined in RFC 1459

MOTD[change | edit source]

Syntax:

MOTD [<server>]

Returns the message of the day on <server> or the current server if it is omitted.[17]

Defined in RFC 2812

NAMES[change | edit source]

Syntax:

NAMES [<channels>] (RFC 1459)
NAMES [<channels> [<server>]] (RFC 2812)

Returns a list of who is on the comma-separated list of <channels>, by channel name.[18] If <channels> is omitted, all users are shown, grouped by channel name with all users who are not on a channel being shown as part of channel "*". If <server> is specified, the command is sent to <server> for evaluation.[19]

Defined in RFC 1459; the optional <server> parameter was added in RFC 2812

NICK[change | edit source]

Syntax:

NICK <nickname> [<hopcount>] (RFC 1459)
NICK <nickname> (RFC 2812)

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.[20][21]

Defined in RFC 1459; the optional <hopcount> parameter was removed in RFC 2812

NOTICE[change | edit source]

Syntax:

NOTICE <msgtarget> <message>

This command works similarly to PRIVMSG, except automatic replies must never be sent in reply to NOTICE messages.[22]

Defined in RFC 1459

OPER[change | edit source]

Syntax:

OPER <username> <password>

Authenticates a user as an IRC operator on that server/network.[23]

Defined in RFC 1459

PART[change | edit source]

Syntax:

PART <channels>

Causes a user to leave the channels in the comma-separated list <channels>.[24]

Defined in RFC 1459

PASS[change | edit source]

Syntax:

PASS <password>

Sets a connection password.[25] This command must be sent before the NICK/USER registration combination.

Defined in RFC 1459

PING[change | edit source]

Syntax:

PING <server1> [<server2>]

Tests the presence of a connection.[26] A PING message results in a PONG reply. If <server2> is specified, the message gets passed on to it.

Defined in RFC 1459

PONG[change | edit source]

Syntax:

PONG <server2> [<server2>]

This command is a reply to the PING command and works in much the same way.[27]

Defined in RFC 1459

PRIVMSG[change | edit source]

Syntax:

PRIVMSG <msgtarget> <message>

Sends <message> to <msgtarget>, which is usually a user or channel.[28]

Defined in RFC 1459

QUIT[change | edit source]

Syntax:

QUIT [<message>]

Disconnects the user from the server.[29]

Defined in RFC 1459

REHASH[change | edit source]

Syntax:

REHASH

Causes the server to re-read and re-process its configuration file(s).[30] This command can only be sent by IRC Operators.

Defined in RFC 1459

RESTART[change | edit source]

Syntax:

RESTART

Restarts a server.[31] It may only be sent by IRC Operators.

Defined in RFC 1459

SERVICE[change | edit source]

Syntax:

SERVICE <nickname> <reserved> <distribution> <type> <reserved> <info>

Registers a new service on the network.[32]

Defined in RFC 2812

SERVLIST[change | edit source]

Syntax:

SERVLIST [<mask> [<type>]]

Lists the services currently on the network.[33]

Defined in RFC 2812

SERVER[change | edit source]

Syntax:

SERVER <servername> <hopcount> <info>

The server message is used to tell a server that the other end of a new connection is a server.[34] This message is also used to pass server data over whole net. <hopcount> details how many hops (server connections) away <servername> is. <info> contains addition human-readable information about the server.

Defined in RFC 1459

SQUERY[change | edit source]

Syntax:

SQUERY <servicename> <text>

Identical to PRIVMSG except the recipient must be a service.[35]

Defined in RFC 2812

SQUIT[change | edit source]

Syntax:

SQUIT <server> <comment>

Causes <server> to quit the network.[36]

Defined in RFC 1459

STATS[change | edit source]

Syntax:

STATS <query> [<server>]

Returns statistics about the current server, or <server> if it's specified.[37]

Defined in RFC 1459

SUMMON[change | edit source]

Syntax:

SUMMON <user> [<server>] (RFC 1459)
SUMMON <user> [<server> [<channel>]] (RFC 2812)

Gives users who are on the same host as <server> a message asking them to join IRC.[38][39]

Defined in RFC 1459; the optional <channel> parameter was added in RFC 2812

TIME[change | edit source]

Syntax:

TIME [<server>]

Returns the local time on the current server, or <server> if specified.[40]

Defined in RFC 1459

TOPIC[change | edit source]

Syntax:

TOPIC <channel> [<topic>]

Allows the client to query or set the channel topic on <channel>.[41] If <topic> is given, it sets the channel topic to <topic>. If channel mode +t is set, only a channel operator may set the topic.

Defined in RFC 1459

TRACE[change | edit source]

Syntax:

TRACE [<target>]

Trace a path across the IRC network to a specific server or client, in a similar method to traceroute.[42]

Defined in RFC 1459

USER[change | edit source]

Syntax:

USER <username> <hostname> <servername> <realname> (RFC 1459)
USER <user> <mode> <unused> <realname> (RFC 2812)

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.[43][44] <realname> may contain spaces, and thus must be prefixed with a colon.

Defined in RFC 1459, modified in RFC 2812

USERHOST[change | edit source]

Syntax:

USERHOST <nickname> [<nickname> <nickname> ...]

Returns a list of information about the nicknames specified.[45]

Defined in RFC 1459

USERS[change | edit source]

Syntax:

USERS [<server>]

Returns a list of users and information about those users in a format similar to the UNIX commands who, rusers and finger.[46]

Defined in RFC 1459

VERSION[change | edit source]

Syntax:

VERSION [<server>]

Returns the version of <server>, or the current server if omitted.[47]

Defined in RFC 1459

WALLOPS[change | edit source]

Syntax:

WALLOPS <message>

Sends <message> to all operators connected to the server (RFC 1459), or all users with user mode 'w' set (RFC 2812).[48][49]

Defined in RFC 1459

WHO[change | edit source]

Syntax:

WHO [<name> ["o"]]

Returns a list of users who match <name>.[50] If the flag "o" is given, the server will only return information about IRC Operators.

Defined in RFC 1459

WHOIS[change | edit source]

Syntax:

WHOIS [<server>] <nicknames>

Returns information about the comma-separated list of nicknames masks <nicknames>.[51] If <server> is given, the command is forwarded to it for processing.

Defined in RFC 1459

WHOWAS[change | edit source]

Syntax:

WHOWAS <nickname> [<count> [<server>]]

Used to return information about a nickname that is no longer in use (due to client disconnection, or nickname changes).[52] If given, the server will return information from the last <count> times the nickname has been used. If <server> is given, the command is forwarded to it for processing. In RFC 2812, <nickname> can be a comma-separated list of nicknames.[53]

Defined in RFC 1459

Other pages[change | edit source]

References[change | edit source]

  1. "Admin command". p. 31. sec. 4.3.7. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.7.
  2. "Away". pp. 38– 39. sec. 5.1. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.1.
  3. "Connect message". pp. 29– 30. sec. 4.3.5. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.5.
  4. "Connect message". pp. 28– 29. sec. 3.4.7. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.4.7.
  5. "Die message". p. 39. sec. 4.3. RFC 2812. http://tools.ietf.org/html/rfc2812#section-4.3.
  6. "Error". p. 38. sec. 4.6.4. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.6.4.
  7. "Info command". pp. 31– 32. sec. 4.3.8. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.8.
  8. "Invite message". p. 25. sec. 4.2.7. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.7.
  9. "Ison message". p. 42. sec. 5.8. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.8.
  10. "Join message". pp. 19– 20. sec. 4.2.1. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.1.
  11. "Kick command". pp. 25– 26. sec. 4.2.8. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.8.
  12. "Kill message". p. 36. sec. 4.6.1. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.6.1.
  13. "Links message". pp. 28– 29. sec. 4.3.3. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.3.
  14. "List message". pp. 24– 25. sec. 4.2.6. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.6.
  15. "Lusers message". pp. 25– 26. sec. 3.4.2. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.4.2.
  16. "Mode message". pp. 21– 23. sec. 4.2.3. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.3.
  17. "Motd message". p. 25. sec. 3.4.1. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.4.1.
  18. "Names message". p. 24. sec. 4.2.5. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.5.
  19. "Names message". pp. 20– 21. sec. 3.2.5. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.2.5.
  20. "Nick message". pp. 14– 15. sec. 4.1.2. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.1.2.
  21. "Nick message". pp. 10– 11. sec. 3.1.2. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.1.2.
  22. "Notice". p. 33. sec. 4.4.2. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.4.2.
  23. "Oper". p. 17. sec. 4.1.5. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.1.5.
  24. "Part message". pp. 20– 21. sec. 4.2.2. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.2.
  25. "Password message". p. 14. sec. 4.1.1. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.1.1.
  26. "Ping message". p. 37. sec. 4.6.2. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.6.2.
  27. "Pong message". pp. 37– 38. sec. 4.6.3. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.6.3.
  28. "Private messages". pp. 32– 33. sec. 4.4.1. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.4.1.
  29. "Quit". pp. 17– 18. sec. 4.1.6. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.1.6.
  30. "Rehash message". p. 39. sec. 5.2. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.2.
  31. "Restart message". pp. 39– 40. sec. 5.3. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.3.
  32. "Service message". pp. 13– 14. sec. 3.1.6. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.1.6.
  33. "Servlist message". p. 31. sec. 3.5.1. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.5.1.
  34. "Server message". pp. 16– 17. sec. 4.1.4. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.1.4.
  35. "Squery". p. 32. sec. 3.5.2. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.5.2.
  36. "Server quit message". pp. 18– 19. sec. 4.1.7. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.1.7.
  37. "Stats message". pp. 27– 28. sec. 4.3.2. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.2.
  38. "Summon message". p. 40. sec. 5.4. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.4.
  39. "Summon message". p. 40. sec. 4.5. RFC 2812. http://tools.ietf.org/html/rfc2812#section-4.5.
  40. "Time message". p. 29. sec. 4.3.4. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.4.
  41. "Topic message". pp. 23– 24. sec. 4.2.4. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.2.4.
  42. "Trace message". pp. 30– 31. sec. 4.3.6. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.6.
  43. "User message". pp. 15– 16. sec. 4.1.3. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.1.3.
  44. "User message". p. 11. sec. 3.1.3. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.1.3.
  45. "Userhost message". p. 42. sec. 5.7. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.7.
  46. "Users". pp. 40– 41. sec. 5.5. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.5.
  47. "Version message". pp. 26– 27. sec. 4.3.1. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.3.1.
  48. "Operwall message". p. 41. sec. 5.6. RFC 1459. http://tools.ietf.org/html/rfc1459#section-5.6.
  49. "Operwall message". pp. 41– 42. sec. 4.7. RFC 2812. http://tools.ietf.org/html/rfc2812#section-4.7.
  50. "Who query". pp. 33– 34. sec. 4.5.1. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.5.1.
  51. "Whois query". pp. 34– 35. sec. 4.5.2. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.5.2.
  52. "Whowas". p. 35. sec. 4.5.3. RFC 1459. http://tools.ietf.org/html/rfc1459#section-4.5.3.
  53. "Whowas". p. 34. sec. 3.6.3. RFC 2812. http://tools.ietf.org/html/rfc2812#section-3.6.3.

Bibliography[change | edit source]

Further reading[change | edit source]