Skip to content

tailnet

TypeScript clients for Tailscale and Headscale control planes, the local tailscaled daemon, and tailcat. Writes and breaking calls are marked in TSDoc.

One interface for both control planes

Headscale and Tailscale extend Tailnet. Code written against Tailnet works with either.

Risk levels in TSDoc

Each method that writes or breaks something has a Risk: line in its @remarks. Editors show it on hover and the API reference includes it.

Types from real responses

Headscale types were captured from a running server. Tailscale types come from the published OpenAPI schema. The package pages list where the two APIs differ.

Local test tailnet

The Nix dev shell starts a headscale server and a tailscaled on loopback, so breaking tests never reach a real network.