Observed Wasm profile (2026-09-03): this README is supplementary. The support record is the only capability authority; it lists the repeatable moon run --target wasm --release results and exclusions. Options mentioned here but not promoted in that record are not compatibility guarantees.
cli/sh is a MoonBit shell interpreter. The observed Wasm slice includessimple quoting and variables, pipelines, redirections (includinghere-documents), command substitution, conditionals, case/pattern matching,loops, functions and return, grouping/subshells, positional parametersincluding ${#name} and shift, and set -e/-u status rules.
External commands are policy-visible child requests. The audit did not observedelegation of a complete script to a host shell.
Wasm child lookup and execution use the host process policy. Native environmentinheritance was not part of this Wasm-only capability audit.
Unsupported shell language constructs fail closed instead of being forwarded toanother interpreter. The interpreter never delegates a complete script to ahost shell. Rejected syntax uses a stable sh: <reason> diagnostic and doesnot expose the internal ShellError type name.
When neither -c nor a script file is supplied, the shell silently reads itsscript from stdin until EOF, as required by the POSIX compatibility path.-s explicitly selects stdin; following operands become $1, $2, and laterpositional parameters while $0 remains the invocation name. Remaining POSIX language gaps are listedin the support record.