v3.3.0 — Phase 4: hardened command filter, anonymous mode, polls, AFK, analytics, bridging, 15+ new features

Phase 4 additions:
- Hardened 4-layer command filtering (bot prefix, common prefixes, slash commands, context validation)
- Anonymous mode (hashed usernames, default avatars)
- One-way mirror channels (receive-only)
- Network-wide polls with reaction voting and auto-expiry
- AFK system with auto-clear on message send
- Personal ignore lists (per-user DM relay blocking)
- Staff auto-responses (word + regex triggers)
- Ephemeral messages (auto-delete after configurable seconds)
- Media-only mode (only relay attachments/images)
- Network analytics dashboard (hourly activity, peak hours, top users)
- Relay health monitor (15-min background check for channel accessibility)
- Message bookmarks (saved to DM)
- Per-user vanity embed colours
- Quiet hours (DM relay pause during configurable hours)
- Inter-network bridging (one-way or two-way)
- Updated README with full command reference (70+ commands)
- 3,376 lines in wormhole.py
This commit is contained in:
everestmcarthur 2026-05-07 22:53:12 +00:00
parent 1791251fec
commit 627e5a426d
5 changed files with 1056 additions and 433 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
wormhole/__pycache__/

496
README.md
View file

@ -1,4 +1,4 @@
# 🌀 EveCogs
# EveCogs
A premium cog repository for [Red-DiscordBot](https://github.com/Cog-Creators/Red-DiscordBot).
@ -6,438 +6,164 @@ A premium cog repository for [Red-DiscordBot](https://github.com/Cog-Creators/Re
```
[p]repo add EveCogs https://github.com/everestmcarthur/EveCogs
[p]cog install EveCogs <cog_name>
[p]load <cog_name>
[p]cog install EveCogs wormhole
[p]load wormhole
```
### Available Cogs
| Cog | Description |
|-----|-------------|
| **[Wormhole](#-wormhole-v320)** | Ultimate cross-server message relay — DM relay, starboard, karma, auto-mod, 50+ commands |
| **[NewHelpMenu](#-new-help-menu-v100)** | Fully customisable interactive help system — categories, buttons, themes, search, favourites |
---
# 📖 New Help Menu v1.0.0
# Wormhole v3.3.0
**The ultimate customisable help system for Red-DiscordBot.**
**The ultimate cross-server message relay for Red-DiscordBot.**
Completely replaces Red's default help formatter with a modern, interactive experience powered by Discord buttons, select menus, modals, and rich embeds. Every aspect is configurable — from categories and colours to button styles and role gating.
Connect Discord channels across unlimited servers into named networks. Messages, edits, deletes, reactions, replies, stickers, pins, typing indicators, and files are all relayed in real-time.
## ✨ Features
## Feature Highlights
### 🎨 Themes & Branding
- **4 built-in themes** — `default`, `minimal`, `compact`, `dark`
- **Full custom mode** — control every visual aspect independently
- **Custom accent colours** — per-server or per-category
- **Thumbnails & images** — custom icons on home page and per-category
- **Title, description, tagline, footer** — fully templated with `{bot_name}` and `{prefix}` placeholders
- **Footer icons** — custom footer branding
| Category | Features |
|----------|----------|
| **Relay** | Webhook / embed / compact modes, edit & delete sync, reply threading, sticker forwarding, pin sync, typing indicators, file relay |
| **DM Relay** | Bidirectional DM ↔ network messaging, quiet hours, personal ignore lists |
| **Moderation** | Ban/mute users & servers, word + regex filters, attachment filters, global blocklist, purge |
| **Auto-Mod** | Anti-spam, anti-raid, anti-caps, anti-invite, anti-link, anti-zalgo, anti-spoiler, anti-emote-spam, anti-newlines |
| **Staff** | Staff system, ownership transfer, audit log, announcements |
| **Invites** | Invite codes, vanity URLs, expiry, max uses, allowlists |
| **Social** | Karma/reputation, starboard, user profiles, keyword highlights |
| **Scheduling** | Scheduled messages, blackout windows, relay delay, slowmode |
| **Phase 4** | Anonymous mode, mirror channels, polls, AFK, auto-responses, ephemeral messages, media-only, analytics, health monitor, bookmarks, user colours, quiet hours, network bridging |
### 📂 Custom Categories
- **Create unlimited categories** — group cogs however you want
- **Per-category customisation** — emoji, colour, thumbnail, image, description
- **Ordering** — set display order for each category
- **Role gating** — restrict category visibility to specific roles
- **Hide/unhide** — toggle category visibility
- **Auto-categories** — uncategorised cogs get their own section automatically
- **Rename** — change category labels on the fly
## Command Reference
### 🔘 Interactive Navigation
- **Select menu dropdown** — jump between categories instantly
- **Button navigation** — category buttons when select menus are disabled
- **Pagination** — ◀️ ▶️ buttons with page counter
- **Command detail view** — click into any command for full docs, subcommands, aliases
- **Back navigation** — return to previous views seamlessly
- **Close button** — dismiss the menu
### 🔍 Search
- **Modal search** — pop-up search dialog searches command names, descriptions, aliases, and help text
- **Results view** — shows matching commands with their category
- **Fuzzy matching** — finds commands across all categories
### ⭐ Favourites
- **Per-user favourites** — save frequently-used commands
- **Star button** — add/remove favourites from the detail view
- **Favourites page** — quick access from the main menu
- **Command-based** — `[p]fav <command>` to toggle
### 🛡️ Visibility Control
- **Hide cogs** — remove entire cogs from help
- **Hide commands** — blacklist specific commands
- **Show hidden** — toggle visibility of hidden commands for admins
- **Permission-based filtering** — only shows commands the user can actually run
- **Role-gated categories** — restrict categories to certain roles
### ⚙️ Display Options
- **Aliases** — show/hide command aliases
- **Cooldowns** — show/hide cooldown info
- **Permissions** — show/hide required permission levels
- **Signatures** — show/hide command usage signatures
- **Timestamps** — toggle embed timestamps
- **Subcommand counts** — groups show number of subcommands
### 🔗 Quick Links
- **URL buttons** — add up to 5 link buttons (support server, docs, website, etc.)
- **Custom emoji** — set emoji per link button
### 📧 Delivery Options
- **DM help** — send help to DMs instead of the channel
- **Ephemeral mode** — only visible to the user (slash command contexts)
- **Auto-delete** — delete help messages after configurable seconds
- **Timeout** — interactive view timeout (default 3 minutes)
### 🏠 Home Page Extras
- **Custom fields** — add informational fields to the home embed
- **Home image** — large image on the home page
- **Category overview** — shows all categories with command counts
## 📋 Quick Start
```
[p]cog install EveCogs newhelpmenu
[p]load newhelpmenu
```
That's it! The default help command is now interactive. Customise further:
```
[p]helpmenu theme dark
[p]helpmenu colour #FF6B6B
[p]helpmenu title "🤖 {bot_name} Commands"
[p]helpmenu desc "Use the menu below to browse all commands!"
[p]helpmenu tagline "Powered by EveCogs"
[p]helpmenu cat create Moderation 🛡️ All moderation commands
[p]helpmenu cat addcog Moderation Mod
[p]helpmenu cat addcog Moderation AutoMod
[p]helpmenu cat colour Moderation #E74C3C
[p]helpmenu cat create Fun 🎮 Games and entertainment
[p]helpmenu cat addcog Fun Trivia
[p]helpmenu cat addcog Fun CustomCommands
[p]helpmenu quicklink add "Support" https://discord.gg/your-server 🔗
[p]helpmenu quicklink add "Docs" https://your-docs-site.com 📄
[p]helpmenu set selectmenu on
[p]helpmenu set buttons on
[p]helpmenu set aliases on
[p]helpmenu set dmhelp off
[p]helpmenu set maxperpage 10
[p]helpmenu preview
```
## 📖 Command Reference
### Main Settings (`[p]helpmenu` / `[p]hm`)
### Core
| Command | Description |
|---------|-------------|
| `helpmenu toggle` | Enable/disable the custom help menu |
| `helpmenu theme <name>` | Set theme: default, minimal, compact, dark, custom |
| `helpmenu colour <hex>` | Set accent colour |
| `helpmenu resetcolour` | Reset to bot default colour |
| `helpmenu thumbnail [url]` | Set/reset home thumbnail |
| `helpmenu title <text>` | Set title (supports `{bot_name}`, `{prefix}`) |
| `helpmenu description <text>` | Set home description |
| `helpmenu footer <text>` | Set footer text |
| `helpmenu footericon [url]` | Set footer icon |
| `helpmenu tagline [text]` | Set/clear tagline |
| `helpmenu homeimage [url]` | Set/reset home page image |
| `helpmenu buttonstyle <style>` | Set button style: primary, secondary, success, danger |
| `helpmenu pagestyle <style>` | Set pagination button style |
| `helpmenu uncatlabel <text>` | Set uncategorised section label |
| `helpmenu uncatdesc <text>` | Set uncategorised description |
| `helpmenu hideuncat` | Toggle hiding uncategorised section |
| `helpmenu preview` | Preview the help menu |
| `helpmenu settings` | Show all current settings |
| `helpmenu reset` | Reset everything to defaults |
| `[p]wh create <name>` | Create a new network |
| `[p]wh delete <name>` | Delete a network |
| `[p]wh open <name>` | Link current channel |
| `[p]wh close` | Unlink current channel |
| `[p]wh list` | List all networks |
| `[p]wh info <name>` | Network info & stats |
| `[p]wh portal [name]` | Create/refresh portal embed |
### Toggle Settings (`[p]helpmenu set`)
| Setting | Description |
|---------|-------------|
| `aliases` | Show/hide command aliases |
| `cooldown` | Show/hide cooldown info |
| `permissions` | Show/hide required permissions |
| `signature` | Show/hide command signatures |
| `hidden` | Show/hide hidden commands |
| `timestamp` | Show/hide embed timestamps |
| `selectmenu` | Enable/disable select menu dropdown |
| `buttons` | Enable/disable category buttons |
| `dmhelp` | Send help to DMs |
| `ephemeral` | Ephemeral responses (slash commands) |
| `favourites` | Enable/disable favourites system |
| `search` | Enable/disable search |
| `sortcommands` | Sort commands alphabetically |
| `sortcategories` | Sort categories by order |
| `timeout` | View timeout in seconds (number) |
| `deleteafter` | Auto-delete after seconds (number, 0=never) |
| `maxperpage` | Commands per page (number) |
### Categories (`[p]helpmenu category` / `[p]hm cat`)
### Settings (`[p]wh set`)
| Command | Description |
|---------|-------------|
| `cat create <name> [emoji] [desc]` | Create a new category |
| `cat delete <name>` | Delete a category |
| `cat rename <old> <new>` | Rename a category |
| `cat emoji <name> [emoji]` | Set/clear category emoji |
| `cat description <name> [desc]` | Set category description |
| `cat colour <name> <hex>` | Set category embed colour |
| `cat thumbnail <name> [url]` | Set category thumbnail |
| `cat image <name> [url]` | Set category large image |
| `cat order <name> <number>` | Set display order (lower = first) |
| `cat hide <name>` | Hide a category |
| `cat unhide <name>` | Show a hidden category |
| `cat requirerole <name> [role]` | Set/clear role requirement |
| `cat addcog <name> <CogName>` | Assign a cog to a category |
| `cat removecog <name> <CogName>` | Remove a cog from a category |
| `cat list` | List all categories |
| `set mode <name> <webhook\|embed\|compact>` | Relay mode |
| `set colour <name> <hex>` | Embed colour |
| `set icon <name> <url>` | Custom network icon |
| `set freeze <name> <bool>` | Freeze/unfreeze |
| `set nsfw <name> <bool>` | NSFW gate |
| `set ratelimit <name> <msgs> <secs>` | Rate limit |
| `set slowmode <name> <secs>` | Per-user slowmode |
| `set welcome <name> <msg>` | Welcome message |
| `set motd <name> <msg>` | Message of the day |
| `set rules <name> <text>` | Network rules |
| `set mention <name> <key> <bool>` | Mention control |
| `set log-channel <name> <ch>` | Log channel |
| `set max-filesize <name> <bytes>` | Max file size |
| `set delay <name> <secs>` | Relay delay |
| `set anonymous <name> <bool>` | Anonymous mode |
| `set ephemeral <name> <secs>` | Auto-delete timer |
| `set media-only <name> <bool>` | Media-only mode |
### Visibility (`[p]helpmenu hide` / `unhide`)
### Sync Toggles
| Command | Description |
|---------|-------------|
| `hide cog <CogName>` | Hide a cog from help |
| `hide command <name>` | Hide a command from help |
| `unhide cog <CogName>` | Unhide a cog |
| `unhide command <name>` | Unhide a command |
| `hide list` | List all hidden items |
| `set edits / deletes / replies / reactions / stickers / threads / typing / pins` | Toggle sync features |
### Quick Links (`[p]helpmenu quicklink` / `ql`)
### Staff & Moderation
| Command | Description |
|---------|-------------|
| `ql add <label> <url> [emoji]` | Add a quick link button |
| `ql remove <label>` | Remove a quick link |
| `ql list` | List all quick links |
| `staff add/remove/list` | Manage staff |
| `transfer <name> <user>` | Transfer ownership |
| `mod ban/unban/mute/unmute <name> <user>` | User moderation |
| `mod ban-server/unban-server/mute-server/unmute-server` | Server moderation |
| `mod allowlist-add/allowlist-remove` | Server allowlist |
| `mod purge <name> [count]` | Purge relayed messages |
### Home Fields (`[p]helpmenu field`)
### Filters
| Command | Description |
|---------|-------------|
| `field add <name> <value>` | Add a field (append `--inline` for inline) |
| `field remove <name>` | Remove a field |
| `field clear` | Clear all fields |
| `field list` | List all fields |
| `filter add-word/remove-word` | Word filters |
| `filter add-regex/remove-regex` | Regex filters |
| `filter list` | List all filters |
### User Commands
### Auto-Moderation
| Command | Description |
|---------|-------------|
| `[p]favourite <command>` | Toggle a command in your favourites |
| `[p]favourites` | View your favourite commands |
| `automod enable/disable` | Toggle auto-mod |
| `automod anti-spam/anti-caps/anti-invite/anti-link` | Toggle protections |
| `automod anti-zalgo/anti-spoiler/anti-emote-spam/anti-newlines` | More protections |
| `automod anti-mentions <name> <bool> [max]` | Mention spam |
| `automod anti-raid <name> <bool> [threshold] [window]` | Raid protection |
| `automod status` | View auto-mod status |
---
# 🌀 Wormhole v3.2.0
**The ultimate cross-server message relay for Discord.**
Connect channels across multiple servers into named networks. Messages, edits, deletes, reactions, replies, stickers, pins, typing indicators, and files are relayed in real-time. Features DM relay, starboard, karma, auto-moderation, invites, portals, and 50+ commands.
## ✨ Features
### 📡 Core Relay
- **Named networks** — create unlimited named relay networks
- **Three relay modes** — `webhook` (rich identity), `embed` (styled cards), `compact` (minimal text)
- **Full sync** — edits, deletes, reactions, replies, stickers, threads, pins, typing indicators
- **File forwarding** — images, videos, documents all relayed automatically
- **Embed forwarding** — rich embeds from bots/links passed through
- **Reply context** — quoted reply previews carried across servers
### 📧 DM Relay
- **Subscribe** to receive network messages directly in your DMs
- **Send from DMs** — participate in networks without being in a server channel
- **Three DM formats** — embed, compact, or plain text
- **Bidirectional** — full two-way communication via DMs
### 🛡️ Moderation
- **Ban / mute** individual users or entire servers
- **Word filters** — block specific words
- **Regex filters** — pattern-based content blocking
- **Allowlist** — restrict which servers can join
- **Purge** — mass delete relayed messages across all channels
- **Audit log** — full trail of all admin/mod actions (last 500 entries)
### 🤖 Auto-Moderation Engine
- **Anti-spam** — duplicate message detection with configurable window/threshold
- **Anti-mention spam** — block mass mentions
- **Anti-caps** — configurable caps percentage threshold
- **Anti-invite** — block Discord invite links
- **Anti-link** — block all URLs
- **Anti-zalgo** — block combining character abuse
- **Anti-spoiler spam** — block excessive spoiler tags
- **Anti-emote spam** — limit custom emoji per message
- **Anti-newline spam** — limit vertical space abuse
- **Anti-raid** — auto-freeze network on flood detection
### ⭐ Starboard
- Cross-network starboard — star reactions collected across all channels
- Configurable threshold and dedicated starboard channel
- Auto-updating star count on the board embed
### 💎 Karma / Reputation
- React with a configurable emoji to give karma
- Per-user karma scores tracked across the network
- Leaderboard command
### 🔔 Keyword Highlights
- Subscribe to keywords — get DM'd when they're mentioned
- Per-user, per-network keyword lists
### 🔗 Invites
- **Invite codes** — shareable codes with optional max uses and expiry
- **Vanity invites** — custom words (e.g. `gaming` instead of `xK4mR2pQ`)
- Join networks from any server with just a code
### 📢 Communication
- **Staff announcements** — broadcast to all channels + DM subscribers
- **Scheduled messages** — send timed announcements
- **MOTD** — message of the day shown on join
- **Rules** — network rules displayed on demand
- **Welcome messages** — greet new servers automatically
### 🌀 Portal Messages
- Persistent, auto-updating status embeds pinned in channels
- Shows network status, channel count, features, MOTD
- Refreshes every 5 minutes automatically
### 🔍 Search & Discovery
- **Search** — search recent messages across the entire network
- **Network discovery** — list public networks with tags
- **Tags** — categorize networks for easy discovery
### ⚙️ Advanced Configuration
- **Per-channel overrides** — different relay mode per channel
- **Server nicknames** — custom display names per server
- **Custom identity** — custom icons, names, colour accents
- **Name modes** — show user, server, both, or custom template
- **Mention control** — strip @everyone, @here, @role, @user
- **Attachment filters** — block file types and enforce size limits
- **Relay delay** — configurable seconds before relay (for review)
- **Slowmode** — network-wide per-user cooldown
- **Rate limiting** — configurable messages per time window
- **NSFW gate** — block relay from NSFW channels
- **Freeze** — pause a network instantly
- **Silent mode** — suppress join/leave notifications
### 🌙 Blackout Scheduling
- Auto-freeze/unfreeze on schedule
- Per-day-of-week and hour range (UTC)
- Multiple schedules per network
### 💾 Backup & Restore
- Export entire network config as JSON
- Restore to same or different name
- Preserves all settings, filters, profiles
### 👤 User Profiles & Stats
- Per-user message counts, first-seen date, server list
- Network-wide statistics with top-5 leaderboard
- Karma integration in profiles
### 🌐 Global Blocklist (Bot Owner)
- Block users/servers from ALL wormhole networks
- Independent of per-network moderation
### ⭐ Staff System
- **Owner** — full control, can add/remove staff
- **Staff** — moderation, settings, filters, announcements
- **Ownership transfer** — hand off networks to other users
## 📋 Quick Start
```
[p]wh create mynetwork A cool cross-server chat!
[p]wh open mynetwork # in each channel you want linked
[p]wh invite create mynetwork # share the code
[p]wh dm enable mynetwork # enable DM relay
[p]wh set relay-mode mynetwork webhook
[p]wh automod enable mynetwork
[p]wh starboard enable mynetwork #starboard 3
[p]wh karma enable mynetwork 👍
```
## 📖 Command Reference
Run `[p]wh help` in Discord for the full interactive reference.
### Network Management
### Invites
| Command | Description |
|---------|-------------|
| `wh create <name> [desc]` | Create a new network |
| `wh delete <name>` | Delete a network (with confirmation) |
| `wh open <name>` | Link current channel |
| `wh close [name]` | Unlink current channel |
| `wh list` | List all networks |
| `wh discover` | List public networks |
| `wh info <name>` | Detailed network info |
| `wh stats <name>` | Statistics & leaderboard |
| `wh transfer <name> @user` | Transfer ownership |
| `wh announce <name> <msg>` | Staff broadcast |
| `wh portal [name]` | Create/refresh portal |
| `wh search <name> <query>` | Search messages |
| `wh schedule <name> <min> <msg>` | Scheduled message |
| `wh rules <name>` | Show rules |
| `wh motd <name>` | Show MOTD |
| `wh audit <name> [n]` | View audit log |
| `wh backup <name>` | Export JSON backup |
| `wh restore [name]` | Import from JSON |
| `invite create <name> [uses] [mins]` | Create invite |
| `invite vanity <name> <word>` | Set vanity URL |
| `invite use <code>` | Join via invite |
| `invite revoke/list` | Manage invites |
### DM Relay
| Command | Description |
|---------|-------------|
| `wh dm enable/disable <name>` | Toggle DM relay |
| `wh dm mode <name> <format>` | Set DM format |
| `wh dm subscribe <name>` | Subscribe to DMs |
| `wh dm unsubscribe <name>` | Unsubscribe |
| `wh dm send <name> <msg>` | Send via DM |
| `wh dm list` | Your subscriptions |
| `dm enable/disable <name>` | Toggle DM relay |
| `dm sub/unsub <name>` | Subscribe/unsubscribe |
| `dm send <name> <msg>` | Send via DM |
| `dm list` | List subscriptions |
### Settings (`wh set`)
`relay-mode` · `webhooks` · `name-mode` · `image-mode` · `custom-icon` · `custom-name` · `description` · `colour` · `ratelimit` · `slowmode` · `relay-delay` · `log-channel` · `nickname` · `welcome` · `motd` · `rules` · `tags` · `public` · `max-filesize` · `blocked-extensions` · `freeze` · `silent` · `nsfw-gate` · `sync-edits` · `sync-deletes` · `sync-reactions` · `sync-replies` · `sync-stickers` · `sync-threads` · `sync-pins` · `sync-typing` · `forward-embeds` · `strip-everyone` · `strip-roles` · `strip-users` · `channel-override`
### Social
| Command | Description |
|---------|-------------|
| `karma enable/disable/check/leaderboard` | Karma system |
| `starboard enable/disable` | Cross-network starboard |
| `highlight add/remove/list` | Keyword notifications |
| `profile [user]` | View user profile |
### Moderation (`wh mod`)
`ban/unban` · `mute/unmute` · `ban-server/unban-server` · `mute-server/unmute-server` · `allowlist-add/remove` · `purge`
### Phase 4 — New in v3.3.0
| Command | Description |
|---------|-------------|
| `mirror add/remove/list` | One-way receive-only channels |
| `poll create/close/list` | Network-wide polls with voting |
| `afk <name> [reason]` | Set AFK status |
| `ignore add/remove/list` | Personal ignore list (DM relay) |
| `autoreply add/add-regex/remove/cooldown/list` | Staff auto-responses |
| `bookmark save/list/clear` | Save messages for later |
| `colour <name> <hex>` | Personal embed colour |
| `quiet <name> <start> <end> [offset]` | Quiet hours (DM mute) |
| `quiet-off <name>` | Disable quiet hours |
| `analytics <name>` | Activity dashboard |
| `health <name>` | Channel permission audit |
| `bridge add/remove/list` | Network-to-network bridging |
### Auto-Moderation (`wh automod`)
`enable/disable` · `anti-spam` · `anti-mentions` · `anti-caps` · `anti-invite` · `anti-link` · `anti-zalgo` · `anti-spoiler` · `anti-emote-spam` · `anti-newlines` · `anti-raid` · `status`
### More
| Category | Commands |
|----------|----------|
| **Staff** | `wh staff add/remove/list` |
| **Invites** | `wh invite create/vanity/use/revoke/list` |
| **Filters** | `wh filter add-word/remove-word/add-regex/remove-regex/list` |
| **Starboard** | `wh starboard enable/disable` |
| **Karma** | `wh karma enable/disable/check/leaderboard` |
| **Highlights** | `wh highlight add/remove/list` |
| **Blackout** | `wh blackout add/clear/list` |
| **Profiles** | `wh profile <name> [@user]` |
| **Global** | `wh global ban-user/unban-user/ban-server/unban-server/list` |
### Utility
| Command | Description |
|---------|-------------|
| `announce <name> <msg>` | Broadcast to all channels |
| `schedule <name> <mins> <msg>` | Schedule a message |
| `search <name> <query>` | Search message history |
| `discover` | Browse public networks |
| `backup <name>` / `restore` | Backup & restore |
| `debug [name]` | Diagnostic info |
---
## 📊 Repository Structure
## Architecture
```
EveCogs/
├── README.md
├── LICENSE (MIT)
├── info.json (repo metadata)
├── wormhole/
│ ├── __init__.py
│ ├── info.json
│ ├── utils.py
│ └── wormhole.py (2,200+ lines, 50+ commands)
└── newhelpmenu/
├── info.json
└── wormhole/
├── __init__.py
├── info.json
└── newhelpmenu.py (1,100+ lines, 50+ commands)
├── utils.py (403 lines — embeds, filters, automod, helpers)
└── wormhole.py (3,376 lines — main cog, 70+ commands, relay engine)
```
## 📄 License
## License
MIT — see [LICENSE](LICENSE).
## 🤝 Credits
Built by [everestmcarthur](https://github.com/everestmcarthur) with assistance from Viktor AI.

View file

@ -3,6 +3,6 @@
"install_msg": "Welcome to **EveCogs**! Use `[p]cog list` to see available cogs.",
"name": "EveCogs",
"short": "A collection of advanced cogs for Red-DiscordBot.",
"description": "EveCogs is a premium cog repository featuring Wormhole — the ultimate cross-server relay system, and New Help Menu — a fully customisable interactive help system with categories, buttons, select menus, themes, search, and favourites.",
"description": "EveCogs is a premium cog repository featuring Wormhole v3.3.0 — the ultimate cross-server relay system with 70+ commands, DM relay, analytics, polls, bridging, auto-mod, and more.",
"type": "REPO"
}

View file

@ -1,10 +1,10 @@
{
"author": ["everestmcarthur"],
"install_msg": "Thanks for installing **Wormhole v3.2.0** — the ultimate cross-server relay!\n\nGet started: `[p]wh create <network-name>` then `[p]wh open <network-name>` in channels you want to link.\n\nFull help: `[p]wh help`",
"install_msg": "Thanks for installing **Wormhole v3.3.0** — the ultimate cross-server relay!\n\nGet started: `[p]wh create <network-name>` then `[p]wh open <network-name>` in channels you want to link.\n\nFull help: `[p]wh help`",
"name": "Wormhole",
"disabled": false,
"short": "The ultimate cross-server message relay with DM relay, starboard, karma, auto-mod, invites & more.",
"description": "Wormhole v3.2.0 connects Discord channels across multiple servers into named networks. Messages, edits, deletes, reactions, replies, stickers, pins, typing indicators, and files are all relayed in real-time via webhooks, embeds, or compact text. Features include: bidirectional DM relay, cross-network starboard, reputation/karma system, keyword highlight notifications, auto-moderation engine (spam/caps/invites/links/zalgo/raid detection), network invite codes with vanity URLs, staff announcements, persistent portal embeds, user profiles and stats, backup/restore, blackout scheduling, message search, scheduled messages, per-channel overrides, network discovery, relay delay, slowmode, purge, audit log, attachment filters, and a global blocklist.",
"short": "The ultimate cross-server message relay with DM relay, starboard, karma, auto-mod, polls, analytics & more.",
"description": "Wormhole v3.3.0 connects Discord channels across multiple servers into named networks. Messages, edits, deletes, reactions, replies, stickers, pins, typing indicators, and files are all relayed in real-time via webhooks, embeds, or compact text. Features include: bidirectional DM relay, cross-network starboard, reputation/karma system, keyword highlight notifications, auto-moderation engine (spam/caps/invites/links/zalgo/raid detection), network invite codes with vanity URLs, staff announcements, persistent portal embeds, user profiles and stats, backup/restore, blackout scheduling, message search, scheduled messages, per-channel overrides, network discovery, relay delay, slowmode, purge, audit log, attachment filters, global blocklist, anonymous mode, one-way mirror channels, network-wide polls, AFK system, personal ignore lists, auto-responses, ephemeral messages, media-only mode, network analytics dashboard, relay health monitoring, message bookmarks, user vanity colours, quiet hours for DM relay, and inter-network bridging.",
"tags": [
"relay",
"crossserver",
@ -18,10 +18,13 @@
"starboard",
"karma",
"dm",
"global"
"global",
"analytics",
"polls",
"anonymous"
],
"type": "COG",
"end_user_data_statement": "This cog stores Discord user IDs, guild IDs, and channel IDs for relay functionality. Per-user data includes message counts, karma scores, keyword highlights, and DM relay subscriptions.",
"end_user_data_statement": "This cog stores Discord user IDs, guild IDs, and channel IDs for relay functionality. Per-user data includes message counts, karma scores, keyword highlights, DM relay subscriptions, bookmarks, AFK status, ignore lists, colour preferences, quiet hour settings, and analytics counters.",
"min_bot_version": "3.5.0",
"min_python_version": [3, 9, 0],
"requirements": []

File diff suppressed because it is too large Load diff