Skip to content

Protocol Overview

UIAP is a standard contract between a running application and an AI agent, so the application can tell the agent in a structured way what’s currently visible, what’s possible, what’s risky, how things may be executed, and how success or failure can be recognized.

  • A UI contract protocol
  • A capability and state protocol
  • An action and feedback protocol
  • A policy and audit protocol
  • Not an LLM prompt format
  • Not a voice protocol
  • Not a replacement for accessibility
  • Not a replacement for browser automation
  • Not just an SDK
  • Not magic that makes bad apps suddenly controllable
#ModulePurpose
1CoreMessage envelope, session lifecycle, errors, versioning, extensions
2Capability ModelUI roles, states, affordances, actions, risk, success signals
3Web ProfileDOM, ARIA, PageGraph, iframes, Shadow DOM, routes, forms, modals
4Action RuntimeAction execution, verification, result reporting
5Policy ExtensionPermissions, confirmations, sensitivity, audit
6SDK APIClient-side integration API for web applications
7Workflow ExtensionSkills, onboarding flows, step orchestration
8Discovery MapperAutomatic UI element discovery and classification
9Authoring/ManifestManifest formats, authoring workflows, validation
10Conformance SuiteTest modules, harness model, evaluation rules
  1. App integrates the UIAP SDK
  2. Session starts (session.initialize)
  3. App sends capabilities (capabilities.list)
  4. App sends current live state (state.snapshot)
  5. Agent plans next action (e.g., action.request(click video.new))
  6. SDK checks policy and execution mode (prefers appAction, falls back to semanticDom)
  7. SDK optionally animates ghost cursor (presentation only)
  8. SDK executes the action and sends action.started
  9. App observes result (route change, toast, field value, dialog close)
  10. App sends feedback + delta (action.succeeded + state.delta)
  11. Agent plans next step (until goal reached or user takes over)
  12. Session ends and trace is finalized (session.end)