🧪 Skills

LibreNMS

Monitor LibreNMS network devices and alerts via API to get status, health sensors, port stats, and unresolved active alerts in read-only mode.

v1.0.0
❤️ 0
⬇️ 442
👁 1
Share

Description

LibreNMS Skill

Monitor network infrastructure via LibreNMS REST API. Read-only monitoring skill for device status, health sensors, port statistics, and alerts.

Configuration

Create ~/.openclaw/credentials/librenms/config.json:

{
  "url": "https://librenms.example.com",
  "api_token": "your-api-token-here"
}

Or set environment variables:

  • LIBRENMS_URL — Base URL of your LibreNMS instance
  • LIBRENMS_TOKEN — API authentication token

Commands

Quick Overview

librenms summary

Dashboard view showing total devices, how many are up/down, and active alert count. Use this first to get a quick status overview.

Device Management

librenms devices           # List all devices with status, IP, OS, uptime
librenms down             # Show ONLY devices that are down (critical for alerting)
librenms device <hostname> # Detailed info: hardware, serial, location, OS version

Health Monitoring

librenms health <hostname> # Temperature, CPU, memory, disk usage sensors
librenms ports <hostname>  # Network interfaces with traffic stats

Alerts

librenms alerts           # Show active/unresolved alerts with severity and timestamps

Usage Patterns

Daily health check:

librenms summary && librenms down && librenms alerts

Investigate specific device:

librenms device switch-core-01
librenms health switch-core-01
librenms ports switch-core-01

Quick down-device triage:

librenms down | grep -v "UP"

Important Notes

  • All operations are read-only — no device modifications possible
  • The script accepts self-signed certificates (-sk flag for curl)
  • Status indicators: ● green = up, ● red = down
  • Uptime is formatted as human-readable (days/hours instead of seconds)
  • Traffic stats are formatted as KB/MB/GB per second

Heartbeat Integration

Check infrastructure health periodically:

# In heartbeat script
if librenms down | grep -q "Devices Down"; then
    # Alert on down devices
    librenms down
fi

# Check for active alerts
if librenms alerts | grep -q "Active Alerts"; then
    librenms alerts
fi

Dependencies

  • curl — API calls
  • jq — JSON parsing
  • bc — Numeric formatting (optional, for bytes conversion)

API Coverage

Wrapped endpoints:

  • /api/v0/devices — All devices
  • /api/v0/devices/{hostname} — Single device details
  • /api/v0/devices/{hostname}/health — Health sensors
  • /api/v0/devices/{hostname}/ports — Network ports
  • /api/v0/alerts?state=1 — Unresolved alerts

Full API docs: https://docs.librenms.org/API/

Troubleshooting

"Config file not found" Create ~/.openclaw/credentials/librenms/config.json or set env vars.

"API returned HTTP 401" Check your API token. Generate a new one in LibreNMS under Settings → API.

"Failed to connect" Verify the URL is correct and the LibreNMS instance is reachable. Check firewall rules.

Self-signed cert warnings The script uses -sk to ignore cert validation (common in LibreNMS setups). If you need strict validation, edit the script and remove the -k flag.

Reviews (0)

Sign in to write a review.

No reviews yet. Be the first to review!

Comments (0)

Sign in to join the discussion.

No comments yet. Be the first to share your thoughts!

Compatible Platforms

Pricing

Free

Related Configs