# Send Aruba Iap Publish to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "aruba-iap",
    "name": "Aruba Iap Publish",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/scsun1978/aruba-iap",
    "canonicalUrl": "https://clawhub.ai/scsun1978/aruba-iap",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/aruba-iap",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=aruba-iap",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "_meta.json",
      "add-aruba-ssid.json",
      "assets/config_template.txt",
      "backups/20260223_232629/result.json"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "aruba-iap",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T05:01:01.778Z",
      "expiresAt": "2026-05-07T05:01:01.778Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=aruba-iap",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=aruba-iap",
        "contentDisposition": "attachment; filename=\"aruba-iap-1.2.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "aruba-iap"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/aruba-iap"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/aruba-iap",
    "downloadUrl": "https://openagent3.xyz/downloads/aruba-iap",
    "agentUrl": "https://openagent3.xyz/skills/aruba-iap/agent",
    "manifestUrl": "https://openagent3.xyz/skills/aruba-iap/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/aruba-iap/agent.md"
  }
}
```
## Documentation

### Aruba IAP Configuration Manager

Comprehensive Aruba Instant AP (IAP) configuration management with automatic baseline capture, rollback support, and health monitoring.

### ✨ Core Capabilities

Device Mode Detection: Automatically detects Virtual Controller, Single-Node Cluster, or Standalone AP mode
Configuration Snapshots: Full configuration capture with structured JSON output
Safe Configuration Changes: Apply changes with automatic baseline capture and rollback support
Comprehensive Monitoring: 40+ monitoring commands across 10 categories
Risk Assessment: Automatic risk evaluation for configuration changes
Secret Management: Secure secret references (no plain-text passwords)
Change History: Full audit trail with timestamped artifacts
Interactive Configuration Mode: Support for Aruba IAP CLI commit model

### 📊 Configuration Change Types

TypeRiskDescriptionssid_profileMediumCreate complete SSID profile with WPA2-PSK-AESssid_deleteHighRemove existing SSID profilesnmp_communityLowSNMP community configurationsnmp_hostLow-MediumSNMP host/trap destinationsyslog_levelLowSyslog logging levelsauth_serverMediumRADIUS/CPPM authentication serverap_allowlistMediumAdd/remove APs from allowlistwired_port_profileMediumWired port configurationntpLowNTP server configurationdnsLowDNS server configurationrf_templateLowRF template application

### 1. Installation

# Clone or download the skill
cd ~/.openclaw/workspace/skills/aruba-iap-publish

# Run install script
./install.sh

# Verify installation
iapctl --help

### 2. Basic Usage

# 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

### 3. Add SSID

# 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

### 4. Delete SSID

# 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

### 5. Monitor Device

# 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

### Supported Device Modes

Virtual Controller Mode

Manages multiple IAPs
Full CLI command set available



Single-Node Cluster Mode ✨ NEW

Single IAP with VC configuration
Supports interactive config mode
configure terminal → config commands → commit apply



Standalone AP Mode

Individual AP without cluster
Basic configuration available

### Interactive Configuration Mode

For Aruba IAP devices, configuration uses the CLI commit model:

Enter configuration mode: configure terminal
Enter sub-mode (e.g., wlan ssid-profile <name>)
Configure parameters (flat commands, no indentation)
Exit sub-mode: exit
Exit configuration mode: exit
Save configuration: write memory
Apply configuration: commit apply

### Risk Assessment

iapctl automatically assesses risks for each change set:

### Risk Levels

low: Minimal impact, safe to apply
medium: May affect connectivity, review recommended
high: Major changes, requires careful planning

### Common Warnings

Removing WLAN or RADIUS configuration may disconnect users
WPA passphrase changes will require clients to re-authenticate
AP allowlist changes may prevent APs from joining the cluster
VLAN changes may affect network connectivity
Large number of changes - consider applying in stages

### 1. Use Secret References

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.

### 2. Review Risk Assessment

Always review risk.json before applying changes:

cat diff/risk.json

### 3. Use Dry Run First

Test with --dry-run to verify commands without applying:

iapctl apply --dry-run ...

### 4. Verify After Changes

Always run verify after applying changes:

iapctl verify --level full ...

### 5. Apply Changes in Stages

For large change sets, break them into smaller batches:

Stage 1: SNMP and syslog configuration
Stage 2: Authentication servers
Stage 3: SSID profiles
Stage 4: AP allowlist and wired ports

### Testing

Comprehensive testing performed on real hardware:

✅ Device discovery and mode detection
✅ Configuration snapshot with multiple artifacts
✅ Configuration diff generation
✅ SSID profile addition
✅ SSID profile deletion
✅ Configuration apply with interactive mode
✅ Configuration verification
✅ Health monitoring
✅ Risk assessment
✅ AP allowlist management

Test Results: 10/11 tests passed (91%)

### Rollback Functionality

Status: Partially working
Issue: Rollback command execution has limitations
Impact: Low - can be done manually if needed
Workaround: Use no <command> for manual rollback

### Post-Apply Verification

Status: Sometimes times out
Issue: show running-config after commit apply can timeout
Impact: Minimal - configuration is applied successfully
Workaround: Wait a few seconds and retry

### v1.1.1 (2026-02-23)

✅ Add ssid_delete change type
✅ Add send_config_and_apply() method
✅ Add send_config_commands() method
✅ Update diff_engine.py for flat command generation
✅ Fix Result action pattern for 'monitor'
✅ Support Aruba IAP single-node cluster mode
✅ Comprehensive testing on real hardware

### v1.1.0 (2026-02-23)

✅ Initial release with core functionality
✅ Device discovery and mode detection
✅ Configuration snapshots
✅ SSID profile management
✅ Configuration diff and apply
✅ Risk assessment
✅ Health monitoring

### Requirements

Python 3.8+
scrapli[paramiko] for SSH connections
Aruba Instant AP 6.x, 8.x, or AOS 10.x

### License

MIT License - See LICENSE file for details

### Support

For issues, questions, or contributions:

ClawHub: https://clawhub.com/skills/aruba-iap
Documentation: See docs/ folder
Examples: See examples/ folder
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: scsun1978
- Version: 1.2.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T05:01:01.778Z
- Expires at: 2026-05-07T05:01:01.778Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/aruba-iap)
- [Send to Agent page](https://openagent3.xyz/skills/aruba-iap/agent)
- [JSON manifest](https://openagent3.xyz/skills/aruba-iap/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/aruba-iap/agent.md)
- [Download page](https://openagent3.xyz/downloads/aruba-iap)