Problem
ADK currently provides callbacks (before_tool_callback, after_tool_callback) for tool execution. These are excellent for instrumentation, but the evidence they produce lives in operator-controlled infrastructure — logs, databases, observability tools.
For regulated industries (finance, healthcare, government) deploying ADK agents, the audit requirement is stronger: independently verifiable records that an auditor can check without trusting the operator's infrastructure. EU AI Act Article 12 enforcement begins August 2, 2026.
Proposed integration pattern
The existing after_tool_callback hook is the right interception point:
from google.adk.agents import Agent
from google.adk.tools.tool_context import ToolContext
from nobulex import Agent as NobulexAgent
nobulex = NobulexAgent('my-adk-agent')
def compliance_after_tool(
tool, args: dict, tool_context: ToolContext, tool_response
):
receipt = nobulex.sign_receipt(
action_type=tool.name,
scope=str(args)
)
# Ed25519 signed, hash-chained, independently verifiable
# Auditor verifies offline with only the public key
tool_context.state['last_receipt_ref'] = receipt.action_ref
return tool_response # unmodified
agent = Agent(
name='compliance_agent',
model='gemini-2.0-flash',
tools=[...],
after_tool_callback=compliance_after_tool
)
What this provides
- Tamper-evident: every tool call is signed; modify any receipt and verification fails
- Hash-chained: the full action history is linked — any gap or modification is detectable
- Independently verifiable: auditor needs only the agent's public key, no ADK or operator dependency
- EU AI Act Article 12: export the chain as a regulator-facing evidence package
Request
- Confirm that
after_tool_callback is the intended integration surface for post-execution audit layers
- Consider a
contrib/compliance/ example showing this pattern for regulated deployments
pip install nobulex — live on PyPI, cross-validated test vectors, LangChain/CrewAI integrations already shipping. Happy to contribute the ADK example.
Problem
ADK currently provides callbacks (
before_tool_callback,after_tool_callback) for tool execution. These are excellent for instrumentation, but the evidence they produce lives in operator-controlled infrastructure — logs, databases, observability tools.For regulated industries (finance, healthcare, government) deploying ADK agents, the audit requirement is stronger: independently verifiable records that an auditor can check without trusting the operator's infrastructure. EU AI Act Article 12 enforcement begins August 2, 2026.
Proposed integration pattern
The existing
after_tool_callbackhook is the right interception point:What this provides
Request
after_tool_callbackis the intended integration surface for post-execution audit layerscontrib/compliance/example showing this pattern for regulated deploymentspip install nobulex— live on PyPI, cross-validated test vectors, LangChain/CrewAI integrations already shipping. Happy to contribute the ADK example.