Skip to content

Skills and discovery

The assistant works through skills: actions it has found on the current page or that you have described. Each skill is classified as a read or a write, and that classification decides what the user must review.

The embed reads the visible, accessible structure of the page: buttons, links, form fields, headings and tables. Accessible names matter; a button labelled “Save invoice” is easier to use correctly than an unlabelled icon.

Some controls need a real user gesture. When that happens, the assistant asks the user to complete the step. Execution stops when the page navigates or closes.

The embed observes the requests your application makes after the loader runs and can reuse them as skills. Place the loader before your application’s entry script so startup requests are seen; an async tag may miss them.

Discovery cannot see server-only routes, workflows the user has not visited, closed shadow roots or cross-origin frames. Describe those with hints.

A hints file is a JSON document served from your own origin, conventionally /agent-hints.json. Set its path in your site’s settings in the dashboard. The current format is version: 2:

{
"version": 2,
"privateSelectors": ["#login-form"],
"operations": [
{
"id": "inventory.list",
"name": "List inventory items",
"description": "Read one page of inventory items.",
"effect": "read",
"api": { "kind": "api", "origin": "https://app.example.com", "method": "GET", "pathTemplate": "/api/items" },
"inputSchema": { "type": "object", "properties": {} }
}
]
}

Each operation’s effect is read, write or unknown. Classify carefully: writes are shown to the user for review before they run, so marking a write as a read removes that review. privateSelectors excludes matching parts of the page from what the assistant reads.

If your page declares WebMCP tools for agents, the assistant can discover and call them alongside the skills above. Consequential tools are shown to the user for review like other writes.

  • Security: private content, approvals and key handling.
  • Installation: session modes and Content Security Policy.