Jq

Category: Code

Status: Registered and callable in the CyberChef 11.3.0 compatibility inventory.

Input / output: JSON → string

Background: https://github.com/jqlang/jq

What it does

jq is a lightweight and flexible command-line JSON processor.

Note

Status here means the operation name is implemented and callable. It does not by itself promise byte-for-byte parity for every upstream option. See Compatibility and current status for the verified scope and known boundaries.

Warning

The pure-Python query engine supports a documented jq subset.

Arguments and options

Arguments are positional. Keep their order when using bake() or Pipeline.then().

Index

Name

UI type

PyChef default

Accepted values / format

0

Query

string

''

''

1

Raw

boolean

False

True or False

Recipe template

Important

This is a call template built from the documented defaults. Replace placeholder values such as empty keys, paths, patterns, or lookup data before running it.

from pychef import bake

input_value = "example"
args = ['', False]
result = bake(input_value, [{"op": 'Jq', "args": args}])
print(result)

Pipeline example

from pychef import Pipeline

args = ['', False]
transform = Pipeline().then('Jq', *args)
result = transform("example")

Direct call

pychef.ops.run_operation runs any registered operation as a plain function, under the active ExecutionPolicy (safe defaults, no network):

from pychef.ops import run_operation

args = ['', False]
result = run_operation('Jq', "example", args=args)

Common operations also have typed helpers in Direct operations.

Low-level operation module

Warning

The module below is an internal implementation detail. It applies no execution policy, resource limits, or error sanitization; prefer bake(), Pipeline, or pychef.ops for application code.

The registered entry point lives in pychef.operations.by_operation.jq. Direct calls receive the input value and a positional argument tuple:

from pychef.operations.by_operation.jq import run

result = run("example", tuple(['', False]))
pychef.operations.by_operation.jq.run(value, args)

Run this operation using its shared internal implementation.

Parameters:
  • value (str | bytes)

  • args (Sequence[Any])

Return type:

str | bytes