Automic VaultAutomic Vault

brew

Install xh with Homebrew, apk, apt, MacPorts, Nix, pacman, scoop, winget, zypper

Friendly and fast tool for sending HTTP requests. Version 0.26.1 via Homebrew; verified 2026-06-20.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install xh

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install xh

MacPorts ports tree · net/xh/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add xh

Alpine Linux edge package indexes · xh · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install xh

Debian stable package indexes · xh · source: deb.debian.org

Nixverified · 92%
nix profile install nixpkgs#xh

nixpkgs package indexes · pkgs/by-name/xh/xh/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S xh

Arch Linux sync databases · xh · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install xh

openSUSE Tumbleweed package metadata · xh · source: download.opensuse.org

Windows

Scoopverified · 92%
scoop install main/xh

Scoop official bucket manifest trees · bucket/xh.json · source: api.github.com

Windows Package Managerverified · 92%
winget install --id ducaale.xh -e

Windows Package Manager source index · ducaale.xh · source: cdn.winget.microsoft.com

overview

Package summary

Friendly and fast tool for sending HTTP requests

Commands and aliases

  • xh
  • xhs

history

Project history and usage

xh is a Rust command-line HTTP client that deliberately follows HTTPie's human-friendly request syntax while focusing on speed, portability, and a single-binary feel. It ships the `xh` command for ordinary requests and commonly also `xhs` for HTTPS-first invocation.

Project history

The GitHub repository was created on 2020-09-10. From its README, the central project premise has been stable: reimplement as much as possible of HTTPie's design, but with improved performance. That places xh in a specific generation of Rust CLI rewrites that kept beloved command-line UX while replacing heavier runtimes with compiled binaries.

The tool grew into a broad HTTP client rather than a minimal curl wrapper. Its documented options cover JSON/form/multipart bodies, pretty output, auth modes, sessions, redirects, downloads, proxies, TLS settings, HTTP/2 and HTTP/3 prior-knowledge modes, Unix sockets, offline request construction, curl command generation, completions, and manpage generation.

Adoption history

xh's adoption story is unusually package-manager oriented. The README lists installation through Cargo, Homebrew, MacPorts, Nixpkgs, Alpine, Arch, Debian/Ubuntu, Fedora COPR, FreeBSD, NetBSD, Termux, Scoop, Chocolatey, Winget, and other managers, plus prebuilt binaries for Linux, macOS, and Windows.

By July 2026 the GitHub repository had about 7.9k stars, showing that xh had become one of the recognizable modern alternatives in the terminal HTTP-client space. Its strongest adoption path is among developers who like HTTPie's request syntax but want Rust startup speed and simpler binary distribution.

How it is used

Typical use mirrors HTTPie: `xh GET example.com`, `xh POST :3000/users name=Ana`, headers with `Header:Value`, query parameters with `==`, JSON literals with `:=`, file upload items with `@`, and localhost shorthand such as `:8000`. The README also documents stdin/file request bodies, nested JSON paths, sessions, downloads, redirects, and output selection.

The package is useful in API testing, shell scripts, local service debugging, documentation snippets, and CI smoke checks where curl is too terse and a full API client is too heavy. The `xhs` alias/symlink convention gives a small packaging detail that matters: package installs can expose both HTTP-default and HTTPS-default entry points.

Why package nerds care

xh is a clean example of the modern Rust CLI packaging pattern: a familiar UX borrowed from an established tool, fast native binaries, broad package-manager availability, and generated shell/manpage assets. It competes not by inventing a new HTTP grammar, but by making an existing ergonomic grammar cheap to install and fast to run.

For package nerds, xh also shows how compatibility can be a product feature. Its value comes from preserving enough HTTPie muscle memory that package users can swap tools without relearning request-item syntax.

Timeline

  • 2020-09-10: the ducaale/xh GitHub repository is created.
  • Early project framing: the README describes xh as a friendly and fast tool that reimplements HTTPie's design with better performance.
  • By the mid-2020s: the README lists package-manager installation paths across Linux, macOS, Windows, BSD, Android, Cargo, and Nix-style ecosystems.
  • By July 2026: GitHub repository metadata shows roughly 7.9k stars and continued activity.

Related projects

  • HTTPie is the direct design ancestor whose request-item syntax and human-friendly CLI style xh follows.
  • curl is the lower-level incumbent HTTP CLI; xh even includes options to print curl translations.
  • Rust and Cargo matter to xh's distribution story because the tool is implemented as a compiled Rust CLI and can be installed with `cargo install`.

security posture

Risk level: blue

broad file, network, media, or database tool signal.

Risk classifier

blue risk · medium confidence · tool

Why

  • broad file, network, media, or database tool signal

Signals

  • text:http

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

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

executables

Installed executables

CommandKindExposureNote
xhcliglobal executable
xhscliglobal executable

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-07-08
manager version0.26.1
manager updated2026-06-20
local dataok
upstreamcurrent
latest detectedv0.26.1

https://github.com/ducaale/xh

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:xh
Version0.26.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/xh
Homepagehttps://github.com/ducaale/xh
Repositoryhttps://github.com/ducaale/xh
Upstream docshttps://github.com/ducaale/xh#readme
LicenseMIT
Source archivehttps://github.com/ducaale/xh/archive/refs/tags/v0.26.1.tar.gz
Last updated2026-06-20T00:41:08Z
Pulseupdated
Build dependenciesrust
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namexh
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

xh 0.24.0-1+b1

Friendly and fast tool for sending HTTP requests

https://github.com/ducaale/xh

sudo apt install xh
  • Section: utils
  • Architecture: amd64
  • Source Package: rust-xh
  • 3 dependencies
  • normalized package name match
  • Matched by: Xh
Debian stable package indexes · deb.debian.org · Debian stable package indexes: xh from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

xh

nix profile install nixpkgs#xh
  • normalized package name match
  • Matched by: Xh
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/xh/xh/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

xh 0.24.0-r0

Yet another HTTPie clone

https://github.com/ducaale/xh

sudo apk add xh
  • License: MIT
  • Architecture: x86_64
  • Source Package: xh
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Xh
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: xh from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

xh-bash-completion 0.24.0-r0

Bash completions for xh

https://github.com/ducaale/xh

sudo apk add xh-bash-completion
  • License: MIT
  • Architecture: x86_64
  • Source Package: xh
  • normalized package name match
  • Matched by: Xh
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: xh-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

xh-doc 0.24.0-r0

Yet another HTTPie clone (documentation)

https://github.com/ducaale/xh

sudo apk add xh-doc
  • License: MIT
  • Architecture: x86_64
  • Source Package: xh
  • normalized package name match
  • Matched by: Xh
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: xh-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

xh-fish-completion 0.24.0-r0

Fish completions for xh

https://github.com/ducaale/xh

sudo apk add xh-fish-completion
  • License: MIT
  • Architecture: x86_64
  • Source Package: xh
  • normalized package name match
  • Matched by: Xh
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: xh-fish-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

xh-zsh-completion 0.24.0-r0

Zsh completions for xh

https://github.com/ducaale/xh

sudo apk add xh-zsh-completion
  • License: MIT
  • Architecture: x86_64
  • Source Package: xh
  • normalized package name match
  • Matched by: Xh
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: xh-zsh-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
pacman95%

xh 0.25.3-1

Friendly and fast tool for sending HTTP requests

https://github.com/ducaale/xh

sudo pacman -S xh
  • License: MIT
  • Architecture: x86_64
  • 3 dependencies
  • normalized package name match
  • Matched by: Xh
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: xh from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

xh 0.25.3-1.3

Tool for sending HTTP requests

https://github.com/ducaale/xh

sudo zypper install xh
  • License: MIT
  • Category: Development/Tools/Other
  • Architecture: x86_64
  • Source Package: xh
  • 4 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Xh
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: xh from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

xh

sudo port install xh
  • normalized package name match
  • Matched by: Xh
MacPorts ports tree · api.github.com · MacPorts ports tree: net/xh/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Scoop95%

main/xh

scoop install main/xh
  • normalized package name match
  • Matched by: Xh
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/xh.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
winget95%

ducaale.xh

winget install --id ducaale.xh -e
  • normalized package name match
  • Matched by: Xh
Windows Package Manager source index · cdn.winget.microsoft.com · Windows Package Manager source index: ducaale.xh from https://cdn.winget.microsoft.com/cache/source.msix

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.

Combined YAML source

View the package source record on GitHub.

combined/xh.yml

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment