Install
openclaw skills install aruba-iapComprehensive Aruba Instant AP (IAP) configuration management with automatic baseline capture, rollback support, and health monitoring. Supports device discovery, configuration snapshots, SSID management, and safe configuration changes with interactive config mode.
openclaw skills install aruba-iapComprehensive Aruba Instant AP (IAP) configuration management with automatic baseline capture, rollback support, and health monitoring.
| Type | Risk | Description |
|---|---|---|
ssid_profile | Medium | Create complete SSID profile with WPA2-PSK-AES |
ssid_delete | High | Remove existing SSID profile |
snmp_community | Low | SNMP community configuration |
snmp_host | Low-Medium | SNMP host/trap destination |
syslog_level | Low | Syslog logging levels |
auth_server | Medium | RADIUS/CPPM authentication server |
ap_allowlist | Medium | Add/remove APs from allowlist |
wired_port_profile | Medium | Wired port configuration |
ntp | Low | NTP server configuration |
dns | Low | DNS server configuration |
rf_template | Low | RF template application |
# Clone or download the skill
cd ~/.openclaw/workspace/skills/aruba-iap-publish
# Run install script
./install.sh
# Verify installation
iapctl --help
# Device Discovery
iapctl discover --cluster office-iap --vc 192.168.20.56 --out ./out
# Configuration Snapshot
iapctl snapshot --cluster office-iap --vc 192.168.20.56 --out ./out
# Verify Configuration
iapctl verify --cluster office-iap --vc 192.168.20.56 --level basic --out ./out
# Create SSID configuration JSON
cat > add-ssid.json << 'EOF'
{
"changes": [
{
"type": "ssid_profile",
"profile_name": "MyWiFi",
"essid": "MyNetwork",
"opmode": "wpa2-psk-aes",
"wpa_passphrase": "MySecurePassword123",
"vlan": 1,
"rf_band": "all"
}
]
}
EOF
# Generate diff
iapctl diff --cluster office-iap --vc 192.168.20.56 \
--in add-ssid.json --out ./diff
# Apply changes
iapctl apply --cluster office-iap --vc 192.168.20.56 \
--change-id $(cat diff/commands.json | jq -r '.change_id') \
--in diff/commands.json --out ./apply
# Create delete SSID configuration JSON
cat > delete-ssid.json << 'EOF'
{
"changes": [
{
"type": "ssid_delete",
"profile_name": "OldSSID"
}
]
}
EOF
# Generate diff
iapctl diff --cluster office-iap --vc 192.168.20.56 \
--in delete-ssid.json --out ./diff
# Apply changes
iapctl apply --cluster office-iap --vc 192.168.20.56 \
--change-id $(cat diff/commands.json | jq -r '.change_id') \
--in diff/commands.json --out ./apply
# Monitor all categories
iapctl monitor --cluster office-iap --vc 192.168.20.56 --out ./monitor
# Monitor specific categories
iapctl monitor --cluster office-iap --vc 192.168.20.56 \
-c "system ap clients wlan" --out ./monitor
Virtual Controller Mode
Single-Node Cluster Mode ✨ NEW
configure terminal → config commands → commit applyStandalone AP Mode
For Aruba IAP devices, configuration uses the CLI commit model:
configure terminalwlan ssid-profile <name>)exitexitwrite memorycommit applyiapctl automatically assesses risks for each change set:
Always use secret_ref for passwords and keys:
{
"type": "auth_server",
"server_name": "radius-primary",
"ip": "10.10.10.10",
"secret_ref": "secret:radius-primary-key"
}
Never commit plain-text secrets to version control.
Always review risk.json before applying changes:
cat diff/risk.json
Test with --dry-run to verify commands without applying:
iapctl apply --dry-run ...
Always run verify after applying changes:
iapctl verify --level full ...
For large change sets, break them into smaller batches:
Comprehensive testing performed on real hardware:
Test Results: 10/11 tests passed (91%)
no <command> for manual rollbackshow running-config after commit apply can timeoutMIT License - See LICENSE file for details
For issues, questions, or contributions: