github Leadaxe/singbox-launcher v2.3.2
release v2.3.2

4 hours ago

Release v2.3.2

Downloads

macOS (Universal) - Supports both Apple Silicon and Intel

Option 1: Installation Script (Recommended)

Install with a single command (version v2.3.2):

curl -fsSL https://raw.githubusercontent.com/Leadaxe/singbox-launcher/develop/scripts/install-macos.sh | bash -s -- v2.3.2

The script will:

  • Download the release archive
  • Extract and install to /Applications/
  • Fix macOS quarantine attributes and permissions
  • Launch the application automatically

Option 2: Manual Installation

  1. Download: singbox-launcher-v2.3.2-macos.zip
  2. Extract the ZIP file
  3. Remove quarantine attribute (required):
    xattr -cr "singbox-launcher.app" && chmod +x "singbox-launcher.app/Contents/MacOS/singbox-launcher"
  4. Double-click singbox-launcher.app to run
    • If macOS blocks the app, go to System Settings → Privacy & Security and click "Open Anyway"
    • Alternatively, right-click the app and select "Open" (first time only)

Windows (amd64)

Option 1: Installer (Recommended)

  1. Download: singbox-launcher-v2.3.2-win64-setup.exe
  2. Run it and confirm the administrator prompt once. The launcher goes to C:\Program Files\singbox-launcher, your data to %LOCALAPPDATA%\singbox-launcher; sing-box.exe, wintun.dll, the config template and Mesa3D are included, nothing is downloaded on first launch
    • Tasks: desktop shortcut, Start with Windows, software OpenGL (Mesa3D) for RDP / VMs without a GPU
    • Installing over a previous version keeps your data; uninstall from Settings → Apps asks whether to remove the data too
    • The installer is not code-signed yet: if SmartScreen shows "Windows protected your PC", click More info → Run anyway

Option 2: Portable ZIP

  1. Download: singbox-launcher-v2.3.2-win64.zip
    • or singbox-launcher-v2.3.2-win64-full.zip — full bundle: sing-box.exe, wintun.dll, the config template and Mesa3D (mesa3d/, used only when no hardware OpenGL — RDP, VMs) are already inside, nothing is downloaded on first launch
  2. Extract the ZIP file to a folder your account can write to, for example D:\Tools\singbox-launcher\ — settings stay next to the program (portable.txt)
    • Under C:\Program Files\ the launcher keeps its data in %LOCALAPPDATA%\singbox-launcher instead
  3. Run singbox-launcher.exe from that folder — no administrator rights, no UAC prompt
    • TUN needs administrator rights: Start offers Restart as administrator or Switch to proxy mode
    • The regular archive downloads sing-box and wintun.dll on first launch

Windows 7 (x86, legacy)

  1. Download: singbox-launcher-v2.3.2-win7-32.zip
  2. Extract the ZIP file to a folder and run singbox-launcher-win7-32.exe
    • For Windows 7 / 32-bit or legacy compatibility only
    • Runs as administrator (UAC prompt on every start), settings stay next to the program (portable.txt); no installer and no daemon service

Linux Support

⚠️ Linux build temporarily unavailable - мы ищем тестировщика для ручного тестирования перед включением автоматической сборки.

Checksums

See checksums.txt for SHA256 checksums of all files.

Release notes — v2.3.2 (2026-09-27)

EN

A patch release after v2.3.1. Core sing-box-lx 1.14.2-lx.4 — unchanged; contract 1.1.84 (was 1.1.80).

Nodes and subscriptions

  • Xray subscriptions: the finalmask form of ClientHello fragmentation now works. A node whose streamSettings.finalmask.tcp carries an element with type: fragment gets TLS fragmentation (tls.fragment), the same as the older dialerProxy → freedom-with-fragment form. Only nodes with TLS that connect directly get it — not a node behind a hop, and not hysteria/hysteria2 (over UDP). Xray's length/delay/maxSplit are not carried over: the core splits the ClientHello at the SNI itself. Before, such nodes connected without fragmentation and every field of the element showed an "unknown field" note.
  • Fewer false "unknown field" notes on Xray nodes: an empty tcpSettings: {} and mode/path/host repeated inside XHTTP extra (Xray itself never applies them from there) are no longer reported.
  • wg:// links are accepted, like on LxBox.

Fixed

  • A node routed through a hop or a chain no longer carries its own TLS fragmentation into the config. Inside the hop's tunnel it does not help against DPI, and it turned off the record fragmentation the core applies to such nodes on its own, adding a 500 ms pause per segment. The build removes it with an info note (detour_with_tls_fragment); the hop that connects directly keeps its fragmentation.
  • A node with TLS fragmentation and the apple/windows TLS engine no longer stops the core from starting ("tls fragment is unsupported in …"): the fragmentation setting is removed with a warning (tls_fragment_system_engine), the engine stays.
  • A field that must give way to a hop (WireGuard listen_port, TLS fragmentation) is now removed in the node's emitted outbound too; before, for nodes built from their saved body the removal did not reach config.json. A detour that arrived inside an imported sing-box config no longer removes such fields — that detour never reaches the core.
  • Preset rules: a rule left with no match condition after substitution is dropped with template_fragment_dropped instead of matching all traffic — including a DNS rule with only an action. An empty match field is not a condition, and a rule whose every rule_set reference is missing is dropped whole.

RU

Патч-релиз после v2.3.1. Ядро sing-box-lx 1.14.2-lx.4 — без изменений; контракт 1.1.84 (было 1.1.80).

Узлы и подписки

  • Подписки Xray: фрагментация ClientHello в форме finalmask заработала. Узел, у которого в streamSettings.finalmask.tcp есть элемент с type: fragment, получает фрагментацию TLS (tls.fragment) — так же, как при старой форме dialerProxy → freedom с fragment. Только узлы с TLS, которые подключаются напрямую: узел за хопом и hysteria/hysteria2 (поверх UDP) её не получают. Параметры Xray length/delay/maxSplit не переносятся — ядро само режет ClientHello по SNI. Раньше такие узлы шли без фрагментации, а каждое поле элемента давало пометку «неизвестное поле».
  • Меньше ложных пометок «неизвестное поле» у узлов Xray: пустой tcpSettings: {} и mode/path/host, продублированные в extra у XHTTP (сам Xray их оттуда никогда не применяет), больше не отмечаются.
  • Принимаются ссылки wg://, как у LxBox.

Исправлено

  • Узел, который идёт через хоп или цепочку, больше не несёт в конфиг собственную фрагментацию TLS. Внутри туннеля хопа она не помогает против DPI, а отключала разбиение TLS-записей, которое ядро таким узлам включает само, и добавляла паузу 500 мс на сегмент. Сборка снимает её с пометкой (detour_with_tls_fragment); хоп, который подключается напрямую, фрагментацию сохраняет.
  • Узел с фрагментацией TLS и движком TLS apple/windows больше не мешает ядру стартовать («tls fragment is unsupported in …»): фрагментация снимается с предупреждением (tls_fragment_system_engine), движок остаётся.
  • Поле, которое обязано уступить хопу (listen_port у WireGuard, фрагментация TLS), теперь снимается и в итоговом outbound узла; раньше у узлов, собранных из сохранённого тела, снятие до config.json не доходило. detour, пришедший внутри импортированного конфига sing-box, больше не снимает такие поля — этот detour до ядра не доезжает.
  • Правила пресетов: правило, у которого после подстановки не осталось условий, выпадает с template_fragment_dropped, а не ловит весь трафик — в том числе DNS-правило с одним action. Пустое поле-условие условием не считается, а правило, у которого висячие все ссылки rule_set, выпадает целиком.

Don't miss a new singbox-launcher release

NewReleases is sending notifications on new releases.