Compatibility
sail reads sing-box, Clash / Mihomo and Surge configurations as they are. Each format has a support table generated by its registry test (docs/compat/), listing every field with how sail was measured to treat it. The native format (sing-box v1.14.2 JSON and sail’s extensions) is described field by field on the other pages of this section, starting at Top level and common.
sing-box
Section titled “sing-box”Full table: docs/compat/sing-box.md · Chinese: docs/compat/zh/sing-box.md
Summary
Section titled “Summary”| Section | Fields | Supported | Warned | Error |
|---|---|---|---|---|
$schema |
1 | 1 | 0 | 0 |
log |
5 | 5 | 0 | 0 |
dns |
578 | 367 | 67 | 144 |
ntp |
35 | 35 | 0 | 0 |
certificate |
5 | 5 | 0 | 0 |
certificate_providers |
212 | 0 | 0 | 212 |
http_clients |
80 | 33 | 8 | 39 |
network_namespaces |
6 | 0 | 0 | 6 |
endpoints |
433 | 48 | 13 | 372 |
inbounds |
1367 | 651 | 116 | 600 |
outbounds |
1228 | 685 | 75 | 468 |
route |
268 | 177 | 38 | 53 |
services |
751 | 1 | 166 | 584 |
experimental |
34 | 16 | 17 | 1 |
| All | 5003 | 2024 | 500 | 2479 |
Clash / Mihomo
Section titled “Clash / Mihomo”Full table: docs/compat/clash.md · Chinese: docs/compat/zh/clash.md
Summary
Section titled “Summary”| Section | Fields | Supported | Warned | Error |
|---|---|---|---|---|
clash-for-android |
3 | 0 | 3 | 0 |
dns |
33 | 29 | 4 | 0 |
experimental |
5 | 0 | 5 | 0 |
external-controller-cors |
3 | 3 | 0 | 0 |
general |
48 | 35 | 11 | 2 |
geox-url |
5 | 0 | 5 | 0 |
iptables |
5 | 0 | 0 | 5 |
listeners[anytls] |
45 | 11 | 1 | 33 |
listeners[http] |
29 | 19 | 7 | 3 |
listeners[hysteria2] |
49 | 32 | 14 | 3 |
listeners[mieru] |
10 | 0 | 0 | 10 |
listeners[mixed] |
30 | 8 | 1 | 21 |
listeners[redir] |
6 | 4 | 1 | 1 |
listeners[shadowquic] |
34 | 0 | 0 | 34 |
listeners[shadowsocks] |
76 | 7 | 1 | 68 |
listeners[snell] |
41 | 0 | 0 | 41 |
listeners[socks] |
30 | 8 | 1 | 21 |
listeners[sudoku] |
29 | 0 | 0 | 29 |
listeners[tproxy] |
7 | 5 | 1 | 1 |
listeners[trojan] |
73 | 28 | 7 | 38 |
listeners[trusttunnel] |
18 | 0 | 0 | 18 |
listeners[tuic] |
26 | 12 | 11 | 3 |
listeners[tun] |
56 | 37 | 11 | 8 |
listeners[tunnel] |
8 | 6 | 1 | 1 |
listeners[vless] |
93 | 29 | 7 | 57 |
listeners[vmess] |
116 | 28 | 7 | 81 |
ntp |
7 | 7 | 0 | 0 |
profile |
3 | 3 | 0 | 0 |
proxies[anytls] |
38 | 23 | 3 | 12 |
proxies[direct] |
7 | 6 | 1 | 0 |
proxies[dns] |
7 | 1 | 6 | 0 |
proxies[easytier] |
37 | 0 | 0 | 37 |
proxies[gost-relay] |
22 | 0 | 0 | 22 |
proxies[http] |
19 | 17 | 1 | 1 |
proxies[hysteria2] |
50 | 25 | 9 | 16 |
proxies[hysteria] |
35 | 0 | 0 | 35 |
proxies[masque] |
29 | 0 | 0 | 29 |
proxies[mieru] |
17 | 0 | 0 | 17 |
proxies[openvpn] |
37 | 0 | 0 | 37 |
proxies[reject] |
7 | 1 | 6 | 0 |
proxies[rematch] |
9 | 0 | 0 | 9 |
proxies[shadowquic] |
27 | 0 | 0 | 27 |
proxies[snell] |
17 | 0 | 0 | 17 |
proxies[socks5] |
18 | 15 | 1 | 2 |
proxies[ss] |
93 | 25 | 2 | 66 |
proxies[ssh] |
15 | 0 | 0 | 15 |
proxies[ssr] |
16 | 0 | 0 | 16 |
proxies[sudoku] |
31 | 0 | 0 | 31 |
proxies[tailscale] |
16 | 0 | 0 | 16 |
proxies[trojan] |
56 | 39 | 1 | 16 |
proxies[trusttunnel] |
32 | 0 | 0 | 32 |
proxies[tuic] |
41 | 27 | 11 | 3 |
proxies[vless] |
137 | 46 | 1 | 90 |
proxies[vmess] |
128 | 47 | 1 | 80 |
proxies[wireguard] |
64 | 28 | 5 | 31 |
proxies[zerotier] |
30 | 0 | 0 | 30 |
proxy-groups |
24 | 20 | 4 | 0 |
proxy-providers |
39 | 28 | 8 | 3 |
rule-providers |
11 | 9 | 2 | 0 |
sniffer |
12 | 12 | 0 | 0 |
tls |
7 | 0 | 7 | 0 |
tuic-server |
13 | 0 | 0 | 13 |
tun |
51 | 34 | 10 | 7 |
| All | 2080 | 714 | 178 | 1188 |
Full table: docs/compat/surge.md · Chinese: docs/compat/zh/surge.md
Summary
Section titled “Summary”| Section | Fields | Supported | Ignored silently | Warned | Error |
|---|---|---|---|---|---|
General |
58 | 24 | 29 | 5 | 0 |
Keystore |
3 | 3 | 0 | 0 | 0 |
Proxy Group[fallback] |
16 | 11 | 4 | 1 | 0 |
Proxy Group[load-balance] |
14 | 10 | 4 | 0 | 0 |
Proxy Group[select] |
13 | 9 | 4 | 0 | 0 |
Proxy Group[smart] |
14 | 10 | 4 | 0 | 0 |
Proxy Group[ssid] |
6 | 3 | 3 | 0 | 0 |
Proxy Group[subnet] |
6 | 3 | 3 | 0 | 0 |
Proxy Group[url-test] |
17 | 11 | 4 | 2 | 0 |
Proxy[anytls] |
28 | 18 | 3 | 6 | 1 |
Proxy[direct] |
12 | 5 | 1 | 6 | 0 |
Proxy[external] |
20 | 0 | 0 | 0 | 20 |
Proxy[h2-connect] |
32 | 0 | 0 | 0 | 32 |
Proxy[http] |
24 | 15 | 3 | 6 | 0 |
Proxy[https] |
30 | 20 | 3 | 6 | 1 |
Proxy[hysteria2] |
29 | 18 | 3 | 6 | 2 |
Proxy[masque] |
27 | 0 | 0 | 0 | 27 |
Proxy[reject-drop] |
12 | 2 | 4 | 6 | 0 |
Proxy[reject-no-drop] |
12 | 2 | 4 | 6 | 0 |
Proxy[reject-tinygif] |
12 | 2 | 4 | 6 | 0 |
Proxy[reject] |
12 | 2 | 4 | 6 | 0 |
Proxy[snell] |
28 | 0 | 0 | 0 | 28 |
Proxy[socks5-tls] |
29 | 0 | 0 | 0 | 29 |
Proxy[socks5] |
23 | 14 | 3 | 6 | 0 |
Proxy[ss] |
27 | 17 | 3 | 6 | 1 |
Proxy[ssh] |
25 | 0 | 0 | 0 | 25 |
Proxy[tailscale] |
5 | 0 | 0 | 0 | 5 |
Proxy[trojan] |
30 | 20 | 3 | 6 | 1 |
Proxy[trust-tunnel] |
31 | 0 | 0 | 0 | 31 |
Proxy[tuic-v5] |
27 | 15 | 4 | 6 | 2 |
Proxy[tuic] |
26 | 0 | 0 | 0 | 26 |
Proxy[vmess] |
33 | 23 | 3 | 6 | 1 |
Proxy[wireguard] |
5 | 3 | 0 | 2 | 0 |
Rule |
152 | 59 | 75 | 0 | 18 |
SSID Setting |
6 | 0 | 0 | 6 | 0 |
Sections |
17 | 3 | 3 | 11 | 0 |
WireGuard |
13 | 11 | 0 | 2 | 0 |
| All | 874 | 333 | 178 | 113 | 250 |
Interop with sing-box and Mihomo
Section titled “Interop with sing-box and Mihomo”Full table: docs/compat/interop.md · Chinese: docs/compat/zh/interop.md
Summary
Section titled “Summary”| Family | Rows |
|---|---|
| Shadowsocks | aes-128-gcm, aes-256-gcm, chacha20-ietf-poly1305, 2022-blake3-aes-128-gcm, 2022-blake3-chacha20-poly1305, 2022 with UDP over TCP; smux, yamux and h2mux over aes-256-gcm and 2022-blake3-aes-128-gcm |
| VMess | tcp, ws, ws early data, grpc, httpupgrade, each plain and with TLS, with smux, yamux and h2mux; security chacha20-poly1305, none and zero; except the rows below |
| VLESS | the same transports, TLS and multiplex; Vision over TLS and REALITY; REALITY over tcp (with each multiplex) and grpc; except the rows below |
| Trojan | tcp, ws, grpc, httpupgrade over TLS, with smux, yamux and h2mux; REALITY |
| QUIC | Hysteria2 (plain and salamander); TUIC (UDP native, UDP over QUIC, cubic) |
| Others | AnyTLS; ShadowTLS v3 (with Shadowsocks 2022 and aes-256-gcm); SOCKS; HTTP (plain and TLS) |