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.26.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (494.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

assay_it-3.26.0-cp312-cp312-macosx_11_0_arm64.whl (763.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

assay_it-3.26.0-cp312-cp312-macosx_10_12_x86_64.whl (899.9 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

File details

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

File metadata

File hashes

Hashes for assay_it-3.26.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bc8cabeea49aa6506eb46aa79c6ea6bce53a33d06732ce1bec49b8c3b8198734
MD5 1438d9791377d8f7faca077c945776d6
BLAKE2b-256 2a620d549e9d7a1ae51a697af2bb69e2c8eb3645773cf122990600f5417f2f76

See more details on using hashes here.

Provenance

The following attestation bundles were made for assay_it-3.26.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.26.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for assay_it-3.26.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d8ca4f14365de39071c10afa15421198f3d79d2a95c115ab01c59b46eff95247
MD5 f62b178dc068f83690bcb1f500ce44c7
BLAKE2b-256 41302df8b2390d1ca6ca1ab01f8e5dd727da46ad4d9af00ca8ccb6c030abb87b

See more details on using hashes here.

Provenance

The following attestation bundles were made for assay_it-3.26.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.26.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for assay_it-3.26.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 091b61b7d7517bed8c70e4b553d89f7d76ca737ca6ea4ded3746d0175db643fa
MD5 2e8d3bb0271ccbda5f59be3412910ef8
BLAKE2b-256 b5025090f4d91c6c2b6fc0569ff95193ceec5136b08cad132e70cf1e6fa10074

See more details on using hashes here.

Provenance

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