The CLI
vyrn is one binary. vyrn run needs no other tool, vyrn build writes a native binary, and tests, benchmarks, formatting and docs are subcommands.
Run, check, build
vyrn run compiles to WebAssembly and runs it, and needs nothing installed. vyrn check diagnoses without running. vyrn build --target wasm writes the module; vyrn build puts the same bytes through wasm2c and clang into a native binary. Both are the same program — the route harness runs every example both ways and compares the bytes.
Format, document, test
vyrn fmt writes the one canonical layout. It has no style options, and --check is the CI gate. vyrn doc writes Markdown API docs from the /// comments, and --verify fails when they drift from the code. vyrn test and vyrn bench have their own page.
vyrn why
vyrn why <file> answers with a module's audience and every import chain that reaches it. --cost reports, per function, the lines that allocate, copy, grow a container and keep a check. --capability fs lists every chain that pulls the file system into an artifact.