Skip to main content

virtualshell

PyPI version Python versions OS License Build

High-performance PowerShell automation for Python. Run PowerShell commands with millisecond latency, persistent sessions, async execution, and a cross-platform zero-copy bridge — without juggling subprocesses.

Full documentation lives in the wiki. This README covers what the library is, why it matters, and how to get started.

What is virtualshell?

virtualshell keeps one PowerShell host warm behind a thin Python wrapper powered by a C++ engine. Instead of spawning pwsh for every command, you get:

  • a persistent PowerShell session
  • ~2–4 ms execution latency
  • async and batch execution
  • structured, predictable results
  • optional zero-copy shared memory transfers (cross-platform)
  • live object proxies with generated type stubs

Typical use cases include Python orchestration layers, long-running agents, CI/test harnesses, and automation tooling that must be fast and reliable.

Why use it?

  • Persistent session — reuse loaded modules, $env:*, functions, and global state across calls.
  • Low latency — avoid the ~200 ms cost of subprocess.run("pwsh") per command.
  • Async and batching — schedule concurrent commands with timeouts and callbacks.
  • Structured results — every call returns stdout, stderr, exit code, timing, and success state.
  • Predictable failures — typed Python exceptions for timeouts, missing PowerShell, and execution errors.
  • Type-safe automation — generate Python Protocol stubs from PowerShell objects and control them through live proxies.

Requirements

  • Python 3.11 – 3.14
  • PowerShell 7 (pwsh) on PATH, unless an explicit path is passed in the configuration

Installation

Pre-built wheels are published for Windows (x64), Linux (x86_64 / aarch64), and macOS (universal2):

pip install virtualshell

No compiler or build tools are required when installing wheels.

Building from source (optional)

Building locally requires CMake and a C++17 compiler. On Windows, install Visual Studio Build Tools with the Desktop development with C++ workload and run the build from an x64 Native Tools Command Prompt (64-bit only).

pip install virtualshell --no-binary virtualshell

Or directly from GitHub:

pip install "git+https://github.com/Chamoswor/virtualshell"

Verify the installation:

python -c "import virtualshell; print('virtualshell OK')"

Quick start

from virtualshell import Shell

with Shell(timeout_seconds=5) as sh:
    print(sh.run("Write-Output 'Hello from pwsh'").out.strip())

    sh.run("function Inc { $global:i++; $global:i }")
    print(sh.run("Inc").out.strip())  # 1
    print(sh.run("Inc").out.strip())  # 2

Async execution

from virtualshell import Shell
import asyncio

async def main():
    shell = Shell().start()
    fut = shell.run_async("Get-Date")
    res = await asyncio.wrap_future(fut)
    print(res.out.strip())
    shell.stop()

asyncio.run(main())

Running scripts with arguments

from pathlib import Path
from virtualshell import Shell

shell = Shell().start()

shell.script(Path("test.ps1"), args=["alpha", "42"])
shell.script(Path("test.ps1"), args={"Name": "Alice", "Count": "3"})

shell.stop()

All execution APIs support per-call timeouts, raise_on_error, and callbacks.

Advanced features

Zero-copy bridge

High-throughput shared-memory transfer between Python and PowerShell, suited for large binary blobs, files, or high-frequency data exchange. The payload moves through a file-backed memory map shared between Python (mmap) and PowerShell (.NET MemoryMappedFile) — no native DLL required, on Windows, Linux, and macOS.

from virtualshell import Shell, ZeroCopyBridge

with Shell(timeout_seconds=60) as shell:
    with ZeroCopyBridge(shell) as bridge:
        data = b"x" * 1_000_000
        bridge.send(data, "buf")
        print(shell.run("$buf.Length").out)

Measured throughput is roughly 145–560 MB/s depending on payload size and direction — about 10–40× faster than piping the same data through stdout as base64. See the wiki for the full guide, including PSObject round-trips between Python and PowerShell.

PowerShell object proxies

Control live .NET/PowerShell objects from Python. Scalars convert to native Python types, byte arrays travel through the zero-copy bridge, and complex values come back as sub-proxies.

with Shell() as sh:
    writer = sh.make_proxy("", "System.IO.StreamWriter('test.txt')")
    writer.WriteLine("Hello")
    writer.Close()

A bare [Type] literal binds the type itself, exposing its static methods, properties and constants:

with Shell() as sh:
    math = sh.make_proxy("", "[System.Math]")
    print(math.Sqrt(16.0), math.PI)     # 4.0 3.141592653589793

Pair proxies with generate_psobject, which produces typed Protocol stubs (including overloads) for IDE completion and static analysis:

sh.generate_psobject("System.Text.StringBuilder()", Path("StringBuilder.py"))
from StringBuilder import StringBuilder

sb = sh.make_proxy(StringBuilder)   # created and typed in one call
sb.Append("Hello")

See the make_proxy and generate_psobject pages in the wiki.

Core API overview

Method Description
Shell.run(...) Execute a command synchronously
Shell.run_async(...) Schedule async execution
Shell.script(...) Run .ps1 files
Shell.save_session() Persist a session snapshot
Shell.make_proxy(...) Create a live PS object proxy
Shell.generate_psobject(...) Generate Python Protocols
Shell.zero_copy_bridge() Shared per-shell bridge

Configuration example

Shell(
    powershell_path="C:/Program Files/PowerShell/7/pwsh.exe",
    working_directory="C:/automation",
    environment={"MY_FLAG": "1"},
    timeout_seconds=10,
    auto_restart_on_timeout=True,
    initial_commands=[
        "$ErrorActionPreference = 'Stop'",
        "$ProgressPreference = 'SilentlyContinue'",
    ],
)

Performance

Measured with the bundled benchmarks (bench/vs_bench.py, bench/zcb_bench.py) on Windows 11, Python 3.14, PowerShell 7:

Command execution

  • ~0.45 s shell startup
  • ~3.5–4.0 ms per sequential command (~280 cmd/s)
  • ~3.2 ms per command in batches (~310 cmd/s)
  • ~2.3 ms async latency
  • ~620 cmd/s aggregate across 4 parallel shells
  • ~0.35 s session save

Zero-copy bridge (best of 3 runs per size)

Transfer 1 MB 8 MB 32 MB
PowerShell → Python (bytes) 145 MB/s 385 MB/s 413 MB/s
PowerShell → Python (memoryview) 145 MB/s 454 MB/s 563 MB/s
Python → PowerShell (send) 178 MB/s 369 MB/s 293 MB/s

A 4 KB send+receive round trip takes ~8 ms (p50). For reference, moving the same 1 MB payload through stdout as base64 runs at ~14 MB/s, so the bridge is roughly 10–40× faster for bulk data.

Full methodology and charts live in the wiki.

Learn more

Metadata

Release files for virtualshell 1.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for virtualshell 1.2.1
File Size Uploaded
virtualshell-1.2.1.tar.gz 146.9 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for virtualshell 1.2.1
File
virtualshell-1.2.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
virtualshell-1.2.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
virtualshell-1.2.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
virtualshell-1.2.1-cp314-cp314-macosx_11_0_universal2.whl CPython 3.14 CPython 3.14 macOS 11.0+ universal2 (ARM64, x86-64) Details
virtualshell-1.2.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
virtualshell-1.2.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
virtualshell-1.2.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
virtualshell-1.2.1-cp313-cp313-macosx_11_0_universal2.whl CPython 3.13 CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64) Details
virtualshell-1.2.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
virtualshell-1.2.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
virtualshell-1.2.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
virtualshell-1.2.1-cp312-cp312-macosx_11_0_universal2.whl CPython 3.12 CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64) Details
virtualshell-1.2.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
virtualshell-1.2.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
virtualshell-1.2.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
virtualshell-1.2.1-cp311-cp311-macosx_11_0_universal2.whl CPython 3.11 CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64) Details

Total release size: 6.6 MB

Release files / virtualshell-1.2.1.tar.gz

Download URL virtualshell-1.2.1.tar.gz
Size 146.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f432b2212fff9bde7a6665f2ef5049c50cc0b2ecdc4a234175eaeeb44bfa2fec
BLAKE2b-256 checksum
How to use checksums
384377e08271876769a2abf1745e892a181cbb34a327af36d608da3ffee4ed9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp314-cp314-win_amd64.whl

Download URL virtualshell-1.2.1-cp314-cp314-win_amd64.whl
Size 500.3 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
78992d323fb77883d811aa0ebc962725548152832aefce6baf93fe57a4eff41a
BLAKE2b-256 checksum
How to use checksums
c91fa31066f2e1315025a985b6cb0f92b0383fe32e3fc402dee6bd9d814d165a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL virtualshell-1.2.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 367.9 kB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
42fa5520a93bcdccc1ac28894776b8899f727bfaacf14745fefef4e0ba471eab
BLAKE2b-256 checksum
How to use checksums
23b46317af8e04cf11e6cdd8630c9cf058730d39fe5c178ebff395529045e7e3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL virtualshell-1.2.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 332.8 kB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
9c8929609a7b84bd69671d793ab751030d206dd9cc45d4785e1ae299c22cefeb
BLAKE2b-256 checksum
How to use checksums
f004e0dca9634be5bf5a041806bf1af0c731953902e2d61e435dc0d4071f1342
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp314-cp314-macosx_11_0_universal2.whl

Download URL virtualshell-1.2.1-cp314-cp314-macosx_11_0_universal2.whl
Size 432.1 kB
Tags CPython 3.14 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
08e4ff8e71ae5529165b07d4107a16ecfb9d110af8a22442b892788ec38a38c4
BLAKE2b-256 checksum
How to use checksums
45fecf44d22f2bfa325c58f44ef2edc34369a29213ea72c129b1e53581446b51
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp313-cp313-win_amd64.whl

Download URL virtualshell-1.2.1-cp313-cp313-win_amd64.whl
Size 486.1 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
27bf6cb82502235478154bea0708db215046d5090458924fc4493012e15e9dd4
BLAKE2b-256 checksum
How to use checksums
ac6ba225e387f38228e68e4936f1f75b7ad4a9b2cb2bf0e71512bfd97679f19d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL virtualshell-1.2.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 367.7 kB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
51ea9656f9b73fa9eece6e7dda9696e94dda4fdb9d7d69dfaecd93fce38c6a8e
BLAKE2b-256 checksum
How to use checksums
0f36390797015d98cd64fe5633fad7d96556ccb736a1104ec33390bc370d2f31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL virtualshell-1.2.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 332.1 kB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
33ecfdc84fd7e0c931db42b86608f39184a1f603628e328e93f9d64a7c13abb3
BLAKE2b-256 checksum
How to use checksums
36f8f13cc8f9269965c45f6301f027727ef83953acad0afd30215d76220be62b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp313-cp313-macosx_11_0_universal2.whl

Download URL virtualshell-1.2.1-cp313-cp313-macosx_11_0_universal2.whl
Size 431.3 kB
Tags CPython 3.13 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
5f61522952b17b356b864a215f0a69d5eca5ddd306efd7bb1d0868e01014e93e
BLAKE2b-256 checksum
How to use checksums
f5eeab706c7be9f9e2b765f2ab8050b6730392438b46351555e21bef98cb50c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp312-cp312-win_amd64.whl

Download URL virtualshell-1.2.1-cp312-cp312-win_amd64.whl
Size 486.1 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
ee3a9d668111106bfea2abd6dccd714556157780529cec03f71baa4068370bcb
BLAKE2b-256 checksum
How to use checksums
b83e9559f66f54c66ff9063d1398ae8e7620cdb3c2cd5126763afa804d6d52bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL virtualshell-1.2.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 367.7 kB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ff30b9f3e164b77337ef7f5c9d8e947e2aa4d8f5d3ee0405fe3084b1edb03df9
BLAKE2b-256 checksum
How to use checksums
51c4aa6420e2690b2cd57f148175458070fe4fe6f6d85c92c8069cbdf1d29acf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL virtualshell-1.2.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 332.1 kB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
78d665eb62f78308668325f551977770296e1ef70cc520e2baead98fc63700c4
BLAKE2b-256 checksum
How to use checksums
3006db4f931e8f8ec0410583b749b6af87ffd207b1a855825511281f0be53b44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp312-cp312-macosx_11_0_universal2.whl

Download URL virtualshell-1.2.1-cp312-cp312-macosx_11_0_universal2.whl
Size 431.1 kB
Tags CPython 3.12 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
185a4011bbd0a87b5990874857c9bdbb148cfc673eff9d65e7f716552f113dce
BLAKE2b-256 checksum
How to use checksums
2b249f8cc6a4806ef7e400ddb28108e7fed5a6297caccdba56319c41f7bbdf7f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp311-cp311-win_amd64.whl

Download URL virtualshell-1.2.1-cp311-cp311-win_amd64.whl
Size 484.9 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
386df18789e64810f448d701c078b9eb12ece3a8c86a8f15323463b0102517c9
BLAKE2b-256 checksum
How to use checksums
68e031f6baad2b4d78ec667ccb3b7ca98fb3c63d646e5707442832823817de8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL virtualshell-1.2.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 365.6 kB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
45e0d1cbbd58356383c9ed74daa5131e5edaab0ab75c77d35dc0069273b9714d
BLAKE2b-256 checksum
How to use checksums
11f1b10314de50bf7e635cbc293b1f0ef859313859693a1376d19270575ab43b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL virtualshell-1.2.1-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 330.0 kB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
6138a036de2fc161a0515cd2ffae44696bb8d79a0067f25f5f584a5b596833c3
BLAKE2b-256 checksum
How to use checksums
b8116770b7025478191e27d14c50368e171ee9c24dd7ea8f5b631511f7a2095d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release files / virtualshell-1.2.1-cp311-cp311-macosx_11_0_universal2.whl

Download URL virtualshell-1.2.1-cp311-cp311-macosx_11_0_universal2.whl
Size 429.9 kB
Tags CPython 3.11 macOS 11.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
6ed743f2c40afffe3cdc7d461087c1a77df164abef2848943ccf5f9a568cf8e0
BLAKE2b-256 checksum
How to use checksums
d61b394261c53fb9d6cfbbe451e12d27bfdc22db6d7246e109f8665956734cbc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 20, 2026.

Transparency log

Release history Release notifications | RSS feed

1.3.0

17 release files

1.2.3

17 release files

1.2.2

17 release files

This release

1.2.1 This release

17 release files

1.2.0

17 release files

1.1.2

25 release files

1.1.1

25 release files

1.1.0

25 release files

1.0.2

25 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page