
# Wiele terminali

Termbridge może jednocześnie uruchamiać wiele sesji terminala. Jeden serwer obsługuje kilka sesji tmux, a UI pozwala przełączać się między nimi.

## Jak to działa

- Termbridge śledzi sesje utworzone lub dołączone w bieżącym uruchomieniu
- Przełącznik terminali pokazuje wszystkie dostępne sesje
- Przełączanie jest natychmiastowe — ponowne łączenie nie jest potrzebne

## Tworzenie wielu sesji

### Podczas uruchamiania

Użyj zmiennej środowiskowej `TERMBRIDGE_SESSIONS`:

```bash
TERMBRIDGE_SESSIONS=3 npx termbridge
```

Tworzy to trzy sesje: `<base>`, `<base>-2` i `<base>-3`.

### Podczas programowania

Użyj skryptu skrótów:

```bash
bun run dev:beam:multi
```

### Gdy Termbridge działa

UI przełącza się między terminalami, ale nie ma funkcji tworzenia nowych. Aby uzyskać więcej terminali, uruchom ponownie Termbridge z wyższą wartością `TERMBRIDGE_SESSIONS` lub otwórz dodatkowe okna bezpośrednio w sesji tmux (`Ctrl+B`, a następnie `c`).

## Przełączanie terminali

1. Stuknij ikonę terminala na dolnym pasku
2. Pojawi się lista dostępnych sesji
3. Stuknij sesję, aby się do niej przełączyć

Przełączenie jest natychmiastowe — poprzednia sesja działa dalej w tle.

## Zastosowania

### Kompilacja i dzienniki

Uruchom kompilację w jednym terminalu, a w drugim śledź dzienniki:

```bash
# Terminal 1: Build
npm run build

# Terminal 2: Logs
tail -f logs/app.log
```

Przełączaj się między nimi bez utraty miejsca.

### Serwer i klient

Uruchom serwer backendu w jednym terminalu, a serwer deweloperski frontendu w drugim:

```bash
# Terminal 1: Backend
npm run server

# Terminal 2: Frontend
npm run dev
```

### Wiele sesji SSH

Połącz się z różnymi serwerami:

```bash
# Terminal 1
ssh user@server1.com

# Terminal 2
ssh user@server2.com
```

Monitoruj oba z telefonu.

## Nazwy sesji

Domyślnie sesje otrzymują nazwy na podstawie numeru portu. Użyj `--session`, aby nadać im opisowe nazwy:

```bash
termbridge --session api-server
```

Przy tworzeniu wielu sesji za pomocą `TERMBRIDGE_SESSIONS` nazwa bazowa jest uzupełniana sufiksami liczbowymi.

## Trwałość

- Sesje są zachowywane po rozłączeniu z UI
- Sesje są zachowywane po ponownym uruchomieniu Termbridge (chyba że `--kill-on-exit`)
- Użyj `--session <name>`, aby ponownie połączyć się z istniejącą sesją
