macOS menu bar · Happ
Один раз укажите 127.0.0.1 в Telegram, Cursor, Firefox или WebStorm. Happ
Bridge находит Happ в Wi‑Fi и держит мост, даже когда IP телефона меняется.
Happ Bridge
Статус
Телефоны в сети · 2
127.0.0.1:10808SOCKS5127.0.0.1:10809HTTPRelay только на localhost. Системный proxy macOS не трогаем. Прописка в приложения - только по вашей кнопке. Опциональный логин/пароль Happ LAN (пароль в Keychain) снижает риск подмены SOCKS в Wi‑Fi; чужие сети без пароля помечаются предупреждением.
Приложения всегда ходят на 127.0.0.1. IP телефона живёт только внутри моста.
Находит все Happ в сети - выберите нужный IP в списке. Обновить список можно без разрыва текущего подключения.
Cursor, WebStorm, Firefox: «Прописать» и предложение перезапустить. Видит установленные .app даже без конфига; после обновления macOS может понадобиться Полный доступ к диску для Firefox.
Ждёт появления Wi‑Fi перед первым поиском, мягче повторяет попытки. В диагностике — подсказка про доступ к локальной сети.
Те же логин/пароль, что в Happ. Проверка auth — end-to-end, до подтверждения «Подключено»; чужой открытый SOCKS не подставится. В чужой Wi‑Fi без пароля LAN автоподключение отключено — выберите телефон вручную. Пароль хранится в Keychain macOS, не в settings.json. Мост Wi‑Fi не шифрует - это делает Happ.
Отметьте SSID как домашний в настройках - предупреждение о чужой сети пропадёт. Выбранный телефон запоминается отдельно для каждой Wi‑Fi сети.
Слушает 127.0.0.1 - соседи по Wi‑Fi ваш Mac-прокси не видят.
Никакого mDNS, broadcast или сетевого «пинга»: проверяется только TCP-проба SOCKS5-порта. Чужой открытый прокси в сети не подставится.
Клиент шлёт greeting (с паролем — user/pass) и принимает только VER=5 с методом no-auth/user-pass. Отказ 0xff или мусор — не Happ.
Ручной IP → IP, запомненный для текущего Wi-Fi (SSID) → недавние IP → последний IP → вся /24 подсети (приоритет адресов .2–.80).
Полный скан собирает всех Happ в список с прогрессом N/254; быстрый реконнект — стоп на первом попадании.
Health-check каждые ~8 с, 3 промаха — переподключение; смена сети и sleep/wake — реконнект после короткого ожидания Wi‑Fi. Успешный IP запоминается для SSID — дома коннект без полного скана.
Окно настроек и прописка в приложения. Клик по иконке открывает меню.
Happ Bridge
Статус
127.0.0.1:10808SOCKS5127.0.0.1:10809HTTPПрописать в приложения
Выберите приложения и нажмите «Прописать». Автоподмены нет.
Сборка без подписи Apple. Установщик кладёт приложение в «Программы». Чтобы снять блокировку Gatekeeper и запустить - одна команда ниже.
.dmg с GitHub ReleasesЕсли установщик не открывается - сначала блок 2. После установки, если приложение заблокировано - блок 3.
Вставьте в «Терминал» и нажмите Return (сначала должен быть открыт диск из шага 1):
if [ ! -d "/Volumes/Happ Bridge" ]; then
echo "Диск «Happ Bridge» не открыт. Сделайте двойной клик по файлу .dmg в Загрузках, дождитесь диска и повторите."
exit 1
fi
xattr -cr "/Volumes/Happ Bridge/Install Happ Bridge.command"
open "/Volumes/Happ Bridge/Install Happ Bridge.command"
Выполняйте только если Happ Bridge уже установлен в «Программах». Код снимает блокировку Gatekeeper и запускает:
if [ ! -d "/Applications/Happ Bridge.app" ]; then
echo "Приложение не установлено. Сначала выполните блок «Установить» (Install Happ Bridge.command)."
exit 1
fi
xattr -cr "/Applications/Happ Bridge.app"
open "/Applications/Happ Bridge.app"
Иконка появится в строке меню (справа вверху), не в Dock.
Menu bar utility: stable SOCKS5/HTTP localhost bridge to Happ. Design-token dark theme, better contrast and no layout jumps, dirty-close guard, and detailed connection logs for support (relay errors/timeouts to the phone, recovery after an unstable link). Download .dmg