Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Arbiter

Know which AI systems you run, and be able to show it.

Arbiter is an open-source AI governance gateway and EU AI Act compliance toolkit. It links what an organisation declares about its AI systems with what their traffic shows, and reports what does not match.

CI Python 3.12+ Licence Apache-2.0 Status alpha

Alpha. Not released yet, never run in production, and not legal advice: every classification is indicative until a person reviews it, and the AI Act rule pack has not been reviewed by a person with legal training. Read scope and limits first.

English Italiano
See it at work: a day at an invented firm, from a real run A day at Nordwind Una giornata alla Nordwind
What it is, for people who are not developers Arbiter in brief Arbiter in breve

Contents: the problem · what it does · what it is not · try it · what is inside · documentation · status · questions · contributing

The problem

The EU AI Act, and most internal policies, ask an organisation to know which AI systems it runs, what they are for and how risky they are. That knowledge usually lives in a list someone wrote once. The list says what was remembered that day, not what happens today: a tool switched to another model, a retired system that still answers, a team using a model nobody declared.

Gateways for language models see the traffic and know nothing of the law. Governance tools hold the inventory and never see the traffic. Arbiter joins the two.

What Arbiter does

Declares An inventory of AI systems, each with the role the organisation has for it
Classifies An indicative AI Act tier for each system, with the provision and the date behind every outcome. Rules are data; a person confirms or overrides
Controls A gateway in front of models, MCP tools and A2A agents: approved models only, personal data masked, budgets, grants. Your own rules are a file
Records Every decision in a log that can be verified. No prompt, argument or answer is stored
Compares What was declared against what the traffic shows. What does not match is a finding for a person to judge, and undeclared use is named
Reports A daily digest and reports, in English and Italian, as Markdown, HTML or PDF

The gateway and the toolkit each work without the other. If you already run an LLM gateway, keep it: Arbiter imports its records.

What it is not

  • Not legal advice, and not a certificate. It never says a system complies.
  • Not a judge of whether a declaration is true. A tier follows from the answers given.
  • Not all-seeing. It governs what passes through it or is imported. A service opened in a browser is not seen.
  • Not for providers. It covers the obligations of those who deploy AI systems.
  • Not a dashboard. A command line, an HTTP API, reports and a digest.

More, and what was and was not verified: scope and limits.

Try it in two minutes

No Docker, no cloud account, no real model: a mock answers in its place.

git clone https://github.com/ViciusLio/ai-arbiter && cd ai-arbiter
uv sync --all-extras                       # needs Python 3.12+ and uv
uv run arbiter init                        # a local workspace on SQLite
uv run arbiter demo tour --case consulting --report out/demo.html

The last command follows an invented firm that approved one family of models: it prints thirteen steps and writes the day as a page like this one.

Once the first release is published, the same without a clone:

pip install --pre "ai-arbiter[gateway,mcp]"   # --pre: the first release is an alpha
arbiter init && arbiter demo tour --case consulting --report out/demo.html

Your own systems, the gateway as a service, and a live session in front of people: getting started and giving a demonstration.

What is inside

Part What it gives you Guide
Gateway An OpenAI-compatible endpoint with identity, policy as data, redaction, routing, cost metering and budgets Gateway
Tools and agents A catalogue and a proxy for MCP servers, a registry and a proxy for A2A agents: nothing is called without a grant, every call is recorded Gateway
Audit log One hash chain per tenant, verifiable and exportable, with no content and no names Audit log
Compliance toolkit Inventory, AI Act classifier, review, scanner, findings, discovery, importers, digest and reports Compliance toolkit
Demonstrations A guided tour, a use case told as a story, three scenarios with expected outcomes Demonstration

The base install is the toolkit and the command line on SQLite. The rest is optional:

Extra Adds
gateway The HTTP service, PostgreSQL, calls to providers
mcp, a2a The proxies for tools and for agents
pii Detection of names and places in prompts, run locally
pdf Reports as PDF
otel Tracing
all Everything above

Documentation

I want to Read
Install it and make a first request Getting started
Show it to someone Giving a demonstration
Know what it covers and what it does not Scope and limits
Configure the gateway, the proxies, budgets Gateway
Declare systems, classify, scan, report Compliance toolkit
Understand and verify the audit log Audit log
See how well personal data is detected PII evaluation
Understand the design Architecture and the decision records
See what changed Changelog

Status and roadmap

Version Content State
0.1 Gateway, compliance toolkit, importers, discovery, reports Built. First release: 0.1.0a1, an alpha. 0.1.0 waits for a legal review of the rule pack
0.2 Tools (MCP) and agents (A2A), the demonstrations Built, part of the same alpha
0.3 Deployment on Azure, observability, hardening Not started
1.0 Documentation and packaging for adopters Not started

Nothing is published on PyPI yet. Phase by phase, with what each one left open and every improvement that was noted: status and tracking.

Hard questions

"Another LLM gateway?", "Can a YAML file read the AI Act?", "Was this written by an AI?", "Is it safe in front of my keys?": the objections a careful reader will raise are answered, without varnish, in hard questions.

Contributing and security

Issues and pull requests are welcome: how to contribute. Report a vulnerability privately: security policy.

Licence and name

Apache-2.0: see LICENSE. The distribution is ai-arbiter, the command is arbiter. It is not related to arbiter-ai or arbiter on PyPI, which are other projects by other authors. Model and product names that appear in examples and documents are trademarks of their owners, who have no relation to this project.

Arbiter is a support tool. It does not provide legal advice.

Metadata

Release files for ai-arbiter 0.1.0a1

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

Source distribution (sdist)

Source distribution for ai-arbiter 0.1.0a1
File Size Uploaded Provenance
ai_arbiter-0.1.0a1.tar.gz 393.9 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ai-arbiter 0.1.0a1
File Interpreter ABI Platform
ai_arbiter-0.1.0a1-py3-none-any.whl Python 3 none any Details

Total release size: 754.0 kB

Release files / ai_arbiter-0.1.0a1.tar.gz

Download URL ai_arbiter-0.1.0a1.tar.gz
Size 393.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f906810c3773f1c2617f41fd1eaac3da25540182ac4a09fdad882783e00c3276
BLAKE2b-256 checksum
How to use checksums
0f61f6ab73be472d8c86c94e4da45685ff8104c6ab8cfb5833f7faacace7a6a6
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 Oct 6, 2026.

Transparency log

Release files / ai_arbiter-0.1.0a1-py3-none-any.whl

Download URL ai_arbiter-0.1.0a1-py3-none-any.whl
Size 360.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
147e85551019c938976935da7d1d264ee944526303cfddaeecb957b5645719bc
BLAKE2b-256 checksum
How to use checksums
6dcb475c8b70e07478b414638b7154f544a952d7781ca2b783033427f5503753
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 Oct 6, 2026.

Transparency log

Security for ai-arbiter 0.1.0a1

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for ai_arbiter-0.1.0a1.tar.gz

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 Oct 6, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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