Skip to main content

Proxmox VE AI-powered VM/container lifecycle operations with a built-in governance harness (audit, budget, undo, risk tiers)

Project description

Proxmox AIops (preview)

Disclaimer: Community-maintained open-source project. Not affiliated with, endorsed by, or sponsored by Proxmox Server Solutions GmbH. "Proxmox" is a trademark of its owner. MIT licensed.

AI-powered Proxmox VE VM and container lifecycle operations with a built-in governance harness — unified audit log, policy engine, token/runaway budget guard, undo-token recording, and graduated-autonomy risk tiers. Self-contained: no external dependencies beyond proxmoxer and the MCP SDK. Preview — not yet full coverage of every Proxmox operation.

What works

  • CLI (proxmox-aiops ...): vm list/get/config/start/stop/shutdown/reboot/reconfigure/clone/delete/migrate, vm snapshot-create/snapshot-delete/snapshot-list/snapshot-rollback, ct list/start/stop, cluster nodes/status/task-status, storage list/content, doctor, mcp.
  • MCP server (proxmox-aiops mcp or proxmox-aiops-mcp): 23 tools, every one wrapped with the bundled @governed_tool harness.
  • Reversibility: write ops with a clean inverse (start/stop/shutdown/reconfigure/clone/migrate/snapshot-create, container start/stop) record an inverse undo descriptor; irreversible ops (delete, snapshot-rollback) declare none and are tagged high risk.
  • Async tasks: Proxmox writes return a task UPID — poll completion with cluster task-status (the runaway budget guard prevents poll loops from running away).

Quick start

uv tool install proxmox-aiops
mkdir -p ~/.proxmox-aiops
# create ~/.proxmox-aiops/config.yaml with a targets: list
# put secrets in ~/.proxmox-aiops/.env  (chmod 600)
proxmox-aiops doctor

Example ~/.proxmox-aiops/config.yaml:

targets:
  - name: pve-lab
    host: 10.0.0.10
    user: "root@pam!claude"   # API token: user@realm!tokenid
    node: pve1
    auth_kind: token
    verify_ssl: false          # self-signed lab certs only

~/.proxmox-aiops/.env (chmod 600): PROXMOX_PVE_LAB_SECRET=<token-uuid>

Audit & safety

All operations are logged to a local SQLite audit DB under ~/.proxmox-aiops/ (relocatable via PROXMOX_AIOPS_HOME). Every write tool passes through the governance harness: policy pre-check, token/runaway budget guard, graduated risk-tier gate, and audit logging. Destructive CLI commands (vm stop, vm delete, vm snapshot-delete, vm snapshot-rollback, ct stop) require double confirmation and support --dry-run. API-returned text is run through a prompt-injection sanitizer.

License: MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

proxmox_aiops-0.1.0.tar.gz (52.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

proxmox_aiops-0.1.0-py3-none-any.whl (58.6 kB view details)

Uploaded Python 3

File details

Details for the file proxmox_aiops-0.1.0.tar.gz.

File metadata

  • Download URL: proxmox_aiops-0.1.0.tar.gz
  • Upload date:
  • Size: 52.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for proxmox_aiops-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fd4cbde3eeffe985666088855bfa2b9f1dbe156a8e2828b3050ca7ebd419ad6f
MD5 899c4e6b96f571e3a84e4beaced575c0
BLAKE2b-256 d1054bc5766086b707962a477dcad557419d2caa83a090b1231b5b35da808b08

See more details on using hashes here.

File details

Details for the file proxmox_aiops-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: proxmox_aiops-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 58.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for proxmox_aiops-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 58a5dc83fee72854a954d875ca9136b6974fc28e9731cf046c0998e55303e9a3
MD5 b639efbe0af999b762568d80c0a6129e
BLAKE2b-256 8e89901d94ced4bf06cc7a27988d148702806c71e49b01d19f3f080795ef0b9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page