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.3.0.tar.gz (43.5 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.3.0-py3-none-any.whl (41.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ai_trace_auditor-0.3.0.tar.gz
  • Upload date:
  • Size: 43.5 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.3.0.tar.gz
Algorithm Hash digest
SHA256 401303ae12eaf37a3533c85ddc1ae92ff2be19442137e121d0bff2761d763051
MD5 41c2535a8279a95cbf12b9a7c4800150
BLAKE2b-256 9aa6dc89369671f031ab59dff54543aaafcc81fd9a924e118d775c7860a4eaa3

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_trace_auditor-0.3.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.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ai_trace_auditor-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 87c3712e973946141774c48d30e794f9ecbb6ede936297a33b308bba1308f18b
MD5 058f5f6e23febe8115c8dd01b61c0f66
BLAKE2b-256 3b95e162301f5aaabb959ded48e6f953cd09748ee5a624f029ad8c9154fa4da2

See more details on using hashes here.

Provenance

The following attestation bundles were made for ai_trace_auditor-0.3.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