veeam-aiops — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited veeam-aiops (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Disclaimer: This is a community-maintained open-source project and is not affiliated with, endorsed by, or sponsored by Veeam Software. "Veeam" is a trademark of its owner. Source code is publicly auditable at github.com/AIops-tools/Veeam-AIops under the MIT license.
Governed Veeam Backup & Replication operations — 12 MCP tools, every one wrapped with the bundled @governed_tool harness: a local unified audit log under ~/.veeam-aiops/, policy engine, token/runaway budget guard, undo-token recording, and graduated-autonomy risk tiers.
Standalone: the governance harness is bundled in the package (veeam_aiops.governance) — veeam-aiops has no external skill-family dependency. Preview: common Veeam operations, not yet exhaustive.| Category | Tools | Count | Read or Write |
|---|---|---|---|
| Backup Jobs | list, get, start, stop, enable, disable | 6 | 2 read / 4 write |
| Restore | list restore points, start VM restore | 2 | 1 read / 1 write |
| Repositories | list repositories | 1 | 1 read |
| Backups | list stored backups | 1 | 1 read |
| Sessions | list, get (poll async progress) | 2 | 2 read |
uv tool install veeam-aiops
veeam-aiops doctorDo NOT use when the target is not Veeam Backup & Replication (other backup products, hypervisor VM lifecycle, Kubernetes, or cloud providers are out of scope for this skill).
| If the user wants… | Use |
|---|---|
| Veeam backup jobs / restore / repositories | veeam-aiops (this skill) |
| Hypervisor VM lifecycle (power, snapshot, migrate) | a hypervisor ops skill |
| Container/cluster lifecycle | a cluster ops skill |
veeam-aiops job list → find the job id and confirm lastResultveeam-aiops job start <job_id> → starts the job (records an inverse job_stop undo descriptor)veeam-aiops session list → find the running session; veeam-aiops session get <session_id> → check state / progressPercentsession get shows the session Failed, inspect result, then re-run job start after fixing the cause — do not loop session get rapidly (the runaway budget guard will trip a tight poll loop).veeam-aiops restore list-points → identify the correct restore point idveeam-aiops restore start --restore-point-id <id> --dry-run → preview the exact API callveeam-aiops restore start --restore-point-id <id> → double confirmation required; this is IRREVERSIBLE (overwrites/creates a VM) and records no undo tokendoctor shows the VBR server unreachable or the password env var is missing, fix ~/.veeam-aiops/.env (chmod 600) before retrying — the restore is never issued against an unauthenticated session.| Scenario | Recommended | Why |
|---|---|---|
| Local/small models (Ollama, Qwen) | CLI | fewer tokens than MCP |
| Cloud models (Claude, GPT) | Either | MCP gives structured JSON I/O |
| Automated pipelines | MCP | type-safe parameters, audited |
| Category | Tools | R/W |
|---|---|---|
| Backup Jobs | job_list, job_get | Read |
job_start, job_stop, job_enable, job_disable | Write | |
| Restore | restore_list_points | Read |
start_vm_restore | Write | |
| Repositories | repository_list | Read |
| Backups | backup_list | Read |
| Sessions | session_list, session_get | Read |
Harness features that light up: write tools with a clean inverse (job_start↔job_stop, job_enable↔job_disable) pass an undo= lambda so the harness records an inverse descriptor (with _undo_id) to the undo store. The irreversible start_vm_restore declares no undo and is tagged risk_level=high. All 12 tools are audit-logged under ~/.veeam-aiops/ and pass through the policy pre-check + budget/runaway guard + graduated risk-tier gate. Veeam jobs/restores run as async sessions — poll with session_get instead of re-issuing (the runaway breaker backs this up).
veeam-aiops job list [--target <t>]
veeam-aiops job get <job_id>
veeam-aiops job start <job_id>
veeam-aiops job stop <job_id> [--dry-run] # double confirm
veeam-aiops job enable <job_id>
veeam-aiops job disable <job_id>
veeam-aiops restore list-points
veeam-aiops restore start --restore-point-id <id> [--dry-run] # double confirm
veeam-aiops repository list
veeam-aiops session list
veeam-aiops session get <session_id>
veeam-aiops backup list
veeam-aiops doctor
veeam-aiops mcp # start MCP server (stdio)See references/cli-reference.md for the full command list.
Create ~/.veeam-aiops/config.yaml with a targets: list (see README), and put passwords in ~/.veeam-aiops/.env (chmod 600).
Each target needs a per-target password env var. For target vbr-lab, set VEEAM_VBR_LAB_PASSWORD=<password> in .env.
The username/password is wrong, or the account lacks a Veeam role. Veeam usernames are typically DOMAIN\\user or a local Windows account on the VBR server. Confirm the account can log in to the Veeam console.
The default REST API port is 9419 — confirm the Veeam Backup & Replication REST API service is running and the port is open. For self-signed certificates set verify_ssl: false on the target (lab only).
The job/session/restore-point id is stale. List the parent collection first (job list, session list, restore list-points) to get a current id.
All operations are automatically audited via the bundled @governed_tool decorator (veeam_aiops.governance):
~/.veeam-aiops/audit.db (local SQLite audit DB; relocate with VEEAM_AIOPS_HOME)~/.veeam-aiops/rules.yaml (deny rules, maintenance windows, risk tiers)The harness is bundled in the package — no external dependency, no manual setup. See references/setup-guide.md for security details.
This is a preview — coverage is intentionally focused. Missing a device, action, or feature you need? Open an issue or pull request at github.com/AIops-tools/Veeam-AIops — feature requests, contributions, and comments are all welcome.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.