Relay auto-hospedável que permite controlar o app Alma para desktop pelo app Alma para celular usando uma conexão de saída, sem redirecionamento de portas ou VPN.
nanami-0713/relay-kit
Um relay auto-hospedável e criptografado de ponta a ponta, implantado no Cloudflare Workers, que permite acessar uma porta local do desktop pelo celular sem expô-la.
- Estrelas
- 194
- Forks
- 22
- Issues abertas
- 0
- Último commit
- há 6 dias
O que é?
relay-kit é um servidor relay que fica entre um cliente remoto, como um celular, e um serviço em execução em um desktop. O relay roda no Cloudflare Workers com Durable Objects e encaminha apenas texto cifrado e um token de roteamento, então a descriptografia só acontece nas duas pontas. O pareamento usa um único código de 256 bits, que também gera o token de roteamento e o salt do PAKE; sem o código, o relay não consegue concluir o handshake.
O repositório inclui o próprio relay, um agent de referência que faz proxy de qualquer porta HTTP ou WebSocket local e um client de referência que expõe fetch e WebSocket pelo túnel. Um fixture de relay baseado em Node implementa o mesmo protocolo para testes locais ou hospedagem em um único processo. O protocolo está especificado em PROTOCOL.md, e o pacote principal usa apenas WebCrypto, então roda no Node 18+, em navegadores e em WebViews do Capacitor.
O projeto deriva do protocolo relay do assistente de IA Alma e não é compatível no nível do protocolo com os clientes oficiais do Alma. Não inclui limitação de taxa por padrão, e o handshake não foi auditado formalmente.
Recursos principais
- 01Implanta o relay no Cloudflare Workers com um único comando wrangler.
- 02O relay lida apenas com texto cifrado e tokens de roteamento; a descriptografia acontece nas pontas.
- 03Um único código de pareamento gera tanto o token de roteamento quanto o salt do PAKE.
- 04O agent de referência faz proxy de qualquer porta HTTP e WebSocket local.
- 05O pacote de criptografia principal depende apenas de WebCrypto e roda no Node 18+ e em navegadores.
- 06Inclui um fixture de relay em Node para testes locais ou hospedagem própria.
Casos de uso
- Acessar um servidor de desenvolvimento local ou um painel web do desktop pelo celular, em outra rede.
- Hospedar um túnel privado e criptografado na sua própria conta do Cloudflare.
- Criar um agent ou client personalizado usando o protocolo relay-e2e/v1 documentado.
Início rápido
- 1
Instale as dependências
npm install - 2
Faça login na sua conta da Cloudflare (uma única vez)
npx wrangler login - 3
Acesse o diretório do servidor relay
cd workers/relay - 4
Implante o relay no Cloudflare Workers
npx wrangler deploy
Antes de usar
- O handshake é um esquema no estilo PAKE desenvolvido internamente, que não foi verificado nem auditado formalmente.
- Por padrão, o protocolo não é compatível no nível do fio com os clientes oficiais do Alma.
- Os domínios workers.dev são bloqueados em muitas redes da China continental, então pode ser necessário usar um domínio personalizado ou um proxy.
Em coleções
Tópicos
Perguntas frequentes
- O que é relay-kit?
- Um relay auto-hospedável e criptografado de ponta a ponta, implantado no Cloudflare Workers, que permite acessar uma porta local do desktop pelo celular sem expô-la. relay-kit é um servidor relay que fica entre um cliente remoto, como um celular, e um serviço em execução em um desktop. O relay roda no Cloudflare Workers com Durable Objects e encaminha apenas texto cifrado e um token de roteamento, então a descriptografia só acontece nas duas pontas. O pareamento usa um único código de 256 bits, que também gera o token de roteamento e o salt do PAKE; sem o código, o relay não consegue concluir o handshake.
- relay-kit é gratuito? Qual é a licença?
- relay-kit é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- relay-kit ainda é mantido?
- Manutenção ativa. O último commit de relay-kit foi em 1 de nov. de 2026.
- Para que posso usar relay-kit?
- Acessar um servidor de desenvolvimento local ou um painel web do desktop pelo celular, em outra rede. Hospedar um túnel privado e criptografado na sua própria conta do Cloudflare. Criar um agent ou client personalizado usando o protocolo relay-e2e/v1 documentado.
- Como instalar relay-kit?
- Instale as dependências: npm install Faça login na sua conta da Cloudflare (uma única vez): npx wrangler login Acesse o diretório do servidor relay: cd workers/relay Implante o relay no Cloudflare Workers: npx wrangler deploy
- Onde consigo relay-kit?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/nanami-0713/relay-kit
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma CLI que dá ao seu servidor de desenvolvimento local uma URL HTTPS pública, com suporte a WebSockets e hot reload, de graça e sem precisar de conta.
Ferramenta CLI para enviar arquivos e pastas entre dois computadores, ponto a ponto com fallback para relay e criptografia de ponta a ponta por uma frase-código compartilhada.
Plataforma WebRTC open source e auto-hospedada para chamadas de vídeo 1 a 1 entre câmeras, com compartilhamento de tela e criptografia de ponta a ponta.
Servidor Git em que cada repositório é um Durable Object, executado no Cloudflare Workers ou hospedado por conta própria no celld.
Um daemon auto-hospedado que executa aplicações Cloudflare Workers e Durable Objects nas suas próprias máquinas, com o estado armazenado em um bucket S3, GCS ou Azure.