Plugins
The agent image does not ship providers. The catalog is the same as the Marketplace tab in the local UI and in the WaveGrid console: the agent downloads a wheel with its tenant token, then you add a YAML section.
Installable today: Proxmox and Prometheus. Other cards are coming soon.
Available
| Plugin | Category | Collects |
|---|---|---|
| Proxmox VE | Virtualization | Nodes, VMs, LXC, storage |
| Prometheus | Monitoring | Scrape targets as servers, DBs, load balancers, domains |
Coming soon
The wheel is not published yet. In Marketplace Install stays disabled; the page describes what will ship.
| Plugin | Category | Planned collect |
|---|---|---|
| Hetzner Cloud | Cloud | Servers, volumes, LBs, floating IPs |
| Cloudflare | DNS | Zones and records |
| Amazon Web Services | Cloud | Compute, DBs, load balancers, storage |
| DigitalOcean | Cloud | Droplets, volumes, LBs |
| Google Cloud | Cloud | Compute, SQL, load balancers |
| Microsoft Azure | Cloud | VMs, disks, LBs |
| Kubernetes | Orchestration | Cluster nodes and workloads |
Install
After the agent is connected and can reach the API:
# Docker
docker compose exec agent wg-flow-agent plugin marketplace list
docker compose exec agent wg-flow-agent plugin install proxmox
docker compose exec agent wg-flow-agent plugin install prometheus
docker compose exec agent wg-flow-agent plugin list
# pip / host
wg-flow-agent plugin marketplace list
wg-flow-agent plugin install proxmoxSame from the local UI: Marketplace → Install.
Wheels land in ~/.wg-flow-agent/plugins (in the container: /var/lib/wg-flow-agent/plugins, volume agent_data).
Update: wg-flow-agent plugin update proxmox. Remove: plugin uninstall.
Enable in YAML
After install, add plugins.<name>. Provider fields are on that plugin’s page. Minimal skeleton:
plugins:
proxmox:
enabled: true
sources:
- id: dc1
provider_account: "proxmox-dc1"
sync_interval_seconds: 300
# API fields — see the plugin pageMultiple sources means multiple accounts of the same provider. Inventory distinguishes them by provider_account.
The local UI renders the form after install (schema from the marketplace).
Schedule
Each source has its own sync_interval_seconds (minimum 300). Sources that are due in the same tick are coalesced into one POST /sync/. If none are due, the scheduler still sends an empty heartbeat so the agent does not go offline.