Skip to course content
Free agentic AI fundamentals course

Introduction to Agentic AI and Workflow Automation

Unit 10.01: Designing the permissions and the gate

Three read-only tools, one that writes reversibly, and exactly one that needs a gate.

The effect column decides everything

Each tool with its effect and whether it is gated, plus the limits and what enforces them.

Below is the design.

TOOL             EFFECT                      GATE
get_invoice      read                        none
get_contract     read                        none
add_note         write, reversible           none
post_credit      moves money, irreversible   APPROVAL REQUIRED

LIMITS           maximum credit 500.00, currencies USD and EUR
GATE POSITION    immediately before post_credit
GATE SHOWS       what will happen, why, the evidence, what happens if you
                 do nothing
ENFORCED BY      the tool list and its written argument rules -- not by
                 instructions to the agent

3 read-only tools, 1 gated. The agent has no way to post a credit without
an approval recorded against it.

One gated tool out of four, and it is the only one with an irreversible effect. The agent physically cannot post a credit without an approval field, because the tool signature requires one.

enforced_by is stated explicitly: tool signatures and argument validation, not instructions. Writing that line forces you to check whether it is true, which is most of its value.

The mistake this prevents

The mistake is designing the tools around what the agent needs to be useful and adding restrictions afterwards. Restrictions added afterwards end up in prompts, because changing a tool signature by then means changing every call site.

Takeaway

Sort tools by effect, gate the irreversible one, and state what enforces the limits. Designing permissions first is what keeps them out of the prompt.