Track violations with configurable warning thresholds. Automatically mute, kick, or ban after repeated warnings. Custom reasons, auto reset, and detailed logs keep your moderation consistent and fair.
The most effective moderation systems are not the ones that ban the most people. They are the ones that correct behavior before a ban becomes necessary. When a new member breaks a rule, they might not know the rule exists. Banning them immediately feels harsh and drives away people who would have been good community members if given a chance to learn. The warning system provides a middle ground between doing nothing and banning someone, giving members a clear signal that their behavior is not acceptable while still allowing them to remain in the community and correct their conduct.
Research in community management consistently shows that progressive discipline, where penalties escalate with repeated violations, produces better outcomes than zero tolerance policies. Members who receive a warning and correct their behavior become valuable contributors. Members who receive multiple warnings and continue violating rules demonstrate that they are not willing to respect the community, and at that point a ban is clearly justified. The warning system provides the structure for this progressive approach, making it easy for admins to track violations and apply escalating consequences automatically.
The /warn command issues a warning to a member. You can include a custom reason, such as /warn @user Please do not post promotional links without permission. The warning is recorded in the member's warning history, and the bot sends a message in the chat notifying the member of the warning and the reason. This public notification serves two purposes: it tells the warned member what they did wrong, and it shows the rest of the group that the rules are being enforced.
The /dwarn command issues a warning and automatically deletes the message that triggered it. This is useful for cases where the message itself is the violation, such as a spam message or an inappropriate image. The warning is still recorded and the member is still notified, but the offending content is removed from the chat so other members do not see it.
The /warnlimit command sets the maximum number of warnings a member can receive before an automatic action is taken. Set it to 3 and the third warning triggers the configured action. The /warnmode command sets what happens when the limit is reached: mute, kick, or ban. Mute restricts the member from sending messages for a configurable duration. Kick removes them from the group but allows them to rejoin. Ban permanently removes them and prevents rejoining.
The /warnduration command sets how long a mute lasts when the warning limit triggers a mute action. Set it to 1 hour for a mild consequence, 24 hours for a more serious one, or any duration that fits your community's standards. The /warnreset command sets the time period after which a member's warnings are automatically cleared. Set it to 7 days and a member who received warnings a week ago starts with a clean slate, giving them a fresh chance to demonstrate good behavior.
The /warnings command shows all warnings for a specific user, including the reason for each warning, the admin who issued it, and the date. This history is invaluable for making consistent moderation decisions. When an admin is considering whether to warn or ban a member, they can review the member's warning history to see if they are a repeat offender or a first time violator.
The /rmwarn command removes a specific warning from a user's record. This is useful when a warning was issued in error or when a member has demonstrated improved behavior and an admin wants to clear a warning as a gesture of good faith. The /resetwarn command clears all warnings for a user, giving them a completely fresh start. Both commands help maintain a fair system where warnings are not permanent black marks but tools for guiding behavior.
Beyond the automatic mute triggered by the warning limit, admins can manually mute members with the /mute command. This restricts a member from sending messages for a specified duration without issuing a formal warning. Muting is useful for situations where a member is being temporarily disruptive and you want to give them a cooling off period without the paperwork of a formal warning.
The /unmute command reverses a mute before the duration expires. The /muteall command mutes all non admin members in the group, which is useful during announcements or when you need to temporarily silence the chat for an important message. The /unmuteall command reverses the group wide mute.
The /kick command removes a member from the group. Unlike a ban, a kicked member can rejoin if they have an invite link. This is useful for removing someone who is being disruptive but where a permanent ban feels too severe. The /ban command permanently removes a member and prevents them from rejoining. The /unban command reverses a ban, allowing the member to rejoin.
The /tban and /tmute commands issue temporary bans and mutes that automatically expire after a specified duration. This is useful for violations that warrant a time limited consequence rather than a permanent one. Temporary actions reduce the admin workload because they do not require a manual reversal, and they provide a clear end point that the member can look forward to.
| Command | Arguments | Description |
|---|---|---|
| /warn | <user> [reason] | Issue a warning. |
| /dwarn | <user> [reason] | Warn and delete the message. |
| /warnings | [user] | Show warning history. |
| /rmwarn | <user> | Remove a warning. |
| /resetwarn | <user> | Clear all warnings for a user. |
| /warnlimit | <number> | Set max warnings before action. |
| /warnmode | <mute|kick|ban> | Set action when limit reached. |
| /warnduration | <time> | Set mute duration for warn limit. |
| /warnreset | <time> | Set auto warning reset period. |
| /mute | <user> [duration] | Mute a member. |
| /unmute | <user> | Unmute a member. |
| /tmute | <user> <time> | Temporary mute. |
| /muteall | Mute all non admin members. | |
| /unmuteall | Unmute all members. | |
| /kick | <user> [reason] | Kick a member. |
| /ban | <user> [reason] | Ban a member. |
| /unban | <user> | Unban a member. |
| /tban | <user> <time> | Temporary ban. |
Warnings, mutes, kicks, and bans with configurable thresholds and automatic escalation. Give members a chance to improve before removing them.