Skip to main content

Audit LLM traces against regulatory compliance requirements (EU AI Act, NIST AI RMF)

Project description

AI Trace Auditor

Audit LLM traces against regulatory compliance requirements. Open-source CLI that sits between your observability stack (Langfuse, Arize, OTel) and regulatory frameworks (EU AI Act, NIST AI RMF).

Your observability tools collect traces. Your GRC platform manages policies. Nothing translates traces into compliance evidence. This tool does.

Install

pip install ai-trace-auditor

Or from source:

git clone https://github.com/BipinRimal314/ai-trace-auditor.git
cd ai-trace-auditor
pip install -e .

Quick Start

# Audit traces against all regulations
aitrace audit traces.json

# Audit against a specific regulation
aitrace audit traces.json -r "EU AI Act" -o report.md

# Audit your Claude Code conversation traces
aitrace audit ~/.claude/projects/*/session-id.jsonl

# Inspect what requirements exist
aitrace requirements --show EU-AIA-12.1

# Just ingest and summarize traces
aitrace ingest traces.json --summary

GitHub Action

Add compliance checks to your CI pipeline:

- name: Audit AI traces
  uses: BipinRimal314/ai-trace-auditor@v0.2.0
  with:
    path: traces/exported.json
    regulation: "EU AI Act"
    output: compliance-report.md
    fail-on-gaps: "true"

The action fails if compliance gaps are found. Set fail-on-gaps: "false" to report without blocking.

What It Checks

EU AI Act Article 12 (Record-Keeping):

  • Event timestamps, operation identification
  • Risk situation logging (errors, failure modes)
  • Model version tracking for post-market monitoring
  • Resource consumption (tokens, latency)
  • Content recording (opt-in)
  • Tool/function call audit trails
  • Trace linkage for multi-step operations

NIST AI RMF:

  • Production monitoring (MEASURE 2.4)
  • Transparency documentation (MEASURE 2.8)
  • Model explainability (MEASURE 2.9)
  • Risk tracking (MEASURE 3.1)
  • Post-deployment monitoring (MANAGE 4.1)
  • Incident communication (MANAGE 4.3)

Supported Trace Formats

Format Source
OTel OTLP JSON OpenTelemetry GenAI semantic conventions
Langfuse JSON Langfuse trace exports
Claude Code ~/.claude/projects/ conversation traces
Raw JSONL Any provider's API logs

Auto-detected. Use --format to override.

Example Output

Real output from auditing 1,522 Claude Code spans:

Overall Compliance Score: 79.3%

| Status    | Count |
|-----------|-------|
| Satisfied |    10 |
| Partial   |     5 |
| Missing   |     3 |

Top gaps:
  1. Not logging: Temperature parameter controlling output randomness
  2. Not logging: Maximum token limit for output generation
  3. Incomplete: Output responses generated by the AI model (31.9% coverage)
  4. Incomplete: Input prompts/messages (4.7% coverage)
  5. Not logging: Operation latency in milliseconds

CI Integration

Exit code 0 = all satisfied, 1 = gaps found:

aitrace audit traces.json -r "EU AI Act" || echo "Compliance gaps detected"

Library API

Use programmatically in your own tools:

from ai_trace_auditor.ingest import ingest_file
from ai_trace_auditor.analysis.engine import ComplianceAnalyzer
from ai_trace_auditor.regulations.registry import RequirementRegistry

traces = ingest_file(Path("traces.json"))

registry = RequirementRegistry()
registry.load()

report = ComplianceAnalyzer(registry).analyze(
    traces=traces,
    regulations=["EU AI Act"],
)

print(f"Score: {report.overall_score:.1%}")
for result in report.requirement_results:
    if result.gaps:
        print(f"  {result.requirement.id}: {result.gaps[0].recommendation}")

Disclaimer

This tool provides automated compliance assessments based on its interpretation of regulatory requirements. It is not legal advice. Consult qualified legal counsel for compliance decisions.

License

Apache 2.0

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

ai_trace_auditor-0.7.0.tar.gz (67.4 kB view details)

Uploaded Source

Built Distribution

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

ai_trace_auditor-0.7.0-py3-none-any.whl (63.1 kB view details)

Uploaded Python 3

File details

Details for the file ai_trace_auditor-0.7.0.tar.gz.

File metadata

  • Download URL: ai_trace_auditor-0.7.0.tar.gz
  • Upload date:
  • Size: 67.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ai_trace_auditor-0.7.0.tar.gz
Algorithm Hash digest
SHA256 d3c50a9daa5c1816cd1a2832f7d73c6a5c9b3f5d57a501a77ebec973c0145922
MD5 554228afd1dc5cf6711bd9d684a8c6c2
BLAKE2b-256 ae68192db7fd788725a0329abc83057604846785f9a14a9f81a83fee25e4bd88

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_trace_auditor-0.7.0.tar.gz:

Publisher: publish.yml on BipinRimal314/ai-trace-auditor

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

File details

Details for the file ai_trace_auditor-0.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_trace_auditor-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a69e29d41e337df1ce14aab01f8077c3b7f5e6ea3a254794e0fd31dfa79ead90
MD5 e45f50b8556fe3e3ac5d33684e5940d8
BLAKE2b-256 91d9a166ceca8b9a3531e8dfe009febd9a4c5d0be84bc56e92515e75b2f5ebc2

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_trace_auditor-0.7.0-py3-none-any.whl:

Publisher: publish.yml on BipinRimal314/ai-trace-auditor

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

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