macOS
brew install yashlocal Homebrew formula metadata
sudo port install yashMacPorts ports tree · shells/yash/Portfile · source: api.github.com
brew
Yet another shell: a POSIX-compliant command-line shell. Version 2.61 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#yash.
install
brew install yashlocal Homebrew formula metadata
sudo port install yashMacPorts ports tree · shells/yash/Portfile · source: api.github.com
sudo apk add yashAlpine Linux edge package indexes · yash · source: dl-cdn.alpinelinux.org
sudo dnf install yashFedora Rawhide package metadata · yash · source: dl.fedoraproject.org
nix profile install nixpkgs#yashnixpkgs package indexes · pkgs/by-name/ya/yash/package.nix · source: api.github.com
sudo apt install yashUbuntu 24.04 LTS package indexes · yash · source: archive.ubuntu.com
overview
Yet another shell: a POSIX-compliant command-line shell
history
yash, Yet Another Shell, is Yuki Watanabe's POSIX-focused command-line shell. It aims to be highly POSIX-compliant while still offering interactive conveniences such as completion, prediction, arrays, aliases, extended globbing, and redirection features.
Upstream NEWS records Yash 2.0 alpha0 as the first 2.x release on 2008-05-26. The project later moved to GitHub; the README says it is maintained on GitHub but was formerly on OSDN, and the GitHub repository was created on 2012-11-24.
A defining thread in Yash history is conformance work. NEWS records POSIX.1-2008 conformance in Yash 2.8 in April 2009, support for the 2013 edition of POSIX.1-2008 in 2.42 in August 2016, and support for POSIX.1-2008 Technical Corrigendum 2 in 2.44 in January 2017. The current README says Yash now fully supports POSIX.1-2024 except for listed limitations.
The project has stayed actively maintained in a conservative shell-tooling style. The README describes stable maintenance releases every three months or so, and GitHub releases show 2.61 published on 2026-03-03.
Yash's adoption is niche compared with bash, zsh, dash, or fish, but it has a clear role for users who care about POSIX behavior, shell-language edge cases, and an interactive shell that does not primarily chase bash compatibility. Package managers such as Homebrew, MacPorts, Fedora, Nix, and Ubuntu carry it as an alternative shell rather than as a default system shell.
Its maintenance style also attracts shell implementers and portability-minded users: NEWS entries repeatedly track standard changes, built-in behavior, job control, pathname expansion, and line-editing details rather than splashy user-interface pivots.
Users can run yash as an interactive shell, script interpreter, or login shell. The README documents startup files under `$XDG_CONFIG_HOME/yash/profile` or `~/.yash_profile` for login shells and `$XDG_CONFIG_HOME/yash/rc` or `~/.yashrc` for interactive configuration.
In practice it is useful for POSIX shell testing, portable script development, and users who want a smaller standards-oriented shell with interactive amenities such as command completion, history-based prediction, global aliases, arrays, and extended globbing.
yash is package-nerd significant because shells are both applications and compatibility surfaces. Packaging yash gives users a reproducible alternative interpreter for testing scripts against POSIX semantics without replacing the system `/bin/sh`.
It is also a good example of long-haul small-project maintenance: standards tracking, portability fixes, completion updates, and cautious release cadence matter more than branding. That makes it valuable in package collections even when its user base is specialized.
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.
local files
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.
Config paths the tool may read or write during local use.
$XDG_CONFIG_HOME/yash/profile~/.yash_profile$XDG_CONFIG_HOME/yash/rc~/.yashrcexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
yash | 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.
https://github.com/magicant/yash
install metadata
| Package key | brew:yash |
|---|---|
| Version | 2.61 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/yash |
| Homepage | https://magicant.github.io/yash/ |
| Repository | https://github.com/magicant/yash |
| Upstream docs | https://magicant.github.io/yash/doc |
| License | GPL-2.0-or-later |
| Source archive | https://github.com/magicant/yash/releases/download/2.61/yash-2.61.tar.xz |
| Dependencies | gettext |
| Uses from macOS | ncurses |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | yash |
| 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.
yash
nix profile install nixpkgs#yashyash 2.55-2
yet another shell
sudo apt install yashgit-yash-completion 2.60-r0
Yash completions for git
https://magicant.github.io/yash/
sudo apk add git-yash-completionopenssh-client-yash-completion 2.60-r0
Yash completions for openssh-client
https://magicant.github.io/yash/
sudo apk add openssh-client-yash-completionsubversion-yash-completion 2.60-r0
Yash completions for subversion
https://magicant.github.io/yash/
sudo apk add subversion-yash-completionvalgrind-yash-completion 2.60-r0
Yash completions for valgrind
https://magicant.github.io/yash/
sudo apk add valgrind-yash-completionyash 2.60-r0
Yet another shell
https://magicant.github.io/yash/
sudo apk add yashyash-binsh 2.60-r0
yash as /bin/sh
https://magicant.github.io/yash/
sudo apk add yash-binshyash-completion 2.60-r0
Yet another shell (command-line completion)
https://magicant.github.io/yash/
sudo apk add yash-completionyash-doc 2.60-r0
Yet another shell (documentation)
https://magicant.github.io/yash/
sudo apk add yash-docyash 2.61-1.fc45
Yet Another SHell
https://github.com/magicant/yash/
sudo dnf install yashyash-doc 2.61-1.fc45
Documentation for yash
https://github.com/magicant/yash/
sudo dnf install yash-docyash
sudo port install yashsource 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.