unifi
SafeSelf-Hosted & Automation
Query and monitor UniFi network via local gateway API (Cloud Gateway Max / UniFi OS).
SKILL.md
# UniFi Network Monitoring Skill
Monitor and query your UniFi network via the local UniFi OS gateway API (tested on Cloud Gateway Max).
## Purpose
This skill provides **read-only** access to your UniFi network's operational data:
- Devices (APs, switches, gateway) status and health
- Active clients (who's connected where)
- Network health overview
- Traffic insights (top applications via DPI)
- Recent alarms and events
All operations are **GET-only** and safe for monitoring/reporting.
## Setup
Create the credentials file: `~/.clawdbot/credentials/unifi/config.json`
```json
{
"url": "https://10.1.0.1",
"username": "api",
"password": "YOUR_PASSWORD",
"site": "default"
}
```
- `url`: Your UniFi OS gateway IP/hostname (HTTPS)
- `username`: Local UniFi OS admin username
- `password`: Local UniFi OS admin password
- `site`: Site name (usually `default`)
## Commands
All commands support optional `json` argument for raw JSON output (default is human-readable table).
### Network Dashboard
Comprehensive view of all network stats (Health, Devices, Clients, Networks, DPI, etc.):
```bash
bash scripts/dashboard.sh
bash scripts/dashboard.sh json # Raw JSON for all sections
```
**Output:** Full ASCII dashboard with all metrics.
### List Devices
Shows all UniFi devices (APs, switches, gateway):
```bash
bash scripts/devices.sh
bash scripts/devices.sh json # Raw JSON
```
**Output:** Device name, model, IP, state, uptime, connected clients
### List Active Clients
Shows who's currently connected:
```bash
bash scripts/clients.sh
bash scripts/clients.sh json # Raw JSON
```
**Output:** Hostname, IP, MAC, AP, signal strength, RX/TX rates
### Health Summary
Site-wide health status:
```bash
bash scripts/health.sh
bash scripts/health.sh json # Raw JSON
```
**Output:** Subsystem status (WAN, LAN, WLAN), counts (up/adopted/disconnected)
### Top Applications (DPI)
Top bandwidth consumers by application:
```bash
bash scripts/top-apps.sh
bash scripts/top-apps.sh 15 # Show top 15 (default: 10)
```
**Output:** App name, category, RX/TX/total traffic in GB
### Recent Alerts
Recent alarms and events:
```bash
bash scripts/alerts.sh
bash scripts/alerts.sh 50 # Show last 50 (default: 20)
```
**Output:** Timestamp, alarm key, message, affected device
## Workflow
When the user asks about UniFi:
1. **"What's on my network?"** → Run `bash scripts/devices.sh` + `bash scripts/clients.sh`
2. **"Is everything healthy?"** → Run `bash scripts/health.sh`
3. **"Any problems?"** → Run `bash scripts/alerts.sh`
4. **"What's using bandwidth?"** → Run `bash scripts/top-apps.sh`
5. **"Show me a dashboard"** or general checkup → Run `bash scripts/dashboard.sh`
Always confirm the output looks reasonable before presenting it to the user (check for auth failures, empty data, etc.).
## Notes
- Requires network access to your UniFi gateway
- Uses UniFi OS login + `/proxy/network` API path
- All calls are **read-only GET requests**
- Tested endpoints are documented in `references/unifi-readonly-endpoints.md`
## Reference
- [Tested Endpoints](references/unifi-readonly-endpoints.md) — Full catalog of verified read-only API calls on your Cloud Gateway Max
More in Self-Hosted & Automation
bridle
SafeUnified configuration manager for AI coding assistants.
fathom
SafeConnect to Fathom AI to fetch call recordings, transcripts, and summaries.
frappecli
SafeCLI for Frappe Framework / ERPNext instances.
gotify
SafeSend push notifications via Gotify when long-running tasks complete or important events occur.