| Node lifecycle |
init, up(ephemeral), down, logout, status |
Implemented |
Backed by embedded tsnet.Server lifecycle, including disposable nodes for CI and tests. |
| Nodes and identity |
nodes(), nodeByIp(), whois() |
Implemented |
Stable node IDs and LocalAPI identity data for authorization checks. |
| Outbound HTTP |
http.client |
Implemented |
Standard package:http.Client routed through tsnet.HTTPClient. |
| Inbound HTTP |
http.bind(port) |
Implemented |
fd-backed request and response bodies; no loopback reverse proxy. |
| Raw transports |
tcp, udp, tls.bind |
Implemented |
Package-native connections/datagrams over Go-owned tailnet sockets. TCP/UDP are the mobile core; TLS termination is currently desktop/server-only. |
| Serve and Funnel |
serve.forward, funnel.forward |
Implemented |
One runtime-owned ServeConfig authority forwards an existing loopback server; Funnel is its public visibility mode. The hosted R5 tailnet/swap receipt passed 2026-08-10; mobile remains unqualified. |
| Tailscale Services |
N/A |
Not yet |
Upstream ListenService is available in the current pin; no Dart wrapper yet. |
| Routing controls |
prefs, exitNode |
Implemented |
LocalAPI prefs wrappers; live Tailscale coverage for hosted-only behavior. |
| Diagnostics |
diag.ping, metrics, derpMap, checkUpdate |
Implemented |
Typed diagnostic wrappers with structured error codes. Native-version checks are advisory; upgrades arrive through the package or host app. |
| Taildrop |
N/A |
Not yet |
Roadmap only; no placeholder API is exported. |
| Profiles |
N/A |
Not yet |
Roadmap only; multi-profile/account management is demand-gated. |
| Windows |
All data-plane APIs |
Unsupported |
Needs a Windows-native backend; POSIX fd reactor is not portable. |