Skip to main content
otter-screenshot is Otter Shell’s Wayland screenshot tool. It captures through the ext_image_copy_capture_v1 protocol. No X11 fallbacks, no grim, no external capture tool. By default you drag to select a region and the result goes to the clipboard as image/png. Pass --output to write a file instead.

Basic Usage

Run otter-screenshot without arguments to enter region-selection mode. Drag with the left mouse button to define the area. Press Esc or Ctrl+C before selecting to cancel. otter-rec and otter-shot use the same drag-to-select UI for region capture.
otter-screenshot                                       # drag to select a region
otter-screenshot --output screenshot.png               # save region to file
otter-screenshot --fullscreen --output screenshot.png  # capture all outputs
otter-screenshot --active --output active.png          # capture active window
otter-screenshot --freeze --output region.png          # freeze before selecting

Options

FlagShortDescription
--output PATH-o PATHWrite the PNG to PATH instead of copying it to the clipboard.
--fullscreen:Capture all outputs immediately, without opening the selection overlay.
--active:Capture the compositor-reported active toplevel immediately. See Compositor Requirements for the necessary protocol support.
--freeze:Capture the screen first, then display that frozen image behind the selection overlay. Useful when the content you want to capture would disappear while you drag.
--cursor:Include the cursor in the captured image. The cursor is hidden by default.
--border:Keep the selection border in the final image. By default the border is only a visual selection aid and is cropped out.
--tonemap-hdr:Apply a simple SDR tonemap before encoding. Use this as a best-effort fallback when capturing HDR outputs. It is not color-managed output.
--help-hPrint usage and exit.

Clipboard

When no --output path is given, otter-screenshot pipes the PNG through wl-copy --type image/png. Otter Shell ships its own wl-copy as part of the native data-control implementation, so you do not need a separate clipboard utility. File output writes directly to disk and does not touch the clipboard.

Compositor Requirements

otter-screenshot requires the compositor to expose the ext_image_copy_capture_v1 protocol for output capture. If the compositor does not support it, the tool exits with an error. It does not fall back to another capture path.Active-window capture (--active) also requires ext_foreign_toplevel_list_v1 and ext_foreign_toplevel_image_capture_source_manager_v1. If either protocol is missing, --active will not work.

Binding a Shortcut

Bind otter-screenshot to a hotkey in your compositor config. Examples:Hyprland:
bind = $mainMod, P, exec, otter-screenshot
bind = $mainMod SHIFT, P, exec, otter-screenshot --freeze --output ~/Pictures/screenshot.png
Sway:
bindsym $mod+p exec otter-screenshot
See Keybinds for more compositor examples.