> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rbxweb.net/llms.txt
> Use this file to discover all available pages before exploring further.

# Hugging users

> Chat-triggered !hug command so members can hug each other.

Hugging users enables a chat-triggered `!hug` command. When a member types `!hug @target`, the bot posts the configured message (with an image, mention, or embed) in response.

Open **Dashboard → Hugging Users**.

<Note>
  **How this message is delivered.** It posts through a bot-owned webhook using the bot's own
  name and avatar, so it looks exactly like a normal bot message. The bot needs **Manage
  Webhooks** in the target channel; without it the message is posted normally instead, so
  nothing is ever lost.
</Note>

## How it works

* `!hug @target` — the bot responds in the current channel.
* `!hug @target #channel` — the bot posts the response in `#channel` instead.

The `#channel` argument is optional. Without it the response stays where the command was used.

## Settings

### Core

<ResponseField name="Enable" type="toggle">
  Master switch for the hug command.
</ResponseField>

<ResponseField name="Message" type="visual editor">
  The response posted when the command runs, built in the **visual message editor** — type inside a live Discord preview, toggle **Embed** on/off, and use placeholders like `{user}` (the one hugging), `{target}` (the one being hugged), `{server}`, `{user_name}` and `{target_name}`. See [placeholders](/placeholders). For the image, the picker offers your uploaded **image library** (pick a specific image, or tick **Random pick** to use a fresh random image from that category every time), a random Picsum image, or any image URL. It comes pre-filled; **Restore default** in the toolbar brings the original back.
</ResponseField>

<ResponseField name="Delete original message" type="toggle">
  Removes the member's `!hug` command message after the bot replies.
</ResponseField>

<Tip>
  To mention (ping) the person being hugged, put `{target}` in the **Message** field (the line above the embed) — a mention there notifies them, unlike one inside the embed.
</Tip>

### Cooldown

<ResponseField name="Command cooldown" type="toggle">
  Adds a delay between uses to prevent spam. When off, the command has no wait.
</ResponseField>

<ResponseField name="Interval (seconds)" type="number, 5 to 60">
  How long the cooldown lasts.
</ResponseField>

<ResponseField name="Cooldown type" type="radio">
  * **Per user** — each user has their own cooldown timer.
  * **Global** — one shared cooldown for the whole server.
</ResponseField>

### Command logging

<ResponseField name="Enable command logging" type="toggle">
  When on, every `!hug` use is logged as an embed in the chosen log channel, showing who hugged whom and in which channel.
</ResponseField>

<ResponseField name="Log channel" type="channel picker">
  Destination for log entries.
</ResponseField>

### Role gates

<ResponseField name="Allowed roles" type="role list">
  Only members with at least one of these roles can run `!hug`. Leave empty to allow everyone. Guild owners and Admins are always immune.
</ResponseField>

<ResponseField name="Blacklisted roles" type="role list">
  Members with any of these roles are blocked, even if they also have an allowed role. Guild owners and Admins are always immune.
</ResponseField>
