{
  "$defs": {
    "ComplexityLevel": {
      "description": "Missing docstring.",
      "enum": [
        "low",
        "medium",
        "high"
      ],
      "title": "ComplexityLevel",
      "type": "string"
    },
    "InputSchema": {
      "description": "Missing docstring.",
      "properties": {
        "type": {
          "default": "object",
          "title": "Type",
          "type": "string"
        },
        "properties": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Properties"
        },
        "required": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Required"
        }
      },
      "title": "InputSchema",
      "type": "object"
    },
    "InputVariable": {
      "description": "Missing docstring.",
      "properties": {
        "name": {
          "title": "Name",
          "type": "string"
        },
        "description": {
          "title": "Description",
          "type": "string"
        },
        "required": {
          "default": true,
          "title": "Required",
          "type": "boolean"
        },
        "default": {
          "anyOf": [
            {},
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Default"
        }
      },
      "required": [
        "name",
        "description"
      ],
      "title": "InputVariable",
      "type": "object"
    },
    "MCPTool": {
      "description": "Missing docstring.",
      "properties": {
        "name": {
          "title": "Name",
          "type": "string"
        },
        "description": {
          "title": "Description",
          "type": "string"
        },
        "inputSchema": {
          "$ref": "#/$defs/InputSchema"
        }
      },
      "required": [
        "name",
        "description",
        "inputSchema"
      ],
      "title": "MCPTool",
      "type": "object"
    },
    "Message": {
      "description": "Missing docstring.",
      "properties": {
        "role": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Role"
        },
        "content": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "items": {},
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Content"
        },
        "tool_calls": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/ToolCall"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Tool Calls"
        },
        "tool_call_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Tool Call Id"
        },
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Name"
        }
      },
      "title": "Message",
      "type": "object"
    },
    "ModelParameters": {
      "description": "Missing docstring.",
      "properties": {
        "temperature": {
          "description": "Controls randomness (0.0-2.0)",
          "maximum": 2.0,
          "minimum": 0.0,
          "title": "Temperature",
          "type": "number"
        },
        "max_tokens": {
          "anyOf": [
            {
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Max Tokens"
        },
        "top_p": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Top P"
        },
        "frequency_penalty": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Frequency Penalty"
        },
        "presence_penalty": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Presence Penalty"
        }
      },
      "required": [
        "temperature"
      ],
      "title": "ModelParameters",
      "type": "object"
    },
    "PromptMetadata": {
      "description": "Missing docstring.",
      "properties": {
        "domain": {
          "title": "Domain",
          "type": "string"
        },
        "status": {
          "anyOf": [
            {
              "$ref": "#/$defs/StatusLevel"
            },
            {
              "type": "null"
            }
          ],
          "default": "active"
        },
        "complexity": {
          "$ref": "#/$defs/ComplexityLevel"
        },
        "tags": {
          "default": [],
          "items": {
            "type": "string"
          },
          "title": "Tags",
          "type": "array"
        },
        "requires_context": {
          "default": false,
          "title": "Requires Context",
          "type": "boolean"
        },
        "autonomy": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Autonomy"
        },
        "maturity": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Maturity"
        }
      },
      "required": [
        "domain",
        "complexity"
      ],
      "title": "PromptMetadata",
      "type": "object"
    },
    "StatusLevel": {
      "description": "Missing docstring.",
      "enum": [
        "draft",
        "active"
      ],
      "title": "StatusLevel",
      "type": "string"
    },
    "ToolCall": {
      "description": "Missing docstring.",
      "properties": {
        "id": {
          "title": "Id",
          "type": "string"
        },
        "type": {
          "default": "function",
          "title": "Type",
          "type": "string"
        },
        "function": {
          "additionalProperties": true,
          "title": "Function",
          "type": "object"
        }
      },
      "required": [
        "id",
        "function"
      ],
      "title": "ToolCall",
      "type": "object"
    }
  },
  "description": "Missing docstring.",
  "properties": {
    "name": {
      "title": "Name",
      "type": "string"
    },
    "version": {
      "default": "0.1.0",
      "title": "Version",
      "type": "string"
    },
    "description": {
      "title": "Description",
      "type": "string"
    },
    "metadata": {
      "anyOf": [
        {
          "$ref": "#/$defs/PromptMetadata"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    },
    "variables": {
      "default": [],
      "items": {
        "$ref": "#/$defs/InputVariable"
      },
      "title": "Variables",
      "type": "array"
    },
    "model": {
      "title": "Model",
      "type": "string"
    },
    "safety_opt_out": {
      "default": false,
      "title": "Safety Opt Out",
      "type": "boolean"
    },
    "modelParameters": {
      "$ref": "#/$defs/ModelParameters"
    },
    "messages": {
      "items": {
        "$ref": "#/$defs/Message"
      },
      "title": "Messages",
      "type": "array"
    },
    "tools": {
      "anyOf": [
        {
          "items": {
            "$ref": "#/$defs/MCPTool"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Tools"
    },
    "testData": {
      "items": {},
      "title": "Testdata",
      "type": "array"
    },
    "evaluators": {
      "items": {},
      "title": "Evaluators",
      "type": "array"
    },
    "output_schema": {
      "anyOf": [
        {
          "additionalProperties": true,
          "type": "object"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Output Schema"
    },
    "last_modified": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Last Modified"
    }
  },
  "required": [
    "name",
    "description",
    "model",
    "modelParameters",
    "messages",
    "testData",
    "evaluators"
  ],
  "title": "PromptSchema",
  "type": "object"
}
