← 返回
未分类 中文

Clean JSON Toolkit

Local JSON / JSONL inspection and manipulation toolkit. Inspect deeply nested structures (path tree, types, sample values per path), query with a jq-style pa...
本地 JSON/JSONL 检查与操作工具。可深入检查嵌套结构(路径树、类型、每路径示例值),支持 jq 风格查询。
gopendrasharma89-tech
未分类 clawhub v0.2.0 2 版本 100000 Key: 无需
★ 1
Stars
📥 281
下载
💾 1
安装
2
版本
#agent#config#flatten#inspect#jq#json#jsonl#latest#merge#nested#patch#query#rfc6902#schema#stdlib#validate

概述

clean-json-toolkit

v0.2.0

Fourth member of the clean-* family. csv handles structured tabular data, text handles unstructured strings, log handles timestamped logs, and json handles nested data — API responses, config files, JSONL event streams.

Pure Python 3 standard library. No jq, no jsonschema, no pip installs.

Scripts

  • scripts/inspect.py — profile a .json or .jsonl file: tree of every distinct path with types, counts, and N sample values per path.
  • scripts/query.py — jq-style path queries. .key.nested, .key[0], .[] iterate, .key.[].field map. Output modes: --json / --jsonl / --lines / --raw. JSONL inputs implicitly iterate at the top level.
  • scripts/flatten.py — flatten nested JSON into dot-notation keys. Reversible with --unflatten. Roundtrip-safe.
  • scripts/validate.py — validate against a small schema (required, type, min/max, min_length/max_length, enum, regex, item_type, allow_extra).
  • scripts/merge.py (NEW in v0.2.0) — merge multiple JSON files into one. Five strategies: deep (default; recursive merge, arrays replace), shallow (top-level only), array-concat (deep + arrays concatenated), array-uniq (deep + arrays deduped), array-extend (require all inputs to be arrays, then concatenate). The canonical agent need: cascade defaults + user + env-specific configs.
  • scripts/patch.py (NEW in v0.2.0) — RFC 6902 JSON Patch. Apply add / remove / replace / move / copy / test operations. Build patches inline with --op --path --value or load from --patch FILE. --strict aborts at first failure, --dry-run writes to stdout instead. Supports "/items/-" append-to-array syntax.
  • scripts/check_deps.sh — verify python3.

Quick start

# Inspect
python3 scripts/inspect.py response.json
python3 scripts/inspect.py events.jsonl --max-samples 5

# Query
python3 scripts/query.py data.json '.meta'
python3 scripts/query.py data.json '.users.[].email' --raw
python3 scripts/query.py events.jsonl '.amount' --lines

# Flatten + unflatten roundtrip
python3 scripts/flatten.py config.json flat.json
python3 scripts/flatten.py flat.json nested.json --unflatten

# Validate
python3 scripts/validate.py users.jsonl --schema schema.json

# Merge (NEW v0.2.0) - cascade configs
python3 scripts/merge.py final.json defaults.json user.json env.json
python3 scripts/merge.py all.json events_*.json --strategy array-extend
python3 scripts/merge.py combined.json a.json b.json --strategy array-concat

# Patch (NEW v0.2.0) - RFC 6902 surgical edits
python3 scripts/patch.py doc.json patched.json --op add --path /email --value '"alice@example.com"'
python3 scripts/patch.py config.json updated.json --patch ops.json --strict
python3 scripts/patch.py doc.json /dev/null --op replace --path /age --value 42 --dry-run

Exit codes

CodeMeaning
------
0success / one or more results
1zero results / validation failed / empty input
2bad arguments / unsafe path / missing file / invalid JSON / bad schema

Safety

  • Pure Python 3 stdlib. No eval, no subprocess, no remote calls.
  • All paths validated against safe-path policy (same as the other clean-* toolkits).
  • Hand-rolled query path tokenizer.

Pairs well with

License

MIT

版本历史

共 2 个版本

  • v0.2.0 当前
    2026-06-06 06:58 安全 安全
  • v0.1.0
    2026-05-29 14:05

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

Clean CSV Toolkit

gopendrasharma89-tech
本地 CSV/TSV/JSONL 检查与清理工具箱,提供统计、验证、去重、对比、预览(头部/尾部/随机抽样)以及安全谓词过滤。
★ 1 📥 579

Openclaw Video Editor

gopendrasharma89-tech
Pro-Studio v4.0.0,AI驱动的背景去除、智能字幕定位和电影级LUT预设,打造高端视频内容的终极制作套件。
★ 1 📥 1,040

Clean Text Toolkit

gopendrasharma89-tech
本地文本清理和检查工具包。提取结构化信息(URL、邮箱、电话、IP、日期、话题标签、金额),并对个人身份信息(邮箱/电话/信用卡…)进行脱敏。
★ 1 📥 554