Automic VaultAutomic Vault

brew

Install yq with Homebrew, chocolatey, apt, dnf, MacPorts, Nix, pacman, scoop, winget, zypper

Process YAML, JSON, XML, CSV and properties documents from the CLI. Version 4.53.3 via Homebrew; verified 2026-06-07.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install yq

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install yq

MacPorts ports tree · textproc/yq/Portfile · source: api.github.com

Linux

Debian aptverified · 92%
sudo apt install yq

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

Fedora dnfverified · 92%
sudo dnf install yq

Fedora Rawhide package metadata · yq · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#yq

nixpkgs package indexes · yq · source: raw.githubusercontent.com

Arch Linux pacmanverified · 92%
sudo pacman -S yq

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

openSUSE zypperverified · 92%
sudo zypper install yq

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

overview

Package summary

Process YAML, JSON, XML, CSV and properties documents from the CLI

Commands and aliases

  • yq

history

Project history and usage

Mike Farah’s yq is a portable Go command-line processor for YAML and neighboring structured formats, best understood as the “jq-shaped” tool package users reach for when sed, awk, or ad hoc Python would be too brittle for configuration files.

Project history

The mikefarah/yq repository was created in 2015 and grew out of a very practical niche: manipulating YAML from shell scripts. Older v3 documentation described the goal as being the jq or sed of YAML files; the modern README broadens that into a lightweight processor for YAML, JSON, INI, XML, TOML, properties, CSV, and TSV while retaining jq-like expression syntax.

The v4 line became the modern identity of the project: a dependency-free Go binary, installable through package managers or containers, with a richer expression language for reading, updating, merging, converting, and editing files in place. That v3-to-v4 split is historically important because many examples, packages, and user questions distinguish Mike Farah’s yq from both older yq syntax and the separate kislyuk/yq wrapper around jq.

Adoption history

Adoption followed the rise of YAML-heavy infrastructure work: Kubernetes manifests, CI configuration, GitHub Actions workflows, Helm and Kustomize adjunct scripts, and release automation. The project documents Homebrew, snap, Docker/Podman, GitHub Action, and direct binary installation, and its repository badges track Docker pulls and GitHub release downloads.

The tool also became popular enough to create name-collision folklore: multiple unrelated tools are called yq, and users often have to verify whether their package manager installed Mike Farah’s Go implementation, kislyuk’s Python/jq wrapper, or an older major version.

How it is used

Typical usage is one-liner data surgery: read nested fields, update YAML in place, inject environment variables, merge files, convert YAML to JSON or XML to YAML, and compose expressions in CI scripts. Package users value that yq ships as a static-style Go binary, so it works well in minimal containers and build agents.

In package-nerd workflows, yq often sits next to jq: jq remains the canonical JSON processor, while yq handles the messy real-world files that package manifests, deployment descriptors, and CI systems store in YAML or adjacent formats.

Why package nerds care

yq is one of the canonical examples of a small CLI becoming infrastructure glue. It saves package maintainers from writing custom parsers for YAML edits, and its availability across Homebrew, Linux distributions, Windows package managers, containers, and GitHub Actions makes it a dependable assumption in cross-platform scripts.

Its significance is also social: when someone says “install yq,” package nerds immediately ask which yq and which major version. That ambiguity is part of the package’s history.

Timeline

  • 2015-09-26: The mikefarah/yq GitHub repository is created.
  • 2019-2020: v3 documentation describes yq as a lightweight portable YAML processor aiming to be the jq or sed of YAML files.
  • 2021: The v4 release line is active, with GitHub releases such as v4.9.0 and v4.10.0 published in May and July 2021.
  • 2020s: The project expands its documented format support beyond YAML and JSON to XML, INI, properties, CSV, TSV, TOML, and related structured data.

Related projects

  • Related projects include jq, kislyuk/yq, gojq, dasel, Kubernetes, Helm, Kustomize, GitHub Actions, Docker, and Podman.

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 6 platform targets.
  • Build metadata lists 2 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
yqcliglobal 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 version4.53.3
manager updated2026-06-07
local dataok
upstreamcurrent
latest detectedv4.53.3

https://github.com/mikefarah/yq

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:yq
Version4.53.3
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/yq
Homepagehttps://github.com/mikefarah/yq
Repositoryhttps://github.com/mikefarah/yq
Upstream docshttps://github.com/mikefarah/yq#readme
LicenseMIT
Source archivehttps://github.com/mikefarah/yq/archive/refs/tags/v4.53.3.tar.gz
Last updated2026-06-07T02:03:08Z
Pulseupdated
Build dependenciesgo, pandoc
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 Nameyq
Version Scheme0
Revision0
Head VersionHEAD
Conflicts With
  • python-yq
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%

yq 3.4.3-2

Command-line YAML processor - jq wrapper for YAML documents

https://github.com/kislyuk/yq

sudo apt install yq
  • Section: utils
  • Architecture: all
  • 6 dependencies
  • normalized package name match
  • Matched by: Yq
Debian stable package indexes · deb.debian.org · Debian stable package indexes: yq from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix95%

yq

nix profile install nixpkgs#yq
  • normalized package name match
  • Matched by: Yq
nixpkgs package indexes · raw.githubusercontent.com · nixpkgs package indexes: yq from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
Ubuntu apt95%

yq 3.1.0-3

Command-line YAML processor - jq wrapper for YAML documents

https://github.com/kislyuk/yq

sudo apt install yq
  • Section: universe/utils
  • Architecture: all
  • 6 dependencies
  • normalized package name match
  • Matched by: Yq
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: yq from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
dnf95%

yq 4.47.1-5.fc44

Yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor

https://github.com/mikefarah/yq

sudo dnf install yq
  • License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: yq
  • 3 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Yq
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: yq from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman95%

yq 3.4.3-3

Command-line YAML, XML, TOML processor - jq wrapper for YAML/XML/TOML documents

https://github.com/kislyuk/yq

sudo pacman -S yq
  • License: Apache-2.0
  • Architecture: any
  • 5 dependencies
  • normalized package name match
  • Matched by: Yq
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: yq from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

yq 4.53.2-2.1

A portable command-line YAML processor

https://github.com/mikefarah/yq

sudo zypper install yq
  • License: MIT
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: yq
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Yq
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: yq from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

yq-bash-completion 4.53.2-2.1

Bash Completion for yq

https://github.com/mikefarah/yq

sudo zypper install yq-bash-completion
  • License: MIT
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: yq
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Yq
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: yq-bash-completion from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

yq-fish-completion 4.53.2-2.1

Fish Completion for yq

https://github.com/mikefarah/yq

sudo zypper install yq-fish-completion
  • License: MIT
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: yq
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Yq
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: yq-fish-completion from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

yq-zsh-completion 4.53.2-2.1

Zsh Completion for yq

https://github.com/mikefarah/yq

sudo zypper install yq-zsh-completion
  • License: MIT
  • Category: Unspecified
  • Architecture: noarch
  • Source Package: yq
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Yq
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: yq-zsh-completion from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
MacPorts95%

yq

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

yq

choco install yq
  • normalized package name match
  • Matched by: Yq
Chocolatey community package catalog · community.chocolatey.org · Chocolatey community package catalog: yq from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','wiztree'
Scoop95%

main/yq

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

MikeFarah.yq

winget install --id MikeFarah.yq -e
  • normalized package name match
  • Matched by: Yq
Windows Package Manager source index · cdn.winget.microsoft.com · Windows Package Manager source index: MikeFarah.yq 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/yq.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