Initially created to moderate The Devs Network.
- Synchronized across multiple groups
- Adding admins to the bot
- Auto-remove and warn channels and groups ads
- Kick bots added by users
- Warn and ban users to control the group
- Commands work with replying, mentioning and ID
- Removes commands and temporary bot messages
- Ability to create custom commands
- Supports plugins
Overall, keeps the groups clean and healthy to use.
You need Node.js (>= 18) to run this bot.
- Create a bot via @BotFather and grab a token.
- Clone this repository or download zip.
- Install dependencies via
npm install
. - Copy
example.config.js
toconfig.js
and edit it. - Start the bot via
npm start
.
You need to have docker installed on your machine.
- Create a bot via @BotFather and grab a token.
- Clone this repository or download zip.
- Copy
example.config.js
toconfig.js
and edit it. - Run
docker build -t the_guard_bot .
to build image. - Run
docker run -v $(pwd)/data:/app/data --rm -itd the_guard_bot
to start the bot.
Now you can add the bot as administrator to your groups.
Command | Role | Available at | Description |
---|---|---|---|
/admin |
Master | Everywhere | Makes the user admin in the bot and groups. |
/unadmin |
Master | Everywhere | Demotes the user from admin list. |
/leave <name|id> |
Master | Everywhere | Make the bot to leave the group cleanly. |
/hidegroup |
Master | Groups | Revoke invite link and hide the group from /groups list. |
/showgroup |
Master | Groups | Make the group accessible via /groups list. |
/del [reason] |
Admin | Everywhere | Deletes replied-to message. |
/warn <reason> |
Admin | Groups | Warns the user. |
/unwarn |
Admin | Everywhere | Removes the last warn from the user. |
/nowarns |
Admin | Everywhere | Clears warns for the user. |
/permit |
Admin | Everywhere | Permits the user to advertise once, within 24 hours. |
/ban <reason> |
Admin | Groups | Bans the user from groups. |
/unban |
Admin | Everywhere | Removes the user from ban list. |
/user |
Admin | Everywhere | Shows the status of the user. |
/addcommand <name> |
Admin | In-Bot | Create a custom command. |
/removecommand <name> |
Admin | In-Bot | Remove a custom command. |
/staff |
Everyone | Everywhere | Shows a list of admins. |
/link |
Everyone | Everywhere | Shows the current group's link. |
/groups |
Everyone | Everywhere | Shows a list of groups which the bot is admin in. |
/report [reason] |
Everyone | Groups | Reports the replied-to message to admins, reason is optional. Also can be prepended by @ or ! instead, and it is aliased by admin and admins . |
/commands |
Everyone | In-Bot | Shows a list of available commands. |
/help | /start |
Everyone | In-Bot | How to use the bot. |
All commands and actions are synchronized across all of the groups managed by the owner and they work with replying, mentioning or ID of a user.
If used by reply, /ban
and /warn
would remove the replied-to message.
The guard is extensible in form of plugins where custom features and commands can be easily added to it.
See the Plugins page on the Wiki for more information.
If you need help with using the Bot or setting it up, join our Support Chat.
Important Note: Under the AGPL-3.0 license, if you're running your own instance, you should add a link to the source (this repository) in your bot's bio. If you're modifying this source and making your own bot, you should link to the source of your own version of the bot according to the AGPL-3.0 license. Check LICENSE for more info.
The Guard
icon is from Entypo+ by Daniel Bruce.