Installation
posh ships as a single static binary. Pick whichever channel fits your environment.
Homebrew (macOS / Linux)
brew install foomo/tap/poshThe formula lives in foomo/homebrew-tap.
mise
mise use github:foomo/poshOr run directly without installing:
mise x github:foomo/posh -- --helpSee mise.jdx.dev for project-level pinning.
Docker
Multi-arch images (amd64, arm64) are published to Docker Hub:
docker run --rm foomo/posh:latest --helpFor project use, mount your repo and pass through the working directory:
docker run --rm -it -v "$PWD:/work" -w /work foomo/posh:latest initBinary release
Download the archive for your OS/arch from the releases page and extract posh somewhere on your $PATH:
curl -L https://github.com/foomo/posh/releases/latest/download/posh_$(uname -s)_$(uname -m).tar.gz \
| tar -xz -C /usr/local/bin poshgo install
go install github.com/foomo/posh@latestRequires Go 1.26+. Note: go install builds without the linker flags used by release builds, so posh version will print unknown.
Verify
$ posh version
v1.x.y
$ posh --help
Project Oriented Shell (posh)
Usage:
posh [command]
…You're ready for the Quick Start.
What gets installed
The posh binary is intentionally small — init, config and version are the only meaningful subcommands. The interesting commands (prompt, execute, require, brew) only appear inside a scaffolded project shell, because they delegate to the Plugin you write. See Concepts for the full picture.
