Skip to main content

AIR Blackbox

AI governance control plane — compliance, inventory, incident response, and audit for AI agents.

PyPI License EU AI Act

Install

pip install air-blackbox

With framework support:

pip install air-blackbox[langchain]    # LangChain trust layer
pip install air-blackbox[crewai]       # CrewAI trust layer
pip install air-blackbox[openai]       # OpenAI Agents SDK trust layer
pip install air-blackbox[all]          # Everything

Four Commands

air-blackbox comply      # EU AI Act compliance from live traffic
air-blackbox discover    # Shadow AI inventory + AI-BOM generation
air-blackbox replay      # Incident reconstruction from audit chain
air-blackbox export      # Signed evidence bundle for auditors

Quick Start

from air_blackbox import AirBlackbox

air = AirBlackbox()
client = air.wrap(openai.OpenAI())
# Every LLM call is now HMAC-logged through the gateway

With framework auto-detection:

from air_blackbox import AirTrust

trust = AirTrust()
trust.attach(your_langchain_agent)
# Framework auto-detected. Audit trails active.

What It Does

Command What You Get
comply Per-article EU AI Act status (Art. 9-15) from live gateway traffic
discover Runtime AI inventory plus static dependency AI-BOM/SBOM output in table, CycloneDX 1.6, or SPDX 2.3
replay Full incident reconstruction, HMAC chain verification
export Signed evidence package: compliance + AI-BOM + audit chain

Discover AI-BOM and SBOM Output

air-blackbox discover --scan-path . --format table
air-blackbox discover --scan-path . --format cyclonedx
air-blackbox discover --scan-path . --format spdx
air-blackbox discover --scan-path . --format json   # alias for CycloneDX 1.6 JSON

discover combines runtime-observed models, providers, and tools with static package dependency scanning. Static scanning still works when no gateway traffic or .air.json records exist.

Supported static manifests:

  • requirements.txt: declared direct Python dependencies only.
  • pyproject.toml: PEP 621 direct and optional Python dependencies only.
  • package.json: direct npm dependencies; devDependencies are currently excluded.
  • package-lock.json: npm lockfile v2/v3 installed direct and transitive dependencies when graph data is available.

Discovery does not perform Python transitive resolution, inspect global environments, call package managers, or use the network. Each package in a reliable dependency graph is classified independently, so an AI SDK can be detected even when it is only transitive, for example application -> wrapper-package -> openai.

Custom classifier rules extend the built-in AI-library list, and matching custom rules override defaults:

air-blackbox discover \
  --scan-path . \
  --ai-libraries custom-ai-libraries.yaml \
  --format cyclonedx
version: 1
packages:
  python:
    my-ai-sdk:
      category: llm-sdk
      provider: Example AI
      reason: Internal AI SDK
  npm:
    "@example/ai-client":
      category: llm-sdk
      provider: Example AI
      reason: Internal AI client

Python package names use PEP 503 normalization. npm scoped package names are supported. Invalid explicit classifier configuration exits with an error before emitting machine-readable output.

Use --output to write machine-readable JSON:

air-blackbox discover --scan-path . --format spdx --output sbom.spdx.json

Warnings and diagnostics go to stderr. JSON files use UTF-8 and end with a newline. Table output cannot be combined with --output.

Model metadata includes model name, provider when observed, and explicit model version when available. The AIR record/schema version is not used as a model version. SPDX 2.3 represents runtime models as packages with annotations; formal schema validation is not currently part of the test suite.

Metadata

Release files for air-blackbox 1.16.0

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

Source distribution (sdist)

Source distribution for air-blackbox 1.16.0
File Size Uploaded
air_blackbox-1.16.0.tar.gz 339.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for air-blackbox 1.16.0
File Interpreter ABI Platform
air_blackbox-1.16.0-py3-none-any.whl Python 3 none any Details

Total release size: 697.7 kB

Release files / air_blackbox-1.16.0.tar.gz

Download URL air_blackbox-1.16.0.tar.gz
Size 339.7 kB
Tags Source
SHA-256 checksum
How to use checksums
51786218c72b4d406557c83a9684ce35cb02940919b66c1b80a2981e3b2d2aae
BLAKE2b-256 checksum
How to use checksums
9da34a16570a149aa280ed5a19e23d8f94877a762da6c6f33b1dade8902dacf1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 26, 2026.

Transparency log

Release files / air_blackbox-1.16.0-py3-none-any.whl

Download URL air_blackbox-1.16.0-py3-none-any.whl
Size 358.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
07bc9355d42fd94dc9950fc2b456533668027f64ab101785cc6d0d4cefd1f1c9
BLAKE2b-256 checksum
How to use checksums
812d6ba6292b506fcc9dff3fd50a53840f053ccbc3cd10b1180e0c0ee30813a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 26, 2026.

Transparency log

Release history Release notifications | RSS feed

1.17.0

2 release files

This release

1.16.0 This release

2 release files

1.15.0

2 release files

1.13.2

2 release files

1.13.1

2 release files

1.12.4

2 release files

1.12.3

2 release files

1.12.2

2 release files

1.12.1

2 release files

1.12.0

2 release files

1.11.2

2 release files

1.11.1

2 release files

1.11.0

2 release files

1.10.0

2 release files

1.9.0

2 release files

1.8.2

2 release files

1.8.1

2 release files

1.8.0

2 release files

1.7.0

2 release files

1.6.3

2 release files

1.6.2

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.2.0

2 release files

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