Baseado no catálogo verificado da versão 0.1.0. Os recursos dependem da plataforma e da negociação do protocolo; confira a versão instalada.
Observar, agir e verificar
USER, SESSION, OBSERVATION, X e Y devem ser substituídos. Envie a senha por stdin e feche o fluxo; --password-stdin não abre um prompt interativo. Guarde data.session, leia before.png, escolha coordenadas da imagem e verifique after.png. Enviar a entrada não confirma a conclusão da tarefa.
rdp-cli connect --host desktop.example.net --user USER --password-stdin
rdp-cli screenshot --session SESSION --out before.png
rdp-cli click --session SESSION --desktop --x X --y Y --observation OBSERVATION
rdp-cli screenshot --session SESSION --out after.png
--version informa versão e capacidades; --help-json fornece o catálogo estruturado; COMMAND --help descreve as opções sem iniciar uma sessão.
rdp-cli --version
rdp-cli --help-json
rdp-cli connect --help
JSON e opções comuns
Comandos normais retornam um objeto JSON UTF-8 em stdout: ok: true com data ou ok: false com error. stderr contém diagnósticos. Códigos de saída: 0 sucesso, 1 falha operacional, 2 argumentos inválidos.
A ajuda usa texto. events --follow transmite NDJSON; events sem acompanhamento retorna um resultado JSON com data.events e data.ndjson. No PowerShell 5.1, configure [Console]::OutputEncoding e $OutputEncoding como UTF-8 para texto não ASCII.
data.session- Guarde o ID retornado por connect.
data.observation- Use o token da captura; renove após reconexão ou mudanças de controle e telas.
data.capabilities- Consulte capacidades negociadas antes de arquivos, áudio, área de transferência ou monitores.
data.state / data.remote_outcome- queued, sent, partial, unknown, cancelled e failed descrevem progresso. remote_outcome: not_confirmed ainda exige conferir o resultado.
data.transfer_id- Use com files status ou files cancel; espere um estado final e confira hashes dos arquivos concluídos.
error.code / error.message / error.retryable- Decida pelo código estável. Mensagem e retryable orientam, mas não autorizam repetição sem análise.
Todos os comandos aceitam --request-id e --timeout-ms. Reutilize um ID apenas com o mesmo comando e argumentos dentro da janela de retenção. Um timeout local não prova que nada foi enviado; consulte operations status.
--request-id ID · --timeout-ms MILLISECONDS Sessões
connect exige --host e, em RDP, --user. Portas padrão: RDP 3389, VNC 5900. Para conexões que exigem senha, escolha uma fonte: --password, --password-stdin ou --credential-ref. VNC com --vnc-security none não usa fonte de senha. --domain é de RDP; --size e --layout são exclusivos. --connect-timeout-ms limita a conexão. reconnect mantém a pausa; disconnect não encerra o login remoto.
rdp-cli connect#
Criar sessão RDP/VNC persistente
Não exige sessão.
rdp-cli connect --help
rdp-cli list#
Listar sessões visíveis
Não exige sessão.
rdp-cli list --help
rdp-cli status#
Consultar estado da sessão
Exige --session SESSION.
rdp-cli status --help
rdp-cli reconnect#
Reconectar e permanecer pausado
Exige --session SESSION.
rdp-cli reconnect --help
rdp-cli disconnect#
Desconectar sem encerrar login remoto
Exige --session SESSION.
rdp-cli disconnect --help
Visualização e status
watch abre um visualizador humano somente para leitura com --viewer window ou web; comandos do Agent não dependem dele. presence show/hide controla o status local; --floating adiciona controles e --panel abre o painel de sessões no macOS ou Linux. Fechar a observação mantém a conexão.
rdp-cli watch#
Abrir visualizador humano
Exige --session SESSION.
rdp-cli watch --help
rdp-cli presence show#
Mostrar status do desktop
Não exige sessão.
rdp-cli presence show --help
rdp-cli presence hide#
Ocultar status sem desconectar
Não exige sessão.
rdp-cli presence hide --help
Controle e devolução
pause usa --session ou --all e revoga controle humano. resume devolve ao Agent. control take exige um viewer ID conectado; release pode indicar esse visualizador ou o Agent de destino. Respeite pausas humanas e capture novamente após a devolução.
rdp-cli pause#
Pausar entrada e revogar controle
Escolha exatamente um: --session SESSION ou --all.
rdp-cli pause --help
rdp-cli resume#
Devolver sessão ao Agent
Exige --session SESSION.
rdp-cli resume --help
rdp-cli control take#
Entregar controle ao visualizador
Exige --session SESSION.
rdp-cli control take --help
rdp-cli control release#
Devolver controle ao Agent
Exige --session SESSION.
rdp-cli control release --help
Arquivos
--path é relativo à unidade de troca, não a qualquer disco remoto; --local indica arquivo ou diretório cliente. Substituir exige --overwrite. upload/download retornam ID; status sem ID lista transferências. cancel pode preservar arquivos concluídos; cleanup remove conteúdo escolhido e pode retornar FILE_BUSY.
rdp-cli files list#
Listar unidade de troca
Exige --session SESSION.
rdp-cli files list --help
rdp-cli files upload#
Enviar arquivo ou diretório
Exige --session SESSION.
rdp-cli files upload --help
rdp-cli files download#
Baixar arquivo ou diretório
Exige --session SESSION.
rdp-cli files download --help
rdp-cli files status#
Consultar transferências
Exige --session SESSION.
rdp-cli files status --help
rdp-cli files cancel#
Cancelar transferência
Exige --session SESSION.
rdp-cli files cancel --help
rdp-cli files cleanup#
Remover conteúdo de troca
Exige --session SESSION.
rdp-cli files cleanup --help
Som e microfone
audio status informa capacidades. mute/volume afetam --viewer-id, com on/off e --percent positivo. audio microphone apenas consulta ou interrompe. Iniciar exige ação explícita da pessoa que controla um visualizador autorizado.
rdp-cli audio status#
Consultar capacidades de áudio
Exige --session SESSION.
rdp-cli audio status --help
rdp-cli audio mute#
Silenciar ou reativar um visualizador
Exige --session SESSION.
rdp-cli audio mute --help
rdp-cli audio volume#
Ajustar volume do visualizador
Exige --session SESSION.
rdp-cli audio volume --help
rdp-cli audio microphone#
Consultar ou parar microfone
Exige --session SESSION.
rdp-cli audio microphone --help
Monitores
monitors retorna a topologia. monitors set aceita JSON ou @file; --allow-reconnect permite reconexão se não houver ajuste dinâmico. Confira a nova topologia e faça outra captura. VNC informa o framebuffer, mas rejeita alterações de disposição solicitadas.
rdp-cli monitors#
Consultar topologia negociada
Exige --session SESSION.
rdp-cli monitors --help
rdp-cli monitors set#
Alterar disposição dos monitores
Exige --session SESSION.
rdp-cli monitors set --help
Acesso web
web start configura endereço, certificado/chave TLS ou proxy confiável; --ice-server pode repetir. Fora de loopback são necessários LAN/VPN, HTTPS e autorização. access grant exige --permission e --expires-in em segundos. Permissões: session.observe/control, clipboard.read/write, files.read/write, audio.listen/send. Revogar encerra os fluxos associados.
rdp-cli web start#
Iniciar serviço web autorizado
Não exige sessão.
rdp-cli web start --help
rdp-cli web status#
Consultar serviço web
Não exige sessão.
rdp-cli web status --help
rdp-cli web stop#
Parar acesso web sem fechar sessões
Não exige sessão.
rdp-cli web stop --help
rdp-cli access grant#
Criar autorização web limitada
Exige --session SESSION.
rdp-cli access grant --help
rdp-cli access list#
Listar autorizações
Exige --session SESSION.
rdp-cli access list --help
rdp-cli access revoke#
Revogar autorização e fluxos
Exige --session SESSION.
rdp-cli access revoke --help
Operações e eventos
operations status consulta operation ID ou request ID original sem reenviar entrada. events lê eventos; --follow acompanha, --after retoma pelo cursor. Mesmo sent exige verificar a aplicação remota.
rdp-cli operations status#
Consultar resultado retido
Exige --session SESSION.
rdp-cli operations status --help
rdp-cli events#
Ler ou acompanhar eventos
Exige --session SESSION.
rdp-cli events --help
Confiança, credenciais e instalação
trust associa destino RDP e impressão digital no modo estrito. credentials remove apaga a referência indicada. No macOS e Linux, install-cli/uninstall-cli gerenciam a entrada CLI e --prefix escolhe o local; Windows executa o arquivo baixado. presence show --panel abre o painel de sessões no macOS e Linux. O catálogo foi verificado com o CLI publicado do macOS 0.1.0; as diferenças do Linux foram conferidas na implementação publicada. licenses mostra versões e licenças de terceiros.
rdp-cli trust list#
Listar confiança de certificados RDP
Não exige sessão.
rdp-cli trust list --help
rdp-cli trust add#
Confiar em impressão digital específica
Não exige sessão.
rdp-cli trust add --help
rdp-cli trust remove#
Remover registro de confiança
Não exige sessão.
rdp-cli trust remove --help
rdp-cli credentials remove#
Remover credencial do produto
Não exige sessão.
rdp-cli credentials remove --help
rdp-cli install-cli#
Instalar a entrada CLI no macOS ou Linux
Não exige sessão.
rdp-cli install-cli --help
rdp-cli uninstall-cli#
Remover entrada CLI criada
Não exige sessão.
rdp-cli uninstall-cli --help
rdp-cli licenses#
Mostrar versões e licenças de terceiros
Não exige sessão.
rdp-cli licenses --help
Condições de protocolo e plataforma
- RDP usa --cert-policy ignore e --tls-profile modern. strict verifica confiança e nome; legacy permite TLS antigo explicitamente. A verificação HTTPS web não muda.
- VNC rejeita --user, --domain, --size, --layout, --cert-policy e --tls-profile. A autenticação clássica usa oito bytes UTF-8 da senha. Sem autenticação exige --vnc-security none e nenhuma senha. Os transportes VNC suportados não são criptografados.
- VNC não oferece arquivos, áudio, microfone ou mudanças ativas de telas. UTF-8 na área de transferência depende da negociação; caso contrário, apenas Latin-1.
- Arquivos RDP exigem redirecionamento de unidades. Áudio, área de transferência, microfone e múltiplos monitores também dependem do servidor.
- Windows/macOS têm visualizadores e status nativos. Linux precisa de serviços de tela/áudio e Secret Service para salvar credenciais; operações CLI compatíveis continuam disponíveis sem desktop.
- A entrada Unicode é enviada com pausas de compatibilidade. Ajuste o timeout para textos longos e confira; nenhum visualizador garante todos os caracteres em todos os servidores.
Recuperação de erros
OBSERVATION_REQUIRED / INVALID_COORDINATES- Capture novamente e confira topologia e coordenadas.
SESSION_PAUSED / CONTROL_HELD_BY_HUMAN- Pare a entrada e aguarde a devolução explícita ao Agent.
AUTH_FAILED / VNC_AUTH_FAILED- Confira conta, fonte da senha e política remota.
RDP_TLS_HANDSHAKE_FAILED / CERTIFICATE_UNTRUSTED- Confira TLS, certificado e impressão digital; falha TLS não significa senha errada.
CAPABILITY_UNAVAILABLE / CLIPBOARD_ENCODING_UNSUPPORTED- Verifique capacidades ou codificação e escolha uma operação suportada.
REQUEST_TIMEOUT / REQUEST_ID_CONFLICT / REQUEST_WINDOW_EXPIRED- Consulte operação e tela antes de repetir; não reutilize IDs com argumentos diferentes ou retenção expirada.