memsh is a hermetic, in-memory shell runtime for Go. Execute bash-like commands, run Python and JS, compose WASM plugins — all inside an isolated afero.MemMapFs. Zero real OS contact. Full observability. Embeds anywhere.
afero.MemMapFs. The real OS filesystem is completely invisible to plugins, scripts, and commands. Nothing leaks in or out.Not a toy shell. A production-grade embedded runtime with the guarantees that real systems need.
-rf, -la, -jrc).WithAllowExternalCommands(true).WithFS, WithStdIO, WithCwd, WithEnv, WithPlugin, WithAllowExternalCommands.Author in TinyGo, Rust, or C. Distribute as a single .wasm file. OS-agnostic, version-pinned, capability-declared.
-r, -c, -n. Reads from virtual FS files or stdin.-j for JSON, -jc for compact JSON.-e, file execution, stdin. Access virtual FS via fs_readfile().fs.readFile().-F delimiter, -f program file, NR/NF variables.-invcrl. Recursive directory search with -r.-name glob, -type f/d, -maxdepth.MIT licensed. No vendor lock-in. Embed in any Go project in minutes.