skills/edit-triggers/SKILL.md
Modify topic triggers — trigger phrases and model description. Use when the user asks to add, remove, or change trigger phrases, or edit a topic's model description.
npx skillsauth add microsoft/skills-for-copilot-studio skills/edit-triggersInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Modify how a topic gets triggered: trigger phrases (triggerQueries) and model description (modelDescription).
Auto-discover the agent directory:
Glob: **/agent.mcs.yml
NEVER hardcode an agent name.
Find the target topic:
Glob: <agent-dir>/topics/*.topic.mcs.yml
If $ARGUMENTS specifies a topic name, match it. Otherwise, list all topics and ask which one.
Read the topic file and identify what to change.
Check the agent's settings.mcs.yml for GenerativeActionsEnabled. This determines which trigger mechanism matters most.
Make the requested changes using the Edit tool.
modelDescription)The modelDescription is a natural language description at the root of an AdaptiveDialog that tells the generative orchestrator when to route to this topic. When GenerativeActionsEnabled: true, this is the primary way the agent decides which topic to trigger — even more important than trigger phrases.
kind: AdaptiveDialog
modelDescription: This topic helps users order a pizza by collecting their preferred size, toppings, and delivery address.
beginDialog:
kind: OnRecognizedIntent
id: main
...
# Good — specific about what the topic does and when to use it
modelDescription: Use this topic when the user asks for help or needs assistance with something. Search the SharePoint knowledge base to find relevant information.
# Good — describes the full flow
modelDescription: This topic takes the user's favorite color, generates a word by concatenating the color with four random digits, and returns the generated word. If the color is white, it also provides information about the wavelength.
# Good — describes the computation
modelDescription: This sample topic performs the sum between the two numbers in input
modelDescription to topics with OnRecognizedIntent when the agent has GenerativeActionsEnabled: truemodelDescription — they're triggered automaticallytriggerQueries)Trigger phrases are used for intent recognition. They live inside beginDialog.intent.triggerQueries.
Only topics with OnRecognizedIntent triggers have editable trigger phrases. Other trigger types (OnConversationStart, OnUnknownIntent, etc.) are system-triggered and don't use phrases.
triggerQueriestriggerQueriestriggerQueries arraykind: AdaptiveDialog
modelDescription: This topic helps users with greeting and introduction.
beginDialog:
kind: OnRecognizedIntent
id: main
intent:
displayName: Greeting
triggerQueries:
- Hello
- Hi
- Hey
- Good morning
- Good afternoon
testing
Validate Copilot Studio agent YAML files using the LSP binary's full diagnostics (YAML structure, Power Fx, schema, cross-file references). Use when the user asks to check, validate, or verify YAML files.
development
Authenticate for Copilot Studio evaluation API and SDK chat. Caches a token that is shared across run-eval and chat-sdk skills. Run this before any eval or SDK chat workflow. Requires an App Registration with MakerOperations and Copilots.Invoke permissions.
development
Run a batch test suite via the Copilot Studio Kit (Dataverse API). Uses the Power CAT Copilot Studio Kit to execute test cases against a published agent and produces pass/fail results with latencies. Requires the Kit installed in the environment, an App Registration with Dataverse permissions, and a published agent.
development
Run evaluations against a Copilot Studio agent via the Power Platform Evaluation API. Works on DRAFT agents — no publish step required. Lists test sets, starts a run, polls until complete, fetches results, and proposes YAML fixes for failures. Use when the user wants to test agent changes without publishing.