jq

Command-line JSON processor with its own language for filtering and transforming data.

HN commenters use jq to parse JSON from APIs in terminal pipelines and shell scripts,1234 and increasingly tell AI coding agents to use it for structured data.567 The caveats are few: its syntax can send users back to the manual,89 and one commenter prefers FracturedJson for pretty printing.10
The HN verdict, written from 10 cited comments
7recommend
0warn against
Dec 6, 2025first mention
Oct 5, 2026latest mention
Nov 25 – Oct 26
Used forfor API debuggingfor AI coding agentsfor shell scriptingfor Jupyter notebooks in Gitjson processingparsing json in agent sessions

Why people recommend it

Agent tooling · 3

Commenters tell AI agents to use jq so they can work with JSON and large structured data without loading it whole.

“5-6 tokens telling it to use `jq` in AGENTS.md was the right call for us.”

wencMar 1, 2026recommends

“There are two CLIs are particularly powerful for working with large structured data: `jq` and `duckdb` cli.”

Show 1 more

“jq is what, 15 years old? I see LLMs using it all the time.”

Shell scripting glue · 3

A standard small tool next to sed, awk and curl, and it makes Bash scripts less painful.

“For small stuff I use bash / sed / awk / jq / yq / curl etc.”

pxcDec 13, 2025recommends

“it becomes a lot less painful when I can just pull in `jq`”

Show 1 more

“Thanks to jq-lang and the jq-wrapper tomlq”

API debugging · 2

Piping curl into jq inspects API responses in seconds without opening Postman.

“5-6 tokens telling it to use `jq` in AGENTS.md was the right call for us.”

Expressive language · 2

Praised as an extremely good language for its task, with an interesting VM underneath.

“I love jq, though. It provides an extremely good language for its task”

“it's kind of mind-blowing how it works under the hood”

Git filters · 1

Works well as a Git clean filter that strips output from Jupyter notebooks.

“I use a long "jq" command [0] as a Git clean filter for my Jupyter notebooks, and it works really well.”

Caveats and dissent

Syntax learning curve · 2

Writing non-trivial programs often requires checking the manual, and the syntax is described as funky.

“I love jq, though. It provides an extremely good language for its task”

“it's kind of mind-blowing how it works under the hood”

Pretty printing · 1

One commenter prefers FracturedJson's pretty-printed output to jq's.

“I much prefer fracjson[0] pretty printing to jq”

Often compared with

Who recommends it in their own words

All comments 12

“5-6 tokens telling it to use `jq` in AGENTS.md was the right call for us.”

“I much prefer fracjson[0] pretty printing to jq”

“For small stuff I use bash / sed / awk / jq / yq / curl etc.”

“I love jq, though. It provides an extremely good language for its task”

“jq is what, 15 years old? I see LLMs using it all the time.”

“Thanks to jq-lang and the jq-wrapper tomlq”

“using jq, ripgrep, and the messages[2] flagged in the stop guard script”

“it's kind of mind-blowing how it works under the hood”

wencMar 1, 2026recommends

“There are two CLIs are particularly powerful for working with large structured data: `jq` and `duckdb` cli.”

pxcDec 13, 2025recommends

“it becomes a lot less painful when I can just pull in `jq`”

“I use a long "jq" command [0] as a Git clean filter for my Jupyter notebooks, and it works really well.”

Threads where it came up

Data: jq.json. Quotes are verbatim; the verdict and theme labels are written by a model from these comments, and every clause links to its sources.

Keyboard shortcuts
j / kNext / previous item
o or EnterOpen selected item
/Search
g hHome
g tTop
g rRising
g cCategories
tToggle dark mode
?This help