Scenario
A LangChain agent can run both read-only and destructive tools. We want low-friction reads and strict gating for writes.Example App
Reference implementation:examples/langchain-tooling-approval/
- wraps tools with
AttestaToolWrapper - applies per-tool risk overrides
- keeps audit consistency across tool invocations
Core Pattern
Production Notes
- classify tools by side-effect class (read/write/irreversible)
- enforce
criticaloverrides for infrastructure mutation tools - monitor denied/escalated rates to tune challenge friction