Use when creating a new builtin skill for Crush, editing an existing builtin skill (internal/skills/builtin/), or when the user needs to understand how the embedded skill system works.
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user needs to query, filter, reshape, extract, create, or construct JSON data — including API responses, config files, log output, or any structured data — or when helping the user write or debug JSON transformations.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
Crush ships a built-in jq command (via github.com/itchyny/gojq) available
in the bash tool. No external binary is required.
| Flag | Description |
|---|---|
-r, --raw-output | Output strings without quotes |
-j, --join-output | Like -r but no trailing newline |
-c, --compact-output | One-line JSON output |
-s, --slurp | Read all inputs into an array |
-n, --null-input | Use null as input (ignore stdin) |
-e, --exit-status | Exit 1 if last output is false or null |
-R, --raw-input | Read each line as a string, not JSON |
--arg name value | Bind $name to a string value |
--argjson name value | Bind $name to a parsed JSON value |
File arguments after the filter are also supported: jq '.foo' file.json.
The built-in uses gojq, which is a pure-Go jq implementation. Key differences:
keys_unsorted
and -S are unavailable."abcde"[2] returns "c".--ascii-output, --seq, --stream,
--stream-errors, -f/--from-file, --slurpfile, --rawfile,
--args, --jsonargs, input_line_number, $__loc__, some regex
features (backreferences, look-around).--yaml-input/--yaml-output but the
built-in does not currently expose these flags.Extract a field:
echo '{"name":"crush"}' | jq '.name'
Filter an array:
echo '[1,2,3,4,5]' | jq '[.[] | select(. > 3)]'
Reshape objects:
echo '{"first":"Ada","last":"Lovelace"}' | jq '{full: (.first + " " + .last)}'
Use variables:
echo '{}' | jq --arg host localhost --argjson port 8080 '{host: $host, port: $port}'
Slurp multiple JSON values:
echo '{"a":1}{"b":2}' | jq -s '.'
Compact output for piping:
echo '{"a":1}' | jq -c '.a += 1'
Raw string output:
echo '["one","two","three"]' | jq -r '.[]'
Process a file:
jq '.dependencies | keys' package.json
Null input for constructing JSON:
jq -n --arg msg hello '{"message": $msg}'
jq -r '.url' data.json | xargs curl| inside the expression, not shell pipes.try to suppress errors on missing keys: jq 'try .foo.bar'// "default" for fallback values: jq '.name // "unknown"'@csv, @tsv, @base64, @html, @uri for format strings.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Use when creating a new builtin skill for Crush, editing an existing builtin skill (internal/skills/builtin/), or when the user needs to understand how the embedded skill system works.
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user needs help configuring Crush — writing crushrc (the Bash config format) or crush.json, setting up providers, models, LSPs, MCP servers, hooks, skills, permissions, or changing Crush behavior.
日本語の概要は準備中です。原文の説明を表示しています。
Use when the user wants to add, write, debug, or configure a Crush hook — gating or blocking tool calls, approving or rewriting tool input before execution, injecting context into tool results, or troubleshooting hook behavior in crush.json.
日本語の概要は準備中です。原文の説明を表示しています。
Use when creating a new shell builtin command for Crush (internal/shell/), editing an existing one, or when the user needs to understand how commands are intercepted in Crush's embedded shell.
日本語の概要は準備中です。原文の説明を表示しています。