Jump to related tools in the same category or review the original source on GitHub.

Smart Home & IoT @danfedick Updated 2/26/2026

📡 Starlink OpenClaw Skill - ClawHub

Do you want your AI agent to automate Starlink workflows? This free skill from ClawHub helps with smart home & iot tasks without building custom tools from scratch.

What this skill does

Control Starlink dish via local gRPC API. Get status, list WiFi clients, run speed tests, stow/unstow dish, reboot, and get GPS location. Use when the user asks about Starlink, internet status, connected devices, or satellite connectivity.

Install

npx clawhub@latest install starlink

Full SKILL.md

Open original
nameversiondescriptionhomepage
starlink1.0.0Control Starlink dish via local gRPC API. Get status, list WiFi clients, run speed tests, stow/unstow dish, reboot, and get GPS location. Use when the user asks about Starlink, internet status, connected devices, or satellite connectivity.https://github.com/danfedick/starlink-cli

Starlink CLI

Control your Starlink dish from the command line via its local gRPC API at 192.168.100.1:9200.

Installation

cargo install --git https://github.com/danfedick/starlink-cli

Requires Rust and protoc (Protocol Buffers compiler).

Commands

Status

Get dish state, uptime, SNR, latency, throughput, obstructions:

starlink status
starlink status --json

WiFi Clients

List devices connected to the Starlink router:

starlink clients
starlink clients --json

Output includes: name, MAC, IP, signal strength, interface (2.4GHz/5GHz/ETH), connection time.

Speed Test

Run a speed test through the dish:

starlink speedtest
starlink speedtest --json

Returns download/upload Mbps and latency.

Stow/Unstow

Stow dish flat for transport or storage:

starlink stow           # stow
starlink stow --unstow  # unstow and resume

Reboot

Reboot the dish:

starlink reboot

Location

Get GPS coordinates (must be enabled in Starlink app → Settings → Advanced → Debug Data → "allow access on local network"):

starlink location
starlink location --json

Output Formats

  • Default: Human-readable colored output
  • --json: JSON for scripting/parsing

Example JSON parsing:

starlink status --json | jq '.latency_ms'
starlink clients --json | jq '.[] | .name'

Requirements

  • Connected to Starlink network
  • Dish reachable at 192.168.100.1:9200
  • For location: enable in Starlink app first

Troubleshooting

"Failed to connect to Starlink dish"

  • Verify you're on the Starlink WiFi or wired to the router
  • Check: ping 192.168.100.1
  • If using bypass mode with your own router, ensure 192.168.100.1 is still routable

Location returns empty

  • Enable in Starlink app: Settings → Advanced → Debug Data → "allow access on local network"

Limitations

  • Device pause/unpause is NOT available (cloud-only feature via Starlink app)
  • Only works on local network, not remotely

Source

https://github.com/danfedick/starlink-cli

Original URL: https://github.com/openclaw/skills/blob/main/skills/danfedick/starlink

Related skills

If this matches your use case, these are close alternatives in the same category.