1 · First command of the day (cold engine)

keeper@dev-server: ~
$ bmdctl preview mp1
Studio ATEM  1 M/E Constellation HD · 1080p25 · connected 330 ms
  preview   Ca2 → MP1                                      32 ms

$ bmdctl program 2
Studio ATEM
  program   lkkk → Ca2                                     21 ms

$ bmdctl cut
Studio ATEM
  cut       MP1 on program · Ca2 on preview               sent

$ bmdctl preview mp1
Studio ATEM
  preview   MP1                                       already

Switcher name once as a header, bold. Results indented under it. Only the value now on the bus is coloured. The word "confirmed" is never printed; it's the default. Exceptions (sent, already, rejected) are one dim word where the timing goes. Connection details appear once, on the line where the connection happened, then never again.

2 · Errors

keeper@dev-server: ~
$ bmdctl program cam1
error  no input named "cam1"
       bmdctl inputs lists them

$ bmdctl --host studio-b cut
error  STUDIO B (192.168.81.86) did not answer
       bmdctl doctor checks the network

$ bmdctl video mode 1080p50
error  video mode resyncs every output
       add --yes to do it

No "bmdctl atem program:" prefix; the user just typed it. One red word, the message, one dim hint.

3 · Overview, status, inputs

keeper@dev-server: ~
$ bmdctl
bmdctl 0.1.0

  Studio ATEM   192.168.81.85   1 M/E Constellation HD   1080p25   ● 4m
  STUDIO B      192.168.81.86   not connected

  bmdctl help

$ bmdctl status
Studio ATEM  1 M/E Constellation HD · 1080p25 · session 4m, idle 12s

  ME 1      PGM  Ca2            PVW  MP1
            mix 1:00 · next background · FTB off
  keys      1  luma  Cam_1 / CaM 23          off
            2  luma  MP1 / MP1K              off
            3  luma  MP1 / MP1K              off
            4  luma  MP1 / MP1K              off
  dsk 1     MP2 / MP2K                       off
  aux 1–6   PGM
  macro     idle

$ bmdctl inputs
Studio ATEM

    1  lkkk  Cam_1
    2  Ca2   CaM 23   · · · · · · · · · · · · · · · · · · · · · ·  ● PGM
    3  LOLL  cam69
    4  Cam4  Camera 4
    5  Cam5  Camera 5
    6  Cam6  Camera 6
    7  Cam7  Camera 7
    8  Cam8  Camera 8
    9  CAM9  Camera 9
   10  CM10  Camera 10
        BARS  Color Bars
        COL1  Color 1
        COL2  Color 2
        MP1   Media Player 1  · · · · · · · · · · · · · · · · · ·  ○ PVW
        MP2   Media Player 2

  bmdctl inputs --all adds outputs, masks and keys

Short names everywhere; the long name only in inputs. Identical rows collapse (aux 1–6). Internal sources have no number column because nobody types 3010. Outputs and masks hidden unless asked.

4 · Media and transfers

keeper@dev-server: ~
$ bmdctl media upload 10 sponsor.png
Studio ATEM
  ⠸ uploading sponsor.png to slot 10 · 1920×1080 · 0.8 s
  ↑ replaced in place when done by:
  upload    slot 10  sponsor  1920×1080                1.1 s

$ bmdctl media list
Studio ATEM  media pool · 20 stills

   1  slot1_Backdrop_A                  MP1
  10  sponsor
  20  (empty)                           MP2
  17 empty slots hidden · --all shows them

$ bmdctl media clear 10 --yes
Studio ATEM
  clear     slot 10  was "sponsor"                       19 ms

5 · watch

keeper@dev-server: ~
$ bmdctl watch
Studio ATEM  watching · ctrl-c to stop

  13:43:28  program     MP1 → lkkk
  13:43:30  preview     MP1 → BLK
  13:43:42  cut         MP1 on program · lkkk on preview
  13:44:01  key 1       on air
  13:44:05  transition  mix 1:00  running
  13:44:06  transition  done
  13:46:12  session dropped
  13:46:19  reconnected  program and preview unchanged

6 · exec (cue list)

keeper@dev-server: ~
$ bmdctl exec open.cue
Studio ATEM  open.cue · 5 lines
  1  preview      Ca2 → MP1                                18 ms
  2  transition   mix 1:00                                 22 ms
  3  auto         MP1 on program · Ca2 on preview           sent
  4  key 1 fill   Cam_1                                    20 ms
  5  key 1        on air                                   24 ms
  done · 5 ok

Rules behind all of it: nothing wider than 72 columns; context (which switcher) stated once per invocation as a header, never per line; verbs in a fixed 10-char column so eyes land on the same spot; only the current bus value coloured; secondary information dim; timings right-aligned; empty and repeated rows collapsed.