---
url: https://clusto.app/docs/terminal-key-bar.md
description: >-
  The customizable terminal key bar - quick keys above every terminal pane, two
  rows, built-in keys, custom key-combo buttons and text macros, synced with
  your account settings.
---

# Terminal Key Bar

The key bar is the row of quick keys at the top of every terminal pane. It sends
keys that are awkward or missing on a touch keyboard (arrows, Esc, Tab, Ctrl+C)
and can hold your own buttons for key combos and short macros. It is available on
the Personal plan.

Phones always show the key bar. On desktop it is hidden by default: turn on
**Settings > Appearance > Terminal key bar > Show on desktop** to show it.

## Two rows

* The top row is always visible. If it holds more keys than fit, it scrolls
  sideways.
* The **More** row opens with the chevron at the trailing edge of the bar. It ends
  with a sliders button that opens the key bar settings.

Default top row: Left, Up, Down and Right arrows, a divider, Esc, Tab and `^C`.

Default More row: Space, Enter, New line (Shift+Enter), Shift+Tab, Alt+Up, Attach
file and Reload full history.

The **Attach file** paperclip opens a menu with three sources: **Files from this
device**, **Take photo** and **From a node**. Device files and photos upload next
to the session and their paths are typed into the prompt. See
[Send files to a terminal](/file-explorer#send-files-to-a-terminal) for the
limits and the node picker.

## Built-in keys you can add

Besides the defaults, the editor offers Paste, `^D`, `^Z`, `^L`, `^R`, Home, End,
PgUp and PgDn. You can also add any number of dividers to group keys.

## Customize the layout

Open the settings from the sliders button, from **Settings > Appearance > Terminal
key bar**, or with **Customize terminal key bar** in the `F1` command palette.

* Move each key up or down within its row.
* Move a key to the other row.
* Hide a key. Hidden keys appear in the **Hidden and available** list, which adds
  them back to either row.
* **Reset layout** restores the default layout and keeps your custom buttons hidden
  rather than deleting them.

## Custom buttons

Choose **Add custom button**, give it a label, and pick what it sends. The label is
optional: an empty label shows the key combo.

### Key or key combo

Enter a combo such as `Ctrl+R`, `Alt+B`, `Shift+Tab`, `F5`, `Up`, `PageDown` or
`Ctrl+Shift+Home`.

* Modifiers: `Ctrl`, `Alt` (Option) and `Shift`.
* Named keys: `Up`, `Down`, `Left`, `Right`, `Home`, `End`, `PageUp`, `PageDown`,
  `Insert`, `Delete`, `Enter`, `Tab`, `Escape`, `Space`, `Backspace` and `F1` to
  `F12`. Any single character also works.
* **Record** captures a combo you press on a physical keyboard.

The button sends the same bytes the terminal sends when you press that combo on a
keyboard.

### Macro (text and keys)

A macro types text and presses keys in sequence.

| In the macro | Result |
| --- | --- |
| Plain text | Typed as written |
| A line break | Presses Enter |
| `{Key}` | Presses a key or combo: `{Enter}`, `{Ctrl+C}`, `{Alt+B}`, `{F5}` |
| `{Wait 500}` | Pauses 500 ms (maximum 10000) |
| Two opening braces in a row | Types one literal opening brace |

Examples:

```text
git status{Enter}
claude{Enter}{Wait 1500}/model{Enter}
```

A running macro stops if the pane closes or switches to another session.

An invalid combo or macro shows an error in the dialog and cannot be saved.

## Command palette

Every custom button also gets a `Key bar: <label>` command in the `F1` command
palette. It presses that button on the active terminal, so macros and combos work
from the keyboard on desktop too.

## Sync

The layout is stored per device and follows you through account settings sync, like
any other synced app setting. See [Account Cloud Sync](/cloud-sync).
