Four-Layer Agent Containment Stack
The full containment stack in one diagram: sandbox, permission gate, HITL approval and SIEM audit applied in sequence around a single dangerous tool call.
Layer 4 of the agent containment stack: arguments are sanitized, secrets stripped and the action trace written to the SIEM before execution continues.
Copy and paste the following FlowZap code into a project in your FlowZap account to see this template diagram.
agent { # Agent
n1: circle label:"Execute Tool Call"
n2: rectangle label:"Send Event to Logger"
n5: rectangle label:"Continue Execution"
n6: circle label:"Done"
n1.handle(right) -> n2.handle(left)
n2.handle(bottom) -> siem.n3.handle(top) [label="log event"]
}
siem { # SIEM Audit System
n3: rectangle label:"Sanitize Args and Strip Secrets"
n4: rectangle label:"Write to Immutable Log Store"
n3.handle(right) -> n4.handle(left)
n4.handle(top) -> agent.n5.handle(bottom) [label="logged"]
n5.handle(right) -> n6.handle(left)
}
Install the MCP packagenpm install -g flowzap-mcpMCP documentation
The full containment stack in one diagram: sandbox, permission gate, HITL approval and SIEM audit applied in sequence around a single dangerous tool call.
Layer 1 of the agent containment stack: every tool call executes in an ephemeral container, and any path outside the workspace is denied and logged as a security event.
Layer 2 of the agent containment stack: a permission gate checks the whitelist and path scope before execution, and aborts the call with a logged denial when the scope does not match.
Layer 3 of the agent containment stack: dangerous tool calls are suspended and sent to a human reviewer, who approves or aborts the operation before anything executes.
Rule 3 in practice: the agent that acts emits the action trace, a separate verification lane confirms the effect, and only a human closes the case.
Consent is not a mandate: a third-party agent's requested scope is compared to the customer mandate before read-only access is granted, and every access event is audited.