Safety Model¶
ToolRampart controls whether a Python tool function is allowed to run.
It does not replace least-privilege service credentials, network controls, or application-specific checks inside the tool function.
Execution Pipeline¶
Every tool call follows this path:
- Validate input from the function signature.
- Verify the actor has required scopes.
- Run custom policy functions.
- Create or verify approval records.
- Check idempotency keys.
- Enforce rate limits.
- Execute with timeout, retry, and optional isolation.
- Validate output if the return type is annotated.
- Redact sensitive fields in audit logs.
- Store audit events.
Trust Boundary¶
For local development, actor and scopes may be supplied in the request body.
For production, enable auth. When auth is enabled, ToolRampart derives actor and scopes from API keys, JWTs, JWKS, or trusted upstream headers.
What ToolRampart Does Not Do¶
- It does not build agents.
- It does not host a chatbot.
- It does not sandbox arbitrary production effects by default.
- It does not make unsafe credentials safe.
Use ToolRampart as the control layer around your tools, then still design each tool with least privilege.