| name | moto-kitty |
| description | Start, stop, and check status of the SERE Kitty X11 stack on the Moto G52. Manages the full launch sequence: Termux X11 server, Android X11 activity, Openbox WM, and Kitty terminal.
<example>
Context: User wants to start Kitty on the Moto
user: "start kitty on the moto"
</example>
<example>
Context: User wants to stop the SERE display
user: "stop the moto display"
</example>
<example>
Context: User wants to check if Kitty is running
user: "is kitty running on the moto?"
</example>
|
Moto Kitty — SERE X11 Stack Manager
Manages the full Kitty display stack on the Moto G52 via SSH (alias m).
Commands
MK="${CLAUDE_PLUGIN_ROOT}/skills/moto-kitty/mk.sh"
bash $MK status
bash $MK start
bash $MK stop
Stack Components (launch order)
| # | Component | What |
|---|
| 1 | termux-x11 | X11 server on :0 |
| 2 | x11-activity | Android activity (com.termux.x11/.MainActivity) |
| 3 | openbox | Window manager (fullscreen, no decorations) |
| 4 | kitty | Terminal with remote control socket |
Remote Control
After start, Kitty is controllable via its socket. All remote commands must use --to with the full socket path.
SOCK="unix:/data/data/com.termux/files/usr/tmp/mykitty"
ssh m "kitten @ --to $SOCK send-text --match id:1 'echo hello\r'"
ssh m "kitten @ --to $SOCK send-key --match id:1 ctrl+l"
ssh m "kitten @ --to $SOCK send-key --match id:1 ctrl+c"
ssh m "kitten @ --to $SOCK get-text --match id:1 --extent screen"
ssh m "kitten @ --to $SOCK ls"
ssh m "kitten @ --to $SOCK launch --location hsplit"
ssh m 'su -c "am start -n com.termux.x11/.MainActivity"'
ANSI Status Banners
Use send-text with ANSI escapes for visual feedback on the Moto display:
ssh m "kitten @ --to $SOCK send-text --match id:1 \"\$(echo -e '\033[1;41;97m ● RECORDING \033[0m\n')\""
ssh m "kitten @ --to $SOCK send-text --match id:1 \"\$(echo -e '\033[1;42;97m ✓ DONE \033[0m\n')\""
ssh m "kitten @ --to $SOCK send-text --match id:1 \"\$(echo -e '\033[1;44;97m ■ PROCESSING \033[0m\n')\""
Important
- The local
kitty @ skill (without --to) only works on fuji — it uses the local socket
- For the Moto, always SSH +
kitten @ --to $SOCK
- Use
send-key for control sequences (Ctrl+L, Ctrl+C), send-text for typed input
send-text with \r simulates Enter
Notes
- Start is idempotent — safe to run if parts are already up
- Stop tears down in reverse order
- SSH alias
m must be configured (see ~/.ssh/config)
- Requires: termux-x11, openbox, kitty, libxcursor on the Moto