Set modes with /mode <target> +/-<modes>. You can stack multiple modes in one command: /mode #channel +mnt.
User modes
Set them on yourself with /mode yournick +mode. You get +iwx automatically when you connect.
| Mode | Name | Description |
| +i | Invisible | Hides you from /who listings unless the viewer shares a channel with you. On by default. |
| +x | Cloaked host | Shows a scrambled version of your host instead of your real IP or hostname. On by default. A HostServ vhost replaces the cloak. |
| +w | Wallops | Receive wallop broadcast messages sent by IRC operators. On by default. |
| +R | Registered PMs only | Only users identified to NickServ can send you private messages. Good against PM spam. /mode yournick +R |
| +D | No private messages | Blocks all private messages. IRC operators and services can still reach you. |
| +T | No CTCP | Blocks CTCP requests like VERSION, TIME and PING. |
| +Z | TLS-only PMs | Private messages only work with users who are also connected over TLS. |
| +d | Deaf | You stop receiving channel messages. Private messages still come through. Mostly useful for bots. |
| +p | Hide channels | Hides the channels you're in from /whois. |
| +G | Censor | Replaces words from the network's bad words list in messages you receive. |
| +B | Bot | Marks your client as a bot. Shows up in /whois and /who so users know they're talking to an automated account. If you run a bot, set this. /mode botnick +B |
User modes set for you
You'll see these in your mode list, but the server or services set them. You can't set them yourself.
| Mode | Name | Description |
| +r | Registered | You're identified to NickServ. |
| +z | Secure connection | You're connected over TLS. |
| +t | Vhost | You're using a vhost from HostServ. |
| +o | IRC Operator | Global operator privileges. Set by the server after /oper. |
Channel modes: access control
New channels start with +nt.
| Mode | Name | Description |
| +i | Invite only | Users must be invited to join. Use /invite nick #channel or ChanServ INVITE. |
| +k <key> | Key | Requires a password to join. Users connect with /join #channel key. /mode #channel +k secret |
| +l <limit> | User limit | Caps the number of users who can be in the channel at once. /mode #channel +l 50 |
| +L <#channel> | Overflow redirect | When the channel is full (+l), new users get sent to another channel instead. /mode #channel +L #channel-overflow |
| +R | Registered users only | Only users identified to NickServ can join. |
| +z | TLS only | Only users connected over TLS can join. |
| +b <mask> | Ban | Ban users matching the mask from joining. Mask format: nick!user@host. See extended bans for matching by account or muting people. /mode #channel +b *!*@bad.host |
| +e <mask> | Ban exception | Allows a matching user through a ban. Useful for excepting a specific user from a broad ban mask. |
| +I <mask> | Invite exception | Users matching the mask can join a +i channel without an invite. /mode #channel +I ~account:alice |
Channel modes: talking
| Mode | Name | Description |
| +n | No external messages | Users must be in the channel to send messages to it. |
| +t | Topic protection | Only ops can change the channel topic. |
| +m | Moderated | Only voiced users and ops can send messages to the channel. |
| +M | Registered to talk | Only users identified to NickServ can talk. Voiced users and ops can always talk. |
| +c | No colors | Blocks messages that contain color codes. |
| +S | Strip colors | Removes color codes from messages instead of blocking them. |
| +C | No CTCP | Blocks CTCPs sent to the channel. /me still works. |
| +T | No notices | Blocks notices sent to the channel. |
| +G | Censor | Replaces words from the network's bad words list with <censored>. |
Channel modes: visibility and behaviour
| Mode | Name | Description |
| +s | Secret | Channel is hidden from /list and won't appear in /whois channel lists. |
| +p | Private | Channel is marked private. Shown as * in /whois instead of the channel name. |
| +D | Delayed join | Users don't show up in the user list until they say something. |
| +N | No nick changes | Users can't change their nick while they're in the channel. |
| +K | No knock | Blocks /knock requests to an invite-only channel. |
| +V | No invites | Nobody can use /invite for this channel. |
| +Q | No kicks | Regular /kick stops working. Kicks through ChanServ still work. |
Channel modes: flood protection
| Mode | Name | Description |
| +F <profile> | Flood profile | Picks a ready-made flood protection profile, like normal, strict or relaxed. The full list is in the UnrealIRCd docs. /mode #channel +F strict |
| +f <settings> | Custom flood limits | Fine-tuned limits for when the profiles don't fit. This example sets +i if 10 users join within 15 seconds. Type /helpop chmodef for all the options. /mode #channel +f [10j]:15 |
Channel modes: history
| Mode | Name | Description |
| +H <lines>:<duration> | History | Enables channel history. Stores up to the specified number of lines for the given duration. Duration supports m (minutes), h (hours), d (days). IRCv3 capable clients receive history automatically on join. Network limits: registered channels max 150 lines / 7 days, unregistered channels max 25 lines / 1 day. On join playback is capped at 125 lines and 3 days regardless of what the channel is set to. Operator-only. Think about whether your users actually want their messages stored before requesting this. History is kept in memory only, never written to disk, and is lost if the server restarts or crashes. Ask in #ircworld if you want it enabled on your channel. /mode #channel +H 150:7d |
To fetch history manually, use HISTORY #channel <lines>. IRCv3 clients that support
server-time and batch capabilities can also use the full
CHATHISTORY command for more precise retrieval. Most modern clients handle this automatically.
Channel modes set for you
Services, the server or IRC operators set these.
| Mode | Name | Description |
| +r | Registered | The channel is registered with ChanServ. |
| +P | Permanent | The channel stays open when empty. ChanServ sets this when you turn on SET PERSIST. |
| +Z | All on TLS | Everyone in a +z channel is connected over TLS. |
| +O | Operators only | Only IRC operators can join. |
Channel modes: user status
These are set on a specific user in the channel, not on the channel itself. ChanServ can hand them out automatically, see FLAGS.
| Mode | Name | Description |
| +q <nick> | Owner | Channel owner (~). Usually the founder. Can do everything an op can, and ops can't kick or deop them. |
| +a <nick> | Admin / protected | Protected op (&). Regular ops can't kick or deop them. |
| +o <nick> | Operator | Gives channel operator status (@). Full channel control. /mode #channel +o nick |
| +h <nick> | Half-operator | Gives half-op status (%). Can kick, ban, and voice, but can't op others. |
| +v <nick> | Voice | Gives voice status (+). Allows speaking in a moderated (+m) channel. /mode #channel +v nick |
Extended bans
Use these in place of a normal mask with +b, +e or +I.
| Ban | Name | Description |
| ~account:<name> | Account | Matches whoever is logged in to that NickServ account, whatever nick or host they're on. /mode #channel +b ~account:spammer |
| ~quiet:<mask> | Quiet | Matching users can stay in the channel but can't talk. /mode #channel +b ~quiet:*!*@noisy.host |
| ~time:<minutes>:<mask> | Timed ban | The ban removes itself after the given number of minutes. /mode #channel +b ~time:30:*!*@bad.host |
Quick reference
| Command | Description |
/mode #channel | View current modes set on a channel. |
/mode yournick | View your current user modes. |
/who #channel | List users in a channel with their status modes. |
/mode #channel +mnt | Stack multiple modes in one command. |
/mode #channel -m | Remove a mode (prefix with - instead of +). |
/mode #channel +b | List all active bans on the channel. |
/mode #channel -b *!*@host | Remove a specific ban. |
/mode #channel +k secret | Set a channel key (password). Remove with /mode #channel -k *. |
/mode #channel +o+v nick1 nick2 | Apply multiple modes to multiple users in one command. |
/mode yournick +R | Only accept private messages from users identified to NickServ. |
/mode #channel +b ~quiet:*!*@host | Mute someone without kicking them. |