Toolverse
All skills

tmux

by openclaw

Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.

Installation

Pick a client and clone the repository into its skills directory.

Installation

Quick info

Author
openclaw
Category
Backend
Views
57

About this skill

Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.

How to use

  1. Upewnij się, że tmux jest zainstalowany w systemie (Darwin lub Linux). Skill wymaga binarki tmux dostępnej w PATH.

  2. Ustaw zmienną środowiskową OPENCLAW_TMUX_SOCKET_DIR na katalog, w którym będą przechowywane socket'y tmux. Jeśli nie ustawisz, domyślnie użyty będzie $TMPDIR/openclaw-tmux-sockets lub /tmp/openclaw-tmux-sockets. Utwórz ten katalog, jeśli nie istnieje.

  3. Utwórz nową sesję tmux, podając ścieżkę socket'a i nazwę sesji. Na przykład: tmux -S "$SOCKET" new -d -s openclaw-python -n shell. Flaga -d uruchamia sesję w tle, -s nadaje nazwę sesji, -n nadaje nazwę okna.

  4. Uruchom interaktywną aplikację w pane'u sesji, wysyłając klawisze za pomocą send-keys. Użyj flagi -l do wysyłania tekstu literalnego lub C-c do wysyłania klawiszy sterujących. Nie dodawaj Enter w tym samym poleceniu dla aplikacji TUI — mogą one potraktować szybką sekwencję tekst+Enter jako wklejenie wieloliniowe.

  5. Pobierz wyjście z pane'u za pomocą capture-pane -p -J -t session:window.pane -S -200, gdzie -S -200 pokazuje ostatnie 200 linii. Format docelowy to session:window.pane, domyślnie :0.0.

  6. Do monitorowania sesji w czasie rzeczywistym użyj tmux -S "$SOCKET" attach -t session lub ponownie uruchom capture-pane w pętli. Aby wyświetlić wszystkie sesje na danym socket'e, uruchom tmux -S "$SOCKET" list-sessions.

Related skills