Skip to main content

aigp-client

Universal client for the AIGP Runtime Governance Protocol (AIGP) v4.0 — consent-based runtime AI governance with jurisdictional enforcement.

Install

pip install aigp-client

Quick Start

from aigp_client import AigpClient

client = AigpClient("https://your-gov-server.com", "my-app", "hmac-secret")

# Declare governance context (once at startup)
client.declare_universal_context({"active": True, "principles": "ALL"})

# Every AI call: CHECK → invoke → RECORD
decision = await client.check("chat", "claude-4")
# ... invoke your model ...
await client.record(use_case="chat", model_id="claude-4", input_tokens=500, output_tokens=200, duration_ms=1200)

One-Line Governance

from aigp_client import govern

aigp = govern("https://gov-server.com", "my-app", "secret")
result = await aigp.wrap(my_ai_function)  # CHECK + RECORD automatic

Jurisdictional Governance (v4.0)

Declare which legal frameworks govern your AI system:

from aigp_client import (
    AigpClient, HumanitarianContext, RegulatoryContext,
    AfricanContext, JapaneseContext,
)

client = AigpClient("https://gov.example.com", "my-app", "secret")

# Universal baseline (RFC-031) — all apps should declare this
client.declare_universal_context({"active": True, "principles": "ALL", "accountability_required": True})

# EU AI Act (RFC-028)
client.declare_regulatory_context(RegulatoryContext(
    active=True, framework="EU_AI_ACT", risk_classification="HIGH_RISK",
    deployer_jurisdiction="DE",
))

# Japan AI Promotion Act (RFC-030)
client.declare_japanese_context(JapaneseContext(
    active=True, governance_framework="JAPAN_AI_PROMOTION_ACT",
    sector="HEALTHCARE", innovation_priority=True,
))

# AU Continental AI Strategy (RFC-029)
client.declare_african_context(AfricanContext(
    active=True, governance_framework="AU_CONTINENTAL_AI_STRATEGY",
    member_state="KE", ubuntu_principle=True,
))

# IHL — conflict zones (RFC-027)
client.declare_humanitarian_context(HumanitarianContext(
    active=True, legal_regime="IHL_GCIV", conflict_classification="NIAC",
    operating_authority="ICRC",
))

All subsequent CHECK requests are evaluated against declared contexts. Priority: IHL → EU → AU → Japan → Universal.

User Feedback (RFC-026)

await client.feedback(request_id="req-123", session_id="ses-abc",
                      rating="thumbs_up", pseudonym_id="user-hash")

Multi-Agent Delegation

from aigp_client import SessionContext, DelegationToken

session = SessionContext(user_id="coordinator@company.com")
child = session.child(scope=["search_only"])

token = DelegationToken(issuer="coordinator", delegate="worker",
                        allowed_models=["claude-4"], max_tokens=10000)
encoded = token.encode("shared-secret")

Token Tracking

from aigp_client import TokenAccumulator

tokens = TokenAccumulator()
tokens.add_from_usage({"prompt_tokens": 500, "completion_tokens": 200})  # OpenAI
tokens.add_from_usage({"inputTokens": 300, "outputTokens": 150})          # Bedrock
print(f"Total: {tokens.total_input} in, {tokens.total_output} out")

Full Lifecycle Trace

from aigp_client import TraceBuilder

tb = TraceBuilder(request_id="req-1")
tb.start(1); tb.end(1, attributes={"user_id": "user@co.com"})  # Identity
tb.start(3); tb.end(3, attributes={"decision": "ALLOW"})        # CHECK
tb.start(9); tb.end(9, attributes={"model": "claude-4"})        # Invoke
tb.add_tool_span("search_docs", duration_ms=45)                  # Tool
tb.start(14); tb.end(14)                                         # RECORD
spans, summary = tb.build()
await client.trace(trace_id=tb.trace_id, spans=spans, summary=summary)

Tool Governance

from aigp_client import ToolGovernance

tg = ToolGovernance(client=client)
decision = await tg.check_tool("execute_sql", params={"query": "SELECT *"})

Modes

Mode Behavior When no decision is obtained
REPORT Log all, allow all UNCHECKED (proceeds, never reported as ALLOW)
REPORT-TRACE Log + stage-level spans UNCHECKED (proceeds, never reported as ALLOW)
ENFORCE Check policies, block violations Deny (fail-closed)

"No decision" = server unreachable, non-2xx status, non-JSON body, or a body without a valid decision (RFC-010). A non-decision is never cached. RATE_LIMITED blocks like DENY.

Supported Languages

Python TypeScript Go Java C# Rust Ruby Swift
✅ ✅ ✅ ✅ ✅ ✅ ✅ ✅

All 8 SDKs have: declareHumanitarianContext, declareRegulatoryContext, declareAfricanContext, declareJapaneseContext, declareUniversalContext.

License

Proprietary — © 2025-2026 Kanjani AI Research & Causum. All rights reserved.

Metadata

Release files for maigp-client 5.3.0

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

Source distribution (sdist)

Source distribution for maigp-client 5.3.0
File Size Uploaded
maigp_client-5.3.0.tar.gz 84.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for maigp-client 5.3.0
File Interpreter ABI Platform
maigp_client-5.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 163.7 kB

Release files / maigp_client-5.3.0.tar.gz

Download URL maigp_client-5.3.0.tar.gz
Size 84.5 kB
Tags Source
SHA-256 checksum
How to use checksums
94f02da1ad15f63311506494b0d5d4265e30a4f469c4b30de8f4104c81098aba
BLAKE2b-256 checksum
How to use checksums
469320e3936bf9d91ab4daadea2f4c8a88be7149480760c3dd83288d1428a54c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / maigp_client-5.3.0-py3-none-any.whl

Download URL maigp_client-5.3.0-py3-none-any.whl
Size 79.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5481663b6bbdcc00bbb85efff85b2e4f0e6ba3019406e0608fe6eb958ea20642
BLAKE2b-256 checksum
How to use checksums
f8df2710bec0c0a82fa0df37dd0d69f6ebec0198f3ded3da43307167953b3bc6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

5.3.0 This release

2 release files

5.2.0

2 release files

5.1.0

2 release files

5.0.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