From example-skills
Design and validate JSON Schemas for API contracts, configuration files, and data exchange formats. Covers schema composition, conditional validation, and code generation from schemas. Triggers on JSON Schema creation, data validation, or API contract design requests.
npx claudepluginhub organvm-iv-taxis/a-i--skills --plugin document-skillsThis skill uses the workspace's default tool permissions.
Define precise data contracts with JSON Schema for validation, documentation, and code generation.
Compares coding agents like Claude Code and Aider on custom YAML-defined codebase tasks using git worktrees, measuring pass rate, cost, time, and consistency.
Designs and optimizes AI agent action spaces, tool definitions, observation formats, error recovery, and context for higher task completion rates.
Designs, implements, and audits WCAG 2.2 AA accessible UIs for Web (ARIA/HTML5), iOS (SwiftUI traits), and Android (Compose semantics). Audits code for compliance gaps.
Define precise data contracts with JSON Schema for validation, documentation, and code generation.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://organvm.dev/schemas/repo.json",
"title": "Repository",
"description": "An ORGANVM repository entry",
"type": "object",
"required": ["name", "organ", "tier", "status"],
"properties": {
"name": {
"type": "string",
"pattern": "^[a-z][a-z0-9-]*$",
"minLength": 2,
"maxLength": 64
},
"organ": {
"type": "string",
"enum": ["I", "II", "III", "IV", "V", "VI", "VII", "META"]
},
"tier": {
"type": "string",
"enum": ["flagship", "standard", "infrastructure"]
},
"status": {
"type": "string",
"enum": ["LOCAL", "CANDIDATE", "PUBLIC_PROCESS", "GRADUATED", "ARCHIVED"]
},
"tags": {
"type": "array",
"items": { "type": "string" },
"uniqueItems": true
}
},
"additionalProperties": false
}
{
"priority": {
"type": "integer",
"minimum": 1,
"maximum": 10
},
"score": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1.0
}
}
{
"$defs": {
"organ": {
"type": "string",
"enum": ["I", "II", "III", "IV", "V", "VI", "VII", "META"]
},
"timestamp": {
"type": "string",
"format": "date-time"
}
},
"properties": {
"source_organ": { "$ref": "#/$defs/organ" },
"target_organ": { "$ref": "#/$defs/organ" },
"created_at": { "$ref": "#/$defs/timestamp" }
}
}
{
"allOf": [
{ "$ref": "#/$defs/base-entity" },
{
"properties": {
"extra_field": { "type": "string" }
}
}
]
}
{
"oneOf": [
{
"properties": {
"type": { "const": "skill" },
"category": { "type": "string" }
},
"required": ["type", "category"]
},
{
"properties": {
"type": { "const": "bundle" },
"includes": { "type": "array", "items": { "type": "string" } }
},
"required": ["type", "includes"]
}
],
"discriminator": { "propertyName": "type" }
}
{
"if": {
"properties": { "tier": { "const": "flagship" } }
},
"then": {
"required": ["ci_url", "docs_url"]
}
}
{
"status": {
"anyOf": [
{ "enum": ["active", "archived", "draft"] },
{ "type": "string", "pattern": "^x-" }
]
}
}
{
"metadata": {
"type": "object",
"additionalProperties": { "type": "string" },
"propertyNames": { "pattern": "^[a-z_]+$" }
}
}
{
"description": {
"oneOf": [
{ "type": "string" },
{ "type": "null" }
]
}
}
import jsonschema
import json
from pathlib import Path
def validate_entry(data: dict, schema_path: str) -> list[str]:
schema = json.loads(Path(schema_path).read_text())
validator = jsonschema.Draft202012Validator(schema)
errors = sorted(validator.iter_errors(data), key=lambda e: list(e.path))
return [f"{'.'.join(str(p) for p in e.path)}: {e.message}" for e in errors]
| Change | Safe? | Strategy |
|---|---|---|
| Add optional field | Yes | No version bump needed |
| Add required field | No | Major version, provide default |
| Remove field | No | Deprecate first, then remove |
| Widen type (string → string|number) | Yes | Backward compatible |
| Narrow type | No | Major version |
| Add enum value | Yes | Consumers should handle unknown |
| Remove enum value | No | Deprecate first |
additionalProperties: false — Typos in field names pass silently$defs for reuse$id or $schema — Always specify schema version and identity