# unifly

Adopt this skill: https://proskills.md/skills/other/hyperb1iss-unifly-skills-unifly

Page: https://proskills.md/skills/other/hyperb1iss-unifly-skills-unifly
This document is the public skill bundle for that page. It contains SKILL.md and every helper file the catalog carries. No login is required.

## File: skills/unifly/SKILL.md
size: 1110
sha: c319563ef82208f57dee564c166102f4138d45bf
upstream: https://github.com/hyperb1iss/unifly/blob/main/skills/unifly/SKILL.md

````text
---
name: unifly
description: >-
  Inspect and manage UniFi Network infrastructure with the unifly CLI: devices,
  clients, VLANs, WiFi, firewall, VPN, switch ports, site settings, and cloud
  fleets. Use for UniFi network configuration, monitoring, and troubleshooting,
  not UniFi Protect camera or recording management.
---

# unifly

Before using unifly, load the guide shipped with the installed binary:

```bash
unifly skill
```

The guide provides authentication boundaries, inspection and change workflows,
and commands for loading further topics and payload examples. Command discovery
is generated from the installed CLI. Skill output works offline without requiring
controller configuration or credentials.

If the executable is missing, install unifly using the project's installation
instructions: <https://github.com/hyperb1iss/unifly#-install>. If `skill` is an
unknown command, the installed binary predates runtime guidance; update it to a
release that supports `unifly skill`. Until then, use that binary's `--help` for
syntax and avoid assuming the latest online guide matches its behavior.
````

## File: README.md
upstream: https://github.com/hyperb1iss/unifly/blob/main/README.md

````text
<p align="center">
  <picture>
    <source media="(prefers-color-scheme: dark)" srcset="docs/static/brand/logo-stacked.svg">
    <img src="docs/static/brand/logo-stacked-light.svg" alt="unifly" width="360">
  </picture>
</p>

<p align="center">
  Your UniFi network, at your fingertips.<br>
  <sub>CLI + TUI for humans and agents</sub>
</p>

<p align="center">
  <a href="https://www.rust-lang.org">
    <img src="https://img.shields.io/badge/Rust-1.94+-e135ff?style=for-the-badge&logo=rust&logoColor=white" alt="Rust 1.94+">
  </a>
  <a href="https://doc.rust-lang.org/edition-guide/rust-2024/index.html">
    <img src="https://img.shields.io/badge/Edition-2024-80ffea?style=for-the-badge&logo=rust&logoColor=0a0a0f" alt="Rust Edition 2024">
  </a>
  <a href="https://ratatui.rs">
    <img src="https://img.shields.io/badge/ratatui-TUI-ff6ac1?style=for-the-badge&logo=gnometerminal&logoColor=white" alt="Built with ratatui">
  </a>
  <a href="https://crates.io/crates/opaline">
    <img src="https://img.shields.io/badge/opaline-Theme-e135ff?style=for-the-badge&logo=rust&logoColor=white" alt="Themed with opaline">
  </a>
  <a href="https://tokio.rs">
    <img src="https://img.shields.io/badge/tokio-Async-f1fa8c?style=for-the-badge&logo=rust&logoColor=0a0a0f" alt="Powered by tokio">
  </a>
  <a href="LICENSE">
    <img src="https://img.shields.io/badge/License-Apache--2.0-50fa7b?style=for-the-badge&logo=apache&logoColor=0a0a0f" alt="License: Apache-2.0">
  </a>
  <a href="https://github.com/sponsors/hyperb1iss">
    <img src="https://img.shields.io/badge/Sponsor-ff6ac1?style=for-the-badge&logo=githubsponsors&logoColor=white" alt="Sponsor on GitHub">
  </a>
</p>

<p align="center">
  <a href="#-features">Features</a> •
  <a href="#-install">Install</a> •
  <a href="#-quick-start">Quick Start</a> •
  <a href="#-cli">CLI</a> •
  <a href="#-tui">TUI</a> •
  <a href="#-architecture">Architecture</a> •
  <a href="#-library">Library</a> •
  <a href="#-ai-agent-skill">AI Agent Skill</a> •
  <a href="#-development">Development</a>
</p>

https://github.com/user-attachments/assets/13042353-04f5-4934-a8dd-a516ab6a14d2

---

## 💜 What is unifly?

A complete command-line toolkit for managing Ubiquiti UniFi network controllers. One binary with 29 top-level commands for scripting and a built-in TUI dashboard for real-time monitoring, powered by a shared async engine that speaks every UniFi API dialect, including Site Manager cloud fleet APIs and the cloud connector.

> _Manage devices, monitor clients, inspect VLANs, stream events, and watch bandwidth charts, all without leaving your terminal._

UniFi controllers expose multiple APIs with different capabilities. unifly unifies them all into a single, coherent interface so you never have to think about which endpoint to hit.

---

> ### 🤖 AI Agent? 👤 Human? Both Welcome.
>
> unifly speaks fluent silicon _and_ carbon.
>
> **Coding agents** get a small [discovery skill](skills/unifly/SKILL.md) that loads version-matched guidance from `unifly skill`. The binary ships command discovery, automation workflows, and payload examples, all available offline. The [install scripts](#-install) add the skill to `~/.agents/skills` for you; after any other install method, one command does it:
>
> ```bash
> unifly skill --install           # --claude targets Claude Code's skills directory
> ```
>
> `npx skills add hyperb1iss/unifly` installs the same skill without the binary, but agents still need the binary to load the guide. Older binaries without `unifly skill` need an update before they can serve it.
>
> **Humans** get a gorgeous 11-screen TUI, shell completions, pipe-friendly output, and the quiet satisfaction of never opening the UniFi web UI again. Keep scrolling to [Install](#-install).

<p align="center">
  <img src="docs/images/agent-claude-code.png" alt="Claude Code diagnosing the Neon Harbor demo studio network with unifly and answering with a numbered list of five fixes" width="900">
</p>

<p align="center">
  <sub>Claude Code loads the unifly skill, works the <code>--demo-fleet</code> studio network with read-only commands and <code>jq</code>, and comes back with a punch list.</sub>
</p>

---

## ✦ Features

| Capability                    | What You Get                                                                                                                                                                                                        |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 🔮 **Triple-Path API Engine** | Integration API + Session API via a single API key on UniFi OS, plus Site Manager cloud fleet and connector support. Hybrid mode adds WebSocket for live event streaming                                            |
| ⚡ **Real-Time TUI**          | 11-screen dashboard with SilkCircuit octant traffic charts, CPU/MEM gauges, live client counts, zoomable topology, and auto-detected graphics-protocol charts (Kitty/Sixel/iTerm2)                                  |
| 🦋 **29 Top-Level Commands**  | Devices and switch port config-as-code, clients, networks, WiFi, firewall policies/zones/groups, ACLs, NAT, DNS, full VPN surface, DPI, RADIUS, site settings, topology, cloud fleet, raw API passthrough, `tui`... |
| 📡 **Wi-Fi Observability**    | Neighboring APs, regulatory channels, per-client Wi-Fi experience scores, roam timelines                                                                                                                            |
| 💎 **Flexible Output**        | Table, JSON, compact JSON, YAML, and plain text. Pipe-friendly for scripting                                                                                                                                        |
| 🔒 **Secure Credentials**     | OS keyring storage for API keys and passwords by default. Explicit `api_key` / `password` in TOML config wins when set, useful for headless or shared machines.                                                     |
| 🌐 **Multi-Profile**          | Named profiles for multiple controllers. Switch with a single flag                                                                                                                                                  |
| 🧠 **Smart Config**           | Interactive wizard, environment variables, TOML config, CLI overrides                                                                                                                                               |
| 📡 **WebSocket Events**       | Live event streaming with 10K rolling buffer, severity filtering, pause/scroll-back                                                                                                                                 |
| 📊 **Historical Stats**       | WAN bandwidth area fills, client counts, DPI app/category breakdown (1h to 30d)                                                                                                                                     |
| 🎨 **SilkCircuit Theme**      | Neon-on-dark color palette powered by [opaline](https://crates.io/crates/opaline). Token-based theming across CLI and TUI with ANSI fallback                                                                        |

---

## ⚡ Install

### Linux / macOS

```bash
curl -fsSL https://raw.githubusercontent.com/hyperb1iss/unifly/main/install.sh | sh
```

### Windows (PowerShell)

```powershell
irm https://raw.githubusercontent.com/hyperb1iss/unifly/main/install.ps1 | iex
```

### Other Methods

| Method       | Command                                                                               |
| ------------ | ------------------------------------------------------------------------------------- |
| **Homebrew** | `brew install hyperb1iss/tap/unifly`                                            
````
