Assay Python Bindings
assay-it is the Python package for the assay import namespace.
It currently provides a small, bounded surface on top of Assay core:
AssayClientfor writing JSONL trace records from PythonCoveragefor policy coverage analysis against trace/tool-call inputsExplainerfor rule-by-rule explanation of a single trace- a
pytestfixture plugin exposed asassay_client
Install
pip install assay-it
CPython 3.12 on macOS x86_64/arm64 and Linux x86_64; other interpreters and platforms are not claimed.
Import path:
from assay import AssayClient, Coverage, Explainer, validate
What It Is
This package is for Python-side trace capture and lightweight policy-analysis helpers. It is useful when you want to:
- append structured trace events to a JSONL file from Python
- analyze tool-call traces against an Assay policy
- explain why a given trace matched or violated policy rules
- use a simple pytest fixture around the Python client
What It Is Not
This package is not the full Assay CLI or the full trust-compiler surface. It does not replace:
assay mcp wrapand runtime MCP enforcement- evidence bundle generation and verification workflows
- Trust Basis / Trust Card generation
- the GitHub Action or release-binary install path
Those outward-facing product surfaces live in the main Assay CLI and repository docs.
Example
from assay import AssayClient, Coverage, Explainer
client = AssayClient("traces.jsonl")
client.record_trace({"tool": "ToolA", "args": {"q": "weather"}})
coverage = Coverage("assay.yaml")
report = coverage.analyze([[{"tool": "ToolA", "args": {"q": "weather"}}]])
explainer = Explainer("assay.yaml")
details = explainer.explain([{"tool": "ToolA", "args": {"q": "weather"}}])
Repository
- Main project: https://github.com/Rul1an/assay
- Current CLI and trust-compiler docs: https://github.com/Rul1an/assay/blob/main/README.md
Release files for assay-it 6.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| assay_it-6.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.17+ x86-64 | Details |
| assay_it-6.3.1-cp312-cp312-macosx_11_0_arm64.whl | CPython 3.12 | CPython 3.12 | macOS 11.0+ ARM64 | Details |
| assay_it-6.3.1-cp312-cp312-macosx_10_12_x86_64.whl | CPython 3.12 | CPython 3.12 | macOS 10.12+ x86-64 | Details |
Total release size: 3.6 MB
Release files / assay_it-6.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | assay_it-6.3.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
c1f47a5cdd09c3ecf9adf70d343f0867215fc5e398a45d12c9a5036eeb213a63
|
|
BLAKE2b-256 checksum How to use checksums |
6304544ecd786e6fe03e9725a2a84799dddb92536b513f44921429b16ab9feeb
|
| 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 Sep 15, 2026.
Transparency logRelease files / assay_it-6.3.1-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | assay_it-6.3.1-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 826.3 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f39e46f1c91a524bb6110c37c4be33082bbed9fb65a4a559a8ad129384da76b1
|
|
BLAKE2b-256 checksum How to use checksums |
d4366915f4e3d50d237f6be527a33abf827c20c4a33d3ae23e06035a6609dfa2
|
| 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 Sep 15, 2026.
Transparency logRelease files / assay_it-6.3.1-cp312-cp312-macosx_10_12_x86_64.whl
| Download URL | assay_it-6.3.1-cp312-cp312-macosx_10_12_x86_64.whl |
|---|---|
| Size | 1.6 MB |
| Tags | CPython 3.12 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
e30ce6bd70aa42e62a3f9ae13663fa10be507a1b47b32e37f792526b9870f312
|
|
BLAKE2b-256 checksum How to use checksums |
50f5fca73c313db34d5740cd8b70dcd08e3c60cedb2c9a9ce44b82c9e61b5de4
|
| 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 Sep 15, 2026.
Transparency log