Sync Bot — Server Mirroring
Overview
What the Sync Bot does and how it mirrors a category between two servers.
Sync Bot — Server Mirroring
The Sync Bot mirrors a whole category including all its channels between two Discord servers. Server A is the source (main), Server B the mirror (target). Structure changes flow from A to B, while messages travel both ways through webhooks.
Features
| Feature | Description |
|---|---|
| Structure sync | Create, delete, rename and reorder channels — from A to B |
| Channel properties | Type (text, voice, forum, announcement), topic, slowmode and NSFW are carried over |
| Messages (A ↔ B) | Bidirectional through webhooks, with the original's display name and avatar |
| Content | Text, attachments and embeds are mirrored 1:1 |
| Edits & deletes | Edits, single deletes and bulk deletes (purge) are mirrored too |
| Reactions | Emojis are mirrored 1:1 (add and remove) |
| Real pings | @user, role and @everyone/@here mentions trigger real notifications |
| Custom names | Channels on B can be renamed and locked against being overwritten |
| Loop prevention | The bot's own webhook messages are detected and never re-mirrored |
Requirements
- A running bot instance (Node 22) that is a member of both servers.
- Bot permissions: Manage Channels, Manage Webhooks, View Channels, Send Messages, Read Message History.
- The Message Content Intent must be enabled in the Developer Portal.
Without the Message Content Intent mirrored messages arrive empty — the bot can't read the text.
This intent is privileged and is enabled in the Developer Portal under Bot → Privileged Gateway
Intents.
How it works
- On Server A you register the category with
/sync setupand receive a Sync ID. - On Server B you run
/sync activate <Sync ID>— the category and channels are recreated and the webhooks are set up. - From then on, the structure follows A → B, and messages and reactions travel both ways.
Continue with Setup — that's where you create the bot and add it to both
servers.