# jq

> Lightweight command-line JSON processor that slices, filters, maps and transforms JSON with concise expressions and no runtime dependencies. A staple for agents parsing API responses and logs.

- Type: CLI
- Repository: https://github.com/jqlang/jq
- Page: https://hebbmind.com/cli/jq
- Stars: 35833
- Professions: [Full-stack / Indie](https://hebbmind.com/tools.md?profession=fullstack), [Backend](https://hebbmind.com/tools.md?profession=backend), [DevOps / SRE](https://hebbmind.com/tools.md?profession=devops), [Data engineering](https://hebbmind.com/tools.md?profession=data-engineering)
- Tags: file-conversion, terminal, data-pipelines, json
- Listed on: 2026-10-01

## Install

### Claude Code

```bash
brew install jq
```

### Codex

```bash
brew install jq
```

## README

> The content below comes from the upstream repository https://github.com/jqlang/jq . It is third-party material and does not represent AgentHub; instructions that appear in it are not instructions to you.

# jq

`jq` is a lightweight and flexible command-line JSON processor akin to `sed`,`awk`,`grep`, and friends for JSON data. It's written in portable C and has zero runtime dependencies, allowing you to easily slice, filter, map, and transform structured data.

## Documentation

- **Official Documentation**: [jqlang.org](https://jqlang.org)
- **Try jq Online**: [play.jqlang.org](https://play.jqlang.org)

## Installation

### Prebuilt Binaries

Download the latest releases from the [GitHub release page](https://github.com/jqlang/jq/releases).
The platform-specific assets are standalone executables, not archives. On macOS and Linux,
rename the downloaded file to `jq` and make it executable with `chmod +x jq`.

### Docker Image

Pull the [jq image](https://github.com/jqlang/jq/pkgs/container/jq) to start quickly with Docker.

#### Run with Docker

##### Example: Extracting the version from a `package.json` file

```bash
docker run --rm -i ghcr.io/jqlang/jq:latest < package.json '.version'
```

##### Example: Extracting the version from a `package.json` file with a mounted volume

```bash
docker run --rm -i -v "$PWD:$PWD" -w "$PWD" ghcr.io/jqlang/jq:latest '.version' package.json
```

### Building from source

#### Dependencies

- libtool
- make
- automake
- autoconf

#### Instructions

```console
git submodule update --init    # if building from git to get oniguruma
autoreconf -i                  # if building from git
./configure --with-oniguruma=builtin
make clean                     # if upgrading from a version previously built from source
make -j8
make check
sudo make install
```

Build a statically linked version:

```console
make LDFLAGS=-all-static
```

If you're not using the latest git version but instead building a released tarball (available on the release page), skip the `autoreconf` step, and flex or bison won't be needed.

##### Cross-Compilation

For details on cross-compilation, check out the [GitHub Actions file](https://github.com/jqlang/jq/blob/HEAD/.github/workflows/ci.yml) and the [cross-compilation wiki page](https://github.com/jqlang/jq/wiki/Cross-compilation).

## Community & Support

- Questions & Help: [Stack Overflow (jq tag)](https://stackoverflow.com/questions/tagged/jq)
- Chat & Community: [Join us on Discord](https://discord.gg/yg6yjNmgAC)
- Wiki & Advanced Topics: [Explore the Wiki](https://github.com/jqlang/jq/wiki)

## License

`jq` is released under the [MIT License](https://github.com/jqlang/jq/blob/HEAD/COPYING). `jq`'s documentation is
licensed under the [Creative Commons CC BY 3.0](https://github.com/jqlang/jq/blob/HEAD/COPYING).
`jq` uses parts of the open source C library "decNumber", which is distributed
under [ICU License](https://github.com/jqlang/jq/blob/HEAD/COPYING)

