IRC Commands

Quick Reference

The 10 most essential IRC commands every user should know. Master these and you can navigate any IRC network.

Top 10 essential IRC commands with descriptions and examples

Command Description Example
/join #channel Join a channel /join #twisted
/part #channel Leave a channel /part #twisted Goodbye!
/msg nick message Send a private message /msg Alice Hey there!
/nick newnick Change your nickname /nick CyberPunk
/whois nick Get info about a user /whois Alice
/quit message Disconnect from IRC /quit See you later!
/me action Perform an action /me waves hello
/topic #channel text Set channel topic /topic #twisted Welcome!
/kick #channel nick Kick a user (ops only) /kick #twisted troll Spam
/mode #channel +o nick Give operator status /mode #twisted +o Alice

Basic Commands

These fundamental commands handle everyday IRC communication. Every IRC user should be comfortable with these.

/join
Join a channel

terminal

> /join #twisted — Join the #twisted channel
> /join #secret secretkey — Join a password-protected channel
> /join #channel1,#channel2 — Join multiple channels at once

Joins the specified channel. If the channel does not exist, it will be created and you will be given operator status. You can join multiple channels separated by commas. If the channel has a key (password), provide it after the channel name.

/part
Leave a channel

terminal

> /part #twisted — Leave #twisted silently
> /part #twisted Later everyone! — Leave with a message

Leaves the specified channel. You can optionally include a part message that other users in the channel will see when you leave. If no channel is specified, some clients will leave the current active channel.

/quit
Disconnect from IRC

terminal

> /quit — Disconnect with default message
> /quit Goodnight, cyberspace. — Disconnect with custom message

Disconnects you from the IRC server entirely. Your quit message will be displayed to all users in channels you were in. If no message is provided, your client may use a default quit message.

/msg
Send a private message

terminal

> /msg Alice Hey, how’s it going? — Private message to Alice
> /msg NickServ IDENTIFY mypassword — Message a service

Sends a private message to the specified user or service. Only the recipient will see the message. This is also the command used to interact with IRC services like NickServ and ChanServ.

/notice
Send a notice

terminal

> /notice Alice Check out #help for assistance
> /notice #twisted Server maintenance at midnight

Similar to /msg, but sends a notice instead. Notices are typically displayed differently by clients (often in a status window rather than opening a new chat tab). By convention, bots and services use notices for replies to avoid creating message loops.

/nick
Change your nickname

terminal

> /nick CyberPunk — Change nick to CyberPunk
> /nick MyNick_away — Common convention for away status

Changes your current nickname. The new nickname must not already be in use on the network. Nicknames are typically limited to 30 characters and can contain letters, numbers, hyphens, underscores, and brackets. All users in your channels will see the nick change.

/me
Perform an action

terminal

> /me waves to everyone — Displays: * YourNick waves to everyone
> /me is hacking the mainframe — Displays: * YourNick is hacking the mainframe

Sends an action message to the current channel. Instead of appearing as a regular chat message, it displays as an action. For example, if your nick is “Neo”, typing “/me dodges bullets” would display as “* Neo dodges bullets” in the channel.

/away
Set away status

terminal

> /away Gone to grab coffee — Mark yourself as away
> /away — Remove away status (you’re back)

Marks you as “away” with an optional message. When someone tries to /msg you or /whois you, they will see your away message. To remove the away status and mark yourself as available again, use /away with no arguments. Some clients also support the /back command as a shortcut.

/whois
Get information about a user

terminal

> /whois Alice — Get info about Alice
> /whois Alice Alice — Double whois shows idle time

Displays information about a user including their hostname (or cloak), the channels they are in, their real name, the server they are connected to, and whether they are away. Using a “double WHOIS” (specifying the nick twice) also shows the user’s idle time and signon time.

/who
List users matching a pattern

terminal

> /who #twisted — List all users in #twisted
> /who *.twistednet.org — List users on a specific server

Returns a list of users matching the specified pattern. When used with a channel name, it lists all users currently in that channel along with their hostnames and status flags. Useful for seeing who is in a channel or finding users on the network.

/list
List available channels

terminal

> /list — List all public channels
> /list -min 5 — Channels with 5+ users (client-dependent)

Displays a list of all public channels on the network along with their user counts and topics. On large networks, this list can be very long. Many clients offer filtering options to narrow down the results. Secret (+s) channels will not appear in the list.

Channel Management Commands

Commands for channel operators to manage their channels. These require operator (@) or higher status in the channel.

/topic
View or set channel topic

terminal

> /topic #twisted — View the current topic
> /topic #twisted Welcome to TwistedNET! | Rules: Be cool.

Without arguments, displays the current topic for the channel. With a message, sets the channel topic. If the channel has mode +t set, only operators can change the topic. The pipe character (|) is commonly used as a separator in topics.

/kick
Remove a user from a channel

terminal

> /kick #twisted troll — Kick user ‘troll’ from #twisted
> /kick #twisted troll No spamming allowed! — Kick with reason

Removes the specified user from the channel. Requires channel operator status. The kicked user can rejoin unless they are also banned. An optional reason message can be included that will be displayed to the channel when the user is kicked.

/mode +b
Ban a user from a channel

terminal

> /mode #twisted +b troll!*@* — Ban by nickname
> /mode #twisted +b *!*@evil.host.com — Ban by hostname
> /mode #twisted -b troll!*@* — Remove a ban
> /mode #twisted +b — List all bans

Bans a user from joining or speaking in the channel. Bans use hostmasks in the format nick!user@host, with wildcards (*) for pattern matching. Note that banning does not kick the user; you typically want to kick them as well. Use -b to remove a ban, or +b with no argument to list current bans.

/invite
Invite a user to a channel

terminal

> /invite Alice #secret — Invite Alice to #secret

Sends an invitation to the specified user to join a channel. This is required for invite-only (+i) channels. The invited user will receive a notification and can then join the channel. On most networks, only channel operators can send invites to +i channels.

/mode
Set channel or user modes

terminal

> /mode #twisted +o Alice — Give Alice operator status
> /mode #twisted -o Alice — Remove Alice’s operator status
> /mode #twisted +v Bob — Give Bob voice (can talk in +m channels)
> /mode #twisted +i — Make channel invite-only
> /mode #twisted +m — Moderated: only voiced/ops can talk
> /mode #twisted +k secretpass — Set channel password
> /mode #twisted +l 50 — Limit channel to 50 users
> /mode #twisted +s — Secret: hidden from /list
> /mode #twisted +nt — No external msgs + topic lock

The /mode command is used to set and unset various channel and user modes. Use + to enable a mode and – to disable it. Multiple modes can be combined in a single command.

IRC channel modes reference with mode flags, names, and descriptions

Mode Name Description
+o Operator Gives/removes channel operator status (@)
+v Voice Gives/removes voice status (+), can speak in +m channels
+b Ban Bans a hostmask from joining or speaking
+i Invite Only Only invited users can join the channel
+m Moderated Only voiced (+v) and operators can send messages
+k Key Requires a password to join the channel
+l Limit Sets a maximum number of users in the channel
+n No External Prevents messages from users not in the channel
+t Topic Lock Only operators can change the channel topic
+s Secret Channel is hidden from /list and /whois

NickServ Commands

NickServ manages nickname registration and identification. All NickServ commands use the syntax: /msg NickServ COMMAND arguments

REGISTER
Register your nickname

NickServ

> /msg NickServ REGISTER mypassword [email protected]

Registers your current nickname with NickServ. You must provide a password and a valid email address. The email is used for password recovery and verification. Once registered, your nickname is protected and other users cannot use it while you are identified.

IDENTIFY
Identify to your registered nickname

NickServ

> /msg NickServ IDENTIFY mypassword
> /msg NickServ IDENTIFY mynick mypassword — Identify to a specific nick

Identifies you as the owner of your registered nickname. You should do this every time you connect to the network. Most IRC clients can be configured to automatically identify on connection using a “perform on connect” script or SASL authentication.

SET PASSWORD
Change your password

NickServ

> /msg NickServ SET PASSWORD newpassword

Changes the password for your registered nickname. You must be identified to use this command. Choose a strong password that you do not use on other services.

SET EMAIL
Change your registered email

NickServ

> /msg NickServ SET EMAIL [email protected]

Updates the email address associated with your registered nickname. Used for password recovery and important notifications from the network.

INFO
View registration info for a nickname

NickServ

> /msg NickServ INFO Alice — View Alice’s registration info
> /msg NickServ INFO — View your own info

Displays registration information for a nickname, including when it was registered, when it was last seen, and any metadata the owner has set. Some details may be hidden depending on the user’s privacy settings.

GHOST
Disconnect a stale session using your nick

NickServ

> /msg NickServ GHOST mynick mypassword

Disconnects an old or “ghost” session that is still using your registered nickname. This is useful when you get disconnected and your old session has not timed out yet, preventing you from using your nick. After ghosting, you can then change to your preferred nick with /nick.

GROUP
Group a nickname to your account

NickServ

> /nick MyAltNick — First switch to the alt nick
> /msg NickServ GROUP — Group it to your account

Links an additional nickname to your primary registered account. You must be identified to your main account first, then switch to the new nickname and use GROUP to link it. This lets you own multiple nicknames under one account with shared settings and access privileges.

DROP
Unregister a nickname

NickServ

> /msg NickServ DROP mynick — Drop a grouped nick
> /msg NickServ DROP — Drop your current nick

Unregisters a nickname, making it available for anyone to use. If the nickname is grouped to your account, it will be unlinked. Use this with caution, as the action cannot be undone. You will need to re-register the nickname if you want it back.

ChanServ Commands

ChanServ manages channel registration and persistent settings. All ChanServ commands use the syntax: /msg ChanServ COMMAND #channel arguments

REGISTER
Register a channel

ChanServ

> /msg ChanServ REGISTER #mychannel

Registers a channel with ChanServ. You must be in the channel and have operator status. Your registered NickServ account becomes the channel founder, giving you full control over the channel settings and access list. Registration prevents the channel from being taken over and preserves settings across network restarts.

SET
Configure channel settings

ChanServ

> /msg ChanServ SET #twisted DESCRIPTION A community channel
> /msg ChanServ SET #twisted GUARD ON — ChanServ stays in channel
> /msg ChanServ SET #twisted KEEPTOPIC ON — Preserve topic on restart
> /msg ChanServ SET #twisted URL https://twistednet.org

Configures various persistent settings for your registered channel. Common settings include GUARD (keeps ChanServ present in the channel), KEEPTOPIC (preserves the topic across restarts), DESCRIPTION (sets a channel description), and URL (sets a channel URL). Available settings vary by network.

ACCESS
Manage channel access list

ChanServ

> /msg ChanServ ACCESS #twisted ADD Alice OP — Give Alice auto-op
> /msg ChanServ ACCESS #twisted ADD Bob VOICE — Give Bob auto-voice
> /msg ChanServ ACCESS #twisted DEL Alice — Remove Alice’s access
> /msg ChanServ ACCESS #twisted LIST — View access list

Manages the channel access list, which controls who gets automatic privileges when they join. You can grant users roles like VOICE (auto-voice), OP (auto-op), or higher levels. Users must be registered with NickServ and identified to receive their automatic privileges.

OP / DEOP
Give or remove operator status via ChanServ

ChanServ

> /msg ChanServ OP #twisted Alice — Op Alice
> /msg ChanServ DEOP #twisted Alice — Deop Alice
> /msg ChanServ OP #twisted — Op yourself

Grants or removes channel operator status through ChanServ. This is useful when you need ops but do not have them (for example, if you just joined and auto-op is not configured). You must have sufficient access on the channel’s access list to use these commands.

KICK / BAN
Kick or ban users via ChanServ

ChanServ

> /msg ChanServ KICK #twisted troll Bye!
> /msg ChanServ BAN #twisted troll — Ban a user
> /msg ChanServ UNBAN #twisted troll — Remove a ban

Kicks or bans users through ChanServ without needing to be opped in the channel yourself. ChanServ will perform the action on your behalf if you have sufficient access. This is convenient when you want to moderate without visibly being an operator.

TOPIC
Set channel topic via ChanServ

ChanServ

> /msg ChanServ TOPIC #twisted Welcome to TwistedNET!

Sets the channel topic through ChanServ. The topic will be set even if the channel has mode +t and you are not currently opped. Requires appropriate access on the channel’s access list.

INFO
View channel registration info

ChanServ

> /msg ChanServ INFO #twisted

Displays registration information for a channel, including the founder, registration date, description, URL, and current settings. Useful for checking who owns a channel and how it is configured.

Advanced Commands

Power-user commands for those who want to dig deeper into the IRC protocol.

/ctcp
Client-to-client protocol

terminal

> /ctcp Alice VERSION — Query Alice’s IRC client version
> /ctcp Alice PING — Measure latency to Alice
> /ctcp Alice TIME — Query Alice’s local time

CTCP (Client-to-Client Protocol) allows you to send special queries to other users. Common CTCP queries include VERSION (what client they are using), PING (measure round-trip latency), and TIME (their local time). The remote client responds automatically. Some users disable CTCP responses for privacy.

/dcc
Direct client-to-client connections

terminal

> /dcc send Alice file.txt — Send a file to Alice
> /dcc chat Alice — Open a direct chat with Alice

DCC (Direct Client-to-Client) establishes a direct connection between two users, bypassing the IRC server. DCC SEND transfers files directly, while DCC CHAT creates a private chat that does not go through the server. Note that DCC requires direct network connectivity and may not work behind certain firewalls or NAT configurations.

/oper
Authenticate as an IRC operator

terminal

> /oper username password — Authenticate as IRC operator

Authenticates you as an IRC operator (IRCop) on the server. This is only available to network administrators who have been given operator credentials in the server configuration. IRCops have network-wide powers including the ability to kill connections, set network bans (K-lines), and manage servers.

/wallops
Send a message to all operators

terminal

> /wallops Server maintenance in 10 minutes

Sends a network-wide message to all users who have user mode +w (wallops) set. Typically used by IRC operators for network announcements. Regular users can set +w to receive wallops messages but cannot send them unless they are opered.

/server
Connect to a different server

terminal

> /server irc.twistednet.org 6697 — Connect to TwistedNET
> /server -ssl irc.twistednet.org 6697 — With SSL (client-dependent)

Connects to a different IRC server. This will typically disconnect you from your current server. The exact syntax may vary between IRC clients. Some clients use /server for switching and offer a separate command for connecting to additional networks without disconnecting from the current one.

Tips & Tricks

1

Tab Completion

Press Tab after typing the first few letters of a nickname to auto-complete it. This works in most IRC clients and saves time, especially with long nicknames. It also prevents typos.

2

Ignore Annoying Users

Use /ignore nick to block messages from a user. This is a client-side setting that hides all messages from the specified user. Most clients also support ignoring by hostmask for more precise filtering.

3

Auto-Identify on Connect

Configure your client to automatically identify with NickServ when you connect. Most clients have a “perform on connect” setting where you can add /msg NickServ IDENTIFY password. Even better, use SASL authentication for seamless login.

4

Always Use SSL

Always connect using SSL/TLS on port 6697. This encrypts your connection between your client and the server, preventing eavesdropping on your messages and protecting your login credentials from being intercepted.

5

Use a Bouncer for Persistence

Set up an IRC bouncer like ZNC to stay connected 24/7 and keep message history. When you disconnect, the bouncer stays online and records messages. When you reconnect, you see everything you missed. TwistedNET also offers CryptIRC as a persistent web client.

6

Enable User Mode +x

Use /mode yournick +x to enable hostname cloaking (if supported). This replaces your real hostname with a cloaked version in /whois queries, adding an extra layer of privacy by hiding your IP address or ISP from other users.

Practice on TwistedNET

Put these commands to use! Connect to TwistedNET and start chatting. The best way to learn IRC is by doing it.

Connect Now
What is IRC?