Installation

Pick a package

Package Contents
Computerwelt shell + Python over one virtual filesystem
Computerwelt.Emulation.Bash the shell alone
Computerwelt.Emulation.Python the Python interpreter alone

Reference Computerwelt when you want python available as a shell command over the same filesystem the shell sees. Reference one of the halves when you only need that half; the joined package brings both in as dependencies.

dotnet add package Computerwelt

Requirements

Target framework net10.0
Native dependencies none
Operating system any the .NET runtime supports; virtual paths are POSIX everywhere
Extra tooling none. There is no CPython to install and no container to start

Verify it

using Computerwelt.Emulation.Bash;

var bash = Bash.Create();

var result = await bash.ExecAsync("echo it works");

Console.WriteLine(result.ExitCode);   // 0
Console.WriteLine(result.Stdout);     // it works

Bash.Create() builds a session with the default command set, the default limits, and an empty in-memory filesystem. Nothing on the host is reachable from it, so the first thing most applications do is give it a filesystem of their own: see The virtual filesystem.

© 2026 Curiosity. All rights reserved.