Skip to main content

Quesen — AutoGen Tool

Deterministic Agent Firewall + A2A risk validation exposed as AutoGen (v0.4+) function tools.

Status: v0.3.0 · tracks Quesen engine v1.10.0 (TSC v2 firewall) · requires quesen-sdk>=0.4.1. Developer portal: https://senueren.co.za/quesen · Source: https://github.com/Shxnque/quesen


Agent Firewall (no signup)

import os, asyncio
os.environ["QUESEN_BASE_URL"] = "https://web-production-3df26.up.railway.app"
os.environ["QUESEN_SANDBOX"] = "1"          # self-serve a free key

from quesen_autogen import quesen_firewall   # register on any AutoGen agent's tools

async def main():
    v = await quesen_firewall(action="send_data",
                              target="https://paste.evil.example", data_class="secret")
    print(v["decision"])                      # 'BLOCK'
asyncio.run(main())

Install

pip install quesen-autogen
# or:
pip install git+https://github.com/Shxnque/quesen-autogen.git

30-second usage (AutoGen v0.4+)

from autogen_agentchat.agents import AssistantAgent
from autogen_ext.models.openai import OpenAIChatCompletionClient
from quesen_autogen import quesen_validate, quesen_simulate, quesen_report

model = OpenAIChatCompletionClient(model="gpt-4o-mini")
agent = AssistantAgent(
    name="defensive_trader",
    model_client=model,
    tools=[quesen_validate, quesen_simulate, quesen_report],
    system_message=(
        "Before any high-stakes action, call quesen_validate. "
        "Do not proceed unless the decision is PROCEED."
    ),
)

Receipt provenance (v1.10)

quesen_validate(...) returns the raw response dict from AsyncQuesenClient. Against a v1.10.0+ engine the dict includes:

  • input_snapshot_hash — SHA-256 over canonical request JSON.
  • commit_sha — git SHA of the engine ruleset live at decision time (or "unknown").

See the public API reference.

Tools shipped

  • quesen_validate(...) — wraps /validate (carries v1.10 provenance)
  • quesen_simulate(...) — wraps /simulate
  • quesen_report(...) — wraps /report (v1.1 schema)

Each is a plain async Python function with type-annotated arguments — AutoGen consumes those signatures directly.

MIT license. See senueren.co.za/quesen for canonical documentation.

Metadata

Release files for quesen-autogen 0.5.1

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

Source distribution (sdist)

Source distribution for quesen-autogen 0.5.1
File Size Uploaded
quesen_autogen-0.5.1.tar.gz 6.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for quesen-autogen 0.5.1
File Interpreter ABI Platform
quesen_autogen-0.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 13.0 kB

Release files / quesen_autogen-0.5.1.tar.gz

Download URL quesen_autogen-0.5.1.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
175a7e3de4acb399a7bd72210fc00241e2a337e5f00b16fab07e4e734c86ae99
BLAKE2b-256 checksum
How to use checksums
e8e9220603806d0e0e0b771a1e611d76f56297c2f756fd162b8ff4ce6828e5e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release files / quesen_autogen-0.5.1-py3-none-any.whl

Download URL quesen_autogen-0.5.1-py3-none-any.whl
Size 6.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b1f6ca3945e1dd44ae7506c714f2faf4438c8b61e706cd0b293417c6c222cc86
BLAKE2b-256 checksum
How to use checksums
549f0c64680cda97376eb928ee03cdcbba073b4e3d170cb10856890cf14ec8e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.16

Release history Release notifications | RSS feed

This release

0.5.1 This release

2 release files

0.5.0

2 release files

0.3.0

2 release 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