Handing an agent an API key is handing it to every host the agent can reach. Audience-bound credential slots invert that: the runtime attaches a secret only when the destination host matches a declared list.
A guardrail written into a system prompt is a request. A guardrail enforced at the gateway is a rule. Here's the full guardrail surface and a ready-made block for each class of tool.
Interactive approval works where the client can be asked — and degrades to a confirm step where it can't. The design that survives both is a read-only propose call, then a separate execute call, with the conversation in between.
Every rejection we issue falls into six buckets. Four are caught automatically before a human looks, and all six are things you can check yourself in about ten minutes.