# Message actions, mentions, and commands

Edit, copy, reply to, pin, regenerate, and branch from messages, comment on part of a reply, mark up an image, @mention bots, and use slash commands.

Canonical page: https://themachine.myapps.ai/docs/desktop/chat/message-actions

## Message actions

![The actions next to a message](/images/docs/desktop/message-actions.webp)

Hover over any message, or click the **…** next to it, to see what you can
do. Click **…** to keep the actions open.

On a phone, press and hold a message to see its actions. Tap a message to see
when it was sent.

### Your messages

| Action | What it does |
|---|---|
| **Edit message** | Change what you wrote and send it again. |
| **Copy message** | Copy the text. |
| **Reply** | Quote this message above the message box. |
| **Pin message** | Show it in a banner at the top of the chat. |

### The bot's messages

| Action | What it does |
|---|---|
| **Copy message** | Copy the text. |
| **Show raw markdown** / **Show rendered markdown** | See the reply with its formatting characters (like `**` and `#`), for example to paste it somewhere that understands Markdown. |
| **Regenerate response** | On the bot's latest reply: ask again and get a fresh answer. |
| **Branch from here** | Start a new thread that picks up from this point. See [below](#branch-from-here). Desktop app only. |
| **Reply** | Quote this message above the message box. |
| **Pin message** | Show it in a banner at the top of the chat. |

To copy a **table** from a reply, hover it and click **Copy as CSV** in its
corner. It pastes straight into a spreadsheet.

### Edit a message

Use this when the bot misunderstood you, or you want to try a different
request.

1. Hover your message and click **Edit message** (the pencil). Or, with the
   message box empty, press **↑** to edit your last message.
2. Change the text. **Shift+Enter** adds a new line.
3. Press **Enter** to send, or **Esc** to cancel.

> **Editing rewinds the conversation**
> When you edit a message, the conversation goes back to that point and the bot
> answers your new version. Your old message and every reply after it are
> replaced: they aren't kept, so copy anything you still need first. You can
> only edit plain-text messages without attachments, and only when the bot isn't
> working. If you see *"Open this thread live before editing a message"*, open
> the thread, wait for it to finish loading, then try again.

### Regenerate a response

Not happy with the bot's latest reply? Hover it and click **Regenerate
response**. The bot answers your last message again from scratch, the same way
an edit does. This only works on the most recent reply, when the bot isn't
working. The earlier answer is replaced, not kept, so copy it first if you
might want it back.

### Branch from here

![The actions under a bot's reply, with Branch from here (the branching-line icon) highlighted](/images/docs/desktop/branch-from-here.webp)

Want to try a different direction without losing this thread? Hover any of
the bot's messages (or click **…** under it) and click **Branch from here**,
the branching-line icon.

1. A new thread opens for the same bot.
2. Its message box already holds the conversation up to that message (the
   last dozen or so messages, trimmed if they're long), ending with
   *"From here: "*.
3. Type where you want to take it, and send.

The original thread stays exactly as it was. Branch from here is on the
desktop app only.

### Reply to a message

1. Hover a message and click **Reply**.
2. A **Replying to …** quote appears above the message box. Click **×** to
   cancel.
3. Type and send. Your message shows the quote; click it to jump to the
   original.

### Pin a message

Hover a message and click **Pin message**. It appears in a banner at the top
of the chat. Click the banner to jump to it, or **×** on it to unpin.

## Comment on part of a reply

To point at one specific part of a long reply:

### Select the text

Drag your mouse over the part of the bot's reply you mean.
### Click Comment

A **Comment** button appears next to your selection. Click it.
### Write your note

Type what you want, like *"Make this more formal"* or *"Is this number
right?"*. Press **Ctrl+Enter** (**⌘Enter** on Mac) or click **Add**. **Esc**
cancels.
### Send

Your comment is attached to your next message as a **NOTE** chip, quoting the
part you selected. Add more comments if you like, then send.

This works on the desktop app.

## Mark up an image

To show a bot exactly which part of an image you mean, like a button in a
screenshot or a spot in a design:

1. Click the image in the chat to open it.
2. Click **Annotate a region**.
3. Drag a box around the part you mean.
4. Type your comment.

The cropped picture and your comment are attached to your next message.

## @mentions

In a [group chat](/docs/desktop/bots/group-chats), `@mentions` choose which
bot answers.

1. Type `@` at the start of a word. A list of bots appears (**Tag a bot**).
2. Keep typing to filter, use **↑** / **↓** to choose, and press **Enter** or
   **Tab**.
3. Mention several bots and they answer in the order you wrote them.
   `@everyone` asks all of them.

Mentions show in color in the message box and in the sent message.

On a [This PC](/docs/desktop/this-pc/overview) thread, `@` also lists files in
the folders you've shared, marked **File on this PC**. Pick one to insert its
full location, so the bot knows exactly which file you mean.

## Thread links

To refer to another conversation:

1. Right-click that thread in the sidebar and choose **Copy link**.
2. Paste it into your message.

It turns into a `#Thread title` link that you and your teammates can click.
The bot can't read the other thread, so paste in anything it needs to know.

## Messages from other bots

Bots can talk to each other. When another bot writes into this chat, its
message sits on the bot's side, under that bot's name and avatar, with a short
label saying how it arrived:

| Label | Meaning |
|---|---|
| **asked via ask_bot** | The other bot asked this one a question. |
| **delegated a task** | The other bot handed this one a job to do. |
| **opened this thread** | The other bot started this conversation. |

See [Group chats](/docs/desktop/bots/group-chats) for bots working together.

## Slash commands

![The Commands menu after typing / in the message box](/images/docs/desktop/slash-commands.webp)

Type `/` at the very start of the message box to see the **Commands** menu.
Keep typing to filter: the menu matches both the command name and its
description, so `/memory` finds **/remember** and **/forget**. Use **↑** /
**↓** and **Enter** or **Tab** to pick one, or **Esc** to close the menu.

### Setup commands

These two change how the bot works with you:

| Command | Menu text | What it does |
|---|---|---|
| **/setup** | *Have this bot interview you and set itself up* | The bot asks what you want it to do, then sets itself up: its role, instructions, and more. Use it when you've just made a bot, especially a **Blank bot**. |
| **/learn** | *Draft a reusable skill from this conversation* | The bot looks back at this conversation and drafts a reusable **skill** from what worked, for you to review. Use it when a bot just did a task well that you'll want again. |

You can add notes after either one, for example *"/learn — always use last
week, Monday to Sunday."* See [Skills and
memory](/docs/desktop/bots/skills-and-memory).

- **/setup** is only offered in a bot's own chat, not in group chats.
- **/learn** only appears when **Settings → Experimental → Bots may draft
  skills for your review** is on (it is by default).

### Shortcut phrases

The rest are shortcuts for things people ask a lot. Picking one doesn't send
anything: it puts a ready-made sentence in the message box for you to finish
(or send as it is). They work with every bot, and in group chats too.

| Command | Menu text | Puts this in the box |
|---|---|---|
| **/plan** | *Plan first: it lays out the steps and waits for your OK* | *"Before you do anything, write a short plan for this and wait for my OK: "* |
| **/remember** | *Save something to its memory* | *"Remember this from now on (save it to your memory): "* |
| **/forget** | *Remove something from its memory* | *"Forget this: remove it from your memory and stop using it: "* |
| **/brief** | *What happened, what's next, and what needs you* | *"Give me a short brief: what happened since we last talked, what's coming up, and what needs me."* |
| **/undo** | *Take back what it just did* | *"Undo what you just did and put things back the way they were."* |
| **/split** | *Split a job across your other bots, in parallel* | Asks the bot to split the job into parts, hand each to the best of your other bots at the same time, and bring the results together. |
| **/teach** | *Watch me do it on This PC, then learn it as a skill* | Asks the bot to watch what you do next on [This PC](/docs/desktop/this-pc/overview), write down each step, show you the steps to check, then save them as a skill. |
| **/call** | *Phone somewhere to book or ask (Inkbox)* | Asks the bot to phone a place for you with its Inkbox number and tell you how it went. Needs [Inkbox phone calls](/docs/desktop/inkbox/phone-calls) set up. |

Type the rest after the sentence, for example after **/plan**: *"Before you
do anything, write a short plan for this and wait for my OK: redesign the
pricing page."*
