Skip to main content

Python bindings for Assay trace capture, policy coverage, and explanation helpers.

Project description

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:

  • AssayClient for writing JSONL trace records from Python
  • Coverage for policy coverage analysis against trace/tool-call inputs
  • Explainer for rule-by-rule explanation of a single trace
  • a pytest fixture plugin exposed as assay_client

Install

pip install assay-it

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 wrap and 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

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

assay_it-3.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (499.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

assay_it-3.7.0-cp312-cp312-macosx_11_0_arm64.whl (767.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

assay_it-3.7.0-cp312-cp312-macosx_10_12_x86_64.whl (905.0 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

File details

Details for the file assay_it-3.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for assay_it-3.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 056d99bf2fb4ac7dbe8b0e8facb39e4c1820ae976e48b4f12fe3ae9a7e0520c9
MD5 c46d798f114dd215514b5c45ac05eb41
BLAKE2b-256 5dc8cb6a30d2e8c2007a18e98617a3f7d4117ebf22c4a0df5fe00b9f1a5eea4f

See more details on using hashes here.

Provenance

The following attestation bundles were made for assay_it-3.7.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on Rul1an/assay

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

File details

Details for the file assay_it-3.7.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for assay_it-3.7.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a26fb34f74fec0ca02417d64ea9a6b12d17b6be59401691843d025f2e1403c82
MD5 3ef450f3d635705a03bdb83a75ba60e8
BLAKE2b-256 0636a79abff1671c5b3b4bc1765aab18503848d4e480edfe26495fe5be5fc997

See more details on using hashes here.

Provenance

The following attestation bundles were made for assay_it-3.7.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on Rul1an/assay

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

File details

Details for the file assay_it-3.7.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for assay_it-3.7.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 bdce9bef72108fdd7c376198620cd9f7932df72d81bf7f5740b2bdaee6901063
MD5 ca0cfd620042d09cccdd477cb0bcac54
BLAKE2b-256 8cf4ae68655fb0cfa2ba2590c21b80b6e0db246ec95aa7a0c9f991d064a7fd08

See more details on using hashes here.

Provenance

The following attestation bundles were made for assay_it-3.7.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on Rul1an/assay

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