Самостоятельно размещаемый ретранслятор, который позволяет управлять Alma на компьютере через приложение Alma на телефоне по исходящему соединению — без проброса портов и VPN.
nanami-0713/relay-kit
Самостоятельно размещаемый сквозно зашифрованный ретранслятор для Cloudflare Workers, через который телефон подключается к локальному порту компьютера без его раскрытия.
- Звёзды
- 194
- Форки
- 22
- Открытые issues
- 0
- Последний коммит
- 7 дней назад
Что это?
relay-kit — сервер-ретранслятор между удалённым клиентом, например телефоном, и сервисом на компьютере. Он работает на Cloudflare Workers с Durable Objects и пересылает только шифротекст и токен маршрутизации, поэтому расшифровка происходит только на обоих конечных устройствах. Для сопряжения используется один 256-битный код, из которого также выводятся токен маршрутизации и соль PAKE: без этого кода ретранслятор не сможет завершить рукопожатие.
В репозитории есть сам ретранслятор, эталонный агент для проксирования любого локального HTTP- или WebSocket-порта и эталонный клиент, предоставляющий fetch и WebSocket через туннель. Реализация ретранслятора на Node воспроизводит тот же протокол и предназначена для локального тестирования или самостоятельного размещения в одном процессе. Протокол описан в PROTOCOL.md, а основной пакет использует только WebCrypto, поэтому работает в Node 18+, браузерах и WebView в Capacitor.
Проект создан на основе протокола ретрансляции AI-ассистента Alma и несовместим на уровне протокола с официальными клиентами Alma. Ограничения частоты запросов по умолчанию нет, а рукопожатие не проходило формальный аудит.
Ключевые возможности
- 01Развёртывает ретранслятор в Cloudflare Workers одной командой wrangler.
- 02Ретранслятор обрабатывает только шифротекст и токены маршрутизации; расшифровка происходит на конечных устройствах.
- 03Из одного кода сопряжения выводятся и токен маршрутизации, и соль PAKE.
- 04Эталонный агент проксирует любой локальный HTTP- или WebSocket-порт.
- 05Основной криптографический пакет зависит только от WebCrypto и работает в Node 18+ и браузерах.
- 06В комплекте есть реализация ретранслятора на Node для локального тестирования или самостоятельного размещения.
Сценарии использования
- Подключение с телефона из другой сети к локальному dev-серверу или веб-панели на компьютере.
- Самостоятельное размещение приватного зашифрованного туннеля в своём аккаунте Cloudflare.
- Создание собственного агента или клиента на основе документированного протокола relay-e2e/v1.
Быстрый старт
- 1
Установите зависимости
npm install - 2
Войдите в аккаунт Cloudflare (один раз)
npx wrangler login - 3
Перейдите в каталог relay-сервера
cd workers/relay - 4
Разверните relay в Cloudflare Workers
npx wrangler deploy
Что важно знать
- Handshake использует самописную схему в стиле PAKE, которая не проходила формальную проверку или аудит.
- По умолчанию протокол несовместим на уровне передачи данных с официальными клиентами Alma.
- Домены workers.dev заблокированы во многих сетях материкового Китая, поэтому может понадобиться собственный домен или прокси.
В подборках
Темы
Частые вопросы
- Что такое relay-kit?
- Самостоятельно размещаемый сквозно зашифрованный ретранслятор для Cloudflare Workers, через который телефон подключается к локальному порту компьютера без его раскрытия. relay-kit — сервер-ретранслятор между удалённым клиентом, например телефоном, и сервисом на компьютере. Он работает на Cloudflare Workers с Durable Objects и пересылает только шифротекст и токен маршрутизации, поэтому расшифровка происходит только на обоих конечных устройствах. Для сопряжения используется один 256-битный код, из которого также выводятся токен маршрутизации и соль PAKE: без этого кода ретранслятор не сможет завершить рукопожатие.
- relay-kit можно использовать бесплатно? Какая у него лицензия?
- relay-kit распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- relay-kit всё ещё поддерживается?
- Активно поддерживается. Последний коммит в relay-kit — 1 нояб. 2026 г..
- Для чего можно использовать relay-kit?
- Подключение с телефона из другой сети к локальному dev-серверу или веб-панели на компьютере. Самостоятельное размещение приватного зашифрованного туннеля в своём аккаунте Cloudflare. Создание собственного агента или клиента на основе документированного протокола relay-e2e/v1.
- Как установить relay-kit?
- Установите зависимости: npm install Войдите в аккаунт Cloudflare (один раз): npx wrangler login Перейдите в каталог relay-сервера: cd workers/relay Разверните relay в Cloudflare Workers: npx wrangler deploy
- Где скачать relay-kit?
- Исходный код и инструкции по установке — на GitHub: https://github.com/nanami-0713/relay-kit
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
CLI, который предоставляет локальному dev-серверу публичный HTTPS URL с поддержкой WebSockets и hot reload — бесплатно и без регистрации.
CLI-инструмент для передачи файлов и папок между любыми компьютерами напрямую, с ретранслятором на случай недоступности прямого соединения и сквозным шифрованием по общей кодовой фразе.
Самостоятельно размещаемая платформа WebRTC с открытым исходным кодом для видеозвонков один на один с демонстрацией экрана и сквозным шифрованием.
Git-сервер, в котором каждый репозиторий — это Durable Object: он работает на Cloudflare Workers или размещается самостоятельно на celld.
Самостоятельно размещаемый демон для запуска приложений Cloudflare Workers и Durable Objects на своих машинах с хранением состояния в бакете S3, GCS или Azure.