Freenode
irc.freenode.netircd-seven-1.0.1 - Atheme IRC Services
Freenode ChanServ Commands
ChanServ
Atheme IRC Services
ChanServ gives normal users the ability to maintain control
of a channel, without the need of a bot. Channel takeovers are
virtually impossible when a channel is registered with ChanServ.
Registration is a quick and painless process. Once registered,
the founder can maintain complete and total control over the channel.
Please note that channels will expire if there are no eligible channel successors.
Successors are primarily those who have the +R flag
set on their account in the channel, although other
people may be chosen depending on their access
level and activity.
For more information on a command, type:
/msg ChanServ help <command>
For a verbose listing of all commands, type:
/msg ChanServ help commands
ChanServ Commands
| Help | Flags | Access | Akick |
| Taxonomy | Getkey | Unban | Op|DeOp|Voice|DeVoice |
| Template | Recover | Topic | Topicprepend |
| Register | Drop | Set | Quiet |
| Info | Invite | Why | Clear |
| Count | Status | Topicappend | Unquiet |
HELP
Displays contextual help information.
HELP displays help information on all
commands in services.
Syntax: HELP <command> [parameters]
Examples:
/msg ChanServ HELP REGISTER
/msg ChanServ HELP SET VERBOSE
REGISTER
Registers a channel.
REGISTER allows you to register a channel
so that you have better control. Registration
allows you to maintain a channel access list
and other functions that are normally
provided by IRC bots.
Syntax: REGISTER <#channel>
Example:
/msg ChanServ REGISTER #atheme
FLAGS
Manipulates specific permissions on a channel.
The FLAGS command allows for the granting/removal of channel
privileges on a more specific, non-generalized level. It
supports both nicknames and hostmasks as targets.
When only the channel argument is given, a listing of
permissions granted to users will be displayed.
Syntax: FLAGS <#channel>
Otherwise, an access entry is modified. A modification may be
specified by a template name (changes the access to the
template) or a flags change (starts with + or -). See the
TEMPLATE help entry for more information about templates.
If you are not a founder, you may only manipulate flags you
have yourself, and may not edit users that have flags you
don't have. For this purpose, +v grants +V, +h grants +H,
+o grants +O and +r grants +b.
If you do not have +f you may still remove your own access
with -*.
Syntax: FLAGS <#channel> [nickname|hostmask template]
Syntax: FLAGS <#channel> [nickname|hostmask flag_changes]
Permissions:
+v - Enables use of the voice/devoice commands.
+V - Enables automatic voice.
+o - Enables use of the op/deop commands.
+O - Enables automatic op.
+s - Enables use of the set command.
+i - Enables use of the invite and getkey commands.
+r - Enables use of the kick, ban, and kickban commands.
+R - Enables use of the recover and clear commands.
+f - Enables modification of channel access lists.
+t - Enables use of the topic and topicappend commands.
+A - Enables viewing of channel access lists.
+F - Grants full founder access.
+b - Enables automatic kickban.
The special permission +* adds all permissions except +b and +F.
The special permission -* removes all permissions including +b and +F.
Examples:
/msg ChanServ FLAGS #foo
/msg ChanServ FLAGS #foo foo!*@bar.com VOP
/msg ChanServ FLAGS #foo foo!*@bar.com -V+oO
/msg ChanServ FLAGS #foo foo!*@bar.com -*
/msg ChanServ FLAGS #foo foo +oOtsi
/msg ChanServ FLAGS #foo TroubleUser!*@*.troubleisp.net +b
DROP
Drops a channel registration.
DROP allows you to "unregister" a registered channel.
Once you DROP a channel all of the data associated
with it (access lists, etc) are removed and cannot
be restored.
See help on SET FOUNDER and FLAGS for transferring
a channel to another user.
Syntax: DROP <#channel>
Example:
/msg ChanServ DROP #foo
ACCESS
Manipulates channel access lists.
The ACCESS command allows displaying and changing
privileges on channels.
The LIST subcommand displays a list of users and
their privileges.
Syntax: ACCESS <#channel> LIST
The ADD subcommand adds a user to the access list
or changes their privileges if they were already on
the access list.
If the level field is specified, it specifies the
privileges to grant, see the FLAGS and TEMPLATE
help files. If not, the user will be given
privileges appropriate for day-to-day management
of the channel.
Syntax: ACCESS <#channel> ADD <nickname> [level]
The DEL subcommand removes a user from the access list.
Syntax: ACCESS <#channel> DEL <nickname>
Examples:
/msg ChanServ ACCESS #foo LIST
/msg ChanServ ACCESS #foo ADD bar OP
/msg ChanServ ACCESS #foo DEL bar
See also: FLAGS, TEMPLATE
SET
Sets various control flags.
SET allows you to set various control flags
for channels that change the way certain
operations are performed on them.
For more specific help use /msg ChanServ HELP SET command.
The following subcommands are available:
FOUNDER
SET FOUNDER allows you to set a new founder
of the channel. The new founder has to
execute the same command to confirm the
transfer.
Syntax: SET <#channel> FOUNDER <newnick>
If the new founder has not yet confirmed the
transfer, you can cancel it by specifying
your own nick as the new founder.
Syntax: SET <#channel> FOUNDER <yournick>
Example:
/msg ChanServ SET #foo FOUNDER bar
MLOCK
MLOCK (or "mode lock") allows you to enforce a set
of modes on a channel. This can prevent abuse in cases
such as +kl. It can also make it harder to fight evil
bots, be careful. Locked modes can be seen by anyone
recreating the channel (this includes keys).
Syntax: SET <#channel> MLOCK <modes>
Examples:
(some may use modes your ircd does not support)
/msg ChanServ SET #foo MLOCK +nt-lk
/msg ChanServ SET #foo MLOCK +inst-kl
/msg ChanServ SET #c MLOCK +ntk c
/msg ChanServ SET #foo MLOCK +ntcjf-kl 2:30 #overflow
/msg ChanServ SET #overflow MLOCK +mntF-kljf
/msg ChanServ SET #foo1 MLOCK +ntlL 40 #foo2
/msg ChanServ SET #foo MLOCK OFF
TOPICLOCK
SET TOPICLOCK causes ChanServ to revert
topic changes by users without the +t flag.
Topic changes during netsplits or services
outages will always be reverted.
TOPICLOCK requires KEEPTOPIC and will
automatically enable it; disabling KEEPTOPIC
will disable TOPICLOCK also.
Syntax: SET <#channel> TOPICLOCK ON|OFF
Example:
/msg ChanServ SET #foo TOPICLOCK ON
KEEPTOPIC
SET KEEPTOPIC enables restoration of the old
topic after the channel has become empty. In
some cases, it may revert topic changes
after netsplits or services outages, so it
is not recommended to turn this on if your
channel tends to never empty.
Syntax: SET <#channel> KEEPTOPIC ON|OFF
Example:
/msg ChanServ SET #foo KEEPTOPIC ON
PRIVATE
SET PRIVATE hides various information about
the channel from other users.
Syntax: SET <#channel> PRIVATE ON|OFF
Example:
/msg ChanServ SET #foo PRIVATE ON
SECURE
SET SECURE prevents anyone that's not on the
channel's access lists from gaining operator
or halfop status on the channel. This is
useful if you're paranoid.
Syntax: SET <#channel> SECURE ON|OFF
Example:
/msg ChanServ SET #foo SECURE ON
ENTRYMSG
SET ENTRYMSG allows you to change or set
a message sent to all users joining the
channel. Specify a <message> of NONE to
clear the message.
Syntax: SET <#channel> ENTRYMSG <message>
Example:
/msg ChanServ SET #support ENTRYMSG Welcome to #support. Please do not paste more than 5 lines.
EMAIL
SET EMAIL allows you to change or set the email
address associated with a channel. This is shown
to all users in INFO.
Syntax: SET <#channel> EMAIL <email>
Using the command in this way results in an email
address being associated with the channel.
Example:
/msg ChanServ SET #chat EMAIL some@email.address
Syntax: SET <#channel> EMAIL NONE
Using the command in this way results in an email
address being removed from the channel.
Example:
/msg ChanServ SET #chat EMAIL none
URL
SET URL allows you to change or set the URL
associated with a channel. This is shown
to all users joining the channel. Specify
an <url> of NONE to clear the URL.
Syntax: SET <#channel> URL <url>
Example:
/msg ChanServ SET #chat URL http://slashdot.org
GUARD
SET GUARD allows you to have ChanServ join your channel.
Fantasy commands will only work if this is enabled.
Syntax: SET <#channel> GUARD ON|OFF
Example:
/msg ChanServ SET #atheme GUARD ON
VERBOSE
SET VERBOSE ON sends a notice to the channel when someone
makes changes to the access lists.
SET VERBOSE OPS sends a notice to the channel operators when
someone makes changes to the access lists.
Fantasy commands are always executed as if SET VERBOSE ON is
in effect.
Syntax: SET <#channel> VERBOSE ON|OPS|OFF
Example:
/msg ChanServ SET #foo VERBOSE ON
PROPERTY
SET PROPERTY manipulates metadata
associated with a channel.
To delete a metadata entry, specify
the name and leave the value blank.
Syntax: SET <#channel> PROPERTY <name> [value]
Examples:
/msg ChanServ SET #atheme PROPERTY URL http://www.atheme.org/
/msg ChanServ SET #meat PROPERTY VEGETABLES
AKICK
Manipulates a channel's AKICK list.
The AKICK command allows you to maintain channel
ban lists. Users on the AKICK list will be
automatically kickbanned when they join the channel,
removing any matching ban exceptions first. Users
with the +r flag are exempt.
You may also specify a hostmask (nick!user@host)
for the AKICK list.
Removing an entry from the AKICK list will not
remove any channel bans placed by it.
The reason is used when kicking and is visible in
AKICK LIST. If the reason contains a '|' character,
everything after it does not appear in kick reasons
but does appear in AKICK LIST.
Syntax: AKICK <#channel> ADD|DEL|LIST <nickname|hostmask> [reason]
Examples:
/msg ChanServ AKICK #foo ADD bar you are annoying | private op info
/msg ChanServ AKICK #foo ADD *!*foo@bar.com
/msg ChanServ AKICK #foo DEL bar
/msg ChanServ AKICK #foo LIST
TAXONOMY
Displays a channel's metadata.
The taxonomy command lists metadata information associated
with registered channels.
Example:
/msg ChanServ TAXONOMY #atheme
INFO
Displays information on registrations.
INFO displays channel information such as
registration time, flags, and other details.
Syntax: INFO <#channel>
Example:
/msg ChanServ INFO #foo
GETKEY
Returns the key (+k) of a channel.
GETKEY returns the key (+k, password to be allowed in)
of the specified channel: /join #channel key
Syntax: GETKEY <#channel>
Example:
/msg ChanServ GETKEY #foo
INVITE
Invites you to a channel.
INVITE requests services to invite you to the
specified channel. This is useful if you use
the +i channel mode.
Syntax: INVITE <#channel>
Example:
/msg ChanServ INVITE #foo
OP|DEOP|VOICE|DEVOICE
Gives/Removes channel ops/voice to/from a user.
These commands perform status mode changes on a channel.
If you perform an operation on another user, they will be
notified that you did it.
If the last parameter is omitted the action is performed
on the person requesting the command.
Syntax: OP|DEOP <#channel> [nickname]
Syntax: VOICE|DEVOICE <#channel> [nickname]
Examples:
/msg ChanServ OP #foo bar
/msg ChanServ DEVOICE #foo
WHY
Explains channel access logic.
The WHY command shows the access entries an online
user matches.
Syntax: WHY <#channel> <nickname>
Example:
/msg ChanServ WHY #atheme jilles^
UNBAN
Unbans you on a channel.
The UNBAN command allows you to remove all bans matching
you from a channel.
Syntax: UNBAN <#channel>
Example:
/msg ChanServ UNBAN #chat
CLEAR
Channel removal toolkit.
CLEAR allows you to clear various aspects of a channel.
The following subcommands are available:
BANS
Clear bans will remove all bans found in a specific
channel. If your ircd supports other lists associated
with a channel (e.g. ban exceptions), you can clear
these by specifying the mode letters. Specify an
asterisk to clear all lists.
Syntax: CLEAR <#channel> BANS [types]
Examples:
/msg ChanServ CLEAR #support BANS
Clears #support ban list.
/msg ChanServ CLEAR #support BANS eI
Removes all ban and invite exceptions on #support
(if your ircd supports them).
/msg ChanServ CLEAR #support BANS *
Clears all lists of #support.
/msg ChanServ CLEAR #support BANS +
Shows the possible letters.
USERS
Clear users will kick all users out of the channel,
except you. The channel will be cycled (recreated)
if you are not on it.
If a reason is specified, it will be included in the
kick message.
Syntax: CLEAR <#channel> USERS [reason]
Example:
/msg ChanServ CLEAR #ChatZone USERS
TEMPLATE
Manipulates predefined sets of flags.
The TEMPLATE command allows definition of sets of flags,
simplifying the use of the FLAGS command.
Without arguments, network wide templates are shown.
These include at least SOP/AOP/HOP/VOP.
Syntax: TEMPLATE
When given only the channel argument, a listing of
templates for the channel will be displayed.
Syntax: TEMPLATE <#channel>
Otherwise, a template is modified. A modification may be
specified by a template name (copies the template) or a
flags change (starts with + or -, optionally preceded by
an !). Templates cannot be the empty set (making a
template empty deletes it).
If the ! form is used, all access entries which exactly
match the template are changed accordingly. This is
not supported if the template includes or included
founder access (+F).
There is a limit on the length of all templates on a
channel.
If you are not a founder, similar restrictions apply
as in FLAGS.
Syntax: TEMPLATE <#channel> [template oldtemplate]
Syntax: TEMPLATE <#channel> [template flag_changes]
Syntax: TEMPLATE <#channel> [template !flag_changes]
Examples:
/msg ChanServ TEMPLATE #foo
/msg ChanServ TEMPLATE #foo user VOP
/msg ChanServ TEMPLATE #foo user !+A
/msg ChanServ TEMPLATE #foo co-founder +*-OH
/msg ChanServ TEMPLATE #foo op -*+vVhoti
/msg ChanServ TEMPLATE #foo obsoletetemplate -*
COUNT
Shows number of entries in access lists.
This will give a count of how many entries are in each of
the channel's xOP lists and how many entries on the access
list do not match a xOP value.
The second line shows how many access entries have each flag.
Syntax: COUNT <#channel>
Example:
/msg ChanServ COUNT #oscn
RECOVER
Regain control of your channel.
RECOVER allows you to regain control of your
channel in the event of a takeover.
More precisely, everyone will be deopped,
limit and key will be cleared, all bans
matching you are removed, a ban exception
matching you is added (in case of bans Atheme
can't see), the channel is set invite-only
and moderated and you are invited.
If you are on channel, you will be opped and
no ban exception will be added.
Syntax: RECOVER <#channel>
Example:
/msg ChanServ RECOVER #foo
STATUS
Displays your status in services.
STATUS returns information about your current
state. It will show information about your
nickname, IRC operator, and SRA status.
If the a channel parameter is specified, your
access to the given channel is returned.
Syntax: STATUS [#channel]
Example:
/msg ChanServ STATUS
The TOPICPREPEND command allows for the addition to a topic on a channel.
Syntax: TOPICPREPEND <#channel> <topic>
Examples:
/msg ChanServ TOPICPREPEND #foo bar
/msg ChanServ STATUS #foo
TOPIC
Sets a topic on a channel.
The TOPIC command allows for the changing of a topic on a channel.
Syntax: TOPIC <#channel> <topic>
Example:
/msg ChanServ TOPIC #foo bar
TOPICAPPEND
Appends a topic on a channel.
The TOPICAPPEND command allows for the addition to a topic on a channel.
Syntax: TOPICAPPEND <#channel> <topic>
Examples:
/msg ChanServ TOPICAPPEND #foo bar
TOPICPREPEND
Prepends a topic on a channel.
The TOPICPREPEND command allows for the addition to a topic on a channel.
Syntax: TOPICPREPEND <#channel> <topic>
Example:
/msg ChanServ TOPICPREPEND #foo bar
QUIET
Sets a quiet on a channel.
The QUIET command allows you to mute a user or hostmask in
a channel. Affected users will be notified that you did it.
Syntax: QUIET <#channel> <nickname|hostmask>
Examples:
/msg ChanServ QUIET #chat AfterDeath
/msg ChanServ QUIET #chat *!*@*.ipt.aol.com
UNQUIET
Removes a quiet on a channel.
The UNQUIET command allows you to unmute a user or hostmask
in a channel. If no nickname or hostmask is specified,
you are unquieted.
Affected users will be notified that you did it.
Syntax: UNQUIET <#channel> [nickname|hostmask]
Examples:
/msg ChanServ UNQUIET #chat Diablo-D3
/msg ChanServ UNQUIET #chat *!*@*.trilug.org