Skip to main content

openai-agents-zambo

Verifiable AER-1 execution receipts for OpenAI Agents SDK agents. OpenAI Agents SDK integration for Zambo: give any agents agent a tool backed by Zambo's 100+ tools, and mint a verifiable execution receipt for every tool event.

Receipts follow AER-1, the IETF draft for verifiable execution receipts created by Brennan Zambo.

  • Every call can mint a public, verifiable receipt (https://zambo.dev/run/<id>).
  • Free tier: 20 calls/tool/day, no account.
  • Endpoint override via ZAMBO_API_URL (default https://zambo.dev/mcp).
  • Hook failures are recorded in receipt_errors and never break the run.

For whole-run workflow receipts with a Merkle root (AER-1 Section 8), see aer1-openai-agents.

Install

pip install openai-agents-zambo openai-agents

Example

import asyncio
from agents import Agent, Runner
from openai_agents_zambo import ZamboRunHooks, zambo_function_tool

hooks = ZamboRunHooks()

agent = Agent(
    name="researcher",
    instructions="Use ask_zambo for anything Zambo's 100+ tools can do.",
    tools=[zambo_function_tool()],
)

result = asyncio.run(Runner.run(agent, "What is the capital of France?", hooks=hooks))
print(result.final_output)
print("Receipts:", hooks.receipt_urls)  # public verifiable receipt URLs
print("Errors:", hooks.receipt_errors)

Requires OPENAI_API_KEY in your environment.

API

  • ZamboRunHooks(timeout=30.0) subclasses agents.RunHooks. Its on_tool_start/on_tool_end publish a receipt for the tool event. Tracks receipt_urls, receipt_errors, last_receipt_url.
  • zambo_function_tool(name="ask_zambo", description=..., timeout=30.0) returns an agents.FunctionTool wrapping zambo_universal. On invocation it calls the endpoint, captures the public receipt URL, and appends it to the returned text. Same receipt tracking attributes. Raises an informative ImportError if openai-agents is not installed.

Honesty note

Receipts record what the Zambo endpoint observed: the goal it received, the result it produced, and the public receipt URL it minted. They do not independently certify anything the endpoint did not see.

Guides

Local AER-1 receipts (no network needed)

The package also mints AER-1 execution receipts locally, with no API calls:

from openai_agents_zambo import mint_receipt, verify_receipt

receipt = mint_receipt("my_tool", {"query": "hello"}, {"answer": "hi"}, ms=42)
assert verify_receipt(receipt)  # recomputes the SHA-256 locally

Local receipts follow the AER-1 core members (id, created_at, tool, provenance_class, canonical_bytes, output_hash) and use the provenance class EXECUTED BY OPENAI-AGENTS-ZAMBO, naming this package as the recording system. They pass the same hash-recomputation check as any AER-1 receipt.

Metadata

Release files for openai-agents-zambo 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openai-agents-zambo 0.1.7
File Size Uploaded Provenance Actions
openai_agents_zambo-0.1.7.tar.gz 8.2 kB Without provenance Details for openai_agents_zambo-0.1.7.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for openai-agents-zambo 0.1.7
File Interpreter ABI Platform Actions
openai_agents_zambo-0.1.7-py3-none-any.whl Python 3 none any Details for openai_agents_zambo-0.1.7-py3-none-any.whl

Total release size: 16.8 kB

Release files / openai_agents_zambo-0.1.7.tar.gz

Download URL openai_agents_zambo-0.1.7.tar.gz
Size 8.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e5edba980bd2ac6f6b1f1180af0ce6579ae95c39c463594a8bc53f4ccac0d3a5
BLAKE2b-256 checksum
How to use checksums
d2ebd173c6b0c521796df5ee8d41a8473de6429691ac4398dbd86c7f3770ce67
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via rambo-pypi-grab/0.1.0

Release files / openai_agents_zambo-0.1.7-py3-none-any.whl

Download URL openai_agents_zambo-0.1.7-py3-none-any.whl
Size 8.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5e842963ddca96317aa9cb85193e58b4da3b05bb967404d0f4de3c0b1ff35f76
BLAKE2b-256 checksum
How to use checksums
2ac1b298f0c89e4575f512c3c188d5718e84b4395e04402b8f88eb48022aef8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via rambo-pypi-grab/0.1.0

Security for openai-agents-zambo 0.1.7

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page