Skip to content

Installation

Eric Kochen edited this page Apr 19, 2026 · 4 revisions

Quick install (recommended)

curl -fsSL getpurple.sh | sh

Works on macOS and Linux. Downloads the latest release, verifies the checksum and installs the binary.

Homebrew (macOS)

brew install erickochen/purple/purple

Update with brew upgrade purple.

Cargo

Cargo is the Rust package manager. The crate name is purple-ssh (the name purple was taken on crates.io). The binary is still called purple.

cargo install purple-ssh

Update with cargo install purple-ssh (overwrites the existing binary).

From source

git clone https://github.com/erickochen/purple.git
cd purple && cargo build --release

The binary is at target/release/purple.

Claude Desktop (.mcpb bundle)

For Claude Desktop users who only need the MCP server (not the TUI), download the latest .mcpb from the GitHub releases page and double-click to install. The bundled installation runs in --read-only mode by default. See MCP Server for details.

This is independent of the regular install paths above. Install both if you want the TUI on your terminal AND a one-click setup for Claude Desktop.

Updating

purple update              # curl installs: downloads and replaces binary
brew upgrade purple        # Homebrew
cargo install purple-ssh   # Cargo

The TUI shows an update notification badge when a new version is available. The badge shows the first changelog bullet as a headline. Run purple update to see the full release notes.

Shell completions

Generate completions for your shell:

purple --completions bash > /etc/bash_completion.d/purple
purple --completions zsh > ~/.zfunc/_purple
purple --completions fish > ~/.config/fish/completions/purple.fish

Requirements

  • macOS or Linux (Windows via WSL)
  • A terminal emulator with ANSI escape code support (Ghostty, iTerm2, Terminal.app, Alacritty, kitty, WezTerm, Warp, Windows Terminal via WSL). purple is developed and tested primarily on Ghostty
  • System ssh binary (purple uses your installed OpenSSH, it does not bundle its own SSH implementation)

Clone this wiki locally