Confirmation Requirements
Confirmation requirements gate operation execution behind explicit acknowledgment by the person the agent acts for.
When Confirmation Is Required
risk_levelishighorcritical- The operation produces irreversible side effects
- Financial transactions exceed defined thresholds
Declaration
<button
axag-intent="order.cancel"
axag-entity="order"
axag-action-type="write"
axag-risk-level="high"
axag-idempotent="true"
axag-confirmation-required="true"
axag-confirmation-message="This will cancel the order and initiate a refund. This cannot be undone."
>Cancel Order</button>
Agent Runtime Behavior
When axag-confirmation-required="true", agent runtimes MUST:
- Present the confirmation message to the user
- Wait for explicit confirmation
- Only proceed upon affirmative response
- Log the confirmation event
Server Enforcement
Confirmation that only happens in the agent can be skipped, so the server MUST be able to tell that a person confirmed this call. In the SDK:
- The page's safety enforcers show a confirmation dialog the agent can't dismiss, and exchange the person's answer for a single-use token bound to the intent, the parameters and the actor.
@web-axag/serverrefuses a call without a valid token withAXAG_CONFIRMATION_MISSING. A token can't be reused, or replayed with different parameters.
The dialog shows the action's description, its risk level and the parameters the agent supplied. axag-confirmation-message isn't carried into the manifest in 1.1, so write the consequence into axag-description as well.