← Files Empire LLM for CodexARCHIVED FILE
skills/empire-review/assets/provider-registry.schema.json
2.43 KB · Oct 3, 2026 · 06:31 UTC
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://empire-llm.local/schemas/provider-registry.schema.json",
"title": "Empire trusted provider registry",
"type": "object",
"additionalProperties": false,
"required": ["schema_version", "providers"],
"properties": {
"schema_version": { "const": "1.0.0" },
"providers": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"provider_id",
"family",
"allowed_hosts",
"base_url",
"authentication",
"discovery",
"inference_endpoints"
],
"properties": {
"provider_id": { "type": "string", "pattern": "^[a-z0-9-]+$" },
"family": { "type": "string", "pattern": "^[a-z0-9-]+$" },
"allowed_hosts": {
"type": "array",
"minItems": 1,
"uniqueItems": true,
"items": { "type": "string", "pattern": "^[a-z0-9.-]+$" }
},
"base_url": { "type": "string", "pattern": "^https://" },
"authentication": { "enum": ["bearer", "api_key_header"] },
"credential_env": {
"type": "array",
"uniqueItems": true,
"items": { "type": "string", "pattern": "^[A-Z][A-Z0-9_]+$" }
},
"model_id_pattern": { "type": "string" },
"discovery": {
"type": "object",
"additionalProperties": false,
"required": ["mode", "ttl_minutes"],
"properties": {
"mode": { "enum": ["api", "curated", "manual"] },
"path": { "type": "string", "pattern": "^/" },
"ttl_minutes": { "type": "integer", "minimum": 1 }
}
},
"inference_endpoints": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"additionalProperties": false,
"required": ["id", "path", "protocol"],
"properties": {
"id": { "type": "string" },
"path": { "type": "string", "pattern": "^/" },
"protocol": { "type": "string" },
"preferred": { "type": "boolean" },
"legacy": { "type": "boolean" }
}
}
},
"documentation_url": { "type": "string", "pattern": "^https://" }
}
}
}
}
}
SHA-256: 9504533796e3dfb31ab23ca0c22e09d5c688b68c6104f19f82f6aafb6e7b8026