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

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

assay_it-3.16.0-cp312-cp312-macosx_11_0_arm64.whl (769.9 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

assay_it-3.16.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.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for assay_it-3.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 49127fed932e7cce943573b90f410f26642e17a219445c190abc1f648e2a5920
MD5 324dd48d0a46310e73c1dc7262bd36d2
BLAKE2b-256 e574ae788121e53c1f649361aacde243eed581b2a88d13736005aa503027c383

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for assay_it-3.16.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b2a7d6088823b9d39da07240c9c192ae8e89ddf88b0df86486bb1e954c4c41e7
MD5 1d774b38624f9f2f932578e6d73d4fff
BLAKE2b-256 65b84f59862e8344f5bcf1ab7632a7941c38d81c2ba98f92f7decb4a615fbb3c

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for assay_it-3.16.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 13124c06f8c7976e8f92c883b09183252ed76bfb6e6ba60fea2079f06035f02e
MD5 ee6747ace59de10a2eb38d7ace832c2b
BLAKE2b-256 8250fe861e83e2ce1f386206c95376ee12b99460f5f87a3f1c5793fb4019c950

See more details on using hashes here.

Provenance

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