On This Page
Hub GPT connects a configured AI-powered Direct Connect bot to one assigned hub. It can answer addressed main-chat questions, accept private-message prompts, run implemented server-side commands, and use the selected OpenAI provider configuration. The same page gives authorized hub owners and administrators a live monitor, usage records, connection actions, and the bot configuration that determines future requests.
This guide serves hub users and authorized administrators. Users need to know how to address the bot and interpret a reply. Administrators need the bot identity, provider request, limits, recovery, record, and privacy behavior. The rendered reference after this guide comes from the live form inventory so a saved field cannot silently disappear from documentation.
Overview
Hub GPT is a configured bot identity, not a public bot-creation service and not a replacement for Hub Chat. The signed-in user must own the selected hub through this website or hold the appropriate administrator role before opening configuration. The hub must still permit the bot nickname, password, class, private-message route, and public-chat behavior.
Use a dedicated low-privilege bot account. A class 3 account is a common hub-side baseline when the hub software needs it for bot commands, but this application does not grant hub permissions or require operator rights. Give only the permissions your hub policy requires; never reuse an owner password as a shortcut.
- Create or select a dedicated bot account that the hub accepts, then record only the credentials needed for that account.
- Set the bot nickname, aliases, language, client profile, and NMDC capability flags so they match the hub policy.
- Choose one valid OpenAI key source, an allowed model, instructions, and limits that fit the hub's expected traffic.
- Save the configuration, start the bot with Enable or Connect, then confirm the Status panel reports a connected worker before testing it.
Hub GPT Versus Hub Chat
| Hub Chat | Hub GPT |
|---|---|
| Connects a user-controlled browser session for an authorized hub user. | Connects the configured bot identity for the hub. |
| Messages are sent manually through the visible composer. | Replies can be generated after an addressed main-chat or private prompt. |
| Uses the user's session identity and Hub Chat profile. | Uses bot credentials, profile, provider options, limits, and logging policy. |
| Is documented in Hub Chat. | Embeds a monitor but does not become the same user session. |
Switching pages does not merge credentials, messages, permissions, records, or worker lifecycle. The live-client visual language is shared, but a bot must be configured and managed as its own identity.
Access States And User Invocation
The configuration route is for the assigned hub owner or an administrator, not for anonymous users. The bot's Access Status has three distinct values: Public makes the bot available under its connection and hub policy, Admin restricts it to the supported administrative context, and Hidden prevents normal public availability. Access status, Enabled, and Connected are not interchangeable: a bot can be public but disconnected, enabled but connecting, or hidden while stopped.
In main chat, address the configured nickname or alias. The parser accepts an optional @, then the name followed by end of text, whitespace, a comma, colon, semicolon, or hyphen. For example, HubGPT: help, @HubGPT weather Warsaw, and helper, stats work when those names are configured. In private chat an addressed prefix is optional: an unprefixed non-empty message is a prompt.
Commands use the first prompt token and their localized names or aliases. Ordinary prompts reach the provider only after connection, provider configuration, input checks, and enforced quotas succeed. A disabled, disconnected, busy, limited, or unavailable bot cannot promise a reply; inspect status or the relevant error rather than treating silence as acceptance.
Token Usage
Token Usage aggregates the selected reporting period for provider-backed requests. It separates questions and replies from input tokens, cached input tokens when reported, output tokens, total tokens, failed requests, shared-key usage, and remaining shared-key allowance where active. Changing the reporting range changes included records; it does not reset billing or delete records.
One message is not always one provider request. A server-handled command can return with no OpenAI tokens, while failed or legacy records can have blank token fields because no metric was supplied. Questions and replies describe application records; tokens measure provider processing. Use totals for trends and Recent GPT Records for an individual request.
Hub Chat
The embedded live client monitors the bot's current connection: displayed nickname, hub address, Main Chat, private conversations, runtime mode, and notification controls belong to the bot monitor. Authorized hub owners and administrators can use available monitor composers to inspect bot message paths, but changing a monitor view does not save GPT configuration.
Read Hub Chat for the shared client behavior. On this page, GPT settings are persisted by the configuration panels and an active save attempts a worker restart; monitor controls alone do not change a stored key, prompt, model, or limit.
Connection Status and Hub Connection use the same order, titles, profile layout, and NMDC Support Flags controls as Hub Chat and Hub Mod. Guest Activity, the live client, and Private Chat can be collapsed vertically without stopping the worker or clearing their state.
Status And Session Actions
Hub Connection and Connection Status remain visible in every state. When the page loads while the client is Connecting, Connected, or Reconnecting, both card bodies start collapsed so the workspace stays readable; expand either header to review its settings or status.
The Status card uses the same status layout and live polling as Hub Chat and Hub Mod, including Last Disconnected. Product-specific access settings and lifecycle actions remain separate, while the shared fields keep connection checks consistent across all three tools.
Status shows the current connection state, hub endpoint, bot nickname, Access Status, Enabled, retry count, Last Connected, and Last Error. Worker states include disconnected, connecting, connected, reconnecting, failed, stopped, and deployment-stopped. Status is operational evidence, while Access Status controls availability and Enabled indicates whether the bot is intended to run.
| Action | What It Changes | When To Use It |
|---|---|---|
| Enable | Sets access to Public and saves the action. | Make a configured bot available before connecting. |
| Disable | Stops the worker and changes access to Hidden. | Take the bot out of normal use without deleting configuration or records. |
| Connect | Makes the bot Public and starts it when no worker is active. | Start a correctly configured stopped bot. |
| Reconnect | Stops a current worker when necessary and starts one with saved settings. | Recover after correcting a transient failure. |
| Disconnect | Stops the worker and marks the connection stopped without changing configured access. | Perform maintenance without disabling the bot. |
| Save | Persists submitted settings; an active worker is restarted so it reloads them. | Apply a planned change and check the outcome. |
- Save a complete identity and provider configuration before requesting a connection.
- Choose Enable or Connect, then wait for the saved nickname and endpoint to reach Connected.
- Send one harmless addressed prompt or permitted private message and inspect the resulting record.
- Use Disconnect for planned maintenance, Disable to withdraw normal availability, and Reconnect only after correcting a reported failure.
These actions do not delete GPT records, service-bot audits, commands, or stored configuration. Enable and Connect only succeed when the saved bot identity and hub endpoint can be used; a success flash is not evidence that the hub accepted the nickname until Status reaches Connected. On failure, read Last Error, correct the saved cause, and then use Connect or Reconnect once.
Credentials
New profiles use HubGPT as the login nickname and HubGPT - hublist.pwiam.com as the default description. ChatGPT and gpt are included as main-chat address aliases by default; aliases do not change the actual login nickname.
Bot Nickname is the Direct Connect login name. Hub nickname rules, registration, duplicate checks, and passwords still apply. Changing it is connection-sensitive: save, then confirm the worker restart or reconnect after correcting a rejected name.
Bot Aliases are additional main-chat address names; they never change the login nickname. Separate aliases with commas or new lines, and avoid names used by a hub user, another bot, or a reserved command. A bot named HubGPT with helper, assistant can receive assistant: help. Private messages do not need an alias because an unaddressed private message is already a prompt.
Hub Password is used only when the hub requests authentication. The stored secret is never rendered. A blank protected input keeps its saved value; use the inline clear action to remove it, then save and reconnect. Bot Language is the default locale for future bot and command text; service implementations can use saved per-user choices. Test a harmless command after changing it.
Advanced Client Profile
Profile values become Direct Connect identity metadata. They do not open ports, publish files, or grant privileges. Inaccurate values can fail a hub rule or tag check, so use values that match the bot's intended role. Saving an active profile uses the normal configuration restart path, which is when the hub receives new metadata.
| Field | Protocol Meaning | Practical Rule |
|---|---|---|
| Fake Share | Reported share size in bytes. | Zero is literal reported metadata; it does not expose files and can fail a minimum-share rule. |
| Normal Hubs | Reported normal connected-hub count in the client tag. | Use a value that matches the bot role. Zero is metadata, not a privilege change. |
| Registered Hubs | Reported registered connected-hub count in the client tag. | Zero does not unregister the bot or change the hub account class. |
| Operator Hubs | Reported operator connected-hub count in the client tag. | Zero does not remove operator rights, and a positive value does not grant them. |
| Open Slots | Reported upload-slot count. | Use a realistic value; zero can conflict with hubs requiring slots. |
| TCP Port | Optional listening TCP-port metadata. | Blank omits it; values from 1 to 65535 report metadata but do not open a server port. |
| UDP Port | Optional UDP-port metadata for compatible protocols. | Blank omits it; values from 1 to 65535 report metadata but do not create UDP reachability. |
| TLS Port | Optional secure-listener metadata. | Blank omits it; values from 1 to 65535 do not change whether the hub connection uses NMDCS or ADCS. |
| Client Description | Optional client identity text. | Keep it short, accurate, and free of secrets; blank omits it. |
| Client Email | Optional NMDC identity detail. | Leave it blank unless a hub rule requires it; do not use a private mailbox unnecessarily. |
NMDC Support Flags
NMDC Support Flags are capabilities advertised during the NMDC/NMDCS $Supports exchange. They do not create a hub capability or permission; they only describe what the client claims it can understand. Use standard defaults unless reproducing a compatibility problem, then reconnect so the next login sends the new advertisement.
| Flag | Compatibility Purpose | Use With Care |
|---|---|---|
NoHello | Avoids duplicate hello traffic. | Changes the login exchange, not a hub greeting rule. |
NoGetINFO | Avoids unnecessary per-user GETINFO traffic. | Missing detail is not a permission change. |
UserIP2 | Supports newer user/IP frames. | It does not reveal an address by itself. |
BotList | Supports bot-list compatibility. | It does not classify every account as a bot. |
FailOver | Supports redirects and failover. | Do not trust an arbitrary redirect without hub policy. |
NickRule | Supports nickname-rule exchange. | The hub still decides whether the nickname is valid. |
HubURL | Supports hub URL exchange. | It is metadata support, not a redirect command. |
ExtJSON2 | Supports extended JSON metadata. | Use only with compatible peers. |
BotINFO | Supports bot-specific INFO behavior. | Off by default for normal chat-client behavior; enable only for a deliberate bot test. |
MiniSlots | Supports fractional slot counts in user information. | Advertises parsing support; it does not create or divide upload slots. |
XmlBZList | Supports compressed XML file lists. | Advertises file-list compatibility; it does not publish a file list for this bot. |
ADCGet | Supports ADCGET file, file-list, and hash-tree requests. | Advertises transfer syntax support; it does not authorize a transfer. |
TTHL | Supports Tiger Tree leaf-list transfers. | Advertises hash-tree compatibility only. |
TTHF | Supports Tiger Tree Hash file transfers. | Advertises transfer compatibility only. |
OpenAI Client
Use Global API Key selects the site's shared key only when global sharing is enabled. With it enabled, the resolver uses global model/provider values for the shared-key request, while local Instructions can still override the global default. Disabling it requires a usable hub-specific direct key or secret reference; otherwise provider requests fail without exposing a secret.
OpenAI API Key is a write-only hub-specific secret. A blank input preserves the current key, and clear removes the direct key and secret reference together. API Key Secret Reference is an environment-variable name, not its secret value; the resolver uses it only when no direct encrypted key is present. A missing or invalid reference resolves to no key.
Model must be allowed by the global policy and affects future cost, latency, reasoning, streaming, tools, and response-format compatibility. Responses API URL, Organization, and Project are optional provider request settings; an incompatible gateway or mismatched ID can return authentication or request errors. Never paste a key into an article, record, log, or screenshot.
Max Output Tokens is a provider output budget, separate from the input-character and hub line limits. It accepts 16 or more; a low value can truncate a reply and a high value can increase cost and latency. Timeout Seconds controls provider requests, not the hub socket. Max Retries controls transient provider retries, not hub reconnect attempts. Instructions are system-level future-response guidance: keep them factual and free of secrets, then test one harmless prompt after saving.
Generation Settings
Temperature accepts values from 0 to 2, and Top P accepts values from 0 to 1. Lower values tend toward repeatability; higher values broaden variation. Change one sampling control at a time because changing both makes a new reply style, cost, or reliability problem difficult to attribute.
Reasoning Effort and Reasoning Summary are model-dependent. Use only values the selected model supports; incompatible combinations fail at the provider. Stream Response controls compatible provider response delivery. Store Response controls provider-side storage and is separate from this application's Log Responses setting. Parallel Tool Calls is provider-facing and does not turn Hub Commands into provider tools.
Advanced OpenAI Payload
Metadata JSON must be an object, Tools JSON an array, Tool Choice the supported plain-text or JSON form value, and Response Format JSON an object. The form validates JSON before saving; correct malformed text instead of silently sending it. Keep examples free of keys, user identifiers, and private hub text.
{"source":"hub-gpt"}
[{"type":"function","name":"lookup_status","parameters":{"type":"object","properties":{}}}]
{"type":"text"}
Tools JSON defines offered provider tools. Tool Choice constrains or selects them, so a choice naming a missing or unsupported tool can fail. Response Format can demand structured output that does not fit normal Direct Connect text; test the complete request and hub-safe rendering before public use.
Rate And Token Limits
Rate Limit Per User is enforced as an hourly cap on provider-backed API questions for the resolved user/nickname identity; zero or blank disables that check. Input Limit is measured in Unicode characters with mb_strlen, not tokens; zero or blank disables the current input check. Both controls reduce accidental loops and abusive prompts before a provider request.
Main Chat Response Line Limit and Private Response Line Limit format a bot reply into hub messages; they are not OpenAI token limits. Zero sends one complete chunk, while a positive value splits output into the configured line-sized chunks. Blank required submissions preserve the saved value.
Rate Limit Per Hub, Daily Token Limit, and Monthly Token Limit are persisted fields, but the current request path does not enforce a hub-wide request or daily/monthly token rejection from them. Use the enforced per-user limit and shared-key allowance for automatic blocking, and Token Usage for daily/monthly cost observation until an implementation explicitly adds enforcement.
Safety Identifier controls whether provider requests receive the application's stable hashed identity; the raw source is not shown. Shared-Key Messages and Shared-Key Period apply only when shared-key use is active. A positive allowance rejects further provider-backed questions for the hub when the hourly, daily, weekly, or monthly period reaches its cap; zero or no value disables it.
Lifecycle Messages
Global configuration supplies the default messages for a confirmed connection, an intentional disconnect, and a planned reconnect. All three are enabled by default for new and migrated installations. An administrator may disable a message globally, and each hub may inherit, enable, or disable it explicitly.
For each event, the hub owner can choose Use Global Default, Enabled, or Disabled. A blank local message inherits the global template; a local template must contain 1 to 2,000 characters and may use only {bot}, {hub}, and {commands}.
- Connected: sent once after login is confirmed and the connection epoch is marked connected.
- Disconnecting: sent before an intentional close while the socket is still usable.
- Reconnecting: sent before a manual, planned, or deployment restart.
The resolved message is bounded to an NMDC-safe length and stripped of control characters. An unknown placeholder blocks delivery. No departure message is attempted after an unexpected socket loss, and an ambiguously sent message is never retried.
Calendar Notifications
Calendar has two independent surfaces. The private calendar command queries reviewed, versioned local catalogs and IANA timezone data whenever the command and at least one effective provider are enabled. The notification setting controls only the scheduled public digest. Disabling notifications never disables private calendar questions. OpenAI may classify a natural date-range question, but it never invents, corrects, schedules, or delivers an event.
Global And Per-Hub Settings
Super administrators configure the global policy under Calendar Config. Hub owners configure only the permitted overrides in the Calendar Notifications card on their Hub GPT page. Settings resolve in the order shown below.
Calendar Config stores one Daily Digest Template for each enabled locale. Hub GPT first selects the template for its account locale, then uses English when that locale row is unavailable. A valid Calendar Digest Template Override still takes precedence for that hub. Every template requires {date} and {events}; {bot} and {event_count} remain optional.
| Setting | Scope And Valid Values | Effective Behavior |
|---|---|---|
| Enable Daily Calendar Notifications | Global Boolean; enabled by default. | Master switch only for automatic public delivery. It does not disable private calendar commands. |
| Enabled Calendar Providers | Global list of registered provider IDs; all reviewed providers are selected by default. | Defines the inherited source set for both private queries and public digests. Unknown IDs and arbitrary URLs are rejected. |
| Hub-Local Send Time | Global wall time from 00:00 to 23:59; default 09:00. | The connected worker evaluates this time in the effective hub timezone. |
| Default Calendar Timezone | Optional IANA name. | Falls back to the application timezone when blank. It never uses an individual user's reminder timezone. |
| Include Timezone Change Notices | Global Boolean; enabled by default. | Allows timezone_transitions to report actual IANA offset changes for the effective hub timezone. |
| Maximum Events Per Digest | Global integer from 1 to 25; default 10. | Bounds visible event names; remaining matches become one translated overflow count. |
| Daily Digest Templates | One global value per enabled locale, up to 500 characters each. | Uses the account locale, then English. Each value requires {date} and {events}; {bot} and {event_count} are optional. |
| Daily Calendar Notifications | Per hub: Use Global Default, Enabled, or Disabled. | Enabled still depends on the global master switch. Disabled suppresses this hub's automatic digest. |
| Calendar Provider Policy | Per hub: inherit or replace. | Inherit uses the global list. Replace uses exactly the next field, including an intentionally empty set. |
| Calendar Provider Replacements | Per-hub list of registered provider IDs. | Controls scheduled delivery, preview results, and private command results for this hub. |
| Calendar Send Time Override | Optional per-hub HH:MM. | Blank inherits the global wall time. |
| Calendar Timezone Override | Optional per-hub IANA name. | Blank inherits the global timezone, then the application timezone. |
| Calendar Digest Template Override | Optional per-hub safe template. | Blank inherits the global template. The same placeholder and length validation applies. |
Reviewed Providers And Event Meaning
| Provider ID | Primary Reviewed Source | Coverage |
|---|---|---|
international | United Nations Observances, with event-specific reviewed sources recorded in the catalog. | International observances, shared cultural dates, Easter-relative dates, and the northern astronomical summer solstice. |
united_states | United States Office Of Personnel Management Federal Holidays. | United States federal holidays, their observed weekday substitutions, and clearly labeled regional conventions. |
poland | Polish Journal Of Laws 2025, Item 296. | Polish statutory holidays and separately classified cultural dates such as Fat Thursday. |
russia | Labour Code Of The Russian Federation, Article 112. | Russian non-working public holidays from the reviewed rule set. |
timezone_transitions | The installed IANA timezone database through PHP DateTimeZone. | Actual offset changes for the effective timezone; it does not assume United States or European DST rules. |
A fixed holiday remains on its actual calendar date. When an authority shifts its observance away from a weekend, the separate observed workday can appear on the preceding or following weekday. Adjacent dates can therefore contain distinct actual and observed entries with different labels. A public holiday is a legal category from the cited jurisdiction; an international observance is not automatically statutory. Cultural dates, astronomical seasons, regional conventions, and IANA timezone transitions remain separate event categories.
Preview And Private Calendar Command
Preview Calendar Digest builds a local result from the current unsaved global form values and selected preview date. It does not connect to a hub, send a public or private hub message, reserve a delivery row, or alter delivery history. Provider health on the same page shows source revision, covered years, recurrence rules, and validation status. An invalid provider fails closed while healthy providers remain available.
The deterministic command supports calendar today, calendar tomorrow, calendar this week, calendar this month, calendar next month, calendar YYYY-MM-DD, calendar YYYY-MM-DD to YYYY-MM-DD, calendar providers, and calendar help. Add one enabled provider ID before or after the period, for example calendar poland this month. Each matching day is listed with its own source-backed event text.
A natural question such as Which Polish holidays are next month? can use GPT only to extract the requested range and regional scope. The application validates that structure, calculates relative boundaries in the effective hub timezone, maps the region to an enabled provider, and queries the local catalog. If classification is unavailable or unsafe, it returns the exact command examples instead of inventing dates. Every lookup replies privately, even when requested from main chat, and never changes the automatic delivery ledger.
Scheduling, Restart Recovery, And Delivery States
The active worker checks the effective hub-local schedule at a bounded interval and once after login. Before the scheduled time it does nothing. At or after that time it may claim that local date once. A healthy run also records and sends one explicit no-event notice when the selected catalogs contain no matching date, so a scheduled check is observable instead of silently skipped. After a restart or reconnect it may perform one same-day catch-up, but it never publishes yesterday's event list on a later local date. Spring-forward gaps and repeated fall hours are resolved from the effective IANA timezone, and the unique hub-account/local-date ledger prevents a second worker from claiming the same digest.
| Stored State | Meaning | Automatic Next Step |
|---|---|---|
pending | The local date is reserved and delivery is eligible when due. | A worker may acquire the bounded lease. |
dispatching | The write-ahead claim was stored before the socket send began. | No competing worker may send the same date. |
sent | The connection confirmed the socket write. | Terminal; never replay automatically. |
failed_before_write | Failure was proven to happen before any socket write. | May return to pending for a bounded safe retry. |
uncertain | The connection cannot prove whether a started write reached the hub. | Terminal for automation; do not risk a duplicate public message. |
If a digest is absent, check the global switch, hub override, effective provider list, provider validation, local time, IANA timezone, worker connection, and the current ledger state in that order. An empty provider replacement or a date with no matching events is a valid no-send result. Do not change uncertain to pending merely to force a retry; first determine from hub evidence whether the original message appeared.
Reconnect And Logging
Reconnect Enabled, maximum attempts, and interval govern Direct Connect worker recovery. They are separate from OpenAI Max Retries: reconnect handles the worker/socket, while Max Retries handles provider requests. Avoid a short interval or high attempt count until the endpoint, nickname, password, or TLS problem is understood.
Restart After Deployment and Stop On Deployment govern lifecycle around deployment; they do not guarantee the external hub remains reachable. Log Prompts controls prompt text, Log Responses controls reply text, and Log Private Prompts is an additional private-prompt gate: private text is recorded only when both Log Prompts and Log Private Prompts are enabled. Disabled logging writes an explicit marker instead of the original prompt or response.
OpenAI Store Response is provider-side storage; Log Responses is the application record field. They are independent privacy choices. Restrict record access and do not infer that an empty preview means no external system retained data.
Official Weather Destinations
The weather command gets conditions from the configured provider, then adds links from official public meteorological services. When the resolved city exists in the bundled WMO catalogue, the forecast opens that exact city in the WMO World Weather Information Service (WWIS). Hourly, radar, and historical links remain separate because their coverage can be national, regional, station-specific, or centered on the resolved coordinates.
| Capability | Link Scope | Behavior |
|---|---|---|
| City Forecast | Resolved WMO city | Shown once when the city and country match the offline WMO catalogue. It opens the city forecast instead of a repeated national landing page. |
| Hourly And Radar | Official station, coordinates, region, or country | Shown only when the responsible authority publishes that capability. The reply names the real coverage and never labels a general page as hourly or radar. |
| Historical Observations | Resolved coordinates and requested date | Historical ranges keep one date-specific link per day. Future ranges show the shared forecast, hourly, and radar destinations once after the daily outlooks. |
Examples: Chicago uses coordinate-specific NWS forecast, hourly, and radar links. Warsaw and Krakow use exact WMO city forecasts plus coordinate-centered IMGW radar. Moscow uses a Hydrometcenter city forecast and European Russia radar, while Vladivostok is not given that regional radar. Beijing uses WMO, CMA station 54511, and NMC radar. If no exact city match exists, Hub GPT uses a configured national authority page or WWIS. Each final URL appears once.
Reminders And Counters
Hub GPT can keep durable reminders for a verified user. The creation confirmation always replies in the channel that received the request. The due notification defaults to that same channel, but an explicit public or private target changes only the stored delivery destination. A private request can therefore schedule a public reminder, and a main-chat request can schedule a private one. Exact commands work without OpenAI. A natural request is accepted only after the configured model returns a constrained intent that the application validates locally; the model never calculates the due instant, chooses the recipient, or sends a hub command. The creation confirmation names the stored public or private target before it shows the schedule, letting the user verify the destination immediately.
Use reminder 10m check the oven, reminder in 1 minute test, reminder 2h call home, reminder 1d renew the certificate, or reminder tomorrow at 09:00 submit the report. Durations use m, h, or d. counter 2h creates a timer whose completion text is generated by the server. A request such as remind me about eggs in 10 minutes reaches the same validated local scheduler when natural-language classification is available.
To force private delivery, place dm, pm, direct message, or private message before or after the duration. For example, reminder dm 10m private test and reminder 10m pm private test store a private due notification even when requested in main chat. The creation confirmation remains in the original request channel. dm and pm mean the same thing. Omitting a destination preserves the request channel for delivery.
To force public delivery, use main chat or public chat before or after the duration. reminder main chat 10m public test and reminder 10m public chat public test store a main-chat due notification even when the request began in a private message. In that case the creation confirmation stays private. The explicit destination is stored with the reminder, so a later reconnect or restart cannot silently move it to the other channel.
Send reminder list to see active entries in due-time order. Every row contains an opaque ID, original local date and time, IANA timezone, text, status, and remaining duration. Send reminder cancel ID with the exact displayed ID to cancel one active item. IDs and queries are scoped to this Hub GPT bot and the verified user, so another hub or user cannot list or cancel them.
Persistent reminders require one of three durable identity signals: an NMDC operator identity advertised by the hub's live user list, a registered NMDC account verified through a private service-bot lookup, or an ADC CID observed in the authenticated session. The lookup never appears in main chat, and a nickname by itself is not durable identity. The application stores a protected identity hash, last known nickname, locale, reminder text, original expression, original local schedule and timezone, UTC due instant, status, attempts, and lifecycle timestamps. It does not store the account password or raw identity in a reminder.
Active entries begin as pending. A public reminder is sent once to main chat when due and does not depend on the requesting user remaining online. A private reminder is sent to the verified nickname while that user is online; otherwise it becomes overdue and is retried at the next verified login. The confirmation and overdue delivery both state the original scheduled local time. An overdue item remains eligible for the configured retention period, seven days by default, and then becomes expired; delivered, cancelled, and expired rows remain history rather than being silently deleted.
The default policy permits 50 active reminders per verified user, a 365-day scheduling horizon, and seven days of overdue retention. A hub may set lower overrides but a hub owner cannot exceed the global ceilings. A due time must be at least one minute in the future. A malformed request beginning with reminder is first offered to the constrained natural-language classifier; if it still cannot produce a safe schedule, the error returns through the selected destination and includes the complete command examples. Missing text, an incomplete tomorrow request, an unknown or terminal ID, an unverified identity, a full active list, or a date beyond the horizon creates no reminder. Creation and delivery messages omit the opaque ID; reminder list shows it only so the owner can use reminder cancel ID. Identity verification always remains private.
While the user remains online, the connected worker checks due reminders every five seconds. A hub-advertised operator identity is reused directly instead of starting a second service-bot lookup at delivery time. A registered non-operator account still uses the private verification path. This keeps an eligible reminder close to its due time without weakening identity matching; network scheduling can still add a few seconds, but not a full verification timeout.
Reminder Timezone
Use timezone to display the effective reminder timezone, timezone Europe/Warsaw to save an explicit IANA timezone, and timezone reset to remove that preference. An unambiguous city can be resolved through the configured location provider; an ambiguous abbreviation such as CST, a numeric UTC offset, an unknown place, or a place without one reliable IANA result is rejected instead of guessed.
Timezone precedence is explicit user preference, timezone from the user’s saved general location, then the application timezone. The source is shown in confirmations so the user can see why that timezone was chosen. The preference is scoped to the verified user and this bot and survives reconnects and process restarts. Resetting it does not delete a saved weather/news location; it only returns reminder scheduling to the next available source.
The scheduler converts the accepted local schedule to a UTC instant for comparison while retaining the original local date, time, expression, and IANA name for display. This prevents a server timezone or deployment from moving an existing reminder. Daylight-saving time (DST) is validated at creation: a local time that does not exist during a spring-forward gap, or repeats during a fall-back transition, requires a different or more explicit time. Existing UTC due instants are not recalculated when the user later changes timezone.
If a reminder appears late, inspect its original scheduled time, timezone source, current status, destination, and, when private, the user’s verified login state. Use timezone, then reminder list, before creating a replacement. Confirmations and delivery follow the persisted destination. Creation and delivery messages omit the opaque ID; reminder list shows it only so the owner can use reminder cancel ID. Identity-verification traffic always remains private.
Hub Commands
Global commands are maintained by the site and reserved; hub-specific commands cannot overwrite their names or aliases. A command has a normalized name, aliases, locale, description, and reply template. In main chat address the bot first; in private chat the command can be the entire message. Commands do not grant website administration, request secrets, or reveal another user's conversation.
The table documents the commands currently implemented by the request path. A reply can be localized by the bot's default language or the sender's saved language. A command that cannot meet its prerequisite returns a specific usage, configuration, identity, or provider failure; it must not invent a result.
| Command And Invocation | Behavior | Requirements, Storage, And Failure |
|---|---|---|
helpHubGPT: helphelp | Lists the built-in and permitted hub-specific commands available to this bot session, with main-chat and private-message guidance. | It is server-handled and makes no provider request or saved user preference. If an alias or command is not configured for the active locale, use the exact current command name instead. |
usageHubGPT usageusage | Explains safe syntax: address the bot in main chat; send an exact command or normal question in a private message. | It is server-handled and stores nothing. It describes the bot's capabilities but cannot override hub access, account class, private-message, or anti-spam rules. |
statsHubGPT: statsstats | Shows this bot's stored question and answer counts for 1 day, 1 week, 1 month, and lifetime. | It reads local GPT records and makes no provider request. Counts are activity evidence, not an OpenAI bill or remaining balance; an empty period legitimately shows zero activity. |
aboutHubGPT aboutabout | Explains Hub GPT and links to this localized Hub GPT guide for the assigned hub owner. | It is a static server-handled response and stores no user data. The guide link explains the required hub account, configuration, and access path; it does not create a bot for an unassigned hub. |
localeHubGPT: locale pllocale pl | Without an argument it shows the current reply language and supported codes. With a supported code it changes the sender's reply language for this bot and hub. | A normalized hub sender nickname is required to persist the choice. An unsupported code returns the supported-code list; a missing stable sender identity returns an identity failure. It does not change website language, hub configuration, or another user's language. |
weatherHubGPT weather Warsaw, Polandweather | Returns current conditions and a short forecast for an explicit location, the sender's saved general location, a usable hub-provided public address, or the configured server fallback. | A configured weather provider and a resolvable location are required. Weather does not save a location by itself. An unavailable provider, unresolvable place, broad location that cannot identify one forecast point, or unavailable forecast returns a failure instead of a guessed result. |
locationHubGPT: location Warsaw, Polandlocation reset | Resolves and saves a general location for later weather and local-news requests. location reset clears it. | A configured weather provider must resolve the supplied place. When a stable identity exists, the saved label, coordinates, and timezone are scoped to the bot and an HMAC identity fingerprint; otherwise the location is available only for the current session. Invalid or broad unresolved locations return a location failure. |
newsHubGPT news Chicago 50news Warsaw, Poland | Returns configured local headlines for an explicit or resolved location. A final count is bounded by the configured maximum. | A configured news provider is required. News reads a saved location when available but does not create one. If no suitable saved, address-based, or fallback location is available, it uses the configured fallback label; an unavailable provider or empty result returns a service failure. |
sportsports todayHubGPT sport NBA resultssport football today | Requests supported schedules, live events, standings, or completed results. A natural question is interpreted through GPT before the provider search; the application validates the resulting sport, time range, team, country, and competition. It can ask a clarifying question when a required detail is incomplete. | A configured sports provider and enough searchable criteria are required. The bot keeps a short sport conversation context for follow-up clarification; it expires after 10 minutes and is not the explicit memory list. Missing provider data or incomplete criteria returns a provider failure or clarification, not invented scores. |
rememberHubGPT: remember I prefer concise answersremember I prefer concise answers | Stores one fact that the sender explicitly asks the bot to retain for future GPT context. | A stable identity and non-empty text are required. The service accepts at most 20 saved facts, each at most 280 characters, scoped to the bot under an HMAC identity fingerprint. It rejects missing identity, oversized text, or a full memory list; ordinary chat is not automatically copied into this store. |
memoryHubGPT memorymemory | Lists only the explicit facts previously saved with remember, numbered for deletion. | It reads the sender's scoped memory and changes nothing. An empty list is a normal result; it does not expose another identity's facts or temporary conversation context. |
forgetHubGPT: forget 1forget all | Deletes one numbered explicit fact, or every explicit fact when given all. | A valid positive memory number or all is required. An invalid number, unavailable identity, or missing item returns a usage or not-found response. Deletion affects only the saved explicit-memory store, not unrelated records, operational logs, or another user's data. |
reminderreminder 10m check the ovenreminder dm 10m private testreminder 10m pm private testreminder listreminder cancel IDcounter 2h | Creates a reminder or counter, lists active reminders, or cancels one entry by its opaque ID. | A verified NMDC identity (a hub-advertised operator or privately verified registered account) or ADC CID, a valid future time, and non-empty text are required. Entries are scoped to this bot and user and persist across restarts. Without a destination they use the request channel; dm, pm, direct message, and private message force private confirmation and delivery. Invalid syntax returns concrete examples through that destination. |
timezonetimezone Europe/Warsawtimezone reset | Shows, saves, or resets the IANA timezone used to interpret reminder schedules. | An explicit IANA name or one unambiguous city result is accepted. Ambiguous abbreviations and numeric offsets are rejected. Reset falls back to the saved location timezone and then the application timezone; UTC storage and DST validation keep schedules stable. |
calendarcalendar todaycalendar this monthcalendar 2027-01-01 to 2027-01-31 | Lists reviewed calendar events for one day or a bounded period. Natural questions may supply the period and region, but catalog lookup remains local and deterministic. | The command and at least one effective provider must be enabled. The notification master switch does not apply to private queries. Unsupported providers, invalid ranges, or unhealthy catalogs return a private error and never fall back to invented holiday data. |
Custom commands are separate from this built-in list. Keep custom names and aliases distinct from reserved names so a later update cannot change which response a user receives. Do not use templates to claim privileged access, request keys or passwords, or disclose private conversations.
Tic-Tac-Toe
In help, Tic-Tac-Toe appears under Games. The board uses [_] for an empty square and underscores between cells so Direct Connect clients preserve the layout. The open-square line uses your selected language.
tictactoe starts a 3×3 game against the bot. For example, send HubGPT: tictactoe start hard random a1. Choose easy, medium, or hard, then first, second, or random. With an active game, HubGPT: a1 in main chat or a1 privately is a move; a1 and 1a name the same square on the A-C and 1-3 grid. restart, about, and stats remain available.
Hub Statistics
Use stats for this hub only. The overview lists question and answer activity, Tic-Tac-Toe totals by status and difficulty, and the five most-used commands. stats commands lists every command across today, week, month, and lifetime; stats games shows only game totals. No result combines another hub or exposes private report content.
Private Bug Reports
Send bug only in private chat. The bot asks for the affected command or action, then a comment, then confirmation. Reply send to queue the report, cancel to discard it, or restart to replace the draft. A draft expires after 30 minutes; one verified identity can submit one report to the same hub per hour. The operator email contains the hub, nickname, command, time, and comment, never a public chat post.
Games expire after 24 hours. A stable sender identity is required to start or continue one. The public, per-hub top-five leaderboard records verified wins by difficulty and requested turn order; unverified sessions can play but do not score.
The private confirmation appears only after the report has been accepted into the hub operator queue.
Command Placeholders
Reply templates support only the implemented placeholders below. They resolve when the command is handled, after the bot and locale are known. No placeholder resolves a key, password, raw safety identity, or arbitrary HTML.
| Placeholder | Resolved Value | Scope, Empty Value, And Safe Use |
|---|---|---|
{{ command }} | The normalized command name that matched the request. | Use it in a reply heading or usage sentence. It is a command identifier, not untrusted prompt text. |
{{ commands }} | The formatted smart-help list of built-in and permitted hub-specific commands available to this bot session. | Availability depends on the bot configuration and locale. Use it when a full readable list is appropriate; it does not reveal disabled, inaccessible, or private data. |
{{ command_names }} | The available command names as a comma-separated list. | Use it for compact help. It is names only, not descriptions, aliases, passwords, or arbitrary request content. |
{{ bot_username }} | The configured bot login nickname. | Use it in examples such as {{ bot_username }}: help. A misconfigured or blank nickname must be corrected in Credentials; this placeholder does not create an alias. |
{{ bot_address_names }} | The bot's primary nickname followed by its distinct configured addressing aliases. | Use it when explaining how to address the bot in main chat. The primary nickname appears first, duplicate aliases are removed case-insensitively, and no empty alias phrase is rendered. |
{{ stats }} | The per-hub GPT activity block for 1 day, 1 week, 1 month, and lifetime. | Use it on a statistics response. It reports stored questions and answers, not provider billing, secrets, or another hub's data. |
A safe help template can say {{ bot_username }} accepts: {{ command_names }}. Keep template text factual and readable in a hub client. Missing optional configuration follows the resolver's normal formatting; it is never permission to substitute raw HTML, a secret, or arbitrary user data.
Private Message Diagnostic
Private Message Diagnostic is only for site super administrators. It starts a temporary Hub Chat session with a generated diagnostic nickname, uses the selected hub endpoint and normal client defaults, then sends the fixed request Hub GPT diagnostic request. Reply with a short confirmation. to the bot. The live diagnostic opens in Hub Chat so an operator can inspect the result without reading unrelated user conversations.
- Confirm bot nickname, Hub Chat availability, and private-message feature status.
- Run the diagnostic as a super administrator.
- Wait for the temporary session and the bot reply or visible failure.
- Review the error or record if it fails, then close the temporary session.
The diagnostic is not a general chat session and does not bypass hub private-message rules. It is unavailable when Hub Chat or private messages are not enabled, and it can create normal operational evidence.
Service Bot Search Audit
The Service Bot Search Audit is a super-administrator troubleshooting table. It shows Created, Hub Sender, Service Bot, Feature, Correlation ID, Duration, Safety Identity Hash, Outcome, Request, Safe Context, and Response. The safety identity is a shortened hash, not a raw personal identifier. Expand a response only when it exists and treat it as protected operational data.
Use Correlation ID and Duration to relate a rejected or successful lookup to surrounding records. Outcome and reason code explain whether the service accepted, rejected, or failed. Safe Context is deliberately constrained; a missing field is not evidence that it was sent, stored, or safe to disclose.
| Column | How To Read It |
|---|---|
| Created | When the audit entry was recorded in the configured display timezone. |
| Hub Sender | The hub nickname that triggered the service-bot request. |
| Service Bot | The configured bot that received or sent the request. |
| Feature | The implemented lookup or service feature involved. |
| Correlation ID | The trace identifier used to relate this entry to its surrounding operational evidence. |
| Duration | The recorded request duration, not a promise of normal provider latency. |
| Safe Identity Hash | A shortened safe identifier for correlation. It is not the raw account or personal identifier. |
| Outcome | The recorded result and, when present, a machine-readable reason code. |
| Request | The bounded request text available to this protected troubleshooting view. |
| Safe Context | Only approved contextual values. Do not treat absent values as permission to infer or reconstruct data. |
| Raw Response | A disclosed response is shown only when one was recorded. Expand it only for a necessary investigation. |
Recent GPT Records
Recent GPT Records lists the newest bot records. Common columns are Created, Hub Sender, Source, and Status. Administrators also see Input Tokens, Output Tokens, Total Tokens, Question, and Reply. main_chat and private_chat identify the message path. A server-handled command can be successful without provider tokens.
Question and Reply are truncated previews whose visibility depends on logging. Disabled logging writes an explicit marker rather than original text. Blank token values can come from a command, a failed request, a provider response without metrics, or an older record. Use Recent GPT Records for individual events and Token Usage for range totals.
| Column | How To Read It |
|---|---|
| Created | When the bot record was created. |
| Hub Sender | The nickname associated with the recorded request. |
| Source | The message path, such as main_chat or private_chat. |
| Status | The stored result state. Read it with the record preview and status panel rather than assuming success. |
| Input Tokens | Provider input tokens when the provider returned that metric. |
| Output Tokens | Provider output tokens when the provider returned that metric. |
| Total Tokens | The provider total when reported. It is not a billing invoice. |
| Question | A logged, truncated request preview when the logging policy permits it. |
| Reply | A logged, truncated reply preview when the logging policy permits it. |
Security And Privacy
Hub passwords and OpenAI keys are protected secrets; saved values are not rendered. A secret reference identifies an environment variable, not its content. Never add secrets to Instructions, command templates, screenshots, raw hub messages, audit notes, or support requests.
Prompt, response, and private-prompt logging have the exact interaction described in Reconnect And Logging. Provider Store Response is separate. Safety identifiers use the configured stable hashed mode without displaying their raw source. Location, language, and remembered-fact commands can store data needed by their implemented services, so users should not submit sensitive information merely because the bot sounds conversational.
Hub GPT Troubleshooting
| Problem | Inspect | Recovery |
|---|---|---|
| The bot is enabled but disconnected | Status, Last Error, endpoint, nickname, and worker state. | Correct the reported cause, then Connect or Reconnect. |
| Connect immediately fails | Hub redirect, TLS/protocol mismatch, duplicate nickname, or worker error. | Use the exact endpoint and a unique permitted account. |
| The hub rejects nickname or password | Registration and protected Hub Password. | Use an authorized bot account and reconnect after saving. |
| OpenAI key is missing or authentication fails | Global-key choice, sharing policy, direct secret, secret reference, organization, and project. | Provide one authorized key source without exposing it; test a harmless prompt. |
| The model is not allowed | Global allowed-model policy and selected model. | Choose a compatible allowed model and save. |
| Requests time out or retry too long | Timeout, Max Retries, provider status, and Recent Records. | Use a reasonable timeout/retry count and test one request. |
| Main chat or alias gets no reply | Address syntax, nickname/aliases, state, access, and hub permission. | Address with a valid name and separator; correct aliases then save. |
| Private messages get no reply | Private-message availability, connection, provider, and limits. | Use the diagnostic when authorized or test a permitted account. |
| A per-user or shared-key limit is exhausted | Per-user rate, shared-key allowance, period, and Token Usage. | Wait for the period, change a deliberate policy limit, or use a private key. |
| Daily/monthly values do not block requests | The current enforced request path. | Use them for reporting policy; rely on enforced per-user/shared-key caps. |
| Responses are truncated or split | Max Output Tokens and main/private line limits. | Increase one budget carefully; line limits format hub messages, not tokens. |
| JSON cannot save or a tool fails | JSON type, model, endpoint, Tools JSON, and Tool Choice. | Validate the smallest compatible object/array first. |
| The bot repeatedly reconnects | Reconnect setting, attempts, interval, and Last Error. | Fix the underlying hub failure before increasing attempts. |
| Records or token values are blank | Logging, command status, provider metadata, and record age. | Respect disabled logging; run a controlled provider request for evidence. |
| A diagnostic or audit is rejected | Super-admin role, feature availability, outcome, reason, and safe context. | Correct the prerequisite; do not use diagnostics to bypass access. |
Related Pages
Read Hub Chat for the shared live client, Hub for ownership guidance, and Hub to return to a hub profile. The about command links users to this localized Hub GPT guide.
Parent Page
Return to Hub for the Hub Help index and other Direct Connect administration guides.
Configuration Reference
Configure the GPT bot identity, OpenAI Responses settings, reconnect behavior, and logging policy for this hub.
On a sender’s first normal private question, the bot immediately sends its command and safety introduction, then sends the requested answer when generation finishes. Exact commands keep their normal command-only response. Both the introduction and generated identity use the configured bot username.
Hub GPT receives a bounded list of active hub nicknames as untrusted current-session reference data. Nicknames may contain Unicode symbols or punctuation. When a message explicitly names one, the bot may address that nickname, but it must not infer an identity, private detail, or status beyond current-list presence.
When this page loads for an already connected client, Hub Connection and Connection Status start collapsed. Both card headers remain visible; expanding or collapsing either panel does not disconnect or reconnect the client.
When a Hub Chat, Hub GPT, or Hub Mod worker restarts, the open product page keeps monitoring the saved session and reconnects its event stream automatically; a browser refresh is not required. If a release changes the browser/server protocol incompatibly, the page stops retrying and explicitly asks you to reload before reconnecting.
A restart notice appears as a System message inside the open Hub Chat transcript, so the chat layout remains stable. When the browser and worker versions are incompatible, that System message includes the same-page reload action.
Verified ADC And ADCS Attachment Downloads
A valid TTH magnet remains an ordinary link that can be opened or copied. When the stored message identifies an online ADC or ADCS source, a separate download icon appears immediately before that link. Nothing is fetched while the message renders.
Activating the icon asks the existing signed-in Hub Chat session to request that exact stored attachment from its current sender. The browser sends only the session, message channel, stored message ID, and attachment position; it never supplies a host, filename, size, or magnet URI for the server to trust.
The receiver negotiates a Direct Connect peer transfer for the advertised TTH, writes it to a private temporary file, and compares both the exact byte count and Tiger Tree Hash before returning download headers. A mismatch is discarded without exposing a partial file to the browser.
Downloads are user initiated, rate limited, limited per session and across the application, and capped at 64 MiB by default. The source guest must still be online and reachable. Verified and failed temporary files are removed after completion or expiry.
For active reception, the transfer worker binds the selected TCP or TLS port before advertising it to the source. Open the configured active port range in the host firewall and upstream NAT; ADCS also needs the configured certificate and private key. If binding or acceptance times out, the same job automatically tries passive reverse negotiation. If it still fails, confirm that the same guest is online and reachable. A missing icon means the link is not a complete supported TTH magnet or its stored source cannot be identified; the original magnet remains available for a desktop Direct Connect client.
When the receiver is busy, the same transfer remains in the list and is retried automatically after five minutes. It does not create a second record. You can dismiss the in-page notice or remove the transfer when it is no longer needed.
If a peer does not open its transfer endpoint in time, the application retries that verified download once. If it still fails, Transfers shows the reason and lets the requester retry manually after checking that the peer is still sharing the file.
Hub Command Safety
Hub GPT never returns, quotes, completes, translates, transforms, obfuscates, or reconstructs hub commands. Direct command requests are refused locally, and command-shaped provider output is discarded before it can reach chat.
I cannot provide or construct hub commands. Use Hub Mod for reviewed operator actions: /en/help/hub/mod/
Unicode Text And Emoji
Hub Chat and the embedded Hub GPT monitor keep valid UTF-8 text intact, including flags, skin-tone modifiers, keycaps, and joined emoji. When a legacy NMDC relay has reversibly reinterpreted UTF-8 as Windows-1251, the client repairs recognized emoji sequences before displaying them or passing them to Hub GPT. When a legacy output encoding cannot represent a message, Hub Chat sends the original UTF-8 text rather than silently removing characters.
Read-Only Transfer Cache
Generated hublist files shared only after hub-mediated peer authorization.
The transfer cache is disabled by default for Hub Chat, Hub GPT, and Hub Mod. Each product has an independent global switch, host, ports, connection cap, and bandwidth cap; a hub owner cannot enable it from a per-hub page.
This feature fails closed. Enabling the switch does not advertise a share until the immutable manifest, listener, advertised host, port, and any TLS files are healthy.
Settings And Defaults
- Enable Transfer Cache
- Allow this product to advertise its read-only generated-file cache after every health check passes. Disabled is the default.
- Advertised Public Host
- Public hostname or unicast IP sent to authorized Direct Connect peers. Private, loopback, local, and reserved addresses are rejected.
- Plain Transfer Port
- Optional NMDC or ADC peer port from 1024 to 65535. It must be unique across enabled Hub products.
- TLS Transfer Port
- Optional NMDCS or ADCS peer port from 1024 to 65535. TLS certificate and key paths remain environment-owned.
- Maximum Concurrent Transfers
- Maximum active peer connections for this product, from 1 to 32.
- Bandwidth Limit In Bytes Per Second
- Per-product transfer limit from 65,536 to 104,857,600 bytes per second.
Global Transfer Monitoring
The Hub Transfers administration page totals completed verified uploads and downloads for a selected date range. It starts with the current month, shows daily totals, and never exposes peer names, addresses, filenames, or raw transfer secrets.
Use the first and last dynamic port to reserve a bounded private range. An active transfer receives only a currently free port in that range. The inventory separates assigned, stale, operating-system occupied, and available ports, and calculates allocation from the configured range rather than a guessed capacity.
Transfer Status stops new work before a peer connection is opened. Allowed Roles limits workspace access; existing Hub Chat, Hub GPT, and Hub Mod product rules still apply, so global permission never grants product access by itself.
Check Transfer Health queues a bounded async_transfer check of the saved range and local listener reports. A healthy result confirms application-side facts it can observe; it cannot prove that a router, NAT, or external firewall permits inbound Internet traffic.
Keep the async_transfer worker supervised with the documented deployment command. If status is stale or no snapshot appears, confirm that worker first, then review the local listener report and port allocation before changing firewall or public endpoint settings.
Health And Advertisement
An enabled product advertises transfers only while the shared gateway has bound every configured listener and reports a current healthy state. A missing host, occupied port, unavailable TLS file, failed listener, or stale worker keeps the advertised endpoint and share disabled.
Save the transfer settings, then use Check Public Ports. It requires one running shared gateway, a fresh listener report that exactly matches the saved host and ports, stable public DNS with no private or reserved address, and a successful TCP connection to every resolved address and configured plain or TLS port. The probe sends no protocol payload. Because it originates on the application server, also verify the endpoint from an authorized external Direct Connect client when NAT or firewall hairpin behavior differs.
The gateway reads one immutable manifest generation built from approved public hublist artifacts. A generation records each published name, byte size, and TTH. A missing file, changed hash, symlink, malformed file list, or incomplete atomic publication makes the manifest unhealthy.
When both the product listener and manifest are healthy, the client profile advertises the manifest byte total, active transfer port, slots, and supported NMDC or ADC transfer capabilities. When either dependency is unhealthy, it advertises no cache share or transfer endpoint.
Discovery And Authorization
A bounded NMDC or ADC search is matched only against the current manifest. Results identify an exact published file and TTH; broad, malformed, oversized, or unrelated searches do not enumerate the server filesystem.
The hub coordinates discovery and CTM/RCM negotiation but does not proxy file bytes. The product observes the peer nickname, direction, and public endpoint through its authenticated hub session, registers a short-lived authorization, then the peer opens the separate transfer connection.
Every inbound or outbound transfer requires a recent, one-time authorization tied to the product, hub session, peer nickname, public address, direction, and expiry. Direct scanners, expired records, replay, wrong products, wrong peers, wrong addresses, and private or reserved outbound destinations are rejected.
Files And Read-Only Limits
The share contains only generated hublist downloads copied into the dedicated cache plus its generated Direct Connect file list. It never exposes arbitrary application files, source paths, uploads, remote URLs, or files outside the approved generation.
Each immutable manifest also contains HUBLIST.PWIAM.COM.md, a project-owned read-only information file. It identifies PWiAM as the host of Public DC Hublist, summarizes hub search and generated hublist files, and introduces the Hub Chat, Hub GPT, and Hub Mod products. Peers can read it with the other approved manifest entries; the application generates it and a peer cannot upload, replace, or modify it.
The gateway is download-only. It accepts only file-list and ranged download requests for exact manifest entries, rejects traversal and invalid ranges, and does not implement uploads, deletion, rename, directory creation, or arbitrary path access.
Maximum Concurrent Transfers limits active peers per product. Bandwidth Limit In Bytes Per Second applies a shared per-product rate cap. Frame size, handshake time, idle time, requested range, and authorization lifetime are also bounded so slow or oversized peers cannot hold unlimited resources.
TLS And Peer Security
The plain and TLS listeners are separate. A TLS port is advertised only when its environment-owned certificate and private-key paths are usable. Encryption does not replace hub-mediated authorization; current Direct Connect CTM messages do not carry a verifiable certificate hostname or keyprint, so peer TLS encrypts transport without asserting a public Web PKI identity.
Troubleshooting
If the share is absent, keep the product disabled and check the current manifest, advertised public host, unique public port, listener health, TLS paths, worker state, and firewall forwarding in that order. Rebuild and verify the manifest, restart the shared gateway, then test one authorized file-list request and one artifact request. Never weaken endpoint validation or accept a direct unauthenticated socket to make a test pass.
Bot Identity
Bot Username
Nickname the bot uses to log in to this hub. Keep it unique enough that users can mention it clearly.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-80
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Alias, Hub Password, Client Tag Name, Client Version
Bot Alias
Additional names that address this bot in main chat. The default is gpt. Separate aliases with commas or new lines. They do not change the login nickname, reply language, or saved weather/news location.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-512
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Hub Password, Client Tag Name, Client Version
Hub Password
Optional. Used for registered NMDC/NMDCS nicknames when the hub requests a password.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-128
- When Blank
- Leave blank to keep the saved secret; a new value replaces it.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Treat this value as a secret. It is write-only and must not be copied into logs or chat.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Client Tag Name, Client Version
Client Tag Name
Client name sent in NMDC and ADC identity tags.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-60
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Version
Client Version
Client version sent in NMDC and ADC identity tags.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-30
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Tag Name
Connection Speed
Connection value advertised in the NMDC client tag.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-20
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Tag Name
Upload Speed
Optional upload capacity advertised in ADC and ADCS identity data. Enter an amount and unit; the protocol receives bytes per second.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- No value is sent.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Tag Name
Download Speed
Optional download capacity advertised in ADC and ADCS identity data. Enter an amount and unit; the protocol receives bytes per second.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- No value is sent.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Tag Name
Client Mode
Sets the M value in the NMDC client tag. Active sends M:A; passive sends M:P.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Tag Name
Bot Locale
Language used for smart command replies and locale-specific command rows for this hub bot.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Tag Name
Access Status
Public lets the bot run in the hub. Admin keeps the bot configured for staff review without public use. Hidden stops the bot.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Access
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Bot Username, Bot Alias, Hub Password, Client Tag Name
Hub Connection
Fake Share
Share size sent to the hub in bytes. Use 0 to test minimum-share restrictions.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Normal Hubs, Registered Hubs, Operator Hubs, Open Slots
Normal Hubs
Number of normal hubs reported in the client tag.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Registered Hubs, Operator Hubs, Open Slots
Registered Hubs
Number of registered hubs reported in the client tag.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Operator Hubs, Open Slots
Operator Hubs
Number of operator hubs reported in the client tag.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Open Slots
Open Slots
Open upload slots reported to the hub.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Operator Hubs
TCP Port
Choose an available application-managed TCP listening port for active ADC transfers. Allow the selected port through the host firewall and any upstream NAT.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-65535
- When Blank
- No value is sent.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Operator Hubs
UDP Port
Choose an available application-managed UDP port for active ADC searches. Allow the selected UDP port through the host firewall and any upstream NAT.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-65535
- When Blank
- No value is sent.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Operator Hubs
TLS Port
Choose an available application-managed TLS transfer port. ADCS reception also requires the configured certificate and private key, plus an inbound TCP firewall and NAT rule for this port.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-65535
- When Blank
- No value is sent.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Operator Hubs
Client Description
Optional description exposed to the hub as the diagnostic client description.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-120
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Operator Hubs
Client Email
Optional email field exposed to NMDC hubs.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-64
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Operator Hubs
NMDC Support Flags
Choose the NMDC $Supports flags sent during login. BotINFO is off by default for normal chat-client behavior.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Fake Share, Normal Hubs, Registered Hubs, Operator Hubs
NMDC Support Flags
Choose the NMDC $Supports flags sent during login. BotINFO is off by default for normal chat-client behavior.
NoHello: Advertises the faster login flow in which the hub can omit a separate $Hello exchange. It is part of the normal default profile; disable it only when reproducing an older handshake. It does not authenticate the account.NoGetINFO: Advertises support for a fast initial user list without individual $GetINFO requests. Keep it for a normal connection; disable it only while diagnosing legacy user-list behavior.UserIP2: Advertises support for extended user and IP information. A hub may then send address data, so use it only when that handling is appropriate for the test. It grants no access or operator permission.BotList: Advertises support for the $BotList frame and bot markers in the Guests list. It is a normal default; disable it only when testing an older parser or hub profile.FailOver: Advertises support for hub-directed failover or redirect behavior. The flag does not make the client follow arbitrary addresses; the client connection policy still applies.NickRule: Advertises that the client understands nickname rules sent by the hub. It helps the client report validation correctly, but it never overrides the hub rule.HubURL: Advertises hub-URL exchange. When the hub sends $GetHubURL, this client sends one $MyHubURL built from the configured endpoint. Disable it only for a compatibility test.ExtJSON2: Advertises compatibility with extended JSON metadata. The flag does not send JSON by itself; enable it only when the hub supports the format being tested.BotINFO: Advertises bot-client behavior. Leave it disabled for normal chat-client behavior unless you are testing a bot-specific hub rule.MiniSlots: Advertises fractional slot counts in user information. It describes how the client reports slots and does not grant additional transfer capacity.XmlBZList: Advertises compressed XML file-list support. Enable it only when the transfer client can actually create and read XmlBZList data.ADCGet: Advertises the ADCGET transfer command for files, file lists, and hash-tree requests over an NMDC connection.TTHL: Advertises Tiger Tree leaf-list transfers used to verify file blocks before or during a download.TTHF: Advertises Tiger Tree Hash file transfers. The flag describes transfer compatibility and does not publish a file by itself.UserCommand: Advertises support for hub-provided $UserCommand menus. Enable it only when the client can receive and safely present reviewed command entries.
OpenAI Client
Use Global API Key
Use the shared global OpenAI key for this hub. Disable this when the hub owner provides a hub-specific key or secret reference.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- OpenAI API Key, API Key Secret Reference, Responses API URL, Organization
OpenAI API Key
Stored for this hub only. Leave blank to keep the current key.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Leave blank to keep the saved secret; a new value replaces it.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Treat this value as a secret. It is write-only and must not be copied into logs or chat.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Use Global API Key, API Key Secret Reference, Responses API URL, Organization
API Key Secret Reference
Optional environment variable name for this hub key. Direct keys and secret values are never rendered here.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-255
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Treat this value as a secret. It is write-only and must not be copied into logs or chat.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Use Global API Key, OpenAI API Key, Responses API URL, Organization
Responses API URL
OpenAI-compatible Responses API endpoint. Leave the default unless this hub uses a compatible gateway.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Use Global API Key, OpenAI API Key, API Key Secret Reference, Organization
Organization
Optional OpenAI organization ID for this hub key.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-120
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Use Global API Key, OpenAI API Key, API Key Secret Reference, Responses API URL
Project
Optional OpenAI project ID for this hub key.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-120
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Use Global API Key, OpenAI API Key, API Key Secret Reference, Responses API URL
Model
Only models allowed by global Hub GPT settings can be selected here.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Use Global API Key, OpenAI API Key, API Key Secret Reference, Responses API URL
Generation Settings
Instructions
System-level behavior for this hub bot: tone, boundaries, what it should answer, and what it should avoid.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Max Output Tokens, Timeout Seconds, Max Retries, Temperature
Max Output Tokens
Upper token budget for one answer. Lower values reduce cost and keep hub replies shorter.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 16+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Timeout Seconds, Max Retries, Temperature
Timeout Seconds
Maximum seconds to wait for one OpenAI request before treating it as failed.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Max Retries, Temperature
Max Retries
Number of OpenAI request retry attempts after transient API failures.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Timeout Seconds, Temperature
Temperature
Creativity control from 0 to 2. Lower values are steadier; higher values are more varied.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-2
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Timeout Seconds, Max Retries
Top P
Alternative sampling control from 0 to 1. Usually leave blank unless you know this model needs it.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0-1
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Timeout Seconds, Max Retries
Reasoning Effort
Optional model reasoning setting, such as low, medium, or high, when the selected model supports it.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Timeout Seconds, Max Retries
Reasoning Summary
Optional reasoning summary setting for models that support summaries.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Timeout Seconds, Max Retries
Stream Response
Stream model output when supported. Disable if the hub connector needs complete replies before sending.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Timeout Seconds, Max Retries
Store Response
Controls the OpenAI store flag. Provider Default leaves storage behavior to the configured API provider.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Instructions, Max Output Tokens, Timeout Seconds, Max Retries
Advanced OpenAI Payload
Parallel Tool Calls
Provider default is safest. Enable or disable only when a model/tool setup requires a specific value.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Metadata JSON, Tools JSON, Tool Choice, Response Format JSON
Metadata JSON
Optional JSON object sent as Responses API metadata.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Parallel Tool Calls, Tools JSON, Tool Choice, Response Format JSON
Tools JSON
Optional JSON array of Responses API tool definitions.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Parallel Tool Calls, Metadata JSON, Tool Choice, Response Format JSON
Tool Choice
Use a plain value like auto, or a JSON object for a specific tool choice.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Parallel Tool Calls, Metadata JSON, Tools JSON, Response Format JSON
Response Format JSON
Optional JSON object that defines structured output. Hub GPT sends it as the Responses API text format.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Parallel Tool Calls, Metadata JSON, Tools JSON, Tool Choice
Rate And Token Limits
Rate Limit Per User
Maximum GPT requests one hub nickname may send per hour. Keep this enabled to prevent automated misuse.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero disables this limit.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days, Rate Limit Per Hub
Active Reminder Limit Per User
Maximum active reminders one verified user may keep for this bot. Leave blank to use the global default; hub owners cannot exceed it.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days, Rate Limit Per Hub
Reminder Horizon In Days
Farthest future date accepted by this bot. Leave blank to use the global default; hub owners may choose a shorter horizon.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Overdue Reminder Retention In Days, Rate Limit Per Hub
Overdue Reminder Retention In Days
Number of days a missed reminder remains eligible for private delivery at the user’s next verified login. Leave blank to use the global default.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Rate Limit Per Hub
Rate Limit Per Hub
Maximum GPT requests allowed for this hub during the active rate-limit window. Use 0 or blank for no cap.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero disables this limit.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Main Chat Reply Line Limit
Maximum lines sent in one public chat message. Use 0 to send the complete reply in one message.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Private Reply Line Limit
Maximum lines sent in one private message. Use 0 to send the complete reply in one message.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Input Limit
Maximum characters accepted from one prompt before the bot calls OpenAI. Use 0 or blank to disable the cap.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero disables this limit.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Safety Identifier
Controls whether OpenAI receives a stable hashed identifier for the user who triggered the request.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Daily Token Limit
Maximum tokens this hub bot may spend per day. Use 0 or leave blank for no daily cap.
- Default
- No per-hub limit is set.
- Allowed Values
- 0+
- When Blank
- No per-hub limit is set.
- When Zero
- Zero disables this limit.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Monthly Token Limit
Maximum tokens this hub bot may spend per calendar month. Use 0 or leave blank for no monthly cap.
- Default
- No per-hub limit is set.
- Allowed Values
- 0+
- When Blank
- No per-hub limit is set.
- When Zero
- Zero disables this limit.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Shared-Key Messages
Maximum OpenAI requests this hub may send during the selected shared-key period when it uses the global key. Leave blank to use the global default.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- Uses the global default when one is configured.
- When Zero
- Zero disables this limit.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Shared-Key Period
Time window used for this hub shared-key message limit.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Rate Limit Per User, Active Reminder Limit Per User, Reminder Horizon In Days, Overdue Reminder Retention In Days
Lifecycle Messages
Connected Message State
Use the global default, or explicitly enable or disable the connected announcement for this hub.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Connected Message Text, Disconnecting Message State, Disconnecting Message Text, Reconnecting Message State
Connected Message Text
Leave blank to inherit the global text. A local message may use {bot}, {hub}, and {commands}.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-2000
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Connected Message State, Disconnecting Message State, Disconnecting Message Text, Reconnecting Message State
Disconnecting Message State
Use the global default, or explicitly enable or disable the intentional-disconnect announcement for this hub.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Connected Message State, Connected Message Text, Disconnecting Message Text, Reconnecting Message State
Disconnecting Message Text
Leave blank to inherit the global text. A local message may use {bot}, {hub}, and {commands}.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-2000
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Connected Message State, Connected Message Text, Disconnecting Message State, Reconnecting Message State
Reconnecting Message State
Use the global default, or explicitly enable or disable the planned-reconnect announcement for this hub.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Connected Message State, Connected Message Text, Disconnecting Message State, Disconnecting Message Text
Reconnecting Message Text
Leave blank to inherit the global text. A local message may use {bot}, {hub}, and {commands}.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-2000
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Connected Message State, Connected Message Text, Disconnecting Message State, Disconnecting Message Text
Calendar Notifications
Daily Calendar Notifications
Use the global default or disable the automatic public digest for this hub. A hub cannot enable it while the global master switch is off.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Calendar Provider Policy, Calendar Provider Replacements, Calendar Send Time Override, Calendar Timezone Override
Calendar Provider Policy
Inherit the global provider list or replace it with the exact selections below. Replacement mode requires at least one provider; choose the global default to return to the shared list.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Daily Calendar Notifications, Calendar Provider Replacements, Calendar Send Time Override, Calendar Timezone Override
Calendar Provider Replacements
When replacement mode is selected, choose the reviewed providers used by this hub. The calendar command and local preview use the same effective list.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- app.documentation.explicit_empty_when_replaced
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Daily Calendar Notifications, Calendar Provider Policy, Calendar Send Time Override, Calendar Timezone Override
Calendar Send Time Override
Leave blank to inherit the global hub-local time. The connected worker may perform one same-day catch-up after that time.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Daily Calendar Notifications, Calendar Provider Policy, Calendar Provider Replacements, Calendar Timezone Override
Calendar Timezone Override
Leave blank to inherit the global or application IANA timezone. This hub-wide setting is independent of a user’s reminder timezone.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Daily Calendar Notifications, Calendar Provider Policy, Calendar Provider Replacements, Calendar Send Time Override
Calendar Digest Template Override
Leave blank to inherit the global public-message template. Use {date}, {events}, and {name_days}; optional placeholders are {bot} and {event_count}.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1-500
- When Blank
- Uses the global default when one is configured.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Daily Calendar Notifications, Calendar Provider Policy, Calendar Provider Replacements, Calendar Send Time Override
Reconnect And Logging
Reconnect Enabled
Let the bot reconnect automatically after a disconnect or transient hub failure.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Max Attempts, Reconnect Interval Seconds, Restart After Deployment, Stop On Deployment
Reconnect Max Attempts
Maximum reconnect attempts before the bot stays stopped for manual review.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 0+
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Enabled, Reconnect Interval Seconds, Restart After Deployment, Stop On Deployment
Reconnect Interval Seconds
Seconds to wait between reconnect attempts.
- Default
- Uses the global default when one is configured.
- Allowed Values
- 1+
- When Blank
- A value is required.
- When Zero
- Zero is not a valid value.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Enabled, Reconnect Max Attempts, Restart After Deployment, Stop On Deployment
Restart After Deployment
Reconnect this bot after deployments if it was expected to be running.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Enabled, Reconnect Max Attempts, Reconnect Interval Seconds, Stop On Deployment
Stop On Deployment
Stop this bot before deployment work so it can be restarted cleanly afterward.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Enabled, Reconnect Max Attempts, Reconnect Interval Seconds, Restart After Deployment
Log Prompts
Store prompt text in GPT records. Disable this when you need less retention.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Enabled, Reconnect Max Attempts, Reconnect Interval Seconds, Restart After Deployment
Log Responses
Store generated reply text in GPT records. Disable this when you only need counters and errors.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Enabled, Reconnect Max Attempts, Reconnect Interval Seconds, Restart After Deployment
Log Private Prompts
Store private-message GPT prompts in GPT records for audit and troubleshooting.
- Default
- Uses the global default when one is configured.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- The assigned hub owner and site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Save persists the setting. Reconnect or restart only when the live client needs the new value.
- Related Settings
- Reconnect Enabled, Reconnect Max Attempts, Reconnect Interval Seconds, Restart After Deployment
Global Hub GPT Settings
Configure the shared GPT defaults, allowed model policy, and global commands that every hub bot must respect.
Global Hub GPT Settings
Status
Public runs the global Hub GPT feature. Admin keeps settings visible to staff only. Hidden disables public bot use.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Access
- After Saving
- Not applicable.
- Related Settings
- Hub GPT Access Roles
Hub GPT Access Roles
Select one or more roles that may manage Hub GPT. Hub Owner applies only to a user who owns that exact hub. Super Administrators always retain access.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Access
- After Saving
- Not applicable.
- Related Settings
- Status
GPT Client Defaults
Default Bot Username
Login nickname assigned to a newly created GPT bot. Use a unique value accepted by the hub.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1-80
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Alias, Client Description, Client Mode, Upload Speed
Default Bot Alias
Additional names that address a newly created bot in main chat. Separate aliases with commas or new lines.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-512
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Client Description, Client Mode, Upload Speed
Client Description
Client description copied into each new Hub GPT configuration. Hub owners may change their own saved description later.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1-120
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Mode, Upload Speed
Client Mode
Sets the M value in the NMDC client tag. Active sends M:A; passive sends M:P.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Upload Speed
Upload Speed
Optional upload capacity advertised in ADC and ADCS identity data. Enter an amount and unit; the protocol receives bytes per second.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- No value is sent.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
Download Speed
Optional download capacity advertised in ADC and ADCS identity data. Enter an amount and unit; the protocol receives bytes per second.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- No value is sent.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
Default Fake Share
Share size announced by a newly created GPT client. Use 0 when the bot does not share files.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
Default Normal Hubs
Normal hub count announced by a newly created GPT client.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
Default Registered Hubs
Registered hub count announced by a newly created GPT client.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
Default Operator Hubs
Operator hub count announced by a newly created GPT client.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
Default Open Slots
Open slot count announced by a newly created GPT client. Use 0 for the bot.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-999
- When Blank
- A value is required.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
Default NMDC Support Flags
NMDC $Supports flags sent by a newly created GPT client. Leave BotINFO disabled for normal chat-client behavior.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Bot Username, Default Bot Alias, Client Description, Client Mode
NMDC Support Flags
Choose the NMDC $Supports flags sent during login. BotINFO is off by default for normal chat-client behavior.
NoHello: Advertises the faster login flow in which the hub can omit a separate $Hello exchange. It is part of the normal default profile; disable it only when reproducing an older handshake. It does not authenticate the account.NoGetINFO: Advertises support for a fast initial user list without individual $GetINFO requests. Keep it for a normal connection; disable it only while diagnosing legacy user-list behavior.UserIP2: Advertises support for extended user and IP information. A hub may then send address data, so use it only when that handling is appropriate for the test. It grants no access or operator permission.BotList: Advertises support for the $BotList frame and bot markers in the Guests list. It is a normal default; disable it only when testing an older parser or hub profile.FailOver: Advertises support for hub-directed failover or redirect behavior. The flag does not make the client follow arbitrary addresses; the client connection policy still applies.NickRule: Advertises that the client understands nickname rules sent by the hub. It helps the client report validation correctly, but it never overrides the hub rule.HubURL: Advertises hub-URL exchange. When the hub sends $GetHubURL, this client sends one $MyHubURL built from the configured endpoint. Disable it only for a compatibility test.ExtJSON2: Advertises compatibility with extended JSON metadata. The flag does not send JSON by itself; enable it only when the hub supports the format being tested.BotINFO: Advertises bot-client behavior. Leave it disabled for normal chat-client behavior unless you are testing a bot-specific hub rule.MiniSlots: Advertises fractional slot counts in user information. It describes how the client reports slots and does not grant additional transfer capacity.XmlBZList: Advertises compressed XML file-list support. Enable it only when the transfer client can actually create and read XmlBZList data.ADCGet: Advertises the ADCGET transfer command for files, file lists, and hash-tree requests over an NMDC connection.TTHL: Advertises Tiger Tree leaf-list transfers used to verify file blocks before or during a download.TTHF: Advertises Tiger Tree Hash file transfers. The flag describes transfer compatibility and does not publish a file by itself.UserCommand: Advertises support for hub-provided $UserCommand menus. Enable it only when the client can receive and safely present reviewed command entries.
Global OpenAI Provider
Default Model
This model is applied to new hub bots unless a specific hub is configured to use another allowed model.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Global OpenAI API Key, Global API Key Secret Reference, Global Responses API URL, Organization
Global OpenAI API Key
Write-only shared Secret Key for OpenAI model sync and hubs allowed to use the global key. Paste the sk- value from the Secret Key column. Do not paste the key- Tracking ID. Leave blank to keep the current saved key.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Leave blank to keep the saved secret; a new value replaces it.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Treat this value as a secret. It is write-only and must not be copied into logs or chat.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global API Key Secret Reference, Global Responses API URL, Organization
Global API Key Secret Reference
Optional environment variable name for the shared OpenAI key. Direct keys and secret values are never rendered here.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-255
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Treat this value as a secret. It is write-only and must not be copied into logs or chat.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global OpenAI API Key, Global Responses API URL, Organization
Global Responses API URL
Shared OpenAI-compatible Responses API endpoint. Model sync uses the same host with /v1/models.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global OpenAI API Key, Global API Key Secret Reference, Organization
Organization
Optional OpenAI organization ID for the shared key.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-120
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global OpenAI API Key, Global API Key Secret Reference, Global Responses API URL
Project
Optional OpenAI project ID for the shared key.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 0-120
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global OpenAI API Key, Global API Key Secret Reference, Global Responses API URL
Allow Hubs To Use Global Key
When enabled, a hub can use the shared key instead of its own key if that hub also enables Use Global API Key.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global OpenAI API Key, Global API Key Secret Reference, Global Responses API URL
Default Shared-Key Messages
Default maximum number of OpenAI requests each hub may send during the selected shared-key period. Use 0 or blank for no default cap.
- Default
- No per-hub limit is set.
- Allowed Values
- 0+
- When Blank
- No per-hub limit is set.
- When Zero
- Zero disables this limit.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global OpenAI API Key, Global API Key Secret Reference, Global Responses API URL
Default Shared-Key Period
Time window used for the default shared-key message limit.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Model, Global OpenAI API Key, Global API Key Secret Reference, Global Responses API URL
Generation Settings
Instructions
System-level context used for every shared-key bot and as the starting context for hubs with their own key. Hub owners may replace it only when they use their own key.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Reasoning Effort, Default Temperature, Default Top P, Default Reasoning Summary
Default Reasoning Effort
Default reasoning effort for new hub bots when the model supports it. Low is a good latency-focused starting point.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Temperature, Default Top P, Default Reasoning Summary
Default Temperature
Fallback creativity setting for hubs that do not set their own temperature.
- Default
- The provider default is used.
- Allowed Values
- 0-2
- When Blank
- The provider default is used.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Top P, Default Reasoning Summary
Default Top P
Fallback nucleus-sampling setting for hubs that do not set their own Top P value.
- Default
- The provider default is used.
- Allowed Values
- 0-1
- When Blank
- The provider default is used.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Reasoning Summary
Default Reasoning Summary
Fallback reasoning-summary setting for models that support it.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Default Max Output Tokens
Default answer token budget for new hub bots. A starting value around 1000 to 2000 balances cost and usefulness.
- Default
- The provider default is used.
- Allowed Values
- 16+
- When Blank
- The provider default is used.
- When Zero
- Zero is not a valid value.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Default Timeout Seconds
Default request timeout in seconds. 60 seconds prevents hanging requests without cutting off ordinary chat.
- Default
- The provider default is used.
- Allowed Values
- 1+
- When Blank
- The provider default is used.
- When Zero
- Zero is not a valid value.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Default Max Retries
Default retry count for temporary OpenAI or network failures. A starting value of 2 handles short outages without looping too long.
- Default
- The provider default is used.
- Allowed Values
- 0+
- When Blank
- The provider default is used.
- When Zero
- Zero is sent as the configured value.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Default Streaming
Disabled by default because a hub receives each reply as one complete protocol message. Enable it only for a connector that supports incremental output.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Default Store
Fallback provider storage setting. Leave it at the provider default unless a policy requires a value.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Default Prompt Caching
Send a stable cache key only to supported OpenAI Responses requests. This does not cache replies in the application.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- Not applicable.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Default Prompt Cache Retention
Optional 24-hour OpenAI cache retention. It is sent only when the selected official OpenAI model supports it.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Instructions, Default Reasoning Effort, Default Temperature, Default Top P
Advanced OpenAI Payload
Default Parallel Tool Calls
Fallback setting for parallel provider tool calls.
- Default
- The provider default is used.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- The provider default is used.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Metadata, Default Tools, Default Tool Choice, Default Response Format
Default Metadata
Fallback JSON metadata sent with requests from hubs that do not define their own metadata.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Parallel Tool Calls, Default Tools, Default Tool Choice, Default Response Format
Default Tools
Fallback JSON tool definitions sent with requests from hubs that do not define tools.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Parallel Tool Calls, Default Metadata, Default Tool Choice, Default Response Format
Default Tool Choice
Fallback tool-choice value. It may be plain text or JSON, depending on the provider.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Parallel Tool Calls, Default Metadata, Default Tools, Default Response Format
Default Response Format
Fallback JSON format for structured model output. Hub GPT sends it as the Responses API text format.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- No value is sent.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Parallel Tool Calls, Default Metadata, Default Tools, Default Tool Choice
Rate And Token Limits
Default Input Limit
Default maximum characters accepted from one prompt before an OpenAI request is made. Use 0 or blank to disable the cap.
- Default
- No per-hub limit is set.
- Allowed Values
- 0+
- When Blank
- No per-hub limit is set.
- When Zero
- Zero disables this limit.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Per-User Rate Limit, Default Active Reminder Limit, Default Reminder Horizon In Days, Default Overdue Reminder Retention In Days
Default Per-User Rate Limit
Default hourly GPT request cap for one hub nickname. Keep a real limit to prevent automated misuse.
- Default
- No per-hub limit is set.
- Allowed Values
- 0+
- When Blank
- No per-hub limit is set.
- When Zero
- Zero disables this limit.
- Access
- Site administrators.
- Security And Cost
- Can change provider usage or billing. Review usage before raising it.
- After Saving
- Not applicable.
- Related Settings
- Default Input Limit, Default Active Reminder Limit, Default Reminder Horizon In Days, Default Overdue Reminder Retention In Days
Default Active Reminder Limit
Maximum active reminders one verified user may keep for a Hub GPT bot unless that hub has a lower override. The default is 50.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1+
- When Blank
- A value is required.
- When Zero
- Zero is not a valid value.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Input Limit, Default Per-User Rate Limit, Default Reminder Horizon In Days, Default Overdue Reminder Retention In Days
Default Reminder Horizon In Days
Farthest future date a reminder may use unless that hub has a lower override. The default is 365 days.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1+
- When Blank
- A value is required.
- When Zero
- Zero is not a valid value.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Input Limit, Default Per-User Rate Limit, Default Active Reminder Limit, Default Overdue Reminder Retention In Days
Default Overdue Reminder Retention In Days
Number of days an undelivered reminder remains available for private delivery after its due time. The default is 7 days.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1+
- When Blank
- A value is required.
- When Zero
- Zero is not a valid value.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Input Limit, Default Per-User Rate Limit, Default Active Reminder Limit, Default Reminder Horizon In Days
Default Safety Identifier
Default safety identifier behavior. Stable hashes help providers detect abuse without exposing raw hub nicknames.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Input Limit, Default Per-User Rate Limit, Default Active Reminder Limit, Default Reminder Horizon In Days
Lifecycle Messages
Default Connected Message
Enable the public message sent after a new Hub GPT connection has completed login. Disabled prevents unsolicited announcements.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Connected Message Text, Default Disconnecting Message, Default Disconnecting Message Text, Default Reconnecting Message
Default Connected Message Text
Text sent after a confirmed login. Use {bot} for the bot nickname, {hub} for the hub name, {commands} for the enabled command list, and {help_examples} for nickname-and-alias help examples.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1-2000
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Connected Message, Default Disconnecting Message, Default Disconnecting Message Text, Default Reconnecting Message
Default Disconnecting Message
Enable the public message sent immediately before an intentional disconnect while the hub socket is still available.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Connected Message, Default Connected Message Text, Default Disconnecting Message Text, Default Reconnecting Message
Default Disconnecting Message Text
Text sent before an intentional disconnect. Use {bot}, {hub}, or {commands} where those values should appear.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1-2000
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Connected Message, Default Connected Message Text, Default Disconnecting Message, Default Reconnecting Message
Default Reconnecting Message
Enable the public message sent before a planned or manually requested reconnect.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- See the field help and available choices on the configuration page.
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- Operational setting; do not use it to claim a permission the hub has not granted.
- After Saving
- Not applicable.
- Related Settings
- Default Connected Message, Default Connected Message Text, Default Disconnecting Message, Default Disconnecting Message Text
Default Reconnecting Message Text
Text sent before a planned reconnect. Use {bot}, {hub}, or {commands} where those values should appear.
- Default
- This is the site-wide default. New bot configurations start with it unless a hub overrides the setting.
- Allowed Values
- 1-2000
- When Blank
- A value is required.
- When Zero
- Not applicable.
- Access
- Site administrators.
- Security And Cost
- May identify a person or expose operational context; keep it minimal.
- After Saving
- Not applicable.
- Related Settings
- Default Connected Message, Default Connected Message Text, Default Disconnecting Message, Default Disconnecting Message Text
Hub Commands
Text sent back when this command runs. You can use the placeholders listed below this editor.
help
List server-handled commands and explain private and main chat use.
{{ bot_username }} is the Hub GPT assistant for this Direct Connect hub.
Hublist guides and safe diagnostic tools: https://hublist.pwiam.com/en/help/
Private messages: send an exact command or a normal question. The command list below includes built-in commands and any hub-specific commands configured for this bot.
Main chat: begin with {{ bot_address_names }}, then send an exact command or a question. Example: {{ bot_username }} usage. The public reply is addressed to your nickname.
Commands are handled by the hub server. Other questions are answered by GPT. Do not send passwords, OpenAI keys, private links, or personal information.
Aliases: commands
usage
Show message syntax, Direct Connect topics, and safe-use rules.
Using {{ bot_username }}:
Private chat: send an exact command such as help, usage, stats, about, or locale, or send a normal question. The bot can explain Direct Connect, DC++, NMDC, NMDCS, ADC, ADCS, Verlihub, hub operation, and Hub GPT.
Main chat: begin with {{ bot_username }} before a question or exact command. Example: {{ bot_username }} help. Messages without the bot nickname are ignored in main chat.
Commands must use the exact command name or one of its listed aliases. Use help to see this bot's current command catalogue.
Set a personal reply language with locale pl, locale en, or another supported code. Do not send passwords, API keys, access tokens, private messages, or spam.
Aliases: guide, howto
stats
Show this hub's question and answer counts for each reporting period.
GPT activity for this hub:
{{ stats }}
These are stored question and answer counts for 1 day, 1 week, 1 month, and lifetime. They describe bot activity, not an OpenAI billing balance.
Shared-key allowance limits are configured by the hub owner and are separate from these activity counters.
Example: stats. Use it after a chat to review the same counters again.
Aliases: statistics
about
Explain what this Hub GPT bot is and how a hub owner can configure it.
About Hub GPT:
Hub GPT is an optional Direct Connect assistant that connects to one assigned hub. It answers private messages and responds in main chat only when a user addresses the bot nickname. It can explain Direct Connect topics and the settings chosen by the hub owner.
A hub owner adds it from the Hub GPT page for a hub assigned to that owner through Hublist. Enable the session, set the bot nickname and connection profile, choose a model, then connect the bot. The hub-side bot account should be class 3, or another class explicitly allowed to log in, receive private messages, and send the required chat commands.
The global OpenAI key is a shared site default and is available only when the administrator enables sharing. A hub owner may instead provide a private OpenAI key or secret reference for that hub. Never send a key in chat.
Read the full setup and setting reference: https://hublist.pwiam.com/en/help/hub/gpt/
Example: about. Ask a hub owner to review the guide before enabling a new bot session.
Aliases: bot, gpt
locale
Show supported reply languages or save one for your hub conversation.
Reply language for your conversation:
Send locale followed by one code: en English, zh Chinese (Mandarin), hi Hindi, es Spanish, cs Czech, de German, nl Dutch, fr French, it Italian, pl Polish, ro Romanian, or ru Russian.
Example: locale pl. This saves the reply language only for your nickname in this hub. It does not change the website language, hub settings, or another user's conversation.
Aliases: language
weather
Show current weather for your saved location, a supplied location, or the hub fallback location.
Current weather:
Use weather to get live current conditions. Without a location, weather uses your saved location first. If none is saved, it uses a usable public address supplied by the hub, then the server fallback location.
Examples:
weather
weather Warsaw, Poland
weather Chicago, IL
Use location Warsaw, Poland before weather to save a general place for later requests. Weather reports detailed current conditions and a daily outlook for today plus the next two days.
Aliases: forecast
location
Explain or save the general location used for your weather and local news requests.
Saved location for weather and local news:
Send location followed by a city, region, or country. A broad location is valid when you do not want to share a precise city.
Examples:
location Warsaw, Poland
location Illinois
location Poland
The bot resolves the place before saving it. Later weather and news requests use it unless you supply a different location. Send location reset to remove the saved place and return to automatic location lookup. The saved place is linked to your hub identity and remains available after a bot or connection restart.
Aliases: place
news
Show current local headlines for your saved location or a supplied location.
Local news headlines:
Use news to request current headlines for a place. Without a location, news uses your saved location first, then a usable hub-provided public address, then the server fallback location.
Examples:
news
news Warsaw, Poland
news Chicago, IL
news Chicago 50
Each article includes a title, source, short description, and link. The hub administrator chooses the default number of articles. Add a final number to request a different amount, from 1 to 100; for example, news Chicago 50. Use location Warsaw, Poland to save a general place for later news and weather requests.
Aliases: headlines
sport
Show live scores, schedules, and completed results from the configured sports provider.
Live sport information:
Use sport followed by a supported sport and an optional time request. The bot can show scheduled games, completed results, or games currently in progress when the provider has data.
Examples:
sport football today
sport NBA results
sport Formula 1 tomorrow
Supported coverage includes football, AFL, baseball, basketball, Formula 1, handball, hockey, MMA, NBA, NFL, rugby, and volleyball. Dates can be today, tomorrow, yesterday, or YYYY-MM-DD. Results come from the configured provider and can change after a match is corrected.
Aliases: sports
remember
Save a short fact that you explicitly want this bot to remember.
Saved memory:
Send remember followed by one short fact you explicitly want this bot to retain. The bot does not automatically store your full chat history.
Example:
remember I prefer concise answers.
Use memory to review saved facts or forget 1 to remove one.
Aliases: save memory
memory
Show the short facts that this bot remembers for you.
Your saved memory:
Send memory to list only the short facts you explicitly saved. These facts are separate from the temporary conversation context and remain after a bot restart.
Example:
memory
Use forget 1 to remove one item or forget all to clear every saved fact.
Aliases: memories
forget
Remove one remembered fact or clear all remembered facts.
Remove saved memory:
Send forget followed by the number shown by memory. Send forget all to remove every short fact you explicitly saved for this bot in this hub.
Example:
forget 1
Use memory first to review the numbered facts before removing one.
Aliases: clear memory
reminder
Create, list, or cancel durable reminders and countdown timers.
Reminders:
Create one with reminder followed by a duration and text. Examples: reminder 10m check the oven, reminder 2h call home, or reminder tomorrow at 09:00 submit the report. Natural requests such as “remind me about eggs in 10 minutes” are also accepted when the configured model can classify them safely.
Use counter 2h for a countdown, reminder list to review active reminders, and reminder cancel ID to cancel the item with that displayed ID. Durations support m for minutes, h for hours, and d for days.
Reminders require a verified NMDC identity (a hub-advertised operator or privately verified registered account) or ADC CID. The creation confirmation always stays in the request channel. The due notification defaults to that channel; dm, pm, direct message, or private message select private delivery, while mainchat, main chat, public, or public chat select public delivery. An explicit target changes only the later notification. Examples: reminder dm 10m check the oven and reminder mainchat 10m share the update. Reminders persist across bot restarts. If you are offline when one becomes due, it is marked overdue and delivered at your next verified login while it remains within the configured retention period.
Aliases: remind, timer, counter
timezone
Show, set, or reset the timezone used for your reminder schedule.
Reminder timezone:
Use timezone to show the effective timezone. Set one with an IANA name such as timezone Europe/Warsaw or with an unambiguous city such as timezone Chicago. Use timezone reset to remove the explicit preference.
An explicit timezone has priority over the timezone from your saved location; the application timezone is the final fallback. Ambiguous abbreviations and numeric UTC offsets are rejected. Daylight-saving gaps or repeated local times require a clearer schedule.
Example: timezone America/Chicago, then reminder tomorrow at 09:00 call home. The saved preference belongs only to your verified identity for this bot and survives reconnects and restarts.
Aliases: time zone, zone
calendar
Look up reviewed holidays, observances, seasons, and timezone changes for a date.
Private calendar lookup:
Use calendar today, calendar tomorrow, calendar this week, calendar this month, calendar next month, calendar YYYY-MM-DD, or calendar YYYY-MM-DD to YYYY-MM-DD. Add one enabled provider ID to narrow the result. Example: calendar poland this month. Natural questions about holidays in a date or period are also accepted.
Automatic daily calendar notices are separate: the notification setting controls only the combined main-chat digest. Private calendar lookups stay available when this command and at least one provider are enabled, always reply privately, and do not mark the digest as sent.
Dates come from reviewed International, United States, Poland, Russia, and IANA timezone sources. OpenAI does not generate or correct calendar dates. Read the complete guide: https://hublist.pwiam.com/en/help/hub/gpt/#calendar
Aliases: holidays, events
nameday
List source-backed name days for a date, period, or person name.
Name-day lookup:
Use nameday for today, nameday tomorrow, nameday last week, nameday next week, nameday YYYY-MM-DD, or nameday John. A person-name lookup returns matching dates in the selected calendar regions. Natural questions use the same provider data; the bot does not invent names or dates.
Example: nameday next week
Aliases: name days, name-day
tictactoe
Play a three-by-three game against this bot. Choose a difficulty and opening order, then use tictactoe stats to view this hub’s leaderboard.
Tic-Tac-Toe is a server-run three-by-three game against this bot. The board labels rows A through C and columns 1 through 3, so A1 and 1A mean the same square. The bot always replies with a plain text grid that is safe to read in Direct Connect clients.
Example: tictactoe start hard random a1.
Start a game with tictactoe start. Add easy, medium, or hard for the difficulty; easy chooses random legal moves, medium takes an immediate win or blocks one, and hard uses a no-loss strategy. Add first, second, or random to choose who opens. Last is accepted as an alias for second. You can include a first move, such as tictactoe start random 1a. If the bot opens, it reserves that square for your move.
Use tictactoe move a1 for later turns, tictactoe restart to leave the current round and begin again, and tictactoe about for this guide. In main chat, address the bot first. While you have an active game, an addressed coordinate such as {{ bot_username }} a1 is also a move. A game expires after 24 hours without a Tic-Tac-Toe command.
Use tictactoe stats, optionally followed by a difficulty and opening order, for this bot’s public per-hub top five. Only wins tied to a registered NMDC account or ADC CID qualify. The board is private to your game state, but qualifying scores display the nickname used in the hub.
Aliases: tic tac toe, ttt
bug
Report a problem privately to the hub operator.
Send bug in a private message to prepare a report for the hub operator.
The bot asks for the affected command or action, a short comment, and a final confirmation. Nothing is sent until you reply `send`. Use `cancel` to discard the draft or `restart` to begin again.
Example: bug
Aliases: report, issue
Name-Day Lookup
The daily digest uses the application-wide calendar regions, so every Hub GPT session receives the same ordered name-day list. The nameday command reports the selected regions for a date or period and can search them for a person's dates.
Use nameday, nameday tomorrow, nameday last week, nameday next week, nameday YYYY-MM-DD, nameday YYYY-MM-DD to YYYY-MM-DD, or nameday John. You may ask in main chat or a private message; the reply stays private.
When at least one selected region provides names, the automatic daily digest adds one name-day line after the date and before calendar events. Its delivery ledger still permits one public digest per hub and local date.
The application requests fixed, reviewed name-day provider endpoints for International, United States, Poland, and Russia selections. GPT can recognize a natural request, but it never invents names, dates, or source data.
Weather Command And Official Sources
Weather needs a configured provider and one resolved location. Use the explicit place first; otherwise the bot can use the sender’s saved location, a usable hub-provided public IP location, or the configured server fallback.
weather Chicago, Illinois: Returns current conditions and daily outlooks. A named day uses the matching daily record when the provider has one.weather tomorrow in Chicago: Returns current conditions and daily outlooks. A named day uses the matching daily record when the provider has one.weather in 5 hours: Returns the nearest provider hourly forecast for the resolved location. The hour is rounded to the provider’s hourly timetable.
When the resolved city exists in the bundled WMO catalogue, the bot links to that exact city in the WMO World Weather Information Service (WWIS). It adds distinct official national, regional, station, or coordinate-centered hourly, radar, and history links only when supported, and shows each destination once. Other cities use a configured national authority page or WWIS.
A past-day request reports historical provider data and includes an official historical-observations link only when the selected authority provides one. Otherwise that link is omitted; the bot does not claim to recreate a forecast published in the past.
Sport Command And Team Lookups
Live sport data is available through the sport command. Choose a supported sport and an optional time: sport football today, sport NBA results, or sport Formula 1 tomorrow. You can also use yesterday or a YYYY-MM-DD date. The reply lists provider data only; it does not invent scores or schedules.
FCSB score?: For a named team without a date, the provider is asked for a bounded recent completed fixture and a bounded upcoming fixture. The bot does not assume that the question means today.FCSB Farul: For two named teams without a date, the provider is asked for their bounded head-to-head history and next meeting. The bot reports only provider-returned fixtures and scores.sport football 2026-08-04: Live sport data is available through the sport command. Choose a supported sport and an optional time: sport football today, sport NBA results, or sport Formula 1 tomorrow. You can also use yesterday or a YYYY-MM-DD date. The reply lists provider data only; it does not invent scores or schedules.
Some provider plans expose only a limited date window. When a request falls outside it, the bot reports the exact available range instead of claiming that the team has no fixtures.
Private Message Delivery States
An authorized operator message is tracked by its client message ID. A delivery state describes the local queue or socket write; it is not a reply from the remote user or service bot.
- Private message queued for delivery.
- Queued means the browser accepted the request and the worker has not yet written it to the hub. It remains pending until login and a write attempt are available.
- Message written to the hub. No reply has been received.
- Written means the client wrote one private frame to the hub. The recipient can still be offline, ignore it, or answer later, so this state never claims a reply.
- The private message was not sent. Reconnect and try again.
- Failed means the private frame was not written. The worker keeps the command available for a reconnect attempt and shows a safe System notice in the same private conversation.
Available Placeholders
{{ command }}- renders the command name that matched the message.
{{ commands }}- renders the smart help list with global and hub commands available in this bot session.
{{ command_names }}- renders the command names as a comma-separated list.
{{ bot_username }}- renders the hub nickname used by this GPT bot.
{{ bot_address_names }}- renders the bot nickname followed by its configured aliases in localized parentheses.
{{ stats }}- renders per-hub GPT usage for 1 day, 1 week, 1 month, and lifetime. Use it on the stats command.
Icon Reference
| Icon | Label | What It Does |
|---|---|---|
| Hub Chat | Admin-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 Connection | Identifies the saved hub endpoint and login profile used to open and maintain this Direct Connect session. | |
| Raw Hub Response | Shows the exact protocol lines received from the hub so an administrator can verify replies, errors, and server commands. | |
| Raw Hub Requests | Shows the redacted protocol lines sent by the client so an administrator can verify exact commands without exposing secrets. | |
| Starting | Means the worker is opening the socket and completing the Direct Connect login handshake; chat is not ready yet. | |
| Connected | Means the hub accepted the login and the client can receive live traffic and send commands allowed for that account. | |
| Error | Marks a session that could not start or continue; the accompanying details identify the failed connection or worker step. | |
| Closed | Means the live socket and worker session have ended, so no further hub traffic or messages can be sent. | |
| Switch To Background | Switches to the low-bandwidth persistent mode that keeps public and private messages connected while pausing expensive diagnostics. | |
| Switch To Interactive | Restores full live updates for guests, raw protocol traffic, and diagnostics while keeping the same hub connection. | |
| Enable Browser Notifications | Choose a notification mode, then enable browser permission. | |
| Restart Session | Stops the current worker and starts a new session with the saved connection and client-profile settings. | |
| Reconnect | Closes the current socket and immediately attempts a fresh login with the same saved session settings. | |
| Close Session | Ends the worker and hub connection intentionally; the saved configuration remains available for a later session. | |
| Collapse Hub Chat | Collapses Hub Chat into a left-side rail and expands Guests to the full workspace width without closing the session. | |
| Expand Hub Chat | Restores Hub Chat from the left rail and returns Hub Chat and Guests to their normal side-by-side widths. | |
| Collapse Guests | Collapses Guests into a right-side rail and expands Hub Chat to the full workspace width. | |
| Expand Guests | Restores Guests from the right rail and returns both panels to their normal side-by-side widths. | |
| Send | Queues the entered public message or hub command for delivery through the active logged-in session. | |
| Help | Open Available Formatting beside the composer for the exact reviewed CommonMark subset, syntax examples, and compatibility notes. The toolbar appears while focus remains within the editor and shows only actions that apply to the current format and selection. Safe inbound messages can also display headings, tables, task lists, hard breaks, and other supported structures. | |
| Download Attachment | Starts a user-initiated ADC or ADCS peer transfer for the exact TTH magnet in the stored message, verifies its size and Tiger Tree Hash, then downloads the verified file in the browser. | |
| Guests | Lists users currently reported by the hub, including role, presence, client, share, and available identity details. | |
| Search Guests By Nickname | Filters the displayed guest list by nickname without sending a search request or command to the hub. | |
| Message | Opens or returns to a private conversation with the selected guest without sending a message by itself. | |
| Conversations | Lists private-message threads kept for this session, including unread state and whether each guest remains online. | |
| Regular Guest Role | A gray user marker beside a nickname in the Guests table means the hub reported neither operator nor bot privileges. | |
| Bot Role | A silver robot marker beside a nickname in the Guests table means the hub identified that session as a bot. | |
| Operator Role | A gold key marker beside a nickname in the Guests table means the hub granted operator privileges to that session. | |
| Login Identity | Groups the nickname, password, client tag, share, slots, and other identity values advertised during hub login. | |
| NMDC Support Flags | Choose the NMDC $Supports flags sent during login. BotINFO is off by default for normal chat-client behavior. | |
| Guest Joined | Shown in Guest Activity when the hub announces that a nickname entered the hub; no administrator action is required. | |
| Guest Left | Shown in Guest Activity when the hub announces that a nickname left or disconnected from the hub. | |
| Sortable Column | Appears in a Guests or Conversations table header when that column is available for sorting but is not the active sort. | |
| Ascending Sort | Appears in the active table header when values are ordered from lowest to highest; select it to reverse the order. | |
| Descending Sort | Appears in the active table header when values are ordered from highest to lowest; select it to reverse the order. | |
| Close Workspace Tab | The red X closes only the selected Hub Chat workspace tab and stops that connection. It does not delete the saved public or private snapshot, related history, or another open tab. | |
| Guest Online | A green presence marker in Conversations means the guest is currently present in the connected hub. | |
| Guest Offline | A gray presence marker in Conversations means the guest is no longer present, while the saved conversation remains available. | |
| Transfers | Hub Chat transfer history | |
| Read-Only Transfer Cache | Marks the shared read-only generated-file cache settings and the Help section that explains listener health, manifest validation, search, CTM/RCM authorization, transfer limits, and troubleshooting. | |
| Check Public Ports | After saving these settings, check the shared gateway, its current listener report, public DNS, and every configured plain or TLS port. The check opens a short TCP connection from the application server, sends no Direct Connect data, and does not claim reachability from every external network. | |
| Open Help | Opens this help article. | |
| Hub GPT | Configure the GPT bot identity, OpenAI Responses settings, reconnect behavior, and logging policy for this hub. | |
| View | Opens the selected bot workspace to review its live connection, chat, guests, private messages, and controls. | |
| Enable | Marks this hub bot as enabled so its lifecycle worker may connect and automatically reconnect it. | |
| Disable | Prevents this hub bot from connecting or reconnecting while preserving its configuration and records. | |
| Token Usage | Summarizes input, output, and total tokens used by this bot so owners can compare consumption with its configured limits. | |
| Advanced Client Profile | Groups the username, aliases, password, client tag, share, hub counts, slots, ports, description, and other identity values advertised to the hub. | |
| Rate And Token Limits | Controls per-user and per-hub request rates, input and output bounds, daily and monthly token caps, and shared-key usage limits. | |
| Calendar Notifications | Sends at most one source-attributed calendar digest to main chat for each Hub GPT account and local date when the global and hub policies permit it. When no event matches, it still sends one explicit no-event notice so the scheduled check is observable. | |
| Name-Day Lookup | The daily digest uses the application-wide calendar regions, so every Hub GPT session receives the same ordered name-day list. The nameday command reports the selected regions for a date or period and can search them for a person's dates. | |
| Hub Commands | Hub commands are available to anyone who can talk to this bot in hub chat. Do not use commands for website-admin-only actions. | |
| Global Commands | These command names are owned by global Hub GPT settings and cannot be overwritten by per-hub commands. | |
| Private Message Diagnostic | Connects as a temporary diagnostic user, sends one fixed private message to this bot, and opens the live session so you can review the reply and any failure details. | |
| Service-Bot Lookup Audit | Shows service-bot lookup requests, safe identity context, timing, outcome, and returned data for troubleshooting. | |
| Recent GPT Records | Review stored GPT questions, replies, command usage, errors, and the user or hub nickname that triggered each response. | |
| Save | Validates and stores the current per-hub GPT settings; connection-profile changes apply after reconnecting the bot. | |
| All GPT Sessions | Review persistent GPT bot sessions connected to hubs and open per-hub configuration. | |
| Allowed Models | Allowed models are managed as rows. Use Sync OpenAI Models to copy model ids from the configured global key, then keep each model public, admin-only, or hidden as site policy. | |
| Global OpenAI API Key | Write-only shared Secret Key for OpenAI model sync and hubs allowed to use the global key. Paste the sk- value from the Secret Key column. Do not paste the key- Tracking ID. Leave blank to keep the current saved key. | |
| GPT Client Defaults | Starting Direct Connect profile for newly created Hub GPT bots. Each hub keeps later changes to its own bot. | |
| Background Process Commands | Use these exact commands from the Symfony project root when a Hub GPT worker needs a focused manual run, reconnect, deploy restart, or pre-deploy pause. | |
| Configure | Opens the per-hub editor for bot identity, OpenAI behavior, limits, commands, reconnect policy, and logging. | |
| Add Command | Adds an editable per-hub command row where administrators define its name, aliases, reply template, locale, and order. | |
| Clear Secret | Removes the selected stored password or direct API key when the form is saved; an untouched blank field keeps its hidden value. |