trigger sits in the prompt every turn; the full instructions
load when the agent invokes the skill mid-meeting, and are dropped when the
flow completes.
You define a skill once on your account and attach it to any number of
scenarios — the same shape as tools and
guardrails.
Why a skill instead of a longer prompt
Without skills, every capability lives in the prompt all the time, which causes two specific failures:- Over-eager behaviour. The agent acts on a capability the participant only mentioned. A skill has to be deliberately invoked, so a passing remark cannot trigger it.
- Prompt dilution. Instructions for a rarely-used flow compete with the persona’s core behaviour on every single turn. A skill costs one line until it is needed.
The Skill object
Single-object endpoints return the object directly. List endpoints wrap
their rows in
data, which is where cursor pagination
merges has_more and next_cursor.Gating tools behind a skill
gated_tool_names is what makes a skill more than a prompt trick. Names listed
there refer to tools on your account, and
those tools refuse to execute until the skill is invoked.
schedule_demo cannot fire because the participant said the word “demo” in
passing — the agent has to commit to the flow first. This is the fix for
over-eager tool calls, and it is enforced at execution time, not by asking the
model nicely.
A name that matches no tool on your account simply gates nothing; it is not an
error. An empty array means the skill is purely behavioural.
Attaching to a scenario
A skill does nothing until it is attached. Attach is idempotent, and re-attaching a disabled pair re-activates it.
Changes apply from the scenario’s next meeting. A call already in progress
keeps the skill set it started with.
Writing a good trigger
The trigger is the only part the agent sees every turn, and it is what decides whether the skill fires at the right moment.- Name the observable request, not an inferred mood. “Seems interested” is a guess; “asks to see the product” is something the participant actually said.
- Keep it under a line or two. It is charged on every turn of every meeting.
- Prefix with the skill name. It reads naturally in the trigger list the agent receives and makes your logs easier to follow.
Lifecycle
If the skill lookup fails at meeting start, the meeting proceeds without
skills rather than failing to connect. Attaching a skill can never stop a call
from starting — but it also means a misconfigured fetch degrades silently, so
verify a new skill on a test meeting before relying on it.

