Skip to content

erickochen/purple

Repository files navigation

purple

A terminal cockpit for your servers. Search, connect, transfer files, manage containers and run commands across hosts. All keyboard-driven. Free and open source.

crates.io downloads mit built with ratatui Website

purple terminal SSH client demo

Install

curl -fsSL getpurple.sh | sh
brew, cargo or from source
brew install erickochen/purple/purple
cargo install purple-ssh
git clone https://github.com/erickochen/purple.git
cd purple && cargo build --release

Run purple. Press ? on any screen for help. That's it.

Why I built this

My SSH config was fine. Proper aliases, ProxyJump chains, organized by provider. Not the problem.

The problem was everything around it. Need to check a container? ssh host docker ps. Copy a file? scp with the right flags. Run the same command on ten hosts? Write a loop or boot up Ansible for a one-liner. Spin up a VM on Hetzner? Open the console, grab the IP, edit config, save. Someone asks which box runs what? Good luck.

I wanted one place for all of that. So I built it.

What you get

detail panel

🔍 Everything at a glance. Connection info, jump route, activity sparkline, tags, tunnels, snippets, containers and server metadata. Health dots show which hosts are up. Group by provider, tag or flat.



Instant fuzzy search. Names, IPs, tags, users. Frecency sorting puts your most-used hosts on top. Works the same with 5 hosts or 500. Scoped search within groups.

fuzzy search

☁️ 16 cloud providers. AWS, DigitalOcean, Hetzner, GCP, Azure, Proxmox VE, Vultr, Linode, UpCloud, Scaleway, Tailscale, Oracle Cloud, OVHcloud, Leaseweb, i3D.net and TransIP. VMs appear, IPs update, stale hosts dim. Region, instance type, OS and status synced as metadata.

cloud providers

🐳 Containers over SSH. Docker and Podman. Start, stop, restart. No agent on the remote, no extra ports. Just SSH.

containers

And more. Visual file transfer with split-pane explorer. Multi-host command execution with snippets. Automatic password retrieval from OS Keychain, 1Password, Bitwarden, pass and HashiCorp Vault. MCP server for AI agents like Claude Code and Cursor. See the wiki for details.

How it works

purple reads ~/.ssh/config directly. No database, no daemon, no account. Comments, indentation, Include files, unknown directives. All preserved.

Written in Rust. Single binary. 5000+ tests. MIT license.

Links

📖 Wiki · ☁️ Cloud Providers · 🤖 MCP Server · ❓ FAQ · 🔒 Security · 🧠 llms.txt

Feedback

Bug or feature request? Open an issue.

About

Terminal cockpit for your servers. Search, connect, transfer files, manage containers and run commands across hosts. Syncs from 16 cloud providers. Edits ~/.ssh/config directly.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors

Languages