← Back to list

json-tools
by ivanvza
A DSPy integration for the Agent Skills specification, enabling ReAct agents to dynamically discover and use modular, sandboxed skills
⭐ 6🍴 0📅 Jan 24, 2026
SKILL.md
name: json-tools description: JSON processing toolkit for validating, formatting, querying, and comparing JSON data. Use when working with JSON files, API responses, configuration files, or any structured JSON data that needs parsing, validation, transformation, or comparison. license: MIT metadata: author: dspy-skills version: "1.0"
JSON Tools
A toolkit for working with JSON data using Python standard library only.
When to Use This Skill
Activate this skill when the user needs to:
- Validate JSON syntax
- Format/pretty-print JSON
- Query JSON with path expressions
- Compare two JSON files
- Transform JSON data
Available Scripts
Always run scripts with --help first to see all available options.
| Script | Purpose |
|---|---|
validate_json.py | Check if JSON is valid |
format_json.py | Pretty-print or minify JSON |
query_json.py | Extract data using path expressions |
diff_json.py | Compare two JSON files |
Decision Tree
Task → What do you need?
│
├─ Check if JSON is valid?
│ └─ Use: validate_json.py <file>
│
├─ Format/beautify JSON?
│ └─ Use: format_json.py <file>
│
├─ Extract specific data?
│ └─ Use: query_json.py <file> <path>
│
└─ Compare two JSON files?
└─ Use: diff_json.py <file1> <file2>
Quick Examples
Validate JSON:
python scripts/validate_json.py data.json
echo '{"key": "value"}' | python scripts/validate_json.py -
Format JSON:
python scripts/format_json.py data.json
python scripts/format_json.py data.json --indent 4
python scripts/format_json.py data.json --minify
Query JSON:
python scripts/query_json.py data.json "users"
python scripts/query_json.py data.json "users.0.name"
python scripts/query_json.py data.json "config.database.host"
Compare JSON:
python scripts/diff_json.py old.json new.json
python scripts/diff_json.py config1.json config2.json --keys-only
Path Expression Syntax
The query_json.py script uses dot-notation paths:
| Path | Description |
|---|---|
key | Access object key |
0, 1, 2 | Access array index |
key.subkey | Nested access |
items.0.name | Mixed access |
. or empty | Root element |
Examples
Given JSON:
{
"users": [
{"name": "Alice", "age": 30},
{"name": "Bob", "age": 25}
],
"config": {
"debug": true
}
}
| Path | Result |
|---|---|
users | The users array |
users.0 | First user object |
users.0.name | "Alice" |
users.1.age | 25 |
config.debug | true |
Input Sources
All scripts accept input from:
- File:
script.py data.json - Stdin:
echo '{}' | script.py - - String:
script.py --string '{"key": "value"}'
Common Use Cases
- Validate API response:
validate_json.py response.json - Pretty-print minified JSON:
format_json.py api_response.json - Extract config value:
query_json.py config.json "database.host" - Find config differences:
diff_json.py prod.json staging.json
Notes
- All scripts use Python standard library only (no external dependencies)
- Unicode is fully supported
- Large files are handled efficiently
- Exit codes: 0 = success, 1 = error/invalid, 2 = differences found (diff)
Score
Total Score
60/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
✓説明文
100文字以上の説明がある
+10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon