Skip to main content

Verity - AI Governance Through Enforcement (API + CLI + live audit SDK)

Project description

Verity - AI Governance Through Enforcement

Complete AI model audit system with CI/CD integration, evidence storage, and regulator-ready exports.

Quick Start

Install Dependencies

# Install root dependencies (concurrently)
npm install

# Install website and dashboard dependencies
npm run install:all

Run Everything

# Run website, dashboard, and API together
npm run dev:all

This will start:

Run Individual Services

# Just the website
npm run dev:website

# Just the dashboard
npm run dev:dashboard

# Just the API
npm run dev:api

Project Structure

ai-audit-ci/
├── audit/              # CLI audit tool
│   ├── cli.py         # Main CLI interface
│   ├── metrics.py      # Fairness metrics
│   ├── evidence.py    # Report generation
│   └── export.py      # PDF/JSON exports
├── api/                # FastAPI backend
│   ├── main.py        # API server
│   ├── database.py    # Database models
│   ├── routes/        # API routes
│   └── manage.py      # Management CLI
├── website/            # Marketing website (React)
│   └── src/
│       ├── pages/     # Website pages
│       └── components/
└── dashboard/          # Dashboard app (React)
    └── src/
        ├── pages/     # Dashboard pages
        └── components/

Features

Core Audit Tool

  • ✅ Fairness metrics (demographic parity, equal opportunity, disparate impact)
  • ✅ SHA-256 hashing for all artifacts
  • ✅ Immutable audit reports
  • ✅ GitHub Actions integration
  • ✅ Regulator-ready PDF/JSON exports

API & Evidence Store

  • ✅ User authentication
  • ✅ Organization & project management
  • ✅ API key management
  • ✅ Append-only audit storage
  • ✅ Commit context tracking
  • ✅ Policy versioning

Dashboard

  • ✅ Project overview with statistics
  • ✅ Audit timeline visualization
  • ✅ Trend charts
  • ✅ Policy management
  • ✅ Regulator portal (Enterprise)

Website

  • ✅ Dark, professional design
  • ✅ Responsive layout
  • ✅ Animated interactions
  • ✅ Enterprise messaging

Development

Prerequisites

  • Python 3.11+
  • Node.js 18+
  • npm or yarn

Setup

  1. Install Python dependencies:
cd ai-audit-ci
pip install -r requirements.txt
  1. Install Node dependencies:
npm run install:all
  1. Initialize database:
cd api
python -m api.main
  1. Run all services:
npm run dev:all

Usage

Run an Audit

cd ai-audit-ci
python -m audit.cli run --config examples/tabular/config.yml

Upload Audit Evidence

Set environment variables:

export VERITY_UPLOAD_TOKEN=your_project_upload_token
export VERITY_API_URL=https://verityai-production.up.railway.app

Then run with upload:

python -m audit.cli run --config config.yml --upload

GitHub Actions

Add to .github/workflows/audit.yml:

name: AI Governance Audit (Verity)
on: [pull_request]
jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: "3.11"
      - run: |
          pip install verity-audit
          verity run --config config.yml --upload
        env:
          VERITY_UPLOAD_TOKEN: ${{ secrets.VERITY_UPLOAD_TOKEN }}
          DATASET_URL: ${{ secrets.DATASET_URL }} # For datasets not in repo
          GITHUB_SHA: ${{ github.sha }}
          GITHUB_REF_NAME: ${{ github.ref_name }}
          GITHUB_REPOSITORY: ${{ github.repository }}

Note: For datasets stored outside the repository (S3, GCS, etc.), see CI/CD Dataset Patterns for configuration options.

Live audit SDK (production LLM calls)

Live audits are automatic via swap-in clients only: install the package, set env vars, replace the vendor client with a Verity wrapper. There is no separate “send audit” call — prompts and completions are captured on a non-blocking side channel to POST /v1/live-audits.

pip install "verity-audit[live]"

Use your project upload token (same as CLI uploads). You can set either name:

export VERITY_API_KEY=your_project_upload_token
# or: export VERITY_UPLOAD_TOKEN=...
export VERITY_API_URL=https://verityai-production.up.railway.app

Public facade (verity package)

from verity import VerityOpenAI

client = VerityOpenAI(
    openai_api_key="...",
    verity_api_key="...",  # or rely on VERITY_API_KEY / VERITY_UPLOAD_TOKEN in the environment
)
resp = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Hello"}],
)

Async: from verity import VerityAsyncOpenAI. Anthropic: VerityAnthropic / VerityAsyncAnthropic. Gemini (google.genai): VerityGemini.

Lower-level module (verity_live) — same behavior with api_key + optional verity_upload_token / verity_api_url (or env vars above).

API Endpoints

  • POST /v1/audits - Upload audit evidence
  • GET /v1/audits/{audit_id} - Retrieve audit
  • POST /auth/signup - Create account
  • POST /auth/login - Sign in
  • GET /dashboard/orgs/{org_id}/projects - List projects
  • GET /dashboard/projects/{project_id}/audits - Get audit history
  • GET /dashboard/projects/{project_id}/trends - Get trend data

See api/README.md for full API documentation.

License

Proprietary - All rights reserved

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

verity_audit-1.4.1.tar.gz (139.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

verity_audit-1.4.1-py3-none-any.whl (153.0 kB view details)

Uploaded Python 3

File details

Details for the file verity_audit-1.4.1.tar.gz.

File metadata

  • Download URL: verity_audit-1.4.1.tar.gz
  • Upload date:
  • Size: 139.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for verity_audit-1.4.1.tar.gz
Algorithm Hash digest
SHA256 a72cfa7d28c390af317558aaf20f3ad8fff13044da7ad9147389af76843b44be
MD5 60ad4cc507796ffa921e63b1d35ec5fd
BLAKE2b-256 b0abc2535693aabc5052a5b8cce1687eb0e1accaa17688356f76939ae02fa66c

See more details on using hashes here.

File details

Details for the file verity_audit-1.4.1-py3-none-any.whl.

File metadata

  • Download URL: verity_audit-1.4.1-py3-none-any.whl
  • Upload date:
  • Size: 153.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for verity_audit-1.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b18f5bdca5fbc2017bacf98d38a88a9cb89575c32060262a56fd941b3f347485
MD5 b05adb31b25fef6a98b8908a9a28d834
BLAKE2b-256 090ca4c64e7b25d4b4db29840fa5fe484457c89ab107f046a63566f89c9a8cf0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page