Universal Automation Protocol (UAP)
UAP makes automation accessible, portable, and future-proof across platforms.
Universal Automation Protocol (UAP) is an open standard created by HuBrowser to define and run automation tasks on any device or platform. Whether you’re a beginner or an expert, UAP lets you record, import, and export automation tasks in a simple, readable format. Run your automations with any UAP-compatible app—no vendor lock-in.
If you do not have technical knowledge, you can still read this page and easily understand and write your own automation steps. If you have technical knowledge, you will see how this fits into enterprise UI testing and cross-platform automation.
- Human-friendly: Uses
JSONfor easy reading and writing. - Type-safe: Protocol types are defined in
TypeScriptfor reliability. - AI-first: Designed for the new era of mobile AI agents, solving challenges that legacy standards like Playwright or Selenium can’t.
- Cross-platform: Enables sharing automation scripts between platforms—even if HuBrowser doesn’t support iPhone, your scripts can still work.
Terms
- Mode: 3 modes we support:
instruction: Natural Language instruction for the actionrecording: Recorded automation stepsscript: Scripted automation steps
- Harden: Switches from a more flexible mode to a more deterministic mode (e.g. from
instructiontoscript), making the automation faster and more precise. - Soften: Switches from a more deterministic mode to a more flexible mode (e.g. from
scripttoinstruction), making the automation more adaptable but potentially slower.
Example: UAP Action (JSON)
This example shows a simple form fill workflow. UAP actions are easy to write and understand.
Automation Config (TypeScript)
General Structure Control
UAP uses familiar schema concepts to keep definitions clear and extensible:
- properties: Defines the attributes of an object.
- anyOf: Supports multiple possible types or structures.
- required: Specifies fields that must be provided.
- type: Restricts the data type of a value.
- default: Provides a default value.
- item_count_range: Controls the minimum and maximum length of an array.
Tool Use
UAP also supports describing tool and function calls in a structured way:
This structure defines how tools and functions are described in UAP.
Maintenance and Versioning
- version: v25.1
- Open Source License: Apache License 2.0
- AI evolves quickly, but we try to keep changes predictable:
- At most 1 breaking change in 2 months, when you need to redownload the automation protocol file.
- Graceful fallback: If an environment doesn’t support a certain action, UAP-compatible apps should ensure your automation won’t break unexpectedly.
