Skip to content
← Tools / Skills
ToolNushell Contributors/10 trustMetrics-checked

Nushell

A new type of shell where pipelines carry structured data instead of raw text.

Visit official site →

About

Nushell (or Nu) is an open-source, cross-platform shell written in Rust, created by Jonathan Turner and maintained by a large contributor community. It rethinks the Unix pipeline: where Bash passes raw text between commands, Nushell pipelines carry typed, structured data. ls returns a table with typed columns for name, size, and modified date; open package.json returns a navigable data structure. That means you can filter, sort, select, and aggregate with built-in commands (where, sort-by, get, select) instead of reaching for grep, awk, sed, or jq.

The shell speaks JSON, YAML, TOML, CSV, TSV, XML, SQLite, Excel, and INI natively, has over 300 built-in commands, a plugin system for extensions in Rust, Python, or any language, context-aware completions, and clear error messages that catch type mismatches at parse time. The honest tradeoff: Nushell is not POSIX-compatible, so Bash one-liners and scripts need porting, and the ecosystem of community snippets is still smaller than Bash or Zsh. It is free, MIT-licensed, and runs on Linux, macOS, BSD, and Windows.

What it can do

  • Structured data pipelines (tables, lists, records) instead of text streams
  • Native parsing of JSON, YAML, TOML, CSV, TSV, XML, SQLite, Excel, INI
  • Over 300 built-in commands across strings, math, filesystem, network, system
  • Typed custom commands with defaults for self-documenting scripts
  • Plugin system for Rust, Python, and other languages
  • Context-aware completions based on command signatures
  • HTTP commands that return structured data directly
  • Clear, location-precise error messages
  • Cross-platform: Linux, macOS, BSD, Windows

Setup

Install via Homebrew (brew install nushell), your distro package manager, the install script from nushell.sh, or cargo install nu. Run nu to start the shell, or set it as your login shell. Configuration lives in ~/.config/nushell/config.nu (behavior) and env.nu (environment and prompt), both plain Nu scripts you can edit directly.

Prerequisites

None beyond the binary; works alongside your existing shell, so you can try it without committing.

Use cases

shell-scriptingdata-processingapi-explorationlog-analysiscsv-json-wrangling

Works with

developersdata-engineersdevopsstudents

Trust score — 9/10

/10 trustMetrics-checked

Scored 9/10 (metrics tier, metrics-v1). Evidence: ~40.7k GitHub stars with commits pushed October 16, 2026; independent writeups confirm the structured-data pipeline model, the natively parsed formats, the 300+ built-in commands, and the plugin system. Strengths: a genuinely different and well-executed idea, excellent error messages, strong documentation, cross-platform parity. Docked for: (1) not POSIX-compatible, so existing Bash scripts and one-liners must be ported; (2) the community snippet ecosystem is smaller than Bash/Zsh; (3) some power-user workflows still need external tools. License: MIT.

★ 40,671 GitHub stars

How the trust score is built

Full methodology →
Adoption · stars/downloads, log-scaled vs peers
8.0/10
Maintenance · recency, releases, issue load
9.0/10
Openness · license + docs
9.0/10
Manual review · sanity read + red-flag check
9.0/10
  • · ~40.7k GitHub stars (Oct 16, 2026 snapshot), commits pushed same day; created by Jonathan Turner
  • · Structured data pipelines; 300+ built-in commands; native JSON/YAML/TOML/CSV/SQLite/Excel/INI parsing
  • · Not POSIX-compatible (scripts need porting); plugin system for Rust/Python; smaller snippet ecosystem than Bash/Zsh

Sources

Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.