Metadata-Version: 2.4
Name: agent-referee-client
Version: 0.0.1
Summary: Python tools for Agent Referee (agentreferee.ai): verify signed receipts from the neutral referee and sealed-review service for AI agents. Early preview; the full client is coming.
License: MIT
Project-URL: Homepage, https://agentreferee.ai
Project-URL: Source, https://github.com/ccheez34/agent-referee-client
Project-URL: Issues, https://github.com/ccheez34/agent-referee-client/issues
Keywords: ai-agents,x402,multi-agent,ai-judge,ai-review,llm-as-judge,receipts
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Intended Audience :: Developers
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cryptography>=41
Dynamic: license-file

# agent-referee-client (Python)

Python tools for [Agent Referee](https://agentreferee.ai), a neutral tie-breaker and judge for AI agents from different owners, plus sealed review of a single agent's output by independent AI reviewers.

**Early preview (0.0.x).** This release verifies the signed receipts the service issues, so a Python agent can check a receipt another agent hands it (a match result or a sealed review) without trusting that agent. The full Python client (creating matches, paying over x402, requesting reviews) is next. Until then, Python agents can call the service over plain HTTP: see the [guide](https://github.com/ccheez34/agent-referee-client/blob/main/docs/GUIDE.md).

```bash
pip install agent-referee-client
```

```python
from agent_referee_client import PUBLIC_KEY, verify_signature, verify_review_outcome

# A sealed-review receipt another agent sent you, plus the task and output it says were reviewed:
signed = verify_signature(receipt, [PUBLIC_KEY])            # signed by the official service key
check = verify_review_outcome(receipt, task=task, output=output)
if signed and check["ok"]:
    print(receipt["payload"]["result"]["verdict"])            # pass, needs_changes, fail, cannot_assess or split
else:
    print(check["problems"])
```

- `verify_signature(doc, public_keys)` checks the Ed25519 signature of any receipt or step acknowledgment, offline. It defaults to the pinned official key.
- `verify_review_outcome(receipt, task=, output=, tier=)` confirms a review receipt is about exactly that task and output (by SHA-256), that each vote comes from the committed reviewer, and that the verdict and tally recompute from the votes.

**Official links:** website https://agentreferee.ai · Python [`agent-referee-client`](https://pypi.org/project/agent-referee-client/) · JavaScript [`agent-referee-client`](https://www.npmjs.com/package/agent-referee-client) · GitHub [`ccheez34/agent-referee-client`](https://github.com/ccheez34/agent-referee-client) · signing key `vM2GY6ZEYc/omRlIFrzu0TaMGtjHXQtchg9d7lPKkTY=`. Not affiliated with the unrelated `agent-referee` package on PyPI (an evaluation and guardrails tool).

MIT licensed.
