AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Tailscale

skill-usetemi-skills-tailscale · by usetemi

Use for any Tailscale platform work: tailnets, tailscaled, tailscale CLI, grants and ACLs, MagicDNS, Serve, Funnel, Tailscale Services, app connectors, subnet routers, exit nodes, Tailscale SSH, Kubernetes Operator, containers, tsnet, auth keys, OAuth clients, CI/CD automation, API usage, GitOps policy workflows, connectivity debugging, and production diagnostics.

— No reviews yet
0 installs
39 views
0.0% view→install

Install

$ agentstack add skill-usetemi-skills-tailscale

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • ✓ Prompt-injection patterns
  • ✓ Secret / credential exfiltration
  • ✓ Dangerous shell & filesystem operations
  • ✓ Untrusted network calls
  • ✓ Known-malicious package signatures

What it can access

  • ✓ Network access No
  • ✓ Filesystem access No
  • ✓ Shell / process execution No
  • ✓ Environment & secrets No
  • ✓ Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-usetemi-skills-tailscale)

Reliability & compatibility

✓ Security review passed
0 installs to date
— no reviews yet
● 2mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Tailscale? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Tailscale Platform

Use this skill for any Tailscale work, from local development connectivity to production tailnet architecture and incident diagnostics.

Tailscale changes quickly. Ground version-sensitive advice in the local CLI and current official docs before making claims about flags, policy syntax, product limits, or Kubernetes CRDs.

First Steps

  1. Infer posture from context.
  • For personal tailnets, MVPs, local dev, demos, and scrappy startup work,

give the fastest viable path first.

  • For organizations, production, shared tailnets, sensitive systems, or

compliance contexts, use secure-first defaults.

  • If the context is unclear and the posture changes commands, exposure, key

handling, or access policy, ask before changing state.

  1. Inspect local project and system context before prescribing commands.

``bash rg --files -g 'tailnet*.json' -g '*tailscale*' -g 'acl.hujson' -g 'policy.hujson' -g 'docker-compose*.yml' -g 'Dockerfile*' -g '.github/workflows/**' -g 'k8s/**' -g 'helm/**' command -v tailscale tailscale version tailscale --help tailscale --help ``

  1. Prefer read-only checks first unless the user explicitly asks to mutate local

Tailscale state, tailnet policy, Kubernetes resources, or remote resources.

``bash tailscale status tailscale status --json tailscale netcheck tailscale ping tailscale dns status tailscale serve status tailscale funnel status ``

  1. Use official Tailscale docs as the source of truth. Third-party posts can

help discover issues, but do not encode them as facts unless confirmed by official docs or the current CLI.

Reference Routing

  • Read references/policy-security.md for grants vs ACLs, policy HuJSON,

tags, groups, tests, sshTests, Tailscale SSH, device posture, app capabilities, Funnel nodeAttrs, and Tailnet Lock cautions.

  • Read references/routing-connectors.md for subnet routers, exit nodes, app

connectors, MagicDNS, split DNS, route injection, HA/failover, regional routing, DERP/direct diagnostics, tailscale netcheck, tailscale ping, and tailscale status.

  • Read references/expose-services.md for Tailscale Serve, Funnel, Tailscale

Services, TailVIPs, HTTPS certs, identity headers, app capabilities headers, service config files, drain/advertise flows, TCP/TLS forwarding, and public exposure gotchas.

  • Read references/automation-containers.md for auth keys, OAuth clients,

workload identity federation, ephemeral nodes, GitHub Actions, Docker, userspace networking, serverless patterns, tsnet, API usage, and GitOps policy workflows.

  • Read references/kubernetes.md for the Tailscale Kubernetes Operator,

tags/OAuth prerequisites, ingress, egress, API server proxy, Connector, ProxyGroup, ProxyClass, Recorder, subnet routers, app connectors, version compatibility, and CNI notes.

  • Read references/production-diagnostics.md for production review checklists,

least privilege, key expiry, device approval, logs, network flow logs, audit logs, webhooks/log streaming, update policy, incident diagnostics, and safe read-only commands.

Defaults

  • For new access policy, prefer grants. Use legacy ACLs only when maintaining an

existing ACL-only policy or when the needed behavior is not yet expressible in grants.

  • Treat tailscale up flags as a complete desired state. To change one

preference, prefer tailscale set when available.

  • Keep route advertisement, route approval, client route acceptance, and access

policy separate in explanations. Routing makes paths reachable; policy decides who may connect.

  • Treat auth keys, OAuth client secrets, and generated auth keys as secrets.

Prefer tagged, ephemeral, short-lived, scoped automation identities.

  • For public exposure, make the Serve vs Funnel boundary explicit: Serve is

tailnet-private; Funnel is internet-public.

  • Use dry runs, status commands, policy tests, and local config inspection

before changing production tailnets.

Gotchas To Surface Early

  • tailscale up with flags requires the complete set of desired settings; an

omitted setting can trigger an error or reset only with --reset.

  • Grants are preferred for new policy, but existing tailnets may still use ACLs.
  • Subnet routes, exit-node routing, app connector route injection, and access

rules are separate control layers.

  • Serve and Funnel cannot both own the same node, DNS name, and port combination

as private and public exposure at the same time.

  • Auth keys expire; connector or automation key expiry can fail closed.
  • MagicDNS and split DNS behavior depends on resolver setup and platform DNS

integration.

  • DERP relay use is a performance and reachability fallback, not plaintext

traffic. Tailscale traffic remains WireGuard-encrypted between nodes.

Output Style

When answering Tailscale tasks, include:

  1. The fastest viable path.
  2. The security hardening path when relevant.
  3. Exact commands, policy shape, Kubernetes manifests, or API calls.
  4. The gotchas checked and any remaining risk.

Downrank dashboard-only instructions, stale CLI flags, broad tailnet access, and long-lived reusable keys unless the user explicitly asks for them.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.