Skip to main content

Crate ssh_cli

Crate ssh_cli 

Source
Expand description

§ssh-cli

CLI Rust full-stack que dá a uma LLM (Claude Code, Cursor, Windsurf) a capacidade de operar servidores remotos via SSH em um fluxo de subprocesso via stdin/stdout.

§Módulos

MóduloResponsabilidade
cliDefinição de argumentos via clap derive e dispatcher
vpsCRUD e persistência de registros de VPS (XDG + TOML + 0o600)
sshCliente SSH (stub nesta iteração; real via russh em v2+)
i18nInternacionalização com enum Mensagem bilíngue
localeDetecção e resolução de locale do sistema operacional
platformAjustes de plataforma (UTF-8 Windows, detecção TTY)
mascaramentoMascaramento Unicode-safe de valores sensíveis
errosTipos de erro estruturados via thiserror
outputÚnico módulo autorizado a println! (formatação CRUD)
pathsValidação e normalização de caminhos (anti-traversal, NFC)
signalsHandler de Ctrl+C com flag de cancelamento via AtomicBool
terminalDetecção de TTY e escolha de cor via termcolor

§Entry point

A função pública run é o ponto de entrada chamado por main.rs.

Modules§

cli
Definição de argumentos CLI via clap derive e dispatcher.
erros
Tipos de erro do ssh-cli.
i18n
Sistema de internacionalização do ssh-cli.
locale
Detecção e resolução de idioma cross-platform.
mascaramento
Mascaramento Unicode-safe de valores sensíveis (senhas, tokens).
output
Único módulo autorizado a emitir output em stdout para CRUD de VPS.
paths
Validação e normalização de caminhos de arquivo.
platform
Abstrações condicionais por sistema operacional.
scp
Transferência de arquivos via SCP sobre SSH.
signals
Tratamento de sinais do sistema operacional.
ssh
Motor SSH via russh 0.60.x (iteração 2).
terminal
Configuração de output colorido e detecção de terminal interativo.
tunnel
Tunnel SSH (port-forward local).
vps
CRUD e persistência de registros de VPS.

Functions§

run
Executa o ssh-cli a partir dos argumentos da linha de comando.