{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "generated_from": "gerberize.commands.COMMANDS",
  "envelope_schema": {
    "type": "object",
    "required": [
      "ok",
      "errors",
      "warnings",
      "data"
    ],
    "properties": {
      "ok": {
        "type": "boolean"
      },
      "errors": {
        "type": "array",
        "items": {
          "type": "object",
          "required": [
            "code",
            "message",
            "ref",
            "fix_hint",
            "position"
          ],
          "properties": {
            "code": {
              "type": "string"
            },
            "message": {
              "type": "string"
            },
            "ref": {
              "type": [
                "string",
                "null"
              ]
            },
            "fix_hint": {
              "type": [
                "string",
                "null"
              ]
            },
            "position": {
              "type": [
                "object",
                "null"
              ]
            }
          }
        }
      },
      "warnings": {
        "type": "array",
        "items": {
          "type": "object",
          "required": [
            "code",
            "message",
            "ref",
            "fix_hint",
            "position"
          ],
          "properties": {
            "code": {
              "type": "string"
            },
            "message": {
              "type": "string"
            },
            "ref": {
              "type": [
                "string",
                "null"
              ]
            },
            "fix_hint": {
              "type": [
                "string",
                "null"
              ]
            },
            "position": {
              "type": [
                "object",
                "null"
              ]
            }
          }
        }
      },
      "data": {
        "type": "object"
      }
    }
  },
  "commands": {
    "drc": {
      "description": "Run native KiCad board design-rule checks.",
      "example": "gerberize drc controller.kicad_pcb",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains native board diagnostics and tool context."
    },
    "erc": {
      "description": "Run native KiCad schematic electrical-rule checks.",
      "example": "gerberize erc controller.kicad_sch",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains native schematic diagnostics and tool context."
    },
    "validate": {
      "description": "Run DRC, optional ERC/BOM, footprint and fab preflight.",
      "example": "gerberize validate controller.kicad_pcb --fab oshpark-2layer --schematic controller.kicad_sch --bom bom.csv",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "fab": {
            "type": "string",
            "description": "",
            "default": "oshpark-2layer"
          },
          "schematic": {
            "type": "string",
            "description": ""
          },
          "bom": {
            "type": "string",
            "description": ""
          },
          "cloud": {
            "type": "boolean",
            "description": "",
            "default": false
          },
          "wait": {
            "type": "boolean",
            "description": "",
            "default": false
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data.checks contains individual check envelopes; manufacturing_approved remains false."
    },
    "fabcheck": {
      "description": "Check geometric features against a documented fab profile.",
      "example": "gerberize fabcheck controller.kicad_pcb --fab partner-fab-2layer",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "fab": {
            "type": "string",
            "description": "",
            "default": "oshpark-2layer"
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data includes the selected capability profile and checked board geometry."
    },
    "footprints": {
      "description": "Check recognized package pad counts and pitch.",
      "example": "gerberize footprints controller.kicad_pcb",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains package recognition and footprint findings."
    },
    "bom-check": {
      "description": "Check references, quantities, MPNs, footprints and optional stock.",
      "example": "gerberize bom-check bom.csv --include-dnp",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "provider": {
            "type": "string",
            "description": "",
            "enum": [
              "nexar",
              "digikey",
              "mouser"
            ]
          },
          "include_dnp": {
            "type": "boolean",
            "description": "",
            "default": false
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains BOM row, quantity, and DNP findings."
    },
    "simulate": {
      "description": "Run bounded self-contained ngspice op/tran/ac and apply limits.",
      "example": "gerberize simulate power.cir --analysis op --limits limits.json",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "analysis": {
            "type": "string",
            "description": "",
            "enum": [
              "op",
              "tran",
              "ac"
            ],
            "default": "op"
          },
          "step": {
            "type": "string",
            "description": "",
            "default": "1u"
          },
          "stop": {
            "type": "string",
            "description": "",
            "default": "1m"
          },
          "duration": {
            "type": "string",
            "description": "Alias for --stop"
          },
          "start": {
            "type": "string",
            "description": "",
            "default": "1"
          },
          "points": {
            "type": "integer",
            "description": "",
            "default": 10,
            "minimum": 1,
            "maximum": 100000
          },
          "timeout": {
            "type": "integer",
            "description": "",
            "default": 60,
            "minimum": 1,
            "maximum": 300
          },
          "limits": {
            "oneOf": [
              {
                "type": "object"
              },
              {
                "type": "string"
              }
            ],
            "description": "Vector min/max map, or local JSON path"
          },
          "cloud": {
            "type": "boolean",
            "description": "",
            "default": false
          },
          "wait": {
            "type": "boolean",
            "description": "",
            "default": false
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains analysis vectors and limit results; a missing signal fails its limit."
    },
    "fabs": {
      "description": "List documented fab capability profiles.",
      "example": "gerberize fabs",
      "input_schema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data.profiles contains fabrication capability profiles and source notes."
    },
    "quote": {
      "description": "Get and rank sandbox quotes; requires server authentication.",
      "example": "gerberize quote --providers sandbox --quantity 5 --width-mm 50 --height-mm 50 --sort cost",
      "input_schema": {
        "type": "object",
        "properties": {
          "quantity": {
            "type": "integer",
            "description": "",
            "default": 5
          },
          "width_mm": {
            "type": "number",
            "description": "",
            "default": 50
          },
          "height_mm": {
            "type": "number",
            "description": "",
            "default": 50
          },
          "layers": {
            "type": "integer",
            "description": "",
            "default": 2
          },
          "providers": {
            "type": "array",
            "description": "",
            "items": {
              "type": "string"
            },
            "default": [
              "macrofab",
              "pcbway",
              "oshpark",
              "partner-fab"
            ]
          },
          "sort": {
            "type": "string",
            "description": "",
            "enum": [
              "cost",
              "speed",
              "domestic"
            ],
            "default": "cost"
          },
          "project_id": {
            "type": "string",
            "description": ""
          },
          "upload_id": {
            "type": "string",
            "description": ""
          }
        },
        "required": [],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data.quotes contains persisted quotes ranked by the requested preference."
    },
    "order": {
      "description": "Submit a guarded sandbox order using a persisted quote.",
      "example": "gerberize order --quote-id QUOTE_ID --idempotency-key prototype-run-1",
      "input_schema": {
        "type": "object",
        "properties": {
          "quote_id": {
            "type": "string",
            "description": ""
          },
          "idempotency_key": {
            "type": "string",
            "description": "Unique retry-stable order request key"
          },
          "approval_token": {
            "type": "string",
            "description": ""
          }
        },
        "required": [
          "quote_id",
          "idempotency_key"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains a sandbox order, or approval context when required. Reuse the idempotency key for retries."
    },
    "orders": {
      "description": "List authenticated user orders.",
      "example": "gerberize orders",
      "input_schema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data.orders contains the authenticated account\u2019s orders."
    },
    "track": {
      "description": "Refresh fab status and show order event/carrier tracking.",
      "example": "gerberize track ORDER_ID --refresh",
      "input_schema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": ""
          },
          "refresh": {
            "type": "boolean",
            "description": "",
            "default": false
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data.order and data.events contain the order, provider status, and history."
    },
    "login": {
      "description": "Start device login, or exchange an approved device code.",
      "example": "gerberize login\n# After authorizing the user code in your dashboard:\ngerberize login --device-code DEVICE_CODE --wait",
      "input_schema": {
        "type": "object",
        "properties": {
          "device_code": {
            "type": "string",
            "description": ""
          },
          "wait": {
            "type": "boolean",
            "description": "",
            "default": false
          }
        },
        "required": [],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains device authorization details, or authenticated status after token exchange."
    },
    "upload": {
      "description": "Upload a design file for cloud jobs.",
      "example": "gerberize upload controller.kicad_pcb --project-id PROJECT_ID",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "project_id": {
            "type": "string",
            "description": ""
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data contains metadata for the persisted input file."
    },
    "jobs": {
      "description": "List queued and completed cloud jobs.",
      "example": "gerberize jobs",
      "input_schema": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data.jobs contains persisted worker jobs."
    },
    "job": {
      "description": "Inspect or poll a cloud job.",
      "example": "gerberize job JOB_ID --wait",
      "input_schema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": ""
          },
          "wait": {
            "type": "boolean",
            "description": "",
            "default": false
          }
        },
        "required": [
          "id"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data.job includes status and the completed command result when available."
    },
    "export-gerbers": {
      "description": "Export gerbers with KiCad.",
      "example": "gerberize export-gerbers controller.kicad_pcb --output output/gerbers",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "output": {
            "type": "string",
            "description": "Output directory path"
          }
        },
        "required": [
          "path",
          "output"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data lists generated manufacturing output files and their destination."
    },
    "export-drill": {
      "description": "Export drill with KiCad.",
      "example": "gerberize export-drill controller.kicad_pcb --output output/drill",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "output": {
            "type": "string",
            "description": "Output directory path"
          }
        },
        "required": [
          "path",
          "output"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data lists generated manufacturing output files and their destination."
    },
    "export-pos": {
      "description": "Export pos with KiCad.",
      "example": "gerberize export-pos controller.kicad_pcb --output output/positions.csv",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "output": {
            "type": "string",
            "description": "Output CSV path"
          }
        },
        "required": [
          "path",
          "output"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data lists generated manufacturing output files and their destination."
    },
    "export-bom": {
      "description": "Export bom with KiCad.",
      "example": "gerberize export-bom controller.kicad_sch --output output/bom.csv",
      "input_schema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "Path to the input file"
          },
          "output": {
            "type": "string",
            "description": "Output CSV path"
          }
        },
        "required": [
          "path",
          "output"
        ],
        "additionalProperties": false
      },
      "response_schema": {
        "type": "object",
        "required": [
          "ok",
          "errors",
          "warnings",
          "data"
        ],
        "properties": {
          "ok": {
            "type": "boolean"
          },
          "errors": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "code",
                "message",
                "ref",
                "fix_hint",
                "position"
              ],
              "properties": {
                "code": {
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "ref": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "fix_hint": {
                  "type": [
                    "string",
                    "null"
                  ]
                },
                "position": {
                  "type": [
                    "object",
                    "null"
                  ]
                }
              }
            }
          },
          "data": {
            "type": "object"
          }
        }
      },
      "output_note": "data lists generated manufacturing output files and their destination."
    }
  }
}
