Skip to main content

opengrade-ai-server

OpenGrade server package (API + packaged UI).

  • Distribution: opengrade-ai-server (PyPI)
  • Import path: opengrade_server (e.g. uvicorn opengrade_server.main:app)
  • Console scripts: opengrade (ui, check; provided by the opengrade-ai dependency) and opengrade-server (same commands)

Local UI

Requires Node.js >= 22 to build the UI from a clone. Contributors should use uv sync --all-extras (plain uv sync strips extras from an existing venv).

# from repo root — build the Next static export into the package
python scripts/package_ui.py   # or ./scripts/package-ui.sh
cd backend && uv sync --all-extras
uv run opengrade ui
# → http://127.0.0.1:8000  (SQLite ./opengrade.db by default)

Local SQLite schema is applied with Alembic on startup (same revisions as Postgres). File-backed SQLite uses WAL and a 5s busy_timeout. If a pre-Alembic DB is stale (schema behind models), delete ./opengrade.db (and any -wal/-shm sidecars) and restart.

Backup: stop the process (or run PRAGMA wal_checkpoint(FULL)), then copy opengrade.db plus any opengrade.db-wal / opengrade.db-shm files. Do not copy only the main file while the process is writing under WAL.

opengrade ui loads .env from the current working directory when present, prints LLM / content-capture settings, and exits if the bind port already has a listener (use --port or stop the other process).

Postgres:

uv run opengrade ui --backend-store-uri 'postgresql+asyncpg://opengrade:opengrade@localhost:5434/opengrade'

Ops (container)

  • Single API replica — scoring runs in-process; multi-replica recovery is not safe yet.
  • Probes: GET /health (liveness), GET /ready (DB readiness). Compose healthchecks /ready.
  • Requests carry X-Request-ID (echoed / generated).
  • Entrypoint: --proxy-headers, --forwarded-allow-ips (FORWARDED_ALLOW_IPS), --timeout-graceful-shutdown (SHUTDOWN_GRACE_SECONDS).
  • OTLP /v1/traces may return 429 / 503 with Retry-After when rate, inflight, or pending-score caps are hit (OTLP_* in .env.example).

See the repository root README for Docker Compose and SDK quickstart. Compose loads backend/.env when present (env_file is optional); copy from .env.example for LLM judges and other overrides.

Metadata

Release files for opengrade-ai-server 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for opengrade-ai-server 0.1.1
File Size Uploaded Provenance Actions
opengrade_ai_server-0.1.1.tar.gz 1.7 MB With provenance Details for opengrade_ai_server-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for opengrade-ai-server 0.1.1
File Interpreter ABI Platform Actions
opengrade_ai_server-0.1.1-py3-none-any.whl Python 3 none any Details for opengrade_ai_server-0.1.1-py3-none-any.whl

Total release size: 3.4 MB

Release files / opengrade_ai_server-0.1.1.tar.gz

Download URL opengrade_ai_server-0.1.1.tar.gz
Size 1.7 MB
Tags Source
SHA-256 checksum
How to use checksums
aac144d3c9e1166ff0cb0daac3ecda0697085cc640f25467f49e9101ef7d75c1
BLAKE2b-256 checksum
How to use checksums
57b2f44811d01a6a6c7fafde2488f2e3ef1484b32200e268f1e4c78c15a2a987
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.

Transparency log

Release files / opengrade_ai_server-0.1.1-py3-none-any.whl

Download URL opengrade_ai_server-0.1.1-py3-none-any.whl
Size 1.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
4513305cade72f816ba3473aca7486097fd1e1600c76d7a67f61f1d5255b44a1
BLAKE2b-256 checksum
How to use checksums
341fbaa03ccb5cbd50885b8aace8e102eda4e66c18b29b78c6283b009aa07fed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.

Transparency log

Security for opengrade-ai-server 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for opengrade_ai_server-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page