> Disclaimer: This is a community-maintained open-source project and is not affiliated with, endorsed by, or sponsored by VMware, Inc. or Broadcom Inc. "VMware" and "vSphere" are trademarks of Broadcom. Source code is publicly auditable at github.com/zw008/VMware-AIops under the MIT license.
VMware family entry point — AI-powered VM lifecycle, deployment, and alarm management — 41 MCP tools.
> Start here: install vmware-aiops first, then add modules as needed.
> Run vmware-aiops hub status to see which family members are installed.
> Family: vmware-monitor (inventory/health), vmware-storage (iSCSI/vSAN), vmware-vks (Tanzu Kubernetes), vmware-nsx (NSX networking), vmware-nsx-security (DFW/firewall), vmware-aria (metrics/alerts/capacity), vmware-avi (AVI/ALB/AKO), vmware-harden (compliance baselines).
> | vmware-pilot (workflow orchestration) | vmware-policy (audit/policy)
| Category | Tools | Count |
|---|---|---|
| ---------- | ------- | :-----: |
| VM Lifecycle | power on/off, clone, migrate, delete, snapshot CRUD, TTL auto-delete, clean slate | 13 |
| Deployment | OVA, template, linked clone, batch clone/deploy | 8 |
| Guest Ops | exec commands, upload/download files, provision | 5 |
| Plan/Apply | multi-step planning with rollback | 4 |
| Cluster | create, delete, HA/DRS config, add/remove hosts | 6 |
| Datastore | browse files, scan for images | 2 |
| Alarm Management | list alarms, acknowledge, reset | 3 |
uv tool install vmware-aiops
vmware-aiops doctor
vmware-aiops hub status # see which family members are installed
vmware-aiops is the entry point. Add modules for additional capabilities:
| Module | Install | Adds |
|---|---|---|
| -------- | --------- | ------ |
| vmware-monitor | uv tool install vmware-monitor | Read-only inventory, alarms, events |
| vmware-storage | uv tool install vmware-storage | iSCSI, vSAN, datastore management |
| vmware-vks | uv tool install vmware-vks | Tanzu Kubernetes (vSphere 8.x+) |
| vmware-nsx | uv tool install vmware-nsx-mgmt | NSX networking: segments, gateways, NAT |
| vmware-nsx-security | uv tool install vmware-nsx-security | DFW microsegmentation, security groups |
| vmware-aria | uv tool install vmware-aria | Aria Ops metrics, alerts, capacity |
| vmware-avi | uv tool install vmware-avi | AVI load balancer, ALB, AKO, Ingress |
> Each module stays independent — small tool count keeps local models (Ollama, Qwen) accurate.
Use companion skills for:
vmware-monitorvmware-storagevmware-vksvmware-avi| User Intent | Recommended Skill |
|---|---|
| ------------- | ------------------ |
| Read-only monitoring, zero risk | vmware-monitor (uv tool install vmware-monitor) |
| Storage: iSCSI, vSAN, datastores | vmware-storage (uv tool install vmware-storage) |
| VM lifecycle, deployment, guest ops | vmware-aiops ← this skill |
| Tanzu Kubernetes (vSphere 8.x+) | vmware-vks (uv tool install vmware-vks) |
| NSX networking: segments, gateways, NAT | vmware-nsx (uv tool install vmware-nsx-mgmt) |
| NSX security: DFW rules, security groups | vmware-nsx-security (uv tool install vmware-nsx-security) |
| Aria Ops: metrics, alerts, capacity | vmware-aria (uv tool install vmware-aria) |
| Multi-step workflows with approval | vmware-pilot |
| Compliance baselines (CIS / 等保 / PCI-DSS), drift detection, LLM remediation advisor | vmware-harden (uv tool install vmware-harden) |
| Load balancer, AVI, ALB, AKO, Ingress | vmware-avi (uv tool install vmware-avi) |
| Audit log query | vmware-policy (vmware-audit CLI) |
> Diagnostic investigations: Before remediating any "why is X slow / failing / down" issue, follow references/investigation-protocol.md. It enforces the four root-cause completeness criteria (falsifiability / sufficiency / necessity / mechanism) and the up-to-three-rounds deepening loop. Only invoke L3+ write tools after the four criteria are satisfied AND the user has approved a remediation plan.
Pre-flight (judgment, not blind sequence):
vmware-aria if available).lab-2026-04-30-alice) so the TTL cleanup audit trail is meaningful.Steps:
vmware-aiops datastore browse --pattern "*.ova" → confirm image present and sizevmware-aiops deploy ova --name -- --datastore vmware-aiops vm guest-exec --cmd /usr/bin/python3 --args "setup.py" --user admin → if exit ≠ 0, stop, do not snapshot a half-provisioned VMvmware-aiops vm snapshot-create --name baseline (only if multi-iteration testing; skip for one-shot)vmware-aiops vm set-ttl --minutes 480 Pre-flight:
free_space ≥ source.size × count × 1.2 (full clone) or ≥ count × 2 GB (linked clone, delta-only).deploy linked-clone); seconds vs minutes per clone, ~100× less storage. Tradeoff: linked clones depend on source snapshot — deleting the snapshot breaks all children.Steps:
vm_create_plan with clone + reconfigure + set-ttl steps grouped per VM (atomic per clone)vm_apply_plan — stops on first failure (intentional, do not auto-resume)vm_rollback_plan → reverses completed clones; manually verify rollback before retryingPre-flight (ALL must pass before issuing migrate):
cluster info first.Steps:
vmware-monitor vm info vmware-aiops vm migrate --to-host — wait for task completion, do not assume success on returnvm info confirms new host AND power state unchanged AND vNICs connected| Scenario | Recommended | Why |
|---|---|---|
| ---------- | :-----------: | ----- |
| Local/small models (Ollama, Qwen) | CLI | ~2K tokens vs ~8K for MCP |
| Cloud models (Claude, GPT-4o) | Either | MCP gives structured JSON I/O |
| Automated pipelines | MCP | Type-safe parameters, structured output |
| Category | Tools | R/W |
|---|---|---|
| ---------- | ------- | :---: |
| VM Lifecycle (13) | vm_list_ttl, vm_list_snapshots | Read |
vm_power_on, vm_power_off, vm_clone, vm_migrate, vm_delete, vm_create_snapshot, vm_revert_snapshot, vm_delete_snapshot, vm_set_ttl, vm_cancel_ttl, vm_clean_slate | Write | |
| Deployment (8) | deploy_vm_from_ova, deploy_vm_from_template, deploy_linked_clone, attach_iso_to_vm, convert_vm_to_template, batch_clone_vms, batch_linked_clone_vms, batch_deploy_from_spec | Write |
| Guest Ops (5) | vm_guest_download | Read |
vm_guest_exec, vm_guest_exec_output, vm_guest_upload, vm_guest_provision | Write | |
| Plan/Apply (4) | vm_list_plans | Read |
vm_create_plan, vm_apply_plan, vm_rollback_plan | Write | |
| Datastore (2) | browse_datastore, scan_datastore_images | Read |
| Cluster (6) | cluster_info | Read |
cluster_create, cluster_delete, cluster_add_host, cluster_remove_host, cluster_configure | Write | |
| Alarm Management (3) | list_vcenter_alarms | Read |
acknowledge_vcenter_alarm, reset_vcenter_alarm | Write |
Read/write split: 8 tools are read-only (per [READ] docstring marker), 33 modify state. All write tools require explicit parameters and are audit-logged. Destructive operations (vm_delete, vm_revert_snapshot, vm_delete_snapshot, force power-off, cluster delete/remove-host, alarm reset) require double confirmation at the CLI layer.
Alarm reset blast radius: vSphere has no per-alarm clear API. reset_vcenter_alarm uses AlarmManager.ClearTriggeredAlarms, which clears all triggered alarms matching the named alarm's entity type (host/VM/all) and current status (red/yellow) — not just the one named. The response's scope field states exactly what was cleared. The named alarm is looked up first, so a typo fails fast without clearing anything.
# VM operations
vmware-aiops vm power-on <name> [--target <t>]
vmware-aiops vm power-off <name> [--force]
vmware-aiops vm create <name> --cpu 4 --memory 8192 --disk 100
vmware-aiops vm delete <name>
vmware-aiops vm clone <name> --new-name <new> [--to-host <host>] [--to-datastore <ds>] [--power-on]
vmware-aiops vm migrate <name> --to-host <host> [--to-datastore <ds>]
vmware-aiops vm snapshot-create <name> --name <snap> [--description <text>] [--memory]
vmware-aiops vm snapshot-list <name>
vmware-aiops vm snapshot-revert <name> --name <snap>
vmware-aiops vm snapshot-delete <name> --name <snap> [--remove-children]
# Guest operations (requires VMware Tools)
vmware-aiops vm guest-exec <name> --cmd <script-path> --args "<args>" --user <username>
vmware-aiops vm guest-upload <name> --local ./script.sh --guest /tmp/script.sh --user <username>
# Deploy
vmware-aiops deploy ova <path> --name <vm> --datastore <ds>
vmware-aiops deploy linked-clone --source <vm> --snapshot <snap> --name <new>
# Cluster
vmware-aiops cluster create <name> --ha --drs
vmware-aiops cluster info <name>
# Datastore
vmware-aiops datastore browse <ds> --pattern "*.ova"
# Alarm management
vmware-aiops alarm list [--target <t>]
vmware-aiops alarm acknowledge <entity_name> <alarm_name> [--target <t>]
vmware-aiops alarm reset <entity_name> <alarm_name> [--target <t>] # double confirm; clears ALL alarms matching entity type + status
# Family
vmware-aiops hub status # show installed family members + install commands
> Full CLI reference: see references/cli-reference.md
VM names are case-sensitive in vSphere. Use exact name from vmware-monitor inventory vms.
Use vm_guest_exec_output instead of vm_guest_exec — it auto-captures stdout/stderr. Basic vm_guest_exec only returns exit code.
Large OVA files (>10GB) may exceed the default 120s timeout. The upload happens via HTTP NFC lease — ensure network between the machine running vmware-aiops and ESXi is stable.
Run vmware-aiops plan list to see failed plan status. Ask user if they want to rollback with vm_rollback_plan. Irreversible steps (delete_vm) are skipped during rollback.
vmware-aiops doctordisableSslCertValidation: true in config.yaml (lab environments only)uv tool install vmware-aiops
mkdir -p ~/.vmware-aiops
vmware-aiops init # generates config.yaml and .env templates
chmod 600 ~/.vmware-aiops/.env
> All tools are automatically audited via vmware-policy. Audit logs: vmware-audit log --last 20
> Full setup guide, security details, and AI platform compatibility: see references/setup-guide.md
All operations are automatically audited via vmware-policy (@vmware_tool decorator):
~/.vmware/audit.db (SQLite, framework-agnostic)~/.vmware/rules.yaml (deny rules, maintenance windows, risk levels)vmware-audit log --last 20vmware-audit log --status deniedvmware-policy is automatically installed as a dependency — no manual setup needed.
共 11 个版本