senclaw/json
app Bộ công cụ JSON offline: format/validate/viewer/diff, chuyển đổi JSON ↔ CSV, XML, YAML, TSV, TOON, TSON, formatter cho XML/Java/Python/JS và encoder base64/URL/MessagePack.
Install
senclaw app install senclaw/json
Verifies sha512 and SenClaw’s signature before writing to disk.
Documentation
JSON Tools — SenClaw Space App
Bộ công cụ JSON chạy hoàn toàn cục bộ (không CDN, không gọi mạng): format / validate / viewer / diff, chuyển đổi giữa JSON ↔ CSV · XML · YAML · TSV · TOON · TSON, formatter cho XML/Java/Python/JS, và encoder base64 · URL · MessagePack.
- Port: 4540
- MCP:
json-mcptại/api/mcp/sse(7 tool) - Skill:
json-toolbox· Persona:json-wrangler
Giao diện React port từ dự án json-tool (Vite + React 19 + ace + Bootstrap 3). Khác biệt so với bản gốc:
- Bỏ toàn bộ script CDN (jQuery, bootstrap.js, Font Awesome). Dropdown/navbar chạy bằng state React trong [
Nav.tsx](web/src/components/Nav.tsx); các iconfa-*được thay bằng ký tự Unicode trong [globals.css](web/src/styles/globals.css). - Bootstrap CSS được nhúng sẵn ở
web/public/dist/4.0/css/jsonmain.css; các file JS legacy của trang gốc đã bị xoá (không được dùng). vite base: '/'+ SPA fallback phía Rust để deep route (/json-to-csv, …) trả 200 kèm index.html, còn asset thiếu vẫn 404 (xem [main.rs](src/main.rs)).
Chạy dev
cargo run -p json-tool # API + UI đã build tại :4540
( cd apps/json/web && npm install && npm run dev ) # Vite dev, proxy /api → 4540Test & đóng gói
cargo test -p json-tool # 27 test cho fmt / convert / mcp
apps/json/scripts/pack.sh # → apps/json/json-app.zip (cài vào SenClaw)MCP tools (json-mcp)
| Tool | Việc |
|---|---|
json_format | pretty/minify, giữ nguyên thứ tự khoá |
json_validate | hợp lệ hay không, kèm dòng/cột lỗi |
json_convert | json ↔ yaml ↔ csv ↔ tsv ↔ xml (mọi chiều) |
json_query | lấy giá trị theo JSON Pointer / a.b[0] |
json_diff | so sánh cấu trúc, liệt kê added/removed/changed |
json_encode / json_decode | base64 · URL · MessagePack (base64) |
Ghi chú kỹ thuật:
json_formatkhông đi quaserde_json::Value(crate cố tình không bậtpreserve_orderđể tránh rò tính năng sang các member khác của workspace) — [fmt.rs](src/fmt.rs) scan lại text gốc nên thứ tự khoá và số liệu giữ nguyên. Các phép chuyển đổi khác đi quaValuenên khoá bị sắp A→Z.- CSV/TSV cần mảng các object; ô rỗng →
null, chuỗi số có số 0 ở đầu (số điện thoại, mã bưu chính) giữ nguyên dạng chuỗi. - XML dùng quy ước "compact": thuộc tính
@name, text#text, thẻ trùng tên gom thành mảng. - TOON/TSON và formatter Java/Python/JS chỉ có ở giao diện web (thư viện JS), không có trong MCP.
REST
POST /api/{format,validate,convert,diff,query,encode,decode} — thân JSON, luôn trả HTTP 200 với { ok: true, … } hoặc { ok: false, error }. GET /api/status là health check của manifest.
Declared permissions
{
"network": [
"127.0.0.1"
],
"exec": [
"./json-tool"
]
}Declared by the publisher, not enforced by SenClaw. The CLI compares this against what you already have installed and asks before anything widens.
Published by
The checkmark means SenClaw confirmed who this publisher is. It says nothing about whether their packages are safe.
About
| Owner | @senclaw |
| Latest | 1.0.0 |
| Downloads (30d) | 0 |
| Repository | github.com/NortonBen/senclaw-app ↗ |
Versions
| Version | Tags | Artifacts | Published |
|---|---|---|---|
1.0.0 | latest | darwin-arm64, linux-x64, win32-x64 | 2026-08-07 |
Artifacts · 1.0.0
| Platform | Format | Signature | File | Size |
|---|---|---|---|---|
darwin-arm64 | zip | unsigned | json-app.zip | 1230 KB |
linux-x64 | zip | unsigned | json-app.zip | 1335 KB |
win32-x64 | zip | unsigned | json-app.zip | 1302 KB |
Unsigned builds require sign-in to download and are not distributed to the auto-updater, because unsigned executables from a new domain get flagged as unsafe. Sign and notarize (macOS) or Authenticode-sign (Windows) to distribute publicly.
Auto-update endpoints
For a Tauri app — add to tauri.conf.json:
"endpoints": ["https://senclaw.bacnd.com/api/v1/updates/tauri/senclaw/json/{{target}}/{{arch}}/{{current_version}}"]For an electron-updater app — generic provider URL:
https://senclaw.bacnd.com/updates/senclaw/json/stable
Only signed/notarized artifacts are offered as updates — a client fetches the update without credentials, and unsigned binaries are not publicly downloadable.
Something wrong with this package?
Report this package
Report this package
Tell us what is wrong and a moderator will look at it. Be specific — a report that names a version and a behaviour can be checked in minutes; one that says “looks sketchy” cannot be acted on at all.
Not about this package? Contact us instead. What happens to a report is described in reporting and moderation.
API: GET https://senclaw.bacnd.com/api/v1/packages/senclaw/json