skills$openclaw/starlink
danfedick6.5k

by danfedick

starlink – OpenClaw Skill

starlink is an OpenClaw Skills integration for coding workflows. 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.

6.5k stars5.8k forksSecurity L1
Updated Feb 7, 2026Created Feb 7, 2026coding

Skill Snapshot

namestarlink
descriptionControl 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. OpenClaw Skills integration.
ownerdanfedick
repositorydanfedick/starlink
languageMarkdown
licenseMIT
topics
securityL1
installopenclaw add @danfedick/starlink
last updatedFeb 7, 2026

Maintainer

danfedick

danfedick

Maintains starlink in the OpenClaw Skills directory.

View GitHub profile
File Explorer
2 files
.
_meta.json
271 B
SKILL.md
2.6 KB
SKILL.md

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

README.md

No README available.

Permissions & Security

Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.

Requirements

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

FAQ

How do I install starlink?

Run openclaw add @danfedick/starlink in your terminal. This installs starlink into your OpenClaw Skills catalog.

Does this skill run locally or in the cloud?

OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.

Where can I verify the source code?

The source repository is available at https://github.com/openclaw/skills/tree/main/skills/danfedick/starlink. Review commits and README documentation before installing.