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

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

assay_it-3.8.0-cp312-cp312-macosx_11_0_arm64.whl (767.8 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

assay_it-3.8.0-cp312-cp312-macosx_10_12_x86_64.whl (904.9 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

File details

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

File metadata

File hashes

Hashes for assay_it-3.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4ff5d4064e6caf0153f4f386ff71984e5ef92e6d5cacf06e41fa0fcc0602fde8
MD5 006ae71d36e5de2a2a49229d9d058658
BLAKE2b-256 be1c4705851578c52e6812d1921efa3ddb703b114313206690d7614e926dd396

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for assay_it-3.8.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 debac7c1beacb362dbab33807db589ef1485ac7e3561c83d2d9deea6ab814a02
MD5 f6a8682eb24b75a6e4c9b7cda0271709
BLAKE2b-256 35b283339bb629fa8b61e38ea960cda2e42b48a831f515097233f8b20383f6c7

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for assay_it-3.8.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7e135f76f461fce19b941c8c3b0dfe4ca6c3ff4d8a8e0060d7caf5048698f0b2
MD5 737338726f79f62dbb5c32aa8e49c22e
BLAKE2b-256 2f13cb4fddef0d866fbbc542dd38bdf2fc7135dd6f9861ac9f94a8769fa48b91

See more details on using hashes here.

Provenance

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