Claude-skill-registry json-schema
Use when working with JSON Schema for validation, OpenAPI schemas, type definitions, and data structure specification
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/json-schema" ~/.claude/skills/majiayu000-claude-skill-registry-json-schema && rm -rf "$T"
manifest:
skills/data/json-schema/SKILL.mdsource content
JSON Schema
Quick Start
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "required": ["id", "email"], "properties": { "id": { "type": "string", "format": "uuid" }, "email": { "type": "string", "format": "email" }, "age": { "type": "integer", "minimum": 0, "maximum": 150 }, "role": { "enum": ["admin", "user", "guest"] }, "tags": { "type": "array", "items": { "type": "string" } } } }
Type Keywords
| Type | Validation Keywords |
|---|---|
| , , , |
| , , , |
| , , , |
| , , |
Composition
{ "allOf": [{ "$ref": "#/$defs/Base" }, { "properties": { "extra": {} } }], "oneOf": [{ "type": "string" }, { "type": "number" }], "anyOf": [{ "minimum": 0 }, { "maximum": 100 }], "not": { "type": "null" } }
References
{ "$defs": { "Address": { "type": "object", "properties": { "street": { "type": "string" } } } }, "properties": { "billing": { "$ref": "#/$defs/Address" }, "shipping": { "$ref": "#/$defs/Address" } } }
Common Formats
date-time, date, time, email, uri, uuid, ipv4, ipv6, hostname
OpenAPI 3.1 Notes
- OpenAPI 3.1 uses JSON Schema 2020-12
- Use
vianullabletype: ["string", "null"]
for single example,example
for multipleexamples
can have siblings in 3.1 (not in 3.0)$ref