from sector8 import GuardClient, ToolCallRequest
from sector8.exceptions import AdmissionDeniedError
client = GuardClient()
def guarded_tool_call(tool_name: str, arguments: dict, session_id: str):
result = client.evaluate(
ToolCallRequest(
tool_name=tool_name,
arguments=arguments,
session_id=session_id,
)
)
if result.decision == "DENY":
raise AdmissionDeniedError(
reason=result.reason_code,
evidence_hash=result.evidence_hash,
trace_id=result.decision_trace_id,
)
return dispatch_tool(tool_name, arguments)