Skip to main content

autogen-rubric

One line. Every AI decision attested.

Post-quantum attestation for OpenAI, Anthropic, LlamaIndex, LangChain, AutoGen, CrewAI, and more — anchored permanently to Hedera Consensus Service. Built for EU AI Act Article 12 compliance.

pip install autogen-rubric

Get a free API key

https://rubric-protocol.com/get-started

Takes 10 seconds. Key is shown instantly — no waiting for email.

Auto-Instrumentation

Add one line at app startup. Every AI decision is attested automatically.

import autogen_rubric as rubric

rubric.instrument(
    api_key="your-rubric-api-key",
    pipeline_id="my-ai-app",
)

# Everything below is now attested automatically
# OpenAI, Anthropic, LlamaIndex, LangChain, AutoGen, CrewAI...

Rubric detects which frameworks are installed and patches them at the framework level. Every LLM call, every agent decision, every tool use is cryptographically signed, Merkle-aggregated, and anchored to Hedera Consensus Service.

Get a free API key at rubric-protocol.com.

What instrument() does

  • Detects installed frameworks automatically
  • Patches each at the class level — no per-call code required
  • Submits attestations asynchronously — zero latency impact
  • Stores payload keys to ./rubric_keys/ by default (configurable)
  • Returns an Instrumentation object for status and shutdown

Supported Frameworks

# Auto-detects and instruments any of:
# openai, anthropic, langchain, llama_index,
# autogen, crewai, langgraph, dspy,
# pydantic_ai, google.adk, openai-agents

# NOT auto-instrumented - use the explicit integrations:
#   Haystack:        RubricHaystackComponent / rubric_haystack_callback
#   Semantic Kernel: get_sk_rubric_plugin / rubric_semantic_kernel_filter
#   Strands:         instrument_strands / RubricStrandsHooks

Configuration

rubric.instrument(
    api_key="your-rubric-api-key",
    pipeline_id="loan-underwriting",
    node="eu",
    tier="standard",  # or "developer", "enterprise"
    enterprise=True,  # legacy alias
    payload_key_dir="/secure/keys",
    on_payload_key=my_vault_store,
    background_queue=True,
    flush_interval=5.0,
)

Payload Key Storage

Every attestation is encrypted with a customer-held AES-256-GCM key. The key is returned once and never stored by Rubric. By default keys are written to ./rubric_keys/{attestation_id}.key

For production, provide a custom handler:

def store_in_vault(attestation_id, payload_key):
    my_secrets_manager.store(f"rubric:{attestation_id}", payload_key)

rubric.instrument(api_key="...", on_payload_key=store_in_vault)

Never log the payload key. Never store it next to the attestation record.

Explicit Attestation

For custom inference layers or fine-grained control:

from autogen_rubric import RubricClient

client = RubricClient(api_key="your-key", tier="standard", background_queue=True)

result = client.attest(
    agent_id="custom-model-v2",
    output="Application approved. Confidence: 0.94.",
    confidence=0.94,
    pipeline_id="loan-underwriting",
)

EU AI Act Article 12

Every attested decision receives:

  • ML-DSA-65 post-quantum signature (NIST FIPS 204)
  • Merkle inclusion in a SHA3-256 forest
  • HCS consensus timestamp from an independent network
  • Poseidon2 ZK inclusion proof (customer-retrievable)
  • AES-256-GCM encrypted payload (customer-held key)

The audit trail is independently verifiable without Rubric involvement.

Links

Sandbox execution attestation (new in 1.8.1)

Agent sandboxes (LangSmith Sandboxes, E2B, Modal, Daytona) contain the blast radius of agent-executed code. RubricSandbox proves what happened inside: every command and output digest, every artifact hash, and the base snapshot — signed with ML-DSA-65 and anchored to Hedera at teardown. Sandboxes are the containment layer; this is the flight recorder.

from langsmith.sandbox import SandboxClient
from autogen_rubric import RubricClient, RubricSandbox

rubric = RubricClient(api_key="YOUR_RUBRIC_API_KEY")

with SandboxClient().sandbox() as sb:
    with RubricSandbox(rubric, sb, agent_id="analysis-agent", snapshot_ref="img:py3.12-base") as rsb:
        rsb.run("python clean_dataset.py")
        rsb.run("python generate_report.py")
        rsb.register_artifact("report.pdf", open("report.pdf", "rb").read())
# On exit: one SANDBOX_RUN attestation — command digests, artifact hashes, snapshot lineage —
# independently verifiable at rubric-protocol.com/verify, years after the sandbox is gone.

Works with any sandbox object exposing run(); all other methods pass through untouched. For already-completed runs, attest_sandbox_run(client, commands, artifacts=...) is the one-shot form.

Download files

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

Source Distribution

autogen_rubric-1.10.3.tar.gz (36.7 kB view details)

Uploaded Source

Built Distribution

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

autogen_rubric-1.10.3-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file autogen_rubric-1.10.3.tar.gz.

File metadata

  • Download URL: autogen_rubric-1.10.3.tar.gz
  • Upload date:
  • Size: 36.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for autogen_rubric-1.10.3.tar.gz
Algorithm Hash digest
SHA256 90b63c87d408416038be8917403d8c85cb878ad1cffa21ad41c3c30c26f54620
MD5 cddd0415f4998a2a9deb37392f3f86d3
BLAKE2b-256 07448060e524660a95bf342fb96d9e4e090f777f75d7885aac145a453c0c68aa

See more details on using hashes here.

File details

Details for the file autogen_rubric-1.10.3-py3-none-any.whl.

File metadata

File hashes

Hashes for autogen_rubric-1.10.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9a1c1f051042a42b7f925884aab065d593649008f884035bfa85d5a5ce35a48a
MD5 3d5501344b3b3c06776c5f322e1dd81e
BLAKE2b-256 f39be05ef6ba04117e2af0da1629b14526775a9327f51d9166746872ea3f878b

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.10.3 This release

2 files

1.10.2

2 files

1.10.1

2 files

1.10.0

2 files

1.9.0

2 files

1.8.2

2 files

1.8.1

2 files

1.8.0

2 files

1.7.6

2 files

1.7.5

2 files

1.7.4

2 files

1.7.3

2 files

1.7.2

1 file

1.7.1

1 file

1.7.0

1 file

1.6.5

2 files

1.6.4

2 files

1.6.3

2 files

1.6.1

2 files

1.6.0

2 files

1.5.4

2 files

1.5.3

2 files

1.5.2

2 files

1.5.1

2 files

1.5.0

2 files

1.4.0

2 files

1.3.0

2 files

1.2.0

2 files

1.1.0

2 files

1.0.0

2 files

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