用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/joshka0/foxctl --skill foxctl-jq命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Protocol for participant agents in transport-first rooms: join, check membership, handle inbox/tasks, reply durably, and escalate.
Operate inside an existing foxctl room: orient from status or inbox, manage tasks correctly, escalate, and close with durable updates.
Run durable multi-agent rooms with transport-first delivery, participant state, room tasks, and optional tmux or zellij viewers.
基于 SOC 职业分类
正在显示 SKILL.md
| name | foxctl JQ |
| description | Process JSON and YAML data using jq query language. Filter, transform, and extract data with powerful expressions. |
Process JSON and YAML using the jq query language.
foxctl run data/jq --input '{
"query": ".data.items[] | select(.active)",
"input": "{\"data\": {\"items\": [{\"name\": \"a\", \"active\": true}]}}"
}'
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | string | Yes | - | JQ query expression |
input | string | Yes | - | JSON/YAML input data |
raw_output | boolean | No | false | Output raw strings, not JSON |
compact | boolean | No | false | Compact output |
slurp | boolean | No | false | Read entire input into array |
sort_keys | boolean | No | false | Sort object keys |
yaml_input | boolean | No | false | Parse input as YAML |
foxctl run data/jq --input '{
"query": ".name, .email",
"input": "{\"name\": \"John\", \"email\": \"john@example.com\", \"age\": 30}"
}'
foxctl run data/jq --input '{
"query": ".users[] | select(.role == \"admin\")",
"input": "{\"users\": [{\"name\": \"Alice\", \"role\": \"admin\"}, {\"name\": \"Bob\", \"role\": \"user\"}]}"
}'
foxctl run data/jq --input '{
"query": ".items | map({id: .id, title: .name})",
"input": "{\"items\": [{\"id\": 1, \"name\": \"Item 1\"}, {\"id\": 2, \"name\": \"Item 2\"}]}"
}'
foxctl run data/jq --input '{
"query": "[.transactions[].amount] | add",
"input": "{\"transactions\": [{\"amount\": 100}, {\"amount\": 250}, {\"amount\": 50}]}"
}'
Get unquoted string output:
foxctl run data/jq --input '{
"query": ".message",
"input": "{\"message\": \"Hello, World!\"}",
"raw_output": true
}'
Single-line output:
foxctl run data/jq --input '{
"query": ".",
"input": "{\"a\": 1, \"b\": 2}",
"compact": true
}'
Consistent key ordering:
foxctl run data/jq --input '{
"query": ".",
"input": "{\"z\": 1, \"a\": 2}",
"sort_keys": true
}'
Parse YAML data:
foxctl run data/jq --input '{
"query": ".services | keys",
"input": "services:\n web:\n port: 8080\n api:\n port: 3000",
"yaml_input": true
}'
foxctl run data/jq --input '{
"query": ".data.results[] | select(.score > 0.8) | {name, score}",
"input": "{\"data\": {\"results\": [{\"name\": \"a\", \"score\": 0.9}, {\"name\": \"b\", \"score\": 0.5}]}}"
}'
foxctl run data/jq --input '{
"query": "group_by(.category) | map({category: .[0].category, count: length})",
"input": "[{\"category\": \"A\"}, {\"category\": \"B\"}, {\"category\": \"A\"}]"
}'
foxctl run data/jq --input '{
"query": ".. | .id? // empty",
"input": "{\"items\": [{\"id\": 1, \"children\": [{\"id\": 2}]}]}"
}'