unifi-wifi
Use when UniFi Wi-Fi is slow, unstable, or being tuned: "my wifi is slow but speedtest on the router is fast", "great signal, terrible speed", "should I use 80MHz or 40MHz", "channel planning", "co-channel interference", "DFS channels", "my APs keep picking the same channel", "audit my SSIDs", "hidden SSID", or diagnosing throughput that collapses under load. Covers the diagnostic ladder for slow Wi-Fi, channel width and DFS tradeoffs, safe radio writes, SSID hygiene, and the in-wall AP port trap. Assumes unifi-connect. Not for firewall policy between networks (unifi-firewall), wired port and
npx skills add t3chnaztea/unifi-skills --skill unifi-wifi --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# UniFi Wi-Fi Most "slow Wi-Fi" is not slow Wi-Fi. It is a WAN problem, a backhaul problem, a client problem, or a bandwidth cap somebody set two years ago. The diagnostic ladder below exists to find that out cheaply, in that order, before touching radios. Radio changes are the most disruptive and the most often wrong. ## The diagnostic ladder Run it top to bottom. Each rung eliminates a layer, and the failure that motivated this skill was only visible at the last rung. **1. Rule out the WAN.** Trigger a gateway-side speedtest, which measures the gateway to the internet with no Wi-Fi involved: ```bash udm raw POST /proxy/network/api/s/default/cmd/devmgr '{"cmd":"speedtest"}' # wait, then read the RESULT from stat/device, not stat/health udm devices --json | python3 -c ' import json,sys for d in json.load(sys.stdin): s = d.get("speedtest-status") if s: print(d.get("name"), s.get("xput_download"), s.get("xput_upload"), "status_summary=", s.get("status_summary"))' ``` The result lands on the **gateway's** device object, under the hyphenated key `speedtest-status` (not `speedtest_status`), with throughput in the nested `xput_download` and `xput_upload` fields. `status_summary` tells yo
- The diagnostic ladder
- The 80 MHz trap
- Changing a radio channel safely
- SSID hygiene
- The in-wall AP port trap
udm raw POST /proxy/network/api/s/default/cmd/devmgr '{"cmd":"speedtest"}'
udm devices --json | python3 -c '
import json,sys
for d in json.load(sys.stdin):
s = d.get("speedtest-status")
if s: print(d.get("name"), s.get("xput_download"), s.get("xput_upload"),
up = d.get("uplink") or {}
udm clients --json | python3 -c '
for c in json.load(sys.stdin):
udm raw GET /proxy/network/api/s/default/rest/usergroupWhat does the unifi-wifi skill do?
Use when UniFi Wi-Fi is slow, unstable, or being tuned: "my wifi is slow but speedtest on the router is fast", "great signal, terrible speed", "should I use 80MHz or 40MHz", "channel planning", "co-channel interference", "DFS channels", "my APs keep picking the same channel", "audit my SSIDs", "hidden SSID", or diagnosing throughput that collapses under load. Covers the diagnostic ladder for slow Wi-Fi, channel width and DFS tradeoffs, safe radio writes, SSID hygiene, and the in-wall AP port trap. Assumes unifi-connect. Not for firewall policy between networks (unifi-firewall), wired port and
How do I install it?
Run `npx skills add t3chnaztea/unifi-skills --skill unifi-wifi --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From t3chnaztea/unifi-skills, a repository with 24 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.