Skip to content

Popups

Popups are floating terminal windows that run a command inside the main Attyx window. Each popup is bound to a hotkey — press it to open, press it again to close. Up to 32 popups can be configured.

Popups use the [[popup]] array in your config file:

[[popup]]
hotkey = "ctrl+shift+g"
command = "lazygit"
width = "80%"
height = "80%"
border = "rounded"
border_color = "#78829a"
[[popup]]
hotkey = "ctrl+shift+t"
command = "htop"
width = "60%"
height = "60%"
border = "heavy"
border_color = "#ff6600"
background_opacity = 0.9
padding = 1
OptionDefaultDescription
hotkey(required)Key combo to toggle the popup
command(required)Shell command to run
width"80%"Popup width as percentage of terminal
height"80%"Popup height as percentage of terminal
border"single"Border style: single, double, rounded, heavy, or none
border_color"#78829a"Border foreground color (#RRGGBB)
on_return_cmd(none)Command to run with the popup’s captured stdout when it exits successfully (exit code 0)
background_opacity(none)Background opacity from 0.0 (transparent) to 1.0 (opaque)
background(theme)Background color override (#RRGGBB). Empty or omitted = use theme background
padding(none)Inner padding on all sides (cells)
padding_x(none)Horizontal padding — left and right (cells)
padding_y(none)Vertical padding — top and bottom (cells)
padding_top(none)Top padding (cells)
padding_bottom(none)Bottom padding (cells)
padding_left(none)Left padding (cells)
padding_right(none)Right padding (cells)

Padding follows CSS-like specificity: padding_left overrides padding_x, which overrides padding.

StyleDescription
singleSingle-line box drawing characters (default)
doubleDouble-line box drawing characters
roundedRounded corners
heavyHeavy/thick box drawing characters
noneNo border

Launch lazygit in a large popup:

[[popup]]
hotkey = "ctrl+shift+g"
command = "lazygit"
width = "80%"
height = "80%"
border = "rounded"

Quick system monitor:

[[popup]]
hotkey = "ctrl+shift+t"
command = "htop"
width = "60%"
height = "60%"
border = "heavy"
border_color = "#ff6600"

Session picker with sesh — the selected session name is passed to on_return_cmd:

[[popup]]
hotkey = "ctrl+shift+s"
command = "sesh list | fzf"
width = "40%"
height = "50%"
border = "rounded"
on_return_cmd = "sesh connect"

Styled popup with custom background and padding:

[[popup]]
hotkey = "ctrl+shift+n"
command = "nvim"
width = "90%"
height = "90%"
border = "rounded"
background = "#1a1a2e"
background_opacity = 0.95
padding_x = 2
padding_y = 1