Documentação
Entenda a arquitetura, o modelo de segurança e como começar.
O que é o ShvTerm
O ShvTerm é um cliente SSH desktop multiplataforma com sincronização em nuvem zero-knowledge. Ele gerencia hosts, identidades, chaves, grupos, tags, snippets e regras de port forwarding, com um terminal de alta qualidade. Os campos sensíveis são cifrados no cliente, e o servidor nunca vê a sua senha nem a sua chave de cifra.
Arquitetura
O ShvTerm é dividido em três camadas. O frontend nunca fala direto com a nuvem ou com o SSH: tudo passa por um agente local que mantém a chave de cifra apenas em memória.
Frontend (desktop)
A casca do aplicativo, a interface e o terminal (xterm.js).
Agente local (sidecar)
Backend local que cuida de autenticação, sincronização, cofre e das sessões SSH. Roda apenas em 127.0.0.1.
Servidor de sincronização
Peça separada e auto-hospedável que guarda apenas blobs cifrados — nunca dados em claro.
Modelo de segurança
A criptografia é zero-knowledge: a chave de cifra deriva da sua senha e vive somente na memória do agente local. Campos sensíveis são cifrados com RNCryptor (AES-256-CBC + HMAC-SHA256) antes de qualquer sincronização. As conexões SSH usam verificação TOFU de host key — a impressão digital é fixada na primeira conexão e qualquer divergência bloqueia a sessão para barrar ataques MITM.
Primeiros passos
-
1. Baixe o aplicativo
Instaladores para macOS (.dmg), Windows (.msi) e Linux (.AppImage / .deb).
-
2. Crie a sua conta
A sua senha gera a chave de cifra. Guarde-a bem: sem ela, ninguém — nem o servidor — recupera os seus dados.
-
3. Adicione um host e conecte
Cadastre o servidor, escolha uma identidade ou chave e abra o terminal. Tudo é sincronizado cifrado.
Diretório de dados local
Hosts, identidades, chaves SSH e os host keys confiáveis (TOFU) ficam no diretório de dados local do aplicativo, na sua máquina.
~/.shvterm/
Backend de nuvem
Por padrão o cliente fala com o backend hospedado. Quem prefere controle total pode apontar para um servidor próprio — a implementação de referência é auto-hospedável.