Every action the assistant may take lives in one file, verb.md, at your repository root. Not a dashboard toggle: a real file, reviewed in a diff, before any tool exists to be called.
In a monorepo, put it at the root of the deployable app the widget runs in, not the workspace root. Two deployable products means two sites and two verb.md files, because the tools, the domain and the keys all belong to one running app rather than to one repository.
The fastest way to write it is to hand the copy-paste prompt in your dashboard’s install step to your own coding agent. It installs a skill that teaches the format, reads your actual routes rather than guessing at endpoints, and writes the file for you.
Start with one real workflow rather than a mirror of your whole route table, then cover what your users actually ask for. Describing each tool precisely matters more than keeping the list short. Paste the finished file into the dashboard and it goes through an automatic safety review before anything is callable.
The format, and how tools are classified →