Public/Invoke-VirtualMachine.ps1

function Invoke-VirtualMachine {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory = $false, Position = 0)]
        [scriptblock] $ScriptBlock
    )

    if (-not $script:VirtualMachineManager) {
        throw "Virtual Machine aliases are not registered. Run Register-VirtualMachineAliases first."
    }

    Invoke-Command -Credential $script:VirtualMachineManager.Credential -VMName $script:VirtualMachineManager.VMName @PSBoundParameters
}