wifi-debug
Skill1 starsChanged 7 months agoMITView on GitHub
This skill should be used when the user asks to "debug wifi", "wifi not working", "check wifi", "why is wifi slow", "wifi signal", or mentions SSID, RSSI, channel, noise, or AirPort. Collects wifi state on macOS and writes a JSON result to ~/.mac-guardian/data/.
In this repository8 other files it gives its agents.
- bluetooth-debugSkill
- daily-health-reportSkill
- disk-usageSkill
- machine-security-checkSkill
- malware-scanSkill
- network-diagnosticsSkill
- performance-checkSkill
- setup-health-cronSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 1 is distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 22
If none yield data, emit severity info, summary "Wi-Fi interface off or unavailable."
- Very specific: line 41
If on a legacy macOS where airport -s works, include a count of discovered networks plus the strongest 10 in raw.
- Very specific: line 56
When invoked by daily-health-report, return JSON path only.
- Very specific: line 60
Never run sudo wdutil info or similar.
- Distinctive: line 61
Read-only. Do not join / leave / change networks.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
wifi-debug
Reports on the active wifi association: SSID, RSSI, channel, noise, Tx rate, BSSID, surrounding networks, and recent disconnect events.
When to invoke
Trigger on phrases like: "debug wifi", "wifi not working", "check wifi", "why is wifi slow", "wifi signal".
Data sources and fallbacks
macOS Sonoma and later deprecate airport. Use a layered approach:
wdutil info— authoritative on newer macOS. Non-elevated output is usually redacted but still includes SSID, channel, and RSSI on many systems. Invoke without sudo:wdutil info 2>/dev/null. Do not callsudo.- Legacy
airport—/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I. If the binary exists and returns output, prefer it for RSSI / noise / Tx rate numbers. networksetup—networksetup -getairportnetwork en0for SSID,networksetup -getinfo "Wi-Fi"for MAC / IP.
If none yield data, emit severity info, summary "Wi-Fi interface off or unavailable."
What to extract
- SSID (string)
- BSSID (string, may be redacted without location permissions — record as "redacted" then)
- Channel (integer + band, e.g.
36 (5GHz)) - RSSI dBm — integer. Severity mapping:
- ≥ −60:
ok - −60 to −70:
info - −70 to −80:
warn - < −80:
critical
- ≥ −60:
- Noise dBm — integer.
warnif > −80. - Tx rate — Mbps.
infoif < 72,warnif < 24. - Security type —
okif WPA2/WPA3,warnif WEP or Open. - MCS index (if available, raw only).
Surrounding networks
If on a legacy macOS where airport -s works, include a count of discovered networks plus the strongest 10 in raw. On Sonoma+, skip with an info finding "airport -s no longer available."
Recent wifi events
log show --style compact --last 1h --predicate 'subsystem == "com.apple.wifi"' 2>/dev/null | tail -60. Skip gracefully if log is unavailable or produces no output. Do not pipe directly into the user's terminal; store the tail in the raw.log_tail field (truncated to ~4 KB).
Output contract
Standard envelope. Write to ~/.mac-guardian/data/wifi-debug-<ISOdate>.json.
Top-level severity = max of RSSI, noise, Tx rate, security severities. Summary example: "SSID HomeNet5G, RSSI −58 dBm, 867 Mbps (ok)."
Handoff
- On direct invocation:
bash ${CLAUDE_PLUGIN_ROOT}/scripts/render-single.sh wifi-debug. - When invoked by
daily-health-report, return JSON path only.
Safety
- Never run
sudo wdutil infoor similar. Report truthfully when detail is redacted. - Read-only. Do not join / leave / change networks.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

