Open Provider Registry

The canonical draft lives in the repository: spec/opr.md.

Problem

If every app invents its own unilayer registration scheme, offline model runners become the unpaid compliance department for desktop AI. OPR is a single open format (directory manifests + optional HTTP) so runners implement discovery once.

Shape (v1)

  • Write <id>.opr.json under platform opr/providers/ roots.

  • Optional live GET /opr/v1/providers.

  • Prefer OpenAI-compatible base_url values.

UniProvider probes well-known ports only as a bridge until runners emit OPR manifests themselves.