> For the complete documentation index, see [llms.txt](https://themochi-app.gitbook.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://themochi-app.gitbook.io/documentation/module-3-inbox-and-messaging/slash-commands-and-templates.md).

# Slash commands & Templates

## Slash Commands & Message Templates

**What it is** — Type `/` in the composer to pull up everything your team has saved in Content Hub — templates, links, and media — and drop it straight into a DM without retyping or re-uploading. Templates are reusable, multi-step scripts that can mix text, images, video, voice notes, and files, with placeholders that personalize automatically. Content Hub actually holds four types of saved content — Links, Templates, Media, and Prompts. The `/` menu here surfaces the first three; Prompts, reusable AI prompt templates, surface separately in the AI thinking flow rather than the composer.

**Who can use it** — Anyone on the team can use the `/` menu and create Content Hub items. Available on both Web and iOS.

**Before you start** — Content Hub is gated by a feature flag and may not appear for every organization yet.

### How to use the `/` menu

1. Open any conversation and click into the composer.
2. Type `/` to open the menu. It shows tabs for **All**, **Links**, **Templates**, and **Media**, plus a search box.
3. Keep typing after `/` to filter by title.
4. Select an item — template text renders with its placeholders already filled in, and media or links attach ready to send.

### Creating a template

**Web:** `Sidebar > Content Hub` (or `Settings > Content Hub`), then use the **New Template** action card. **iOS:** `Settings > Content Hub`, then use the add control and choose **Template**.

1. Add steps in order. Each step can be text, an image, a video, a voice note, or a file.
2. Write your message for a text step, using placeholders where you want it personalized.
3. Add more than one phrasing to a step if you want variety — Mochi rotates between them so repeated sends don't read identically to different leads.
4. Save the template.

### Placeholders

Use these tokens in a text step; Mochi fills them in automatically when the template sends:

* `{{lead_name}}`
* `{{lead_username}}`
* `{{setter_name}}`
* `{{closer_name}}`
* `{{organization_name}}`
* `{{link:Title}}` — pulls in a saved Link from Content Hub by its title (case-insensitive match)

An unrecognized token, such as a typo like `{{first}}`, isn't resolved — it sends literally as text.

### Variant rotation and cooldown

When a template step has more than one phrasing, Mochi rotates between them automatically on send, so the same template doesn't read identically to every lead. Mochi also cools down a template that's being sent unusually often, adding a human-like delay rather than firing it the same way over and over — part of how Mochi keeps repeated sends feeling natural instead of obviously automated.

### Tips

* Add two or three phrasing variants to your most-used opener steps so leads talking to each other don't see identical scripts — it also feeds Mochi's automatic rotation and cooldown, which keeps heavily-used templates looking human.
* Keep template names specific ("Booking follow-up — no reply 24h") so the `/` menu search actually helps instead of forcing you to scroll.

### Common mistakes & fixes

| Mistake                                                     | Fix                                                                                                                                                 |
| ----------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| Placeholder shows up literally in the sent message          | Check spelling — only the exact listed tokens resolve.                                                                                              |
| `{{link:Title}}` didn't fill in                             | The title doesn't match a saved Link closely enough. Check spelling in both places — matching is case-insensitive, not fuzzy.                       |
| A field renders blank                                       | The underlying data doesn't exist for that lead yet (for example, no assigned closer). Placeholders only resolve from data that's actually present. |
| A multi-variant template only ever shows its first phrasing | Reported occasionally rather than a known setup mistake — if rotation seems stuck, try re-saving the template's variants.                           |
| Content Hub or the `/` menu is missing entirely             | It's gated by a feature flag and may not be enabled for your organization yet.                                                                      |

### Limits & good to know

* Content Hub is gated by a feature flag, so it may not appear for every organization.
* Placeholders only resolve from lead, assigned setter/closer, and organization data that exists — empty fields render blank rather than erroring.
* Variant rotation and template cooldown both run automatically — there's no setting to turn either on or off.

**Related:**

* Send images, videos, GIFs & files
* Voice notes
* The Inbox
* *Tracking links & attribution* (Module 06)
