← Back to Skills Marketplace
ivangdavila

JSON

by Iván · GitHub ↗ · v1.0.0
linuxdarwinwin32 ✓ Security Clean
2102
Downloads
3
Stars
16
Active Installs
1
Versions
Install in OpenClaw
/install json
Description
Work with JSON data structures, APIs, and serialization effectively.
README (SKILL.md)

Schema & Validation

  • Always validate against JSON Schema before processing untrusted input—don't assume structure
  • Define schemas for API responses—catches contract violations early
  • Use additionalProperties: false to reject unknown fields in strict contexts

Naming & Consistency

  • Pick one convention and stick to it—camelCase for JS ecosystems, snake_case for Python/Ruby
  • Avoid mixed conventions in same payload—userId alongside user_name confuses consumers
  • Use plural for collections: "users": [] not "user": []

Null Handling

  • Distinguish "field is null" from "field is absent"—they mean different things
  • Omit optional fields entirely rather than sending null—reduces payload, clearer intent
  • Document which fields are nullable in schema—don't surprise consumers

Dates & Times

  • Always use ISO 8601: "2024-01-15T14:30:00Z"—no ambiguous formats like "01/15/24"
  • Include timezone or use UTC with Z suffix—local times without zone are useless
  • Timestamps as strings, not epoch integers—human-readable, no precision loss

Numbers & IDs

  • Large IDs as strings: "id": "9007199254740993"—JavaScript loses precision above 2^53
  • Money as string or integer cents—never float: "price": "19.99" or "price_cents": 1999
  • Avoid floats for anything requiring exactness—currency, coordinates with precision

Structure Best Practices

  • Keep nesting shallow—3 levels max; flatten or split into related endpoints
  • Consistent envelope for APIs: {"data": ..., "meta": ..., "errors": ...}
  • Paginate large arrays—never return unbounded lists; include next/prev links or cursor

API Response Patterns

  • Errors as structured objects: {"code": "INVALID_EMAIL", "message": "...", "field": "email"}
  • Include request ID in responses for debugging: "request_id": "abc-123"
  • Return created/updated resource in response—saves client a follow-up GET

Serialization

  • toJSON() method silently overrides output—Date becomes string, custom classes may surprise
  • Map, Set, BigInt don't serialize—need custom replacer function
  • Circular references throw—detect cycles before stringify or use libraries like flatted
  • Strip sensitive data before serializing—don't rely on client to ignore extra fields

Parsing Safety

  • __proto__ key can pollute prototypes—sanitize input or use Object.create(null)
  • Parse in try/catch—malformed JSON from external sources is common
  • Reviver function for type reconstruction: dates, BigInt, custom types

Unicode

  • Emoji need surrogate pairs in escapes: 😀 = \uD83D\uDE00—single \u1F600 invalid
  • Control chars U+0000–U+001F must be escaped—pasted text may contain invisible ones
  • BOM at file start breaks parsing—strip \uFEFF from file input
Capability Analysis
Type: OpenClaw Skill Name: json Version: 1.0.0 The skill bundle contains only metadata and a markdown file (`SKILL.md`) detailing best practices for working with JSON data. There is no executable code, no instructions for the agent to perform any actions beyond providing information, and no evidence of prompt injection, data exfiltration, malicious execution, or any other high-risk behaviors. The content is purely informational and aligns with its stated purpose.
Capability Assessment
Purpose & Capability
The name/description (
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install json
  3. After installation, invoke the skill by name or use /json
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release
Metadata
Slug json
Version 1.0.0
License
All-time Installs 16
Active Installs 16
Total Versions 1
Frequently Asked Questions

What is JSON?

Work with JSON data structures, APIs, and serialization effectively. It is an AI Agent Skill for Claude Code / OpenClaw, with 2102 downloads so far.

How do I install JSON?

Run "/install json" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is JSON free?

Yes, JSON is completely free (open-source). You can download, install and use it at no cost.

Which platforms does JSON support?

JSON is cross-platform and runs anywhere OpenClaw / Claude Code is available (linux, darwin, win32).

Who created JSON?

It is built and maintained by Iván (@ivangdavila); the current version is v1.0.0.

💬 Comments