Toolverse
Wszystkie skille

tmux

autor: openclaw

Zdalne sterowanie sesjami tmux — wysyłaj klawisze i czytaj wyjście terminala

Instalacja

Wybierz klienta i sklonuj repozytorium do odpowiedniego katalogu skilli.

Instalacja

Szybkie info

Kategoria
Backend
Wyświetlenia
57

O skillu

Skill do zdalnego kontrolowania sesji tmux dla interaktywnych aplikacji CLI. Wysyłaj klawisze do pane'ów tmux i pobieraj ich wyjście, aby zautomatyzować pracę z terminalem. Idealny do pracy z aplikacjami wymagającymi TTY, takimi jak edytory czy REPL. Obsługuje niestandardowe ścieżki socket'ów i pozwala na monitorowanie wielu sesji jednocześnie.

Jak używać

  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.

Podobne skille