20.2 Autopilot for Everyone: Chat, Automations & Clipboard AI
Key Takeaways
Autopilot for Everyone lets business users chat, analyze files, use grounded company knowledge, and run automations; Clipboard AI helps paste into forms.
Build automations for it as cross-platform projects focused on a single task.
Use String, Int32, Double, Boolean, and DateTime inputs, marking required ones, and outputs ResultMessage or output_html.
Throw business rule exceptions with clear messages instead of exposing stack traces.
Autopilot recommends automations from their descriptions and infers arguments using argument prompt descriptions, so make both distinct and clear.
20.2 Autopilot for Everyone: Chat, Automations & Clipboard AI
Core Concept: Autopilot for Everyone is a chat assistant for business users. It answers questions, works with uploaded files and company knowledge, and can recommend and run automations that developers built for it. The exam tests how developers design automations so that Autopilot can find, configure, and run them well.
What Users Can Do
- Chat with a generative AI assistant, starting with their own prompt, a starting prompt, or suggested prompts.
- Upload and analyze files, and use company knowledge made available through context grounding.
- Run automations: Autopilot recommends a matching automation, infers argument values from the conversation, asks for missing ones, and runs it.
- Use specialized Autopilots configured by administrators for specific teams or tasks.
- Paste with Clipboard AI, which maps copied content to the fields of a target form or application.
Users reach Autopilot for Everyone, for example, in the Autopilot tab of UiPath Assistant, which is shown when Autopilot for Everyone is installed in the tenant.
Designing Automations for Autopilot for Everyone
UiPath's best practices for developers:
Project
- Build the project cross-platform so Autopilot can use the automation on macOS too.
- Focus each automation on a single task, for example one to five activities in one sequence.
Input arguments
- Use descriptive names, for example in CamelCase, and mark mandatory arguments as required.
- Use only these types, which Autopilot renders as controls:
| Type | Rendered as |
|---|---|
| String | Free text field |
| Int32 | Whole number picker |
| Double | Whole or decimal number picker |
| Boolean | True/False dropdown |
| DateTime | Date-time picker |
Output arguments
Use only:
ResultMessage: a string shown back to the user, or a string serialization of JSON or a DataTable. Autopilot understands JSON arrays of single-level objects and flat DataTables.output_html: an HTML string that Autopilot renders in an iFrame. The automation must not be configured as a pre-response automation.
Exceptions
Use business rule exceptions with custom messages for known errors, so the full stack trace is not sent to the chat.
Automation Properties
Autopilot for Everyone recommends automations solely from their descriptions. Give each automation a distinct description so recommendations do not overlap. Additional properties, configured in the Admin App, describe:
- what the automation does,
- how its card appears in the chat,
- how to infer each argument, through an argument prompt description for the AI (for example, "The priority of the email. Choices include low, high. If not provided, default is low.") and a description to user shown on the card,
- how it should run, and what context it needs.
Returning Data Wisely
Chat sessions have a limited capacity for information. For retrieval automations, return only the relevant data, for example the five most recent orders with three fields each, not the whole order table.
Worked Example: "Where Is My Order?"
A customer service team wants to ask Autopilot about order status.
- The developer builds a cross-platform automation
GetOrderStatuswith a required String inputOrderNumber. - It calls the order system through an Integration Service connector and returns
ResultMessageas a short JSON array: order number, status, and expected delivery date. - If the order does not exist, it throws a BusinessRuleException with the message "Order not found. Check the number and try again."
- The description reads: "Looks up the status and expected delivery date of one customer order by order number."
- A user types "What's the status of order 55120?" Autopilot recommends the automation, fills
OrderNumberwith 55120 from the message, runs it, and shows the result.
Checklist Before Publishing an Automation for Autopilot
- The project is cross-platform and does one task.
- Every input is String, Int32, Double, Boolean, or DateTime, with required ones marked.
- Outputs are
ResultMessageoroutput_htmlonly, and the data returned is short. - Known errors throw business rule exceptions with messages a business user understands.
- The description says what the automation does, for which object, and what the user must provide, without overlapping other automations.
- Each argument has an argument prompt description that tells the AI how to infer it, including defaults and allowed values.
- The automation was tested by typing realistic requests into the chat, including requests that are missing information, to see whether Autopilot asks for the missing values.
Key Terms
- Pre-response automation: an automation configured to run before Autopilot responds; such an automation cannot use
output_html. - Specialized Autopilot: a configured variant for a team or task, with its own instructions and resources.
- Automation card: the chat card that shows the automation, its arguments, and a run button.
Common Traps
- Using argument types Autopilot does not render, such as DataTable inputs.
- Vague or duplicated descriptions, which lead Autopilot to pick the wrong automation.
- Returning huge outputs that exceed the chat's capacity.
- Letting system exceptions surface; use business rule exceptions with clear messages.
Which input argument types does UiPath recommend for automations used by Autopilot for Everyone?
DataTable and Dictionary
String, Int32, Double, Boolean, and DateTime
Only String
Any .NET type
An automation for Autopilot for Everyone should display a formatted table to the user. Which output should it use?
An output named Result of type DataTable.
A log message at Info level.
output_html with an HTML string, which Autopilot renders in an iFrame (the automation must not be a pre-response automation).
A file saved to the desktop.
Autopilot for Everyone keeps recommending the wrong automation. What is the most likely fix?
Give each automation a distinct description, because Autopilot recommends automations solely from their descriptions.
Rename the package.
Increase the robot's runtime count.
Publish the automation to the Shared folder.
Sections you finish are checked off in the contents.