pkg.sopackage field notes

brew / rank 294

Install zsh with Homebrew

UNIX shell (command interpreter). Version 5.9.2 via Homebrew; verified 2026-07-12.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install zsh

provider-native install command

overview

Package summary

UNIX shell (command interpreter)

Commands and aliases

  • zsh
  • zsh-5.9.2

history

Project history and usage

Zsh is one of the major Unix command interpreters: Bourne-like enough for daily shell work, but famous for interactive features such as programmable completion, spelling correction, glob qualifiers, prompt expansion, modules, line editing, and extensive startup-file control.

Project history

Zsh was originally written by Paul Falstad while he was a Princeton student, and the official FAQ preserves the name origin as 'Z shell' after Yale professor Zhong Shao. The project started around 1990 and entered the public Unix shell ecosystem in the early 1990s as a more featureful interactive shell than sh, csh, and ksh users typically had by default.

The shell matured through the 1990s with mailing-list-driven development, a large manual, and a compatibility stance that mixed Bourne-shell scripting with deliberately non-minimal interactive features. The official documentation still reflects that breadth: shell grammar, parameters, expansion, completion, modules, ZLE widgets, TCP helpers, calendar functions, and many option switches are documented as first-class parts of the system.

The 4.x series established zsh as a stable power-user shell, while the 5.x series modernized a codebase already common on Unix-like systems. The official news page records zsh 5.0.0 in 2012 and zsh 5.9 in 2022, showing a project that is conservative in release cadence but still maintained.

Apple's macOS Catalina changed zsh's public profile. In 2019 Apple documented that the default interactive shell changed from bash to zsh, turning a shell long associated with Unix enthusiasts into the out-of-box shell for new macOS user accounts.

Adoption history

Before the macOS switch, zsh adoption was strongest among Unix developers, sysadmins, and shell customizers who valued completion and prompt control. Frameworks such as Oh My Zsh later made that culture visible by collecting themes, plugins, and conventions around `.zshrc` customization.

After macOS Catalina, zsh became a default shell for a large population of developers using Macs. That did not make every user a zsh power user, but it changed packaging expectations: plugins, completions, prompt themes, history tools, and shell integrations increasingly treated zsh as a baseline target next to bash.

Distribution packaging is broad. The input package facts list zsh across Homebrew, Debian, Ubuntu, Fedora, Arch, openSUSE, MacPorts, Nix, and Alpine-related packages, reflecting its role as infrastructure rather than a niche optional tool.

How it is used

Interactive users configure zsh through its startup-file sequence: `.zshenv`, `.zprofile`, `.zshrc`, `.zlogin`, and `.zlogout`. `.zshrc` is the common home for aliases, prompt setup, completion initialization, key bindings, plugin loading, and history behavior.

Developers use zsh as a login shell, an interactive command interpreter, and sometimes a scripting language when zsh-specific expansion, arrays, globbing, or modules are useful. Its completion system is a major practical draw: package managers and CLIs often ship zsh completion definitions because zsh users expect rich argument completion.

The shell is also the substrate for a large plugin ecosystem: prompt frameworks, autosuggestions, syntax highlighting, fuzzy history, directory jumping, and language-toolchain helpers are commonly loaded from `.zshrc`.

Why package nerds care

zsh is package-nerd royalty because it is both a package and a platform for other packages. A package database can list zsh as a command interpreter, but its real ecosystem includes completions, plugins, prompt themes, framework packages, and tools that exist only because zsh's extension points are useful.

It is also a clean example of how defaults change package importance. zsh was already old and respected before macOS Catalina; Apple's default-shell switch made it newly central to developer workstations, Homebrew instructions, dotfile repos, and shell-plugin packaging.

For curation, zsh should be connected not just to shells such as bash, ksh, fish, and tcsh, but also to package-manager completion systems and interactive terminal UX tools.

Timeline

  • 1990: Paul Falstad begins the shell that becomes zsh.
  • 1990s: zsh develops as a feature-rich Bourne-style Unix shell with programmable completion and ZLE editing.
  • 2009: Oh My Zsh is created, helping popularize plugin-and-theme based zsh customization.
  • 2012-07-24: zsh 5.0.0 is released, according to the official zsh news archive.
  • 2019-10-07: macOS Catalina is released, and Apple documents zsh as the default shell for new user accounts.
  • 2022-05-14: zsh 5.9 is released, according to the official zsh news archive.

Related projects

  • Related projects include bash, ksh, tcsh, fish, Oh My Zsh, Prezto, antigen, zinit, zplug, starship, powerlevel10k, zsh-completions, zsh-autosuggestions, zsh-syntax-highlighting, and zsh-history-substring-search.

security posture

Risk level: yellow

doc example: shell runtime.

Risk classifier

yellow risk · high confidence · runtime

Why

  • doc example: shell runtime

Signals

  • override:zsh

Install behavior

  • No Homebrew bottle metadata was recorded.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.

Configuration files

Config paths the tool may read or write during local use.

Unix
~/.zshenv~/.zprofile~/.zshrc~/.zlogin~/.zlogout

Credential files

Credential-bearing paths to review before unattended agent runs.

Unix
~/.zshenv~/.zprofile~/.zshrc~/.zlogin~/.zlogout

executables

Installed executables

CommandKindExposureNote
zshexecutableindexed executableDiscovered from the local executable index.
zsh-5.9.2executableindexed executableDiscovered from the local executable index.

freshness

Version and 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.

page generated2026-08-03
manager version5.9.2
manager updated2026-07-12
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:zsh
Version5.9.2
Package managerHomebrew
Homepagehttps://www.zsh.org/
Last updated2026-07-12T21:49:02Z
Pulseupdated
Bottlenot recorded
Servicenone declared

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • curated configuration and credential file locations
  • curated package history
  • pkgdb category and tag curation