Repository navigation
Commands channels
Reviewed against Mediabot 3.6dev-20261006_084503 (snapshot of 6 October 2026). This is the development-line reference; consult the tagged source for stable-release behaviour.
Examples use !; replace it with the configured trigger (m, #, etc.). See notation, transport and permissions. Each entry names its registered IRC surfaces; a handler accepting a private context does not itself make a name callable by PM. Plugin and dynamic-command policy may add restrictions.
add · addbadword · addchan · antifloodset · ban · bans · chaninfo · chanlist · channellist · channels · chanset · del · deop · devoice · ignore · ignores · invite · join · kb · kick · kickban · nicklist · op · part · purge · rembadword · rnick · tmdblangset · topic · unban · unignore · voice
Add or update a user access level on a channel.
Access: Authenticated Administrator+ or channel 400+. IRC surfaces: channel + private message.
!add #channel <nick> <level>
Targets a Mediabot handle already known to the bot. Level is an integer 0–500; the handler enforces caller/target hierarchy and prevents equal-or-higher grants.
Add a badword filter entry for a channel.
Access: Master+. IRC surfaces: channel.
!addbadword #channel <word>
Supply the target channel and one badword token. Requires the bot’s channel object and the command’s privilege checks.
Add a channel to the bot configuration.
Access: Administrator+. IRC surfaces: channel + private message.
!addchan <#channel> <handle>
Both arguments are required. Links the new channel to an existing Mediabot handle. Example: !addchan #i/o teuk. This does not register the channel with ChanServ.
Adjust anti-flood settings for a channel.
Access: Master+. IRC surfaces: channel + private message.
!antifloodset [#channel]
!antifloodset [#channel] <max_msg> <period_sec> <wait_sec>
No numeric arguments reads the current policy. To change it provide all three nonnegative integer fields in that order: messages per period, period in seconds, then silence/wait seconds. Requires the channel’s +AntiFlood. This is different from Partyline .floodset and .cmdcooldown.
Ban a mask or nick on a channel.
Access: Authenticated Administrator+ or channel 75+. IRC surfaces: channel.
!ban [#channel] <nick|mask> [duration] [level] [reason]
Duration: positive integer minutes, or <N>m, <N>h, <N>d, <N>w; perm, permanent, never, or omission means permanent. 0 is not permanent. Duration precedes optional ban level, then free-text reason. Level defaults to the actor's channel level (at least 75); it cannot exceed the actor's permitted level. A nick resolves to its last known hostmask; an explicit mask must have a useful fixed host component. Broad masks are refused. ban sets the ban without a kick; kickban also kicks a nick target. Persistent expiry and history remain active. Example: !kickban #test BadNick 1h 75 repeated abuse.
List known bans for a channel.
Access: Authenticated Administrator+ or channel 75+. IRC surfaces: channel.
!bans [#channel]
Lists active bans known to Mediabot, including their IDs, levels and expiry. It is not an unrestricted dump of server ban lists.
Show information about a bot channel.
Access: public. IRC surfaces: channel + private message.
!chaninfo #channel
List channels known by the bot.
Access: Master+. IRC surfaces: channel + private message.
!chanlist
No command parameters. Channel-scoped results refer to the invocation channel.
Alias of chanlist; the same options, defaults and checks apply.
Access: Master+. IRC surfaces: channel + private message.
!channellist
Alias of chanlist; the same options, defaults and checks apply.
Access: Master+. IRC surfaces: channel + private message.
!channels
Change a channel setting.
Access: Authenticated Administrator+ or channel 450+. IRC surfaces: channel + private message.
!chanset [#channel] <+Capability|-Capability>
!chanset [#channel] key <key>
!chanset [#channel] chanmode <+modes>
!chanset [#channel] description <text>
!chanset [#channel] auto_join <on|off>
!chanset [#channel] timezone <Area/City|UTC>
Use a channel already known to Mediabot; omitted channel means invocation channel. key accepts a single token of at most 64 characters. description consumes the rest of the line (the reserved console description is refused). timezone validates the IANA name and synchronizes dependent reporting state; UTC is supported. chanmode stores the requested channel modes. Capability names come from CHANSET_LIST, not arbitrary setting keys. See all capabilities and combinations.
Remove a user from channel access.
Access: Authenticated Administrator+ or channel 400+. IRC surfaces: channel + private message.
!del #channel <nick>
Removes the target’s channel membership/access, not the global user account. Channel and hierarchy checks still apply.
Remove operator status on a channel.
Access: Authenticated Administrator+ or channel 100+. IRC surfaces: channel + private message.
!deop [#channel] [nick]
Defaults: invocation channel and caller’s IRC nick. In PM specify the channel. Mediabot also needs the IRC privileges required to carry out the mode/invite.
Remove voice status on a channel.
Access: Authenticated Administrator+ or channel 25+. IRC surfaces: channel + private message.
!devoice [#channel] [nick]
Defaults: invocation channel and caller’s IRC nick. In PM specify the channel. Mediabot also needs the IRC privileges required to carry out the mode/invite.
Add an ignore entry.
Access: Administrator+. IRC surfaces: channel + private message.
!ignore [#channel] <hostmask>
Uses a stored hostmask pattern. Omitted channel in a channel invocation scopes it there; in PM without a channel it is global. This is separate from Hailo nick exclusions.
List ignore entries.
Access: admin. IRC surfaces: channel + private message.
!ignores
No command parameters. Channel-scoped results refer to the invocation channel.
Invite a nick to a channel.
Access: Authenticated Administrator+ or channel 100+. IRC surfaces: channel + private message.
!invite [#channel] [nick]
Defaults: invocation channel and caller’s IRC nick. In PM specify the channel. Mediabot also needs the IRC privileges required to carry out the mode/invite.
Make the bot join a channel.
Access: Authenticated Administrator+ or channel 450+. IRC surfaces: channel + private message.
!join #channel
Channel must already be registered with the bot; the stored channel key is used. This is not ChanServ registration.
Alias of kickban; the same options, defaults and checks apply.
Access: Authenticated Administrator+ or channel 75+. IRC surfaces: channel.
!kb [#channel] <nick|mask> [duration] [level] [reason]
Kick a user from a channel.
Access: Authenticated Administrator+ or channel 50+. IRC surfaces: channel + private message.
!kick [#channel] <nick> [reason]
Omitted channel means invocation channel. Target nick is required; reason is the remaining text.
Kick and ban a user from a channel.
Access: Authenticated Administrator+ or channel 75+. IRC surfaces: channel.
!kickban [#channel] <nick|mask> [duration] [level] [reason]
Duration: positive integer minutes, or <N>m, <N>h, <N>d, <N>w; perm, permanent, never, or omission means permanent. 0 is not permanent. Duration precedes optional ban level, then free-text reason. Level defaults to the actor's channel level (at least 75); it cannot exceed the actor's permitted level. A nick resolves to its last known hostmask; an explicit mask must have a useful fixed host component. Broad masks are refused. ban sets the ban without a kick; kickban also kicks a nick target. Persistent expiry and history remain active. Example: !kickban #test BadNick 1h 75 repeated abuse.
List nicks currently known on a channel.
Access: Administrator+. IRC surfaces: channel + private message.
!nicklist #channel
Give operator status on a channel.
Access: Authenticated Administrator+ or channel 100+. IRC surfaces: channel + private message.
!op [#channel] [nick]
Defaults: invocation channel and caller’s IRC nick. In PM specify the channel. Mediabot also needs the IRC privileges required to carry out the mode/invite.
Make the bot leave a channel.
Access: Authenticated Administrator+ or channel 500+. IRC surfaces: channel + private message.
!part #channel [reason]
Leaves the named known channel. An optional reason is channel part text; console-channel protection still applies.
Purge or reset channel runtime information.
Access: Administrator+. IRC surfaces: channel + private message.
!purge #channel
Purges the bot’s registered channel state through its protected purge path. It is not merely PART; inspect the target and backup before intentional channel removal.
Remove a badword filter entry.
Access: Master+. IRC surfaces: channel.
!rembadword #channel <word>
Supply the target channel and one badword token. Requires the bot’s channel object and the command’s privilege checks.
Pick a random nick from a channel.
Access: Administrator+. IRC surfaces: channel + private message.
!rnick #channel
Set TMDB language for a channel.
Access: channel admin. IRC surfaces: channel.
!tmdblangset [#channel] <language>
Target channel is required in PM; omitted in channel uses that channel. Examples: fr-FR, en-US. This controls TMDB language, not LangFR/LangES for all bot output.
Change the topic of a channel.
Access: Authenticated Administrator+ or channel 50+. IRC surfaces: private message.
/msg BotNick topic #channel <topic>
IRC PM surface only: /msg BotNick topic #channel New topic. It is not registered as a built-in public !topic in this snapshot. A separately installed plugin or dynamic command may supply a public command.
Remove a ban from a channel.
Access: Authenticated Administrator+ or channel 75+; ban-level check. IRC surfaces: channel.
!unban [#channel] <id|mask>
Use the stored ban ID or exact mask. Removal checks that the caller can remove the ban’s recorded level; history remains stored.
Remove an ignore entry.
Access: Administrator+. IRC surfaces: channel + private message.
!unignore [#channel] <hostmask>
Removes the matching ignore entry in the selected scope; in PM without a channel the scope is global.
Give voice on a channel.
Access: Authenticated Administrator+ or channel 25+. IRC surfaces: channel + private message.
!voice [#channel] [nick]
Defaults: invocation channel and caller’s IRC nick. In PM specify the channel. Mediabot also needs the IRC privileges required to carry out the mode/invite.
Mediabot v3 documentation · Home · Installation · Commands · Troubleshooting · GitHub
- Start: notation and parameters
- Public commands
- Complete command reference
- Private and admin commands
- News and RSS
- Quotes and automatic quotes
- Dynamic commands
- AI and Hailo
- Access levels
- Chansets