Veeam Backup & Replication AI-powered backup operations with a built-in governance harness (audit, budget, undo, risk tiers)
Project description
Veeam AIops (preview)
Disclaimer: Community-maintained open-source project. Not affiliated with, endorsed by, or sponsored by Veeam Software. "Veeam" is a trademark of its owner. MIT licensed.
AI-powered Veeam Backup & Replication 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 httpx and the MCP SDK. Preview — not yet full
coverage of every Veeam operation.
What works
- CLI (
veeam-aiops ...):job list/get/start/stop/enable/disable,restore list-points/start,repository list,session list/get,backup list,doctor,mcp. - MCP server (
veeam-aiops mcporveeam-aiops-mcp): 12 tools (8 read, 4 write), every one wrapped with the bundled@governed_toolharness. - Reversibility: write ops with a clean inverse (job start/stop, enable/disable) record an inverse undo descriptor; the irreversible VM restore declares none and is tagged
highrisk. - Async sessions: Veeam jobs and restores run as sessions — poll progress with
session list/session get(the runaway budget guard prevents poll loops from running away).
Quick start
uv tool install veeam-aiops
mkdir -p ~/.veeam-aiops
# create ~/.veeam-aiops/config.yaml with a targets: list
# put passwords in ~/.veeam-aiops/.env (chmod 600)
veeam-aiops doctor
Example ~/.veeam-aiops/config.yaml:
targets:
- name: vbr-lab
host: 10.0.0.20
username: "DOMAIN\\backup-admin"
port: 9419
verify_ssl: false # self-signed lab certs only
~/.veeam-aiops/.env (chmod 600): VEEAM_VBR_LAB_PASSWORD=<password>
Audit & safety
All operations are logged to a local SQLite audit DB under ~/.veeam-aiops/
(relocatable via VEEAM_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 (job stop,
restore start) require double confirmation and support --dry-run.
API-returned text is run through a prompt-injection sanitizer.
License: MIT.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file veeam_aiops-0.1.0.tar.gz.
File metadata
- Download URL: veeam_aiops-0.1.0.tar.gz
- Upload date:
- Size: 47.9 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e848faf90632bec039d24ad925ba4b6c365f7fc88cf3f34e48c1ded0040263e
|
|
| MD5 |
71c162934569130f60ca5e487484980a
|
|
| BLAKE2b-256 |
491b1781c14ba40dd551521a5ae52643409641d287eff10ea13d8e4abb2f3621
|
File details
Details for the file veeam_aiops-0.1.0-py3-none-any.whl.
File metadata
- Download URL: veeam_aiops-0.1.0-py3-none-any.whl
- Upload date:
- Size: 55.4 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
56dea758abe172c2f763f354968294b2f51c1fc625a97c482d17bfa53b927489
|
|
| MD5 |
cf9b1e0f633f179dd6ae4ef65b5a49bf
|
|
| BLAKE2b-256 |
cd5b41cefa23802eed4e9aa0e02dba43413cd658d117ce45f08768a26169ed42
|