← All projects
Active 14

A CLI for managing virtual machines in a KVM-based cluster.

About this project

kvmcli kvmcli is a modern, declarative CLI tool for managing KVM (Kernel-based Virtual Machine) infrastructure. Inspired by Terraform and Kubernetes, it uses HCL (HashiCorp Configuration Language) to define infrastructure as code. Key Features Infrastructure as Code: Define VMs, Networks, and Storage Pools using simple, readable HCL files. State Management: Tracks resource state in a local SQLite database to prevent drift and manage lifecycle. Declarative Networking: Configure bridge networks and DHCP ranges easily. Data Sources: Reference existing resources (like pre-existing networks or storage pools) using data blocks. Cluster Management: Group VMs into clusters with defined start/stop orders. Prerequisites Linux with KVM/QEMU enabled. libvirt daemon running. Go 1.22+ (to build from source). Installation Quick Start Define your Infrastructure Create a main.hcl file: Apply Configuration Provision your resources: Manage Resources List created resources: Delete resources: Advanced Usage Data Sources Reference resources that already exist in the database but are not defined in the current file. This is useful for sharing resources across multiple HCL files. Project Structure

From the project README on GitHub

Stars
14
Forks
1
Last push
13 Jun 2026

Add this badge to your README

Show that your project is listed on Made in Algeria.

Made in Algeria
[![Made in Algeria](https://www.madeinalgeria.dev/badge/kvmcli.svg)](https://www.madeinalgeria.dev/projects/kvmcli)

Related projects