{
  "commands": [
    {
      "name": "build",
      "arg": "file",
      "about": "compile a program (or a library, without main) to a binary"
    },
    {
      "name": "run",
      "arg": "file",
      "about": "build and run; arguments after -- go to the program"
    },
    {
      "name": "test",
      "arg": "file",
      "about": "run the test blocks; a filter narrows them"
    },
    {
      "name": "bench",
      "arg": "file",
      "about": "measure the bench blocks (optimized build; median time per iteration)"
    },
    {
      "name": "debug",
      "arg": "file",
      "about": "build for debugging and run under gdb or lldb, with formatters for Nexium's values"
    },
    {
      "name": "check",
      "arg": "file",
      "about": "type-check without building"
    },
    {
      "name": "effects",
      "arg": "file",
      "about": "the effects of every function"
    },
    {
      "name": "audit",
      "arg": "file",
      "about": "unsafe blocks and mutable globals; --lock and --check keep an effects lockfile"
    },
    {
      "name": "refcounts",
      "arg": "file",
      "about": "where reference counts change"
    },
    {
      "name": "leaks",
      "arg": "file",
      "about": "run with allocation tracking and report what is still live"
    },
    {
      "name": "size",
      "arg": "file",
      "about": "the binary's size by declaration"
    },
    {
      "name": "layout",
      "arg": "file",
      "about": "the memory layout of the named types"
    },
    {
      "name": "emit-c",
      "arg": "file",
      "about": "print the generated C"
    },
    {
      "name": "tir",
      "arg": "file",
      "about": "print the typed intermediate representation"
    },
    {
      "name": "explain",
      "arg": "file",
      "about": "why a function has an effect, as a tree: nx explain FILE FUNCTION EFFECT"
    },
    {
      "name": "fmt",
      "arg": "files",
      "about": "format sources in place; --check reports instead"
    },
    {
      "name": "fix",
      "arg": "files",
      "about": "make the fixes the compiler offers for its errors; --check reports instead"
    },
    {
      "name": "doc",
      "arg": "file",
      "about": "render the documentation comments as HTML"
    },
    {
      "name": "ship",
      "arg": "file",
      "about": "produce the artifacts the file declares: C, Python, Rust, npm, installers"
    },
    {
      "name": "init",
      "arg": "name",
      "about": "start a package here"
    },
    {
      "name": "add",
      "arg": "name",
      "about": "add a dependency: --git URL [--tag TAG] [--dir SUB], or --path DIR"
    },
    {
      "name": "fetch",
      "arg": "",
      "about": "fetch the dependencies of the lockfile"
    },
    {
      "name": "update",
      "arg": "",
      "about": "update dependencies to the manifest's newest"
    },
    {
      "name": "topo",
      "arg": "",
      "about": "the Topo's exercises in the terminal: a chapter number, check, hint, solution, quiz, reset"
    },
    {
      "name": "repl",
      "arg": "",
      "about": "an interactive session (also nx with no arguments at a terminal)"
    },
    {
      "name": "play",
      "arg": "file",
      "about": "check a program and run it in the interpreter, nothing compiled; stdin when no file (the playground's command)"
    },
    {
      "name": "lsp",
      "arg": "",
      "about": "the language server, over stdio"
    },
    {
      "name": "doctor",
      "arg": "",
      "about": "the installation: which C compiler, whether it works, the latest release"
    },
    {
      "name": "upgrade",
      "arg": "",
      "about": "install the latest release in place; --check only asks"
    },
    {
      "name": "install",
      "arg": "dir",
      "about": "copy this nx into place (the user's directory, or DIR) and onto the PATH"
    },
    {
      "name": "completions",
      "arg": "shell",
      "about": "print the completion script for bash, zsh, fish or powershell"
    },
    {
      "name": "man",
      "arg": "",
      "about": "print the manual page (roff)"
    },
    {
      "name": "version",
      "arg": "",
      "about": "the version and its release name"
    }
  ],
  "options": [
    {
      "name": "-o",
      "value": "path",
      "about": "the output file"
    },
    {
      "name": "--out-dir",
      "value": "dir",
      "about": "where the C and the binaries go (nx-out)"
    },
    {
      "name": "--mode",
      "value": "mode",
      "about": "debug (default), safe, fast or small"
    },
    {
      "name": "--target",
      "value": "triple",
      "about": "cross-compile for a target zig cc knows"
    },
    {
      "name": "--cpu",
      "value": "name",
      "about": "baseline (default), native, or a CPU name"
    },
    {
      "name": "--cc",
      "value": "command",
      "about": "the C compiler (zig cc by default)"
    },
    {
      "name": "--std",
      "value": "dir",
      "about": "standard library sources instead of the embedded copies"
    },
    {
      "name": "--keep-c",
      "value": "",
      "about": "keep the generated C"
    },
    {
      "name": "--sanitize",
      "value": "list",
      "about": "the C compiler's sanitizers: address, undefined"
    },
    {
      "name": "--watch",
      "value": "",
      "about": "run or test again whenever a file of the program changes"
    },
    {
      "name": "--strict",
      "value": "",
      "about": "warnings are errors"
    },
    {
      "name": "--check",
      "value": "",
      "about": "fmt and fix: report what would change; audit and upgrade: only ask"
    },
    {
      "name": "--lock",
      "value": "",
      "about": "audit: write the effects lockfile"
    },
    {
      "name": "--sigs",
      "value": "",
      "about": "tir: signatures only"
    },
    {
      "name": "-D",
      "value": "name",
      "about": "define a C macro for the build"
    },
    {
      "name": "-I",
      "value": "dir",
      "about": "an include directory for @cImport"
    }
  ]
}