Time CapsuleUser handbook
Product siteOpen portal

Moderator web portal

Know what every screen controls.

The portal is server-scoped. Confirm the server in the switcher before every change, then use the left navigation to open the panel that owns the setting or workflow.

Discord OAuthServer-scoped accessDesktop + mobile

Access and global controls

Sign in, select a server, and navigate safely.

  1. Sign in with Discord

    Input: Open platform.cuffdev.team/login, choose Continue with Discord, and approve the Discord identity prompt.

    Expected result: Home opens with servers where you are owner, have Manage Server, or hold a configured Time Capsule management role. The portal never receives your Discord password.

  2. Choose the working server

    Input: Select a server in the switcher.

    Expected result: The portal rechecks authorization and every subsequent list, count, setting, and action is scoped to that server.

  3. Use global search

    Input: Select Ask about a setting…, press Command/Ctrl+K, or press / outside a form; search phrases such as “stop video uploads” or “failed capsules.”

    Expected result: Read-only matches appear under Settings, Capsule operations, Automation recipes, and Help. Selecting one navigates to and highlights its control; search itself changes nothing.

  4. Set theme or sign out

    Input: Use Theme for Auto, Dark, Light, Deuteranomaly, or Protanomaly. On shared devices, open the account menu and choose Log out.

    Expected result: Theme preference applies across the portal; Log out clears the current portal session and returns to sign-in. Otherwise the persisted session remains active until Discord invalidates it or a security revocation requires a new login.

Authorized staff can run /timecapsule portal in Discord to open the selected server’s Home page directly. Server-specific portal and settings links preserve their destination through Discord OAuth instead of returning to the general dashboard.

Home

Read server health before starting work.

  1. Read the availability banner

    Input: If a pause banner appears, read whether the whole bot or deliveries are paused; choose Review status.

    Expected result: Server settings opens at the matching availability control. A full bot pause holds normal commands, triggers, and deliveries; a delivery pause still allows member bot use while due capsules wait.

  2. Review totals and recent work

    Input: Compare Sealed now, Created this month, and Delivered this month; open a recent row if it needs attention.

    Expected result: Counts and recent records belong to the selected server. A row opens the capsule Overview workspace.

  3. Start a server capsule

    Input: Choose Create capsule or Start a server capsule.

    Expected result: The New server capsule composer opens.

Capsules

Create, search, and operate server-authored capsules.

Create a server capsule

  1. Choose destination and audience

    Input: Select a channel or member, then an available mode: Channel, New thread, Thread reply, or DM. Thread reply also needs a Discord message ID. Choose No tag, @everyone, or one or more roles.

    Expected result: The outcome preview names the destination and mentions only the chosen audience; No tag avoids a Discord mention.

  2. Write and attach

    Input: Enter Subject (1–100 characters) and Message (1–4,000); drag or browse for files within the displayed count/type/size policy.

    Expected result: Character counters update, accepted files appear, and invalid media is rejected before sealing.

  3. Choose the release

    Input: Select Time, Reaction, Keyword, Poll, Role change, Invite use, Milestone, Recurring, Bot message, or Advanced and complete its visible fields. To compose directly into an existing Plus vault, select that vault instead; its shared unlock configuration applies.

    Expected result: The preview states the event or threshold. Plus-only recipes explain their entitlement. Platform-disabled types stay visible as IN MAINTENANCE and cannot be selected or reconfigured.

  4. Save, review, and seal

    Input: Choose Save draft to post nothing, or Review to open the read-only summary; from Review, choose Seal capsule and confirm.

    Expected result: A draft is retained without posting, or the sealed announcement is posted and the release condition becomes active.

The same capsule ID appears in the Capsules table, workspace overview, and related Activity rows. Copy it for search, recovery, or support.

Complete recipe-specific fields

Recipe Configuration
Backup release time Optional but recommended. New recipes start blank so staff deliberately choose whether to add a fallback.
Role change Watch one member, everyone already assigned a selected role, or anyone in the server.
Invite use Release after role assignment, rules acceptance, or first message. Enable duplicate-join suppression when repeated Discord join events should count only once.
Milestone Optionally mention the member who matched the condition and select roles to mention.
Recurring Select one or more weekdays for weekly schedules or one or more calendar day numbers for monthly schedules.
Bot message Watch All channels or a multi-selected channel set. Numeric operators remain available only while Text or number contains an integer or decimal; alphabetic characters disable them.
Time Capsule moderator portal capsule composer with destination, message, and automation controls
Portal capsule-composer layout. Labels and available recipes can vary with server policy and entitlement.

Find and operate capsules

  1. Narrow the list

    Input: Search a title or destination and choose a state such as Sealed, Paused, Sealed forever, Delivered, Failed, or Deleted.

    Expected result: Only matching records from the selected server remain.

  2. Open the three-tab workspace

    Input: Select a row, then use Overview, Automation, and Activity.

    Expected result: Overview owns message/destination/audience and available lifecycle controls; Automation owns the release workflow; Activity shows recorded history. Delivered capsules are read-only.

  3. Use lifecycle or bulk actions carefully

    Input: On one capsule, read and confirm Pause/Resume, Keep sealed, Unlock and deliver now, or Delete. In the list, select 1–50 visible rows for Pause, Resume, or Delete. To move one or more eligible sealed capsules, choose Move to vault, then select an existing vault or continue to the new-vault form. Pause/Resume and vault moves require their Plus features.

    Expected result: The action runs once and appears in Activity. Bulk results identify per-row failures. A vault move applies to the full selection or none, and a new-vault choice carries the selection into its guided form. Delete is a soft delete that removes active queues, and the current portal has no restore control. After a successful individual delete, Delete capsule, Pause, Keep sealed, Unlock and deliver now, Edit capsule, and the Automation tab remain visible but disabled in grey so no lifecycle action can run against the deleted record.

Automation tab

Validate and test before publishing.

  1. Build the path

    Input: On a sealed capsule, open Automation. In WHEN choose one event; in IF choose optional all/any field/operator/value conditions; in THEN/OTHERWISE add ordered actions. A workflow supports 1–5 steps.

    Expected result: The plain-language preview describes the event, match, and action order. Advanced workflows require Plus and the enabled platform feature.

  2. Save, validate, simulate, publish

    Input: Save draft, choose Validate, then Test with a representative event; after errors are resolved, choose Publish and confirm.

    Expected result: Test simulates without Discord actions. Only a successfully published revision becomes active.

Time Capsule moderator portal automation builder with when, if, then workflow columns
Automation-builder layout showing the event → condition → action sequence.

Recipes and bulk tools · Plus

Reuse complete setups and transfer capsules safely.

  1. Create or import a Recipe

    Input: Open the main Recipes tab beside Vaults. Create a Capsule or Vault template from scratch or an existing item, including settings and automation, or bulk import one or more validated recipe bundles.

    Expected result: Example values explain each field. Every save creates a version, only the newest three are retained, and individual or selected Export creates a portable recipe bundle.

  2. Import or export capsules

    Input: In Capsules, open the bulk tool, download the CSV, YAML, or JSON template, then preview no more than 100 records before import—or choose up to 100 filtered capsules for export.

    Expected result: Row-specific validation identifies malformed destinations or release rules. Rejected rows are never silently redirected.

Vaults

Collect contributions and open them together.

  1. Create the Plus vault

    Input: Open VaultsCreate a vault; enter a name up to 100 characters, optional description up to 500, an opening text channel, contributor roles, and one open condition. Vaults support the same Time, Reaction, Keyword, Poll, Role change, Invite use, Milestone, Recurring, Bot message, and Advanced event types as capsules. Choose Server default—which shows the current server timezone—or UTC.

    Expected result: The vault is saved and the bot attempts to post a Discord contribution button. A posting-permission failure leaves the vault saved and reports the missing announcement.

  2. Add one or several server or member capsules

    Input: For one capsule, choose Add existing capsule on the destination vault. For one or several, select eligible rows in Capsules, choose Move to vault, then select an existing vault or continue to the new-vault form. Review the release-policy warning and confirm.

    Expected result: The atomic operation moves every capsule in a multi-selection or none; the single-capsule route moves that capsule. Successful capsules inherit the vault unlock configuration and discard their prior events and backup times.

  3. Manage the vault and its sub-capsules

    Input: In the configured-vault table, compare Name, Channel, Type, and Type condition; choose Edit, Pause, or View sub-capsules. In the expanded list, create, edit, pause/resume, inspect, or delete a capsule.

    Expected result: Every saved vault stays in the list with its current status and configuration: Entries Closed, Capsules Locked, Entries Open, Capsules Locked, or Sealed, Capsule/Vault locked. Its sub-capsules remain manageable when the state permits; pausing stops the vault without deleting it.

  4. Repair a paused delivery

    Input: If Discord rejects the opening channel because it was deleted or the bot lost access, choose Repair delivery, select an approved replacement channel, then choose Save destination and retry.

    Expected result: The vault stays sealed during moderator review and resumes from the first unfinished sub-capsule after the replacement passes the bot permission checks.

  5. Delete a populated vault safely

    Input: Choose Delete and select one of three outcomes: delete the vault and every sub-capsule; delete the vault and convert sub-capsules to server capsules; or cancel. For conversion, optionally enter a new default open time.

    Expected result: Delete-all retires the entire collection. Conversion preserves the capsules as standalone server capsules and uses the new open time, or the vault’s configured open time when none is supplied. Cancel changes nothing.

  6. Restore the announcement or open early

    Input: After fixing channel permission, choose Post contribution button. To open early, choose Open vault, review destination/count, then Open and deliver all.

    Expected result: Members can contribute from the restored announcement, or stored capsules deliver in order with Discord rate-limit pacing and the opened vault stops accepting submissions.

Moderator portal vault list expanded to show editable and pausable sub-capsules
A configured vault stays in the management list, with its sub-capsules available directly below it.
Moderator portal populated vault deletion dialog with delete, convert, and cancel choices
Converting a populated vault exposes an optional replacement open time; leaving it blank uses the vault’s configured time.

Unsaved changes: If you follow a portal link, switch servers, or otherwise leave a changed settings form, the portal asks whether to Discard changes or Stay on page. Saving clears the warning.

When the platform Vaults flag is disabled, existing vault data remains safe while this page shows IN MAINTENANCE; creation and management resume after the feature is enabled.

Server settings

Set broad delivery and media defaults.

  1. Set availability, destination, and timezone

    Input: Set Bot availability, Default channel, and an IANA timezone such as America/New_York. Re-enabling a paused bot requires reading its confirmation.

    Expected result: Normal command/delivery behavior follows availability. The default destination is used only when a new capsule has no explicit channel; a deleted explicit destination pauses for moderator review instead of falling back. Date previews use the timezone.

  2. Set member editing access

    Input: Turn Allow members to edit their capsules on or off according to server policy.

    Expected result: When enabled, Edit in portal issues a short-lived, single-use link to a capsule-only member page with no moderator navigation. Disabling the setting prevents new links and revokes active member-edit sessions.

  3. Set attachment policy and save

    Input: Allow/block images, videos, and files; optionally set files per capsule and per-file KB/MB size within displayed maxima; leave blank to inherit the tier default; choose Save changes.

    Expected result: The portal says Your server settings are saved. The update is audited; a version conflict asks you to refresh.

Channel management · Plus

Refine individual destinations.

  1. Build allowed and blocked lists

    Input: Add channels/categories to the whitelist or blacklist; a selected category expands to child channels.

    Expected result: A non-empty whitelist limits premium delivery; the blacklist always wins, including over the default channel.

  2. Override or reset one channel

    Input: Select a channel and override attachments, anonymous capsules, delivery, safety profile, explicit language, harassment, crisis alerts, or media types—or choose Reset override.

    Expected result: Only that channel uses non-default values; Reset returns it immediately to server settings.

Safety

Manage trusted roles, reports, content controls, and bans.

  1. Set staff and report routing

    Input: As owner/Manage Server, choose trusted non-managed Capsule manager roles. Choose a private Report destination, optional Reviewer role/mention, audit-trail mode/channel, and crisis destinations the bot can access.

    Expected result: Role holders gain portal access after sign-in refresh; new reports and audit alerts use the configured private routes.

  2. Set content controls

    Input: Configure explicit-language blocking/list, harassment warnings, crisis alerts, and personal-information blocking. Explicit entries are one per line, case-insensitive, up to 200 entries of 80 characters each.

    Expected result: New/edited content follows saved policy. Crisis detection is an alerting aid, not emergency services.

  3. Manage an active ban

    Input: Under Banned users, choose a unique Discord username/ID, optional duration, and required reason. To change/remove it, select the record and provide the required action reason.

    Expected result: The active record changes and the audit retains who acted and why.

Appearance

Update the selected server’s Discord-visible bot profile.

  1. Confirm branding access and edit

    Input: Review the entitlement notice; when active, enter Display name (up to 32) and Bio (up to 218), then provide/default/upload avatar and banner images.

    Expected result: Without entitlement, the preview remains but editing is locked. Valid text and images update the preview.

  2. Meet image rules and verify

    Input: Use JPG/PNG/GIF under 10 MB; uploaded avatar must be square and at least 128×128; banner must be exactly 680×240. Save, then view the app profile in Discord.

    Expected result: The selected server’s Discord-visible identity matches the preview without changing other servers.

Insights · Plus

Read server metrics and runtime freshness.

  1. Review counts and mix

    Input: Compare Stored, Delivered, Pending, delivery states, media counts, vault totals, sub-capsules, and time/reaction/keyword/advanced release mix.

    Expected result: Paused work remains pending but is separated from active/retrying work; media counts attachments while release values count capsules.

  2. Check live status and timestamp

    Input: Read Discord readiness, gateway status, server events, and As of.

    Expected result: You know when the snapshot was collected. Include a stale/unavailable timestamp in support.

Notifications and activity

Follow changes without losing your place.

  1. Read save and error notices

    Input: After saving or receiving an error, read the notice floating at the top of the browser viewport.

    Expected result: One notice follows the viewport, disappears automatically, and offers an X on the right for immediate dismissal.

  2. Use the header bell

    Input: Select the bell to open notifications and recent activity. Mark all as read, dismiss one item, or dismiss all.

    Expected result: The right-side activity drawer opens. It and the help drawer are mutually exclusive, so the most recently selected control owns the open drawer. Dismissed items are marked read and do not leave a stale unread count.

  3. Review or undo a change

    Input: Open the full Activity page, then search, filter, or sort its table. Use a relevant deep link to return to the capsule, vault, or setting. Select Undo only after reviewing the change.

    Expected result: Each entry identifies the actor, timestamp, change, prior value, and new value. Undo is offered only for the latest reversible change to each configuration setting; it reverts that one change and is not version history.

Plan & billing + support

Use the dedicated owner and escalation flows.

Open Plan & billing to review tier, access source, entitlements, purchase routes, invoices, eligible transfer, or cancellation. Follow the Plans & billing guide before changing ownership or subscription state.

From any page, choose Need help? for contextual help and Contact support. The account, selected server, current page, and latest portal request reference are attached as described in the Support guide.

Confirm the server switcher before every mutation.