Repolode
vi

vi/websocat

Cliente e servidor WebSocket de linha de comando, como netcat, curl e socat para conexões ws:// e wss://.

Estrelas
8,732
Forks
334
Issues abertas
161
Último commit
há 2 meses

O que é?

websocat é uma ferramenta de linha de comando para trabalhar com WebSockets. Ela pode se conectar a uma URL WebSocket e direcionar stdin e stdout para ela, aceitar conexões WebSocket em uma porta e fazer a ponte entre WebSockets e outros transportes, como TCP, sockets UNIX, UDP ou programas externos. É útil para depurar rapidamente endpoints WebSocket pelo terminal.

Além das conexões simples, oferece composição no estilo socat: as mensagens podem ser convertidas de e para linhas, codificadas em Base64, comprimidas, enviadas com enquadramento JSON-RPC ou interrompidas ao encontrar uma sequência de bytes. Oferece suporte a TLS, cabeçalhos personalizados, seleção de Sec-WebSocket-Protocol, proxies SOCKS5, reconexão automática, transmissão para vários clientes e métricas Prometheus. Há binários pré-compilados para Linux, Windows e macOS, além de pacotes para FreeBSD e Homebrew.

A linha principal v1 é escrita em Rust e compilada com cargo. Uma nova versão v4 alpha está em desenvolvimento em um branch separado, mas ainda não é considerada estável.

Recursos principais

  • 01Conecta-se a endpoints ws:// e wss:// e direciona stdin/stdout para mensagens WebSocket
  • 02Aceita conexões WebSocket pela linha de comando
  • 03Faz a ponte entre WebSockets e TCP, sockets UNIX, UDP e programas externos
  • 04Oferece modos de mensagem baseados em linhas e binários, além de transformações Base64 e JSON-RPC
  • 05Oferece TLS, cabeçalhos personalizados, uso de proxy SOCKS5 e reconexão automática

Casos de uso

  • Depurar um endpoint WebSocket pelo terminal sem escrever código de cliente
  • Testar um servidor WebSocket enviando mensagens e lendo as respostas
  • Disponibilizar um serviço TCP, como SSH, por uma conexão WebSocket
  • Controlar por scripts um endpoint WebSocket do Chromium DevTools

Início rápido

  1. 1

    Instalar com Homebrew no macOS

    brew install websocat
  2. 2

    Conectar-se ao servidor de eco público e digitar mensagens (Ctrl+d para sair)

    websocat ws://ws.vi-server.org/mirror

Antes de usar

  • A compilação a partir do código-fonte pode falhar com uma versão muito recente da toolchain do Rust, pois algumas dependências da v1 são antigas.
  • No Android, as conexões wss:// podem falhar se um pacote de certificados não for especificado manualmente.

Em coleções

Tópicos

Perguntas frequentes

O que é websocat?
Cliente e servidor WebSocket de linha de comando, como netcat, curl e socat para conexões ws:// e wss://. websocat é uma ferramenta de linha de comando para trabalhar com WebSockets. Ela pode se conectar a uma URL WebSocket e direcionar stdin e stdout para ela, aceitar conexões WebSocket em uma porta e fazer a ponte entre WebSockets e outros transportes, como TCP, sockets UNIX, UDP ou programas externos. É útil para depurar rapidamente endpoints WebSocket pelo terminal.
websocat é gratuito? Qual é a licença?
websocat é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
websocat ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de websocat foi em 13 de ago. de 2026.
Para que posso usar websocat?
Depurar um endpoint WebSocket pelo terminal sem escrever código de cliente Testar um servidor WebSocket enviando mensagens e lendo as respostas Disponibilizar um serviço TCP, como SSH, por uma conexão WebSocket Controlar por scripts um endpoint WebSocket do Chromium DevTools
Como instalar websocat?
Instalar com Homebrew no macOS: brew install websocat Conectar-se ao servidor de eco público e digitar mensagens (Ctrl+d para sair): websocat ws://ws.vi-server.org/mirror
Onde consigo websocat?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/vi/websocat

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados