ndo
ndo is a CLI-first command runner: define short, named shell commands ("recipes") and run them by name, with arguments, from anywhere. It ships as a single static binary — no runtime, no interpreter, no config beyond plain TOML files.
Why ndo
- Add recipes from the CLI.
ndo add <name> "<command>" --param x— no need to hand-edit a config file just to add a one-liner. - Central + local recipes, layered. A global recipe set
(
~/.ndo/central.toml) holds shortcuts you want on every machine and every project; a per-project.ndo.tomlholds project-specific ones. Same name in both → the local one silently wins, no runtime noise. See Precedence for the full rationale. - Natural positional arguments.
ndo open ./file.txtbinds./file.txtstraight to the recipe's declared parameter — no flag ceremony. - Named lookup tables for arguments (
ndo var). Expand a short alias into a full value automatically — e.g.ndo o work→ opensC:\Users\dev\projects— without any special syntax in the recipe itself. - Single static binary, cross-platform. Linux, macOS, and Windows, amd64 and arm64. No dependency on any other task runner.
Next: install ndo and run through the quickstart.