Documentação
Cliente de linha de comando
vtermc é o cliente de linha de comando: conecta-se a um servidor, cria ou anexa sessões de terminal e gerencia a lista de servidores salva — tudo dentro de um terminal simples, por SSH ou numa máquina headless. Compartilha ~/.vibeterminal/client.json com o cliente de desktop, então ambos veem os mesmos servidores.
Iniciar um terminal
Execute vtermc sem sinalizadores de modo para criar um terminal novo no servidor local (wss://localhost:7878 por padrão) com o shell detectado, e transmiti-lo para o terminal atual. Digite exit (ou Ctrl+D) no shell remoto para encerrar a sessão.
As sessões vivem no servidor: se a conexão cair — perda de rede, fechar a janela, matar o vtermc — a sessão continua rodando e pode ser reanexada depois com vtermc -s.
vtermc -p <id>— iniciar com um perfil de terminal específico (a lista de perfis está na seçãoProfilesda interface Web);vtermc -p— sem id de perfil: o seletor lista os perfis do servidor interativamente;vtermc -w <dir>— definir o diretório de trabalho da nova sessão.
Quando stdin não é um terminal (um pipe ou arquivo), vtermc muda para o modo em lote: stdin é alimentado à sessão e a saída flui até a sessão fechar — útil a partir de scripts ou agentes:
echo "make test" | vtermc
Conectar a um servidor
--server wss://host:port— conectar a um servidor específico em vez do local (endereços IPv6 entre colchetes:wss://[fd00::1]:7878); a variável de ambienteVTERM_SERVERdefine o mesmo padrão;- O handshake é respondido com a chave secreta do servidor: servidores adicionados via
-a/-scarregam sua chave emclient.json; o servidor local recorre à variável de ambienteTERMINAL_GUI_SECRET_KEY(ou uma chave em texto plano emserver.json).
Adicionar servidores
-a salva um servidor em client.json e sai — nunca abre um terminal. Duas formas:
vtermc -a— prompts interativos:Server name,Server addresseSecret key. O endereço deve serwss://host:port(entrada inválida é pedida de novo; um endereço vazio cancela). Um nome vazio recorre ao endereço;vtermc -a "vtshare1:..."— cole a string de compartilhamento criptografada. Clicar noQR Codede pareamento na seçãoServerda interface Web a copia para a área de transferência;vtermca descriptografa e preenche nome, endereço e chave secreta automaticamente.
Detalhes que valem saber:
- readicionar um endereço existente atualiza aquela entrada no lugar (seu id é mantido) em vez de duplicá-la;
- endereços locais são recusados —
Localestá sempre implicitamente disponível e nunca precisa de entrada; - as entradas também são mostradas pelo Server Manager do cliente de desktop.
Selecionar servidores e sessões
vtermc -s abre dois seletores em tela cheia (requer terminal interativo):
- Lista de servidores — primeiro
Local, depois cada servidor gerenciado comoName (endereço). Navegue com as setas ouj/k, salte com um dígito,Enterseleciona,qcancela; - Lista de terminais — primeiro
New Terminal, seguido das sessões ativas daquele servidor com diretório de trabalho, título e servidor proprietário. Anexe a uma sessão existente, ou crie uma nova (que então honra-p/-wcomo uma execução simples devtermc).
Anexar nunca interrompe a sessão — ela continua rodando no servidor entre anexações.
Remover um servidor
Na lista de servidores, mova até um servidor gerenciado e pressione d: a linha fica vermelha e a dica pede confirmação. Pressione y (ou Enter) para excluir a entrada de client.json, qualquer outra tecla aborta. Local não pode ser excluído.
Variáveis de ambiente
Uma nova sessão herda um conjunto fixo do seu shell — PATH, HOME, USER, SHELL, TERM, WT_PROFILE_ID, PSMODULEPATH:
--env-inherit <patterns>— lista separada por vírgulas (ou a variável de ambienteVTERM_ENV_INHERIT); curingas*são suportados;-e VAR=VALUE— injetar variáveis extras (repetível);--no-env— iniciar a sessão sem nenhuma variável herdada.
vtermc -w ~/project -e RUST_LOG=debug --env-inherit "PATH,HOME,TERM"
Todas as opções
-p, --profile [<ID>] Selecionar perfil de terminal (omitir para listar interativamente)
-w, --working-dir <DIR> Definir diretório de trabalho
-s, --select Selecionar servidor e terminal existente interativamente
-a, --add [<SHARE>] Adicionar um servidor (vtshare1: string de compartilhamento, ou interativo)
--server <URL> URL WebSocket do servidor [env: VTERM_SERVER]
-e, --env <VAR=VALUE> Variáveis de ambiente adicionais
--no-env Não herdar variáveis de ambiente
--env-inherit <PATTERNS> Padrões de variáveis de ambiente a herdar [env: VTERM_ENV_INHERIT]