#!/bin/bash

# Colors
CLR_RESET="\e[0m"
CLR_HEADER="\e[1;35m"  # Magenta bold
CLR_SECTION="\e[1;36m" # Cyan bold
CLR_ITEM="\e[1;32m"    # Green bold
CLR_KEY="\e[1;33m"     # Yellow bold

cat << EOF
${CLR_HEADER}=============================================================================${CLR_RESET}
${CLR_HEADER}              🕹️  AGENTBOY - CONTROLS & SHORTCUTS  🕹️${CLR_RESET}
${CLR_HEADER}=============================================================================${CLR_RESET}

A reference for all the buttons on the retro chassis and the built-in
keyboard shortcuts. Chassis buttons are on-screen, not physical F-keys.

${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
${CLR_SECTION}🎛️ F1-F12 CHASSIS BUTTONS (the label above each says what it does)${CLR_RESET}
${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
  • ${CLR_KEY}F1 [LIGHT/DARK]${CLR_RESET} : Switch dark / light variant of the current theme
                    (the label shows the mode you would switch TO)
      - Right-click : ${CLR_ITEM}Undo/Rollback${CLR_RESET} — restores the code to the state
                      before the last AI checkpoint (active pane's working dir)
  • ${CLR_KEY}F2 [FRAME]${CLR_RESET}  : Cycle chassis frame (Default → Dark → Retro → White → Red →
                    Phosphor → Cyberpunk → Ocean)
      - Right-click : Cycle the inner divider style (same cycle)
  • ${CLR_KEY}F3 [THM-]${CLR_RESET}   : Previous theme preset (1-8)
  • ${CLR_KEY}F4 [THM+]${CLR_RESET}   : Next theme preset (1-8)
  • ${CLR_KEY}F5 [CRT]${CLR_RESET}    : Toggle the CRT scanline & glow effect
      - Right-click : Cycle scanline density
  • ${CLR_KEY}F6 [CRT-]${CLR_RESET}   : Scanline density down (20 levels)
  • ${CLR_KEY}F7 [CRT+]${CLR_RESET}   : Scanline density up (20 levels)
  • ${CLR_KEY}F8 [NOFRAME]${CLR_RESET}: Hide the chassis — bare terminal (keyboard F11 key
                    or the right-click menu brings the frame back, restoring
                    the window position and size from before)
  • ${CLR_KEY}F9 [EXPAND]${CLR_RESET} : With the tall column active (B), expand over the
                    toolbar / back; in grid mode it says "Use B first"
  • ${CLR_KEY}F10 [SAVER]${CLR_RESET} : cmatrix screensaver (any key or click exits)
  • ${CLR_KEY}F11 [FLOAT]${CLR_RESET} : Toggle free-floating mode — leaves the 3x2 snap grid
                    and makes the window freely resizable
  • ${CLR_KEY}F12 [BOTTOM]${CLR_RESET}: Scroll the active pane to the bottom (like Ctrl+End)

${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
${CLR_SECTION}🚦 ACTION LED (status traffic light)${CLR_RESET}
${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
  • ${CLR_KEY}Dim yellow${CLR_RESET}    : Idle
  • ${CLR_KEY}Bright yellow${CLR_RESET} : You are typing
  • ${CLR_KEY}Green${CLR_RESET}         : The agent / terminal is producing output
  • ${CLR_KEY}Red${CLR_RESET}           : Waiting on you — approval dialog, or the agent
                    printed a numbered option menu / y/n question and went quiet

${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
${CLR_SECTION}🔴 A / B ROUND BUTTONS${CLR_RESET}
${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
  🔴 ${CLR_KEY}B [MAX]${CLR_RESET} : Expand the window into a full-height column
  🔴 ${CLR_KEY}A [MIN]${CLR_RESET} : Snap the window back into the standard 3x2 grid

${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
${CLR_SECTION}🔊 SPEAKER GRILLE${CLR_RESET}
${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
  • Click the speaker grille : Toggle the retro sound effects (SFX) on/off

${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
${CLR_SECTION}⌨️ KEYBOARD SHORTCUTS${CLR_RESET}
${CLR_SECTION}-----------------------------------------------------------------------------${CLR_RESET}
  • Split panes:
    - ${CLR_KEY}Ctrl + Shift + E${CLR_RESET} : Split the pane vertically
    - ${CLR_KEY}Ctrl + Shift + O${CLR_RESET} : Split the pane horizontally

  • Text / search:
    - ${CLR_KEY}Ctrl + Shift + C${CLR_RESET} : Copy the selected text (selecting already auto-copies)
    - ${CLR_KEY}Ctrl + Shift + V${CLR_RESET} : Paste (middle-click pastes the X11 selection)
    - ${CLR_KEY}Ctrl + Shift + A${CLR_RESET} : Select all in the active pane
    - ${CLR_KEY}Ctrl + Shift + F${CLR_RESET} : Search in the active pane (Esc closes)
    - ${CLR_KEY}Ctrl + Shift + X${CLR_RESET} : Clear the active pane

  • Pane control:
    - ${CLR_KEY}Ctrl + D${CLR_RESET} (empty prompt) or ${CLR_KEY}exit${CLR_RESET} : End the shell, close the pane
    - ${CLR_KEY}Ctrl + End${CLR_RESET}          : Scroll to the bottom
    - ${CLR_KEY}F7${CLR_RESET} (keyboard key)   : Toggle full-height mode
    - ${CLR_KEY}F10/F12${CLR_RESET} (keys)      : Scroll the active pane to the bottom
    - ${CLR_KEY}F11${CLR_RESET} (keyboard key)  : Toggle the chassis frame (NOFRAME)

  • Font zoom:
    - ${CLR_KEY}Ctrl + "+" (or "=")${CLR_RESET} : Zoom in
    - ${CLR_KEY}Ctrl + "-"${CLR_RESET}            : Zoom out
    - ${CLR_KEY}Ctrl + "0"${CLR_RESET}            : Reset font size
    (also Ctrl + mouse wheel)

${CLR_HEADER}=============================================================================${CLR_RESET}
EOF
