# Macros

How to create your first macro:

1. In Session View (Build mode), interact with a control on your MIDI controller to create an Input tile.
2. Click +ADD MACRO on the Input tile
3. A Macro tile appears in the right column, linked to that input
4. Click EDIT MACRO to open the Macro Editor
   1. Name your Macro by clicking on the Macro Name at the top.
   2. Configure your [Cues](/midi-mimic/cues.md) and [Actions](/midi-mimic/actions.md)&#x20;
   3. Click Save Macro to return to Session View or Discard to return without Saving.

{% hint style="warning" %}
Each input can only be linked to one Macro. [Cues](/midi-mimic/cues.md) allow one Macro to respond to multiple triggers/conditions in different ways, and [Ghost Parents](/midi-mimic/parents-and-children.md#ghost-parents) allow Macros to output multiple triggers to other Macros.
{% endhint %}

**Passthrough by default:** even creating a new Macro does nothing until you configure it's Cues and Actions to create a different result, and then those conditions are met, the rest of the time it assumes the control is working as-is.&#x20;

### Macro Tile Overview

<figure><img src="/files/g0YaUQysZTrx8r0zWBfz" alt=""><figcaption></figcaption></figure>

Each Macro tile in Session View shows:

**Name:** Editable in the Macro Editor

<div align="left"><figure><img src="/files/oHeQNKGEWbQ5DlLwKJgY" alt=""><figcaption></figcaption></figure></div>

**State arrow:** Passthrough | Edited | Gated

<div align="left"><figure><img src="/files/cdtvvX8SHM7nfpmhWNZE" alt="" width="133"><figcaption></figcaption></figure></div>

**Input badge:** Show message type (CC/Note) Followed be Channel and CC (Note) with the current Value below

<div align="left"><figure><img src="/files/w53jSHvAbg6RVTc5hbr8" alt=""><figcaption></figcaption></figure></div>

**Cue count:** number of cues in the Macro

<div align="left"><figure><img src="/files/FkrWzWkxEG01VmzGZlfC" alt=""><figcaption></figcaption></figure></div>

**EDIT MACRO button:** opens the [Macro Editor](/midi-mimic/macro-editor.md)

<div align="left"><figure><img src="/files/lkoAY5pJoB3ZnfV7IeXO" alt=""><figcaption></figcaption></figure></div>

**Parent / Child Indicator:** Will become a richer Macro Type indicator set, for now a standard Parent or Multi Parent will show the Orange down arrow inside a circle, a Macro with any Cues that listen for Parents will display the Green Up-Left arrow, otherwise this space is blank. Future spec will be a separate one for MultiParent, for Macro Group and Toggle Group.

<div align="left"><figure><img src="/files/QPSn9c1FeQvI8yb0GFIf" alt="" width="133"><figcaption></figcaption></figure></div>

**Enable/Disable:** Disablingg a Macro darkens its background and pauses all Macro behaviour, the input will continue to pass through.

<div align="left"><figure><img src="/files/YwMhyMoyssdU1yFfjT1h" alt=""><figcaption></figcaption></figure></div>

<div align="center"><figure><img src="/files/Kr23o0IsESL9u0HpdJzJ" alt=""><figcaption></figcaption></figure></div>

Deleting a Macro needs confirmation to avoid accidents, you'll see here how many cues are in the Macro too. Post-beta this will have data about how many Cues across the Session are looking at this if it's a Parent.

<div align="left"><figure><img src="/files/V0rKAhBrsD7GwUVwivXB" alt=""><figcaption></figcaption></figure></div>

<div align="center"><figure><img src="/files/LxR4fYg9qaEWknbOFpTD" alt="" width="301"><figcaption></figcaption></figure></div>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://midi-mimic.gitbook.io/midi-mimic/macros.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
