macOS
brew install nshlocal Homebrew formula metadata
sudo port install nshMacPorts ports tree · shells/nsh/Portfile · source: api.github.com
brew
Fish-like, POSIX-compatible shell. Version 0.4.2 via Homebrew; verified from local package data.
install
brew install nshlocal Homebrew formula metadata
sudo port install nshMacPorts ports tree · shells/nsh/Portfile · source: api.github.com
sudo apk add nshAlpine Linux edge package indexes · nsh · source: dl-cdn.alpinelinux.org
nix profile install nixpkgs#nshnixpkgs package indexes · pkgs/by-name/ns/nsh/package.nix · source: api.github.com
overview
Fish-like, POSIX-compatible shell
history
nsh is a Rust command-line shell that aims to combine fish-like interactive convenience with POSIX-compatible shell syntax and some Bash extensions. Its README lists tab completion, syntax highlighting, Bash completion support by invoking Bash internally, and zero-configuration interactive features.
The GitHub repository was created on October 5, 2018, and the crates.io package was created on December 19, 2018. A Rust users forum announcement from December 17, 2018 framed the motivation as wanting fish-like out-of-the-box features while keeping traditional shell syntax and Bash scripting features.
nsh is an experimental/alpha shell rather than a mainstream login shell. The README explicitly asks for help to make it practical for daily use and notes missing Bash features and likely bugs. Still, it drew developer interest: the GitHub repository had about 963 stars when queried on 2026-07-01, crates.io reported 33,186 total downloads and 20 versions, and Homebrew, MacPorts, Nix, and Alpine package it.
Package users try it as an interactive shell with `nsh`, often via `cargo install nsh` or `brew install nsh`, to get completions and highlighting without adopting fish's non-POSIX language. The realistic usage is experimentation or personal shell sessions, not relying on it as `/bin/sh` for production scripts.
nsh sits in the recurring shell-design niche: keep Bourne/POSIX familiarity, borrow fish's interactive ergonomics, and implement it in Rust. For package catalogs it is best described as an interesting alternative shell with modest packaging footprint and alpha-stage caveats.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
nsh | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:nsh |
|---|---|
| Version | 0.4.2 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/nsh |
| Homepage | https://github.com/nuta/nsh |
| Repository | https://github.com/nuta/nsh |
| Upstream docs | https://github.com/nuta/nsh#readme |
| License | CC0-1.0 OR MIT |
| Source archive | https://github.com/nuta/nsh/archive/refs/tags/v0.4.2.tar.gz |
| Build dependencies | rust |
| Bottle | available (on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | nsh |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
nsh
nix profile install nixpkgs#nshnsh 0.4.2-r1
A command-line shell like fish, but POSIX compatible
sudo apk add nshnsh-dbg 0.4.2-r1
A command-line shell like fish, but POSIX compatible (debug symbols)
sudo apk add nsh-dbgnsh
sudo port install nshsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.