Skip to content

Input Schema Reference

Agent-directive nodes use JSON Schema (Draft 7) to validate agent responses. Invalid responses trigger retry with validation error messages.

{
"inputSchema": {
"type": "object",
"properties": {
"field_name": { "type": "string" }
},
"required": ["field_name"]
}
}
{
"properties": {
"name": { "type": "string" },
"description": { "type": "string", "minLength": 10 },
"code": { "type": "string", "maxLength": 100 }
}
}
{
"properties": {
"score": { "type": "number", "minimum": 0, "maximum": 100 },
"count": { "type": "integer", "minimum": 1 }
}
}
{
"properties": {
"confirmed": { "type": "boolean" }
}
}
{
"properties": {
"items": {
"type": "array",
"items": { "type": "string" },
"minItems": 1,
"maxItems": 10
}
}
}
{
"properties": {
"config": {
"type": "object",
"properties": {
"enabled": { "type": "boolean" },
"value": { "type": "number" }
},
"required": ["enabled"]
}
}
}
{
"properties": {
"status": { "type": "string", "enum": ["pending", "approved", "rejected"] },
"decision": { "type": "string", "enum": ["yes", "no"] }
}
}

For Russian responses:

{
"properties": {
"confirmed": { "type": "string", "enum": ["да", "нет"] }
}
}
{
"required": ["result", "confidence"]
}
{
"properties": {
"verbose": { "type": "boolean", "default": false }
}
}
{
"properties": {
"result": { "type": "string" },
"skip": { "type": "string", "enum": ["yes"] }
}
}

Agent provides either result or skip, not both.

{
"properties": {
"file_path": {
"type": "string",
"pattern": "^[a-zA-Z0-9/_.-]+\\.(json|yaml|md)$"
}
}
}
{
"properties": {
"email": {
"type": "string",
"pattern": "^[^@]+@[^@]+\\.[^@]+$"
}
}
}
{
"properties": {
"url": {
"type": "string",
"pattern": "^https?://"
}
}
}
{
"properties": {
"tags": {
"type": "array",
"items": { "type": "string" }
}
}
}
{
"properties": {
"steps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"status": { "type": "string", "enum": ["done", "pending"] }
},
"required": ["name", "status"]
},
"minItems": 1
}
}
}
{
"type": "object",
"properties": {
"result": { "type": "string" }
},
"required": ["result"],
"additionalProperties": false
}

Rejects any fields not defined in properties.

{
"additionalProperties": true
}

Default behavior - allows undefined fields.

Add descriptions to help agents understand fields:

{
"properties": {
"quality_score": {
"type": "number",
"minimum": 1,
"maximum": 10,
"description": "Rate implementation quality from 1-10"
},
"evidence": {
"type": "string",
"description": "Concrete proof that work is complete (test output, command results)"
}
}
}

Special variable execution_note updates execution tracking:

{
"properties": {
"execution_note": {
"type": "string",
"description": "Note to identify this execution"
}
}
}

See Magic Variables for details.

{
"type": "object",
"properties": {
"result": { "type": "string", "enum": ["yes", "no"] },
"reason": { "type": "string" }
},
"required": ["result"]
}
{
"type": "object",
"properties": {
"error_count": { "type": "number", "minimum": 0 },
"evidence": { "type": "string", "minLength": 10 }
},
"required": ["error_count", "evidence"]
}
{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": ["create", "edit", "delete", "skip"]
},
"details": { "type": "string" }
},
"required": ["action"]
}