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.

Links

Download files

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

Source Distribution

air_blackbox-1.15.0.tar.gz (331.0 kB view details)

Uploaded Source

Built Distribution

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

air_blackbox-1.15.0-py3-none-any.whl (349.8 kB view details)

Uploaded Python 3

File details

Details for the file air_blackbox-1.15.0.tar.gz.

File metadata

  • Download URL: air_blackbox-1.15.0.tar.gz
  • Upload date:
  • Size: 331.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for air_blackbox-1.15.0.tar.gz
Algorithm Hash digest
SHA256 92862722b73885c44897dd334bc88bb401f7f48693ed2c779eb8b7d19f452c83
MD5 8bfc75f2626abf099a7efa52ada7784e
BLAKE2b-256 363faccfb688ecb4a5bda9ac57484c9bdcec7433730d367a1fbba5300430828b

See more details on using hashes here.

Provenance

The following attestation bundles were made for air_blackbox-1.15.0.tar.gz:

Publisher: release.yml on airblackbox/airblackbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file air_blackbox-1.15.0-py3-none-any.whl.

File metadata

  • Download URL: air_blackbox-1.15.0-py3-none-any.whl
  • Upload date:
  • Size: 349.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for air_blackbox-1.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4086a28cd961bfecc00f49ee4f405b2c33739c4684fe08e0ddfc8b6cb494503c
MD5 33f752b812a9413b5829974d4d9b03b5
BLAKE2b-256 f0a9b0fdfbe5ad271de366656d3c66576572b38f065ebf539617a1966b36aab8

See more details on using hashes here.

Provenance

The following attestation bundles were made for air_blackbox-1.15.0-py3-none-any.whl:

Publisher: release.yml on airblackbox/airblackbox

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.15.0 This release

2 files

1.14.0

2 files

1.13.2

2 files

1.13.1

2 files

1.13.0

2 files

1.12.4

2 files

1.12.3

2 files

1.12.2

2 files

1.12.1

2 files

1.12.0

2 files

1.11.2

2 files

1.11.1

2 files

1.11.0

2 files

1.10.0

2 files

1.9.0

2 files

1.8.2

2 files

1.8.1

2 files

1.8.0

2 files

1.7.0

2 files

1.6.3

2 files

1.6.2

2 files

1.6.1

2 files

1.6.0

2 files

1.5.0

2 files

1.4.0

2 files

1.3.0

2 files

1.2.6

2 files

1.2.5

2 files

1.2.4

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.0

2 files

1.0.0

2 files

0.2.0

2 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