{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://example.invalid/schemas/claude-output.schema.json", "title": "Claude Monthly Report Content", "type": "object", "additionalProperties": false, "properties": { "summary": { "type": "object", "additionalProperties": false, "properties": { "headline": { "type": "string", "minLength": 8, "maxLength": 110 }, "text": { "type": "string", "minLength": 80, "maxLength": 900 }, "rating": { "type": "string", "enum": [ "positive", "neutral", "watch" ] } }, "required": [ "headline", "text", "rating" ] }, "developments": { "type": "array", "minItems": 2, "maxItems": 4, "items": { "type": "object", "additionalProperties": false, "properties": { "title": { "type": "string", "minLength": 4, "maxLength": 80 }, "text": { "type": "string", "minLength": 40, "maxLength": 450 }, "impact": { "type": "string", "enum": [ "positive", "neutral", "negative" ] } }, "required": [ "title", "text", "impact" ] } }, "recommendations": { "type": "array", "minItems": 1, "maxItems": 3, "items": { "type": "object", "additionalProperties": false, "properties": { "priority": { "type": "integer", "minimum": 1, "maximum": 3 }, "category": { "type": "string", "minLength": 3, "maxLength": 80 }, "title": { "type": "string", "minLength": 5, "maxLength": 100 }, "reason": { "type": "string", "minLength": 40, "maxLength": 450 }, "action": { "type": "string", "minLength": 30, "maxLength": 450 }, "expected_effect": { "type": "string", "minLength": 20, "maxLength": 300 } }, "required": [ "priority", "category", "title", "reason", "action", "expected_effect" ] } }, "outlook": { "type": "object", "additionalProperties": false, "properties": { "headline": { "type": "string", "minLength": 5, "maxLength": 100 }, "text": { "type": "string", "minLength": 60, "maxLength": 700 } }, "required": [ "headline", "text" ] }, "data_quality_notes": { "type": "array", "maxItems": 4, "items": { "type": "string", "minLength": 5, "maxLength": 240 } } }, "required": [ "summary", "developments", "recommendations", "outlook", "data_quality_notes" ] }