semvec/pypi-packages huggingface dataset:
virt-wrapper 0.8.5
Wrapper that was developed in order to manage libvirt virtual machines
Requires Python: >=3.10

# Description

Python wrapper for managing virtual infrastructure based on Hyper-V or KVM (libvirt)

# Example usage
## Get access to particular VM by UUID
```python
from virt_wrapper import *
import asyncio

def main():
    kvm = await VirtualMachine.connect(
        host="linux-server.lan",
        uuid="c7c2f567-064f-464e-9843-1ed55c04f35e",
        platform=HypervisorPlatform.KVM,
        auth=("user", "123456")
    )
    kvm_name = await kvm.name()

    hvm = await VirtualMachine.connect(
        host="windows-server.lan",
        uuid="37a6cee8-f6ce-48c4-a635-7145e8770cca",
        platform=HypervisorPlatform.HYPERV,
        auth=("user", "123456")
    )
    hvm_name = await hvm.name()

    print(f"Virtual machine on Linux has name: {kvm_name}\nVirtual machine on Windows has name: {hvm_name}")

if __name__ == "__main__":
    asyncio.run(main())

```

## Get all VMs on particular hypervisor
```python
from virt_wrapper import *

hypervisor = Hypervisor(
    host="windows-server.lan",
    platform=HypervisorPlatform.HYPERV,
    auth=("user", "123456")
)

# OR

hypervisor = Hypervisor(
    host="linux-server.lan",
    platform=HypervisorPlatform.KVM,
    auth=("user", "123456")
)

for vm in hypervisor.virtual_machines():
    print(vm.name())
```


# Requirements
## KVM

- SSH-key must be imported on target server
- User must have full access to libvirt
```sh
usermod <your_user> -aG libvirt
systemctl restart libvirtd
```

## Hyper-V
- User must have full access to Hyper-V
- WinRM must be enabled with this parameters
    - HTTPS
    - Basic auth

```powershell
# Enables the WinRM service and sets up the HTTP listener
Enable-PSRemoting -Force

# Create HTTPS listener
$httpsParams = @{
    ResourceURI = 'winrm/config/listener'
    SelectorSet = @{
        Transport = "HTTPS"
        Address   = "*"
    }
    ValueSet = @{
        CertificateThumbprint = ""
        Enabled               = $true
    }
}
New-WSManInstance @httpsParams

# Enable basic auth
Set-Item -Path WSMan:\localhost\Service\Auth\Basic -Value $true

# Opens port 5986 for all profiles
$firewallParams = @{
    Action      = 'Allow'
    Description = 'Inbound rule for Windows Remote Management via WS-Management. [TCP 5986]'
    Direction   = 'Inbound'
    DisplayName = 'Windows Remote Management (HTTPS-In)'
    LocalPort   = 5986
    Profile     = 'Any'
    Protocol    = 'TCP'
}
New-NetFirewallRule @firewallParams
```

# Available functions:
- [x] Managing snapshots
- [x] Managing virtual disks
- [x] Managing networks
- [x] Getting info about VM (state, description, guest OS, etc.)
- [x] Controling VM (run, shutdown, pause, etc)
- [x] Export/Import virtual machines
- [ ] Migrating
- [ ] Cloning
vasudev-cli 1.0.2
Your personal AI assistant in the terminal
Requires Python: >=3.7

# Vasudev CLI 🚀

Vasudev CLI is your personal AI assistant in the terminal. It helps you write code, build applications, automate tasks, and control your browser using natural language.

## Features ✨

-   **AI Chat**: Powered by Google Gemini (Flash 1.5).
-   **Natural Language Actions**:
    -   "Open Google" -> Opens browser.
    -   "Play Believer" -> Plays song on YouTube.
-   **Shell Execution**: Run commands directly via `/run <command>`.
-   **Code Writer**: Automatically detects and saves code blocks.
-   **Auto-Browser**: Toggle automatic URL opening with `/autobrowser on`.

## Installation 🛠️

### Option 1: Easy Install (Windows) - Recommended ⚡
1.  Download the project folder.
2.  Double-click **`install_win.bat`**.
3.  Wait for it to finish. It will install the CLI and fix your PATH automatically.

### Option 2: Manual Install
You can install Vasudev CLI via pip:

```bash
pip install vasudev-cli
```

Or if you are installing from source:

```bash
git clone https://github.com/yourusername/vasudev-cli.git
cd vasudev-cli
pip install .
```

## Usage 🚀

Once installed, you can run Vasudev from **any terminal** (CMD, PowerShell, Git Bash) using:

```bash
vasudev
# OR
vc
```

### First Run
On the first run, the CLI will ask for your **Gemini API Key**.
-   It will securely save it to `~/.vasudev/config.json`.
-   You can get a key from [Google AI Studio](https://aistudio.google.com/).

### Commands
-   **Chat**: Just type your message!
-   `/help`: Show available tools.
-   `/run <cmd>`: Execute a shell command (e.g., `/run dir`).
-   `/exit`: Quit the CLI.

## Project Structure 📂

-   `src/main.py`: Main source code.
-   `vc.bat`: Launcher script.
-   `requirements.txt`: Python dependencies.

---
*Built with ❤️ by Vasudev AI*