Automic VaultAutomic Vault

brew

Install zx with Homebrew, apt, Nix

Tool for writing better scripts. Version 8.8.5 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install zx

local Homebrew formula metadata

Linux

Debian aptverified · 92%
sudo apt install zx

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

Nixverified · 92%
nix profile install nixpkgs#zx

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

overview

Package summary

Tool for writing better scripts

Commands and aliases

  • zx

history

Project history and usage

zx is Google's JavaScript shell-scripting tool, created to make operational scripts feel like shell while giving authors modern JavaScript, promises, package imports, and safer command interpolation.

Project history

The google/zx repository began in May 2021, with Anton Medvedev listed as package author. Its core idea is the `$` tagged template: commands look shell-like, but arguments are escaped and execution is wrapped in a ProcessPromise API rather than raw child_process boilerplate.

The project evolved from a Node-oriented helper into a broader runtime tool. The README now documents Linux, macOS, and Windows support plus Node, Bun, Deno, and GraalVM compatibility; later documentation added TypeScript, markdown scripts, remote scripts, dependency auto-installation, and a lighter zx@lite entry point.

Adoption history

zx spread quickly because it hit a common pain point for JavaScript-heavy teams: build, release, migration, and glue scripts often outgrow bash, but plain Node scripts are verbose for process execution. Its GitHub repository has tens of thousands of stars, and the package became recognizable enough to be installed both from JavaScript tooling and system package managers.

The adoption pattern is strongest around project-local automation rather than end-user CLI apps. Teams use zx when they want scripts to live beside package.json, call existing Unix tools, await concurrent commands, and reuse npm libraries without switching to a task runner framework.

How it is used

A zx script is commonly run with `zx script.mjs`, `npx zx`, a shebang using `/usr/bin/env zx`, or a package.json script. The CLI can execute ordinary files, extensionless scripts, markdown code blocks, stdin, eval snippets, and remote URLs, while flags control shell choice, verbosity, local dependency preference, and on-demand package installation.

In practice zx is used for release scripts, deployment wrappers, repository maintenance, monorepo chores, code-generation glue, CI helpers, and one-off administrative scripts where the author wants shell commands plus JavaScript data handling.

Why package nerds care

zx is package-nerd significant because it blurred the line between a language package and a system scripting tool. It made `npm install zx` feel like installing a better shell harness, and it became a reference point for the idea that developer automation can be distributed as a normal package while still acting like a Unix command.

Timeline

  • 2021-05: google/zx public git history starts.
  • 2021-05: Early 1.x releases establish the `$` template shell API.
  • 2022-03: 6.0.0 release era adds broader CLI packaging and workflow polish.
  • 2024-04: 8.0.0 release era continues the modern runtime and TypeScript-focused evolution.
  • 2025-10: GitHub lists 8.8.5 as a recent release, with ongoing maintenance.

Related projects

  • Node.js child_process: the standard library surface zx wraps for scripts.
  • Bash and PowerShell: the shells zx invokes rather than fully replacing.
  • Bun and Deno: alternative JavaScript runtimes supported by current zx documentation.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 1 platform targets.
  • Installs with 1 runtime 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
zxcliglobal 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 version8.8.5
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://google.github.io/zx/

  • infoNo package-manager update timestamp was available.low confidence
  • infoRelease/tag comparison is only available for GitHub repositories.https://google.github.io/zx/none confidence

install metadata

Package metadata

Package keybrew:zx
Version8.8.5
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/zx
Homepagehttps://google.github.io/zx/
Repositoryhttps://github.com/google/zx
Upstream docshttps://google.github.io/zx
LicenseApache-2.0
Source archivehttps://registry.npmjs.org/zx/-/zx-8.8.5.tgz
Dependenciesnode
Bottleavailable (on all)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namezx
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • 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%

zx 7.1.1+~cs6.7.23-3

tool to launch modern Javascript scripts

https://github.com/google/zx#readme

sudo apt install zx
  • Section: javascript
  • Architecture: all
  • Source Package: node-zx
  • 11 dependencies
  • 8 provides
  • 1 optional deps
  • normalized package name match
  • Matched by: Zx
Debian stable package indexes · deb.debian.org · Debian stable package indexes: zx from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

zx

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

zx 7.1.1+~cs6.7.23-3

tool to launch modern Javascript scripts

https://github.com/google/zx#readme

sudo apt install zx
  • Section: universe/javascript
  • Architecture: all
  • Source Package: node-zx
  • 11 dependencies
  • 8 provides
  • 1 optional deps
  • normalized package name match
  • Matched by: Zx
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: zx from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz

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/zx.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