Features are the control plane
Features are product-level buckets for tools such as:- User management
- Billing
- Orders
- Courses
- Catalog
- keep tools organized
- bulk-enable or bulk-disable a whole surface
- reason about what the agent is allowed to do
How classification works
When you create a tool, you can:- auto-classify it into the best existing feature
- attach it to an existing feature
- create a new feature on the spot
Backend tools
Backend tools describe structured API requests. In widget mode, these requests are executed by the widget in the user’s browser against your configured base URL. Each backend tool includes:- HTTP method
- path
- function name
- description
- parameters for path, query, headers, or body
Backend tool rules
- Use clear action names such as
create_invoiceorget_student_profile. - Write descriptions that say exactly when the tool should be used.
GETtools should not include a body.- Start with the highest-value, lowest-risk actions first.
Frontend tools
Frontend tools are manual browser handlers you expose in the host app. Warpy calls them like this:- the action already exists in the client
- you need framework-specific state updates
- you want a controlled browser action instead of UI inference
Screen autopilot
Screen autopilot is separate from your manually defined frontend tools. When enabled, Warpy gets built-in browser capabilities such as:read_pagefind_elementsfrontendjs_exec
- you do not have a dedicated tool yet
- the user wants page-level help or UI completion
- the action is easier to perform through the live interface than through an API
Which surface to use
- Use a backend tool for stable business actions such as create, update, approve, refund, export, or search.
- Use a frontend tool for drawers, side panels, navigation, and framework-specific state changes.
- Use screen autopilot when the best execution path is the live UI and no manual tool exists yet.
Tool routing in practice
Ongoing maintenance
Features are meant to stay editable:- rename a feature
- move a tool to a different feature
- enable or disable a single tool
- enable or disable an entire feature
- delete a feature if you want to remove its tools from the agent surface