Hub Mod

Hub Mod is a persistent, low-bandwidth Direct Connect client for authorized hub administration. It signs in with one profile configured for the selected hub, keeps the shared live chat workspace available, discovers commands advertised by the hub and its plugins, and records every public command or private message that it queues.

Hub Mod does not invent hub permissions. The account class and the hub's own command catalogue determine what the identity can do. Confirmation adds a review step for high-impact commands; it does not reduce the commands available to a class 10 identity.

Overview

  1. Create a dedicated moderation account in the hub and assign the minimum class required by your policy.
  2. Open Hub Mod from the assigned hub profile, configure the nickname, password, client tag, slots, share, hub counts, ports, and support flags, then save.
  3. Select Connect and wait for Connected.
  4. Select Discover Commands to request hub, Verlihub, Ledokol, Lua, and plugin help.
  5. Review the discovered minimum class and syntax before sending a command.
  6. Check Outgoing Activity for the exact payload, destination, requesting user, and delivery state.

Connection Status

The status uses the same lifecycle as Hub Chat and Hub GPT: Disconnected, Connecting, Connected, Reconnecting, Failed, and Stopped. Connected means the hub accepted the login. Running means the persistent worker still owns the session.

Enable permits the configured identity to run. Connect starts it. Reconnect replaces the current worker with the saved profile. Disconnect stops the socket without disabling the configuration. Disable stops the worker and prevents an automatic start.

Automatic Reconnection waits for the configured interval after a transient failure. Background Low CPU remains the normal persistent mode; Interactive mode enables the full guest and protocol workspace while an owner is actively using the page.

Client Profile

New profiles use HubMOD as the login nickname, HubMOD - hublist.pwiam.com as the default description, and mod as the identity alias. Identity Aliases store alternative names separated by commas or new lines; they do not change the login nickname, account class, or hub permissions.

Hub Mod reuses the Hub Chat and Hub GPT client profile fields. Nickname and Password identify the registered hub account. Client Name, Client Version, and Connection build the client tag. Description, Email, Share Size, Connected Hubs, Registered Hubs, Operator Hubs, Slots, TCP Port, UDP Port, TLS Port, and NMDC support flags reproduce the identity expected by hub rules.

Share and hub-count values are declarations sent by this client; they do not publish files or open listening ports. Use values approved by the hub owner. Passwords are stored as protected secrets and are never printed in the activity table or raw outgoing protocol view.

Manual Chat And Commands

The shared live workspace provides Main Chat, Guests, and Private Conversations without any OpenAI processing. A public message is sent exactly through the hub's main-chat path. A private message includes the selected recipient. The separate Command Console accepts a complete raw command and uses the same delivery paths.

For commands with arguments, start from the discovered syntax, replace placeholders with deliberate values, and read the complete payload before sending. A queued row is not proof that the hub accepted the command; Sent means the worker wrote it to the live connection, while the resulting hub response remains visible in chat and protocol evidence.

Guests

The Guests panel uses the same sortable user table as Hub Chat and Hub GPT. Nickname and Role are left-aligned and sortable; share, slots, tag, addresses, speeds, description, and other columns appear when the hub supplies them. Selecting a current guest can open a private conversation. Guest Activity uses its own vertical disclosure, which can be collapsed without clearing join and leave events.

Private Messages

Private Conversations shows incoming and outgoing messages for the Hub Mod identity. Use it to inspect commands addressed to a hub security bot or to contact a user privately when hub policy permits it. The Outgoing Activity table separately preserves the exact queued payload and recipient.

A conversation can remain visible after the recipient leaves. Confirm the Connected state and current guest presence before sending another message. Never put the hub password, site credentials, or unrelated private data in a command or chat message.

Hub Classes And Command Access

ClassTypical RoleHub Mod Behavior
0Anonymous or unregistered userOnly commands advertised for class 0 or with no reported minimum class are offered.
1Registered userIncludes class 0 and commands advertised for class 1.
2VIPIncludes lower classes and commands advertised for class 2.
3ModeratorIncludes lower classes and ordinary moderation commands advertised for class 3.
4Operator or senior moderatorIncludes lower classes and commands advertised for class 4.
5AdministratorIncludes lower classes and administration commands advertised for class 5.
10Hub owner or masterEvery syntactically valid command is available, even when discovery reports another minimum class. There is no denylist or hidden command exception.

These names are common Verlihub conventions, not a universal DC++ standard. The selected class must match the account created in the actual hub. A lower class cannot use a command whose discovered minimum class is higher. An unknown minimum class remains unknown rather than being guessed.

Command Discovery

Discovery sends the read-only help and inventory probes !help, +help, !commands, +commands, !pluglist all, !lstplug, !plugins, !lualist, !luainfo, !lua, and !ledohelp. Probes are paced instead of sent as one burst. It also reads NMDC $UserCommand menus and follows detected plugin help commands. Responses are parsed into invocation, syntax, description, category, source, and minimum class while the unmodified help evidence is retained.

Different hubs use different prefixes and aliases. Discovery therefore learns from the connected hub instead of relying on one hard-coded Verlihub list. Run it again after changing plugins, scripts, permissions, or the Hub Mod class. Commands no longer returned are marked unavailable rather than silently deleted.

Verlihub Commands

Verlihub commonly advertises commands through $UserCommand frames and help text containing class requirements. Hub Mod reads both. Menu categories become catalogue categories, the command token becomes the invocation, and the declared class becomes the minimum class.

A Verlihub installation can rename prefixes, disable commands, or add scripts. Treat the connected hub's current help as authoritative. Use the command's displayed syntax and confirm the final nickname, duration, reason, class, or configuration value before sending.

Ledokol

Ledokol script packs commonly expose !ledohelp or mention another help entry in their banner. Hub Mod prioritizes Ledokol in the plugin list, requests its help, and catalogs the commands that the response exposes. The installed pack and version determine the actual syntax.

Lua And Other Plugins

Hub Mod detects Lua announcements and plugin names such as Plugin: floodprotect.lua. When the evidence contains a help command, the worker requests that command once per discovery run and stores its returned usage. The Plugins table shows the detected name, version, help command, and evidence.

Not every script advertises itself or provides machine-readable help. If a plugin is visible but no help command is detected, use its documented hub command manually and rerun discovery after the plugin publishes help. Hub Mod must not guess undocumented arguments.

High-Impact Command Confirmation

Commands that appear to ban, kick, remove, reload, restart, stop, reconfigure, alter classes, or execute Lua/plugin actions require the confirmation checkbox. The checkbox forces the owner to reread the exact payload and destination. It does not change hub authorization and does not permanently block the command.

For class 10, every syntactically valid single-line payload of at most 240 characters remains executable after any required confirmation. The only rejected payloads are empty, too long, or contain newline, carriage-return, or NUL characters that cannot be a safe single hub message.

Outgoing Activity And Privacy

Outgoing Activity records the exact message, public or private destination, requesting website user, confirmation state, queue time, and delivery result. Discovery probes are also recorded. Use this table with the visible hub response to audit what Hub Mod actually attempted.

The activity record is operational evidence and can contain moderator-entered reasons or nicknames. Limit access to assigned hub owners and administrators. Exact command and private-message payloads are encrypted at rest and decrypted only for authorized owners and administrators viewing or executing them. Passwords remain outside this table; do not paste secrets into command arguments, chat, screenshots, or support tickets.

Hub Mod Troubleshooting

ProblemInspectRecovery
Hub Mod remains disconnectedAvailability, Enabled state, hub endpoint, nickname, password, and Last Error.Correct the saved profile, then Connect once.
The hub rejects the identityRegistered account, duplicate nickname, class, share, slots, hub counts, and client tag.Make the configured profile match the approved hub account, then Reconnect.
No commands are discoveredConnected state, main-chat permission, help prefix, hub bot replies, and raw response.Run the correct help command manually, then rerun discovery after the response is visible.
A plugin is listed without commandsPlugin evidence and Help Command.Send the advertised plugin help command; do not invent arguments.
A lower class cannot send a commandSelected Hub Class and discovered Minimum Class.Use an authorized account with sufficient class or choose an allowed command.
A class 10 command requests confirmationThe exact payload and confirmation checkbox.Review and confirm it; confirmation never removes class 10 access.
An activity remains queuedWorker, Connected state, and Last Error.Restore the connection; do not submit duplicates until the queue state is known.
The page shows old guests or messagesRuntime Mode and latest connection state.Switch to Interactive and allow the current snapshot to replace stale browser state.

Read Hub Chat for the shared live client and Hub GPT for the OpenAI-backed bot. Return to Hub to choose an assigned hub.

Parent Page

Return to Hub for hub ownership and diagnostic guidance.

Icon Reference

IconLabelWhat It Does
Hub ChatAdmin-only tool that connects to a hub as a configurable diagnostic user and shows raw hub responses, chat lines, private messages, and user-list data returned during the session.
Hub ConnectionIdentifies the saved hub endpoint and login profile used to open and maintain this Direct Connect session.
Raw Hub ResponseShows the exact protocol lines received from the hub so an administrator can verify replies, errors, and server commands.
Raw Hub RequestsShows the redacted protocol lines sent by the client so an administrator can verify exact commands without exposing secrets.
StartingMeans the worker is opening the socket and completing the Direct Connect login handshake; chat is not ready yet.
ConnectedMeans the hub accepted the login and the client can receive live traffic and send commands allowed for that account.
ErrorMarks a session that could not start or continue; the accompanying details identify the failed connection or worker step.
ClosedMeans the live socket and worker session have ended, so no further hub traffic or messages can be sent.
Switch To BackgroundSwitches to the low-bandwidth persistent mode that keeps public and private messages connected while pausing expensive diagnostics.
Switch To InteractiveRestores full live updates for guests, raw protocol traffic, and diagnostics while keeping the same hub connection.
Enable Browser NotificationsChoose a notification mode, then enable browser permission.
Restart SessionStops the current worker and starts a new session with the saved connection and client-profile settings.
ReconnectCloses the current socket and immediately attempts a fresh login with the same saved session settings.
Close SessionEnds the worker and hub connection intentionally; the saved configuration remains available for a later session.
Collapse Hub ChatCollapses Hub Chat into a left-side rail and expands Guests to the full workspace width without closing the session.
Expand Hub ChatRestores Hub Chat from the left rail and returns Hub Chat and Guests to their normal side-by-side widths.
Collapse GuestsCollapses Guests into a right-side rail and expands Hub Chat to the full workspace width.
Expand GuestsRestores Guests from the right rail and returns both panels to their normal side-by-side widths.
SendQueues the entered public message or hub command for delivery through the active logged-in session.
GuestsLists users currently reported by the hub, including role, presence, client, share, and available identity details.
Search Guests By NicknameFilters the displayed guest list by nickname without sending a search request or command to the hub.
MessageOpens or returns to a private conversation with the selected guest without sending a message by itself.
ConversationsLists private-message threads kept for this session, including unread state and whether each guest remains online.
Regular Guest RoleA gray user marker beside a nickname in the Guests table means the hub reported neither operator nor bot privileges.
Bot RoleA silver robot marker beside a nickname in the Guests table means the hub identified that session as a bot.
Operator RoleA gold key marker beside a nickname in the Guests table means the hub granted operator privileges to that session.
Login IdentityGroups the nickname, password, client tag, share, slots, and other identity values advertised during hub login.
NMDC Support FlagsChoose the NMDC $Supports flags sent during login. BotINFO is off by default for normal chat-client behavior.
Guest JoinedShown in Guest Activity when the hub announces that a nickname entered the hub; no administrator action is required.
Guest LeftShown in Guest Activity when the hub announces that a nickname left or disconnected from the hub.
Sortable ColumnAppears in a Guests or Conversations table header when that column is available for sorting but is not the active sort.
Ascending SortAppears in the active table header when values are ordered from lowest to highest; select it to reverse the order.
Descending SortAppears in the active table header when values are ordered from highest to lowest; select it to reverse the order.
Close Private ChatRemoves the selected private conversation from the Conversations list; it does not disconnect or ban the guest.
Guest OnlineA green presence marker in Conversations means the guest is currently present in the connected hub.
Guest OfflineA gray presence marker in Conversations means the guest is no longer present, while the saved conversation remains available.
Open HelpOpens this help article.
Hub ModIdentifies the persistent moderation workspace used by a hub owner to inspect traffic, discover commands, and administer the hub.
Client ModeSets the M value in the NMDC client tag. Active sends M:A; passive sends M:P.
Connection StatusReports whether Hub Mod is enabled, whether its worker and socket are running, when it connected, and why the last attempt failed.
Runtime And DiscoveryGroups the saved bot identity, advertised client profile, reconnect policy, assigned hub class, and command-discovery schedule.
Command ConsoleProvides the exact command payload, main-chat or private-message destination, recipient, and required high-impact confirmation.
Discover CommandsQueues hub and plugin help requests, including the available help command, then records the commands and Lua plugins returned by the hub.
Available Commands And PluginsLists every discovered command and plugin with usage, source, minimum class, and whether the configured Hub Mod account may run it.
Outgoing ActivityAudits each exact outgoing main-chat command or private message with its time, requester, destination, and delivery status.

Parent Page