
# Vários terminais

Termbridge pode executar várias sessões de terminal simultaneamente. Um servidor hospeda várias sessões de tmux, e o UI permite alternar entre elas.

## Como funciona

- Termbridge acompanha as sessões que criou ou às quais se conectou durante a execução atual
- O seletor de terminais mostra todas as sessões disponíveis
- A troca é instantânea: não é preciso se reconectar

## Criar várias sessões

### Na inicialização

Use a variável de ambiente `TERMBRIDGE_SESSIONS`:

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

Isso cria três sessões: `<base>`, `<base>-2` e `<base>-3`.

### Durante o desenvolvimento

Use o script de atalho:

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

### Enquanto Termbridge estiver em execução

O UI alterna entre terminais, mas não permite criar um. Para adicionar terminais, reinicie Termbridge com um valor maior para `TERMBRIDGE_SESSIONS` ou abra janelas extras dentro da própria sessão tmux (`Ctrl+B` e depois `c`).

## Alternar entre terminais

1. Toque no ícone do terminal na barra inferior
2. Uma lista de sessões disponíveis será exibida
3. Toque em uma sessão para alternar para ela

A troca é instantânea: sua sessão anterior continua em execução em segundo plano.

## Casos de uso

### Compilação + logs

Execute a compilação em um terminal e acompanhe os logs em outro:

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

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

Alterne entre eles sem perder o ponto em que estava.

### Servidor + cliente

Execute o servidor de back-end em um terminal e o servidor de desenvolvimento do front-end em outro:

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

# Terminal 2: Frontend
npm run dev
```

### Várias sessões de SSH

Conecte-se a servidores diferentes:

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

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

Monitore ambos pelo celular.

## Nomear sessões

Por padrão, as sessões recebem nomes com base no número da porta. Use `--session` para dar nomes significativos:

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

Ao criar várias sessões com `TERMBRIDGE_SESSIONS`, o nome base é usado com sufixos numéricos.

## Persistência

- As sessões persistem quando você se desconecta de UI
- As sessões persistem quando Termbridge é reiniciado (a menos que `--kill-on-exit`)
- Use `--session <name>` para se reconectar a uma sessão existente
