
Int Reference
Preload Copilot Studio author and advisor agents with YAML file kinds, trigger routing rules, and reference tables for variables, entities, actions, and Power Fx.
Overview
int-reference is an agent skill for the Build phase that preloads Copilot Studio YAML reference tables for triggers, file types, variables, entities, actions, Power Fx, and templates.
Install
npx skills add https://github.com/microsoft/skills-for-copilot-studio --skill int-referenceWhat is this skill?
- Core file-type table: agent, settings, connection references, topics, actions, knowledge, variables, and child agents
- Trigger routing split: `modelDescription` for generative orchestration vs `triggerQueries` for classic pattern matching
- Lists system triggers (`OnConversationStart`, `OnUnknownIntent`, `OnError`, etc.) that bypass phrase or model routing
- Reference coverage includes actions, variables, entities, Power Fx functions, and templates per skill description
- Preloaded by author and advisor agents (`user-invocable: false`), not invoked directly by end users
- 8 core Copilot Studio YAML file roles listed in the core file-types table
- 2 topic routing mechanisms documented: modelDescription and triggerQueries
Adoption & trust: 43 installs on skills.sh; 306 GitHub stars; 3/3 security scanners passed (skills.sh audits).
What problem does it solve?
Authoring agents mix up Copilot Studio file kinds and whether topics route via model descriptions or classic trigger phrases.
Who is it for?
Copilot Studio YAML authoring flows that pair with int-project-context and schema lookup in the same skills pack.
Skip if: Non-Copilot projects or builders who only use the Copilot Studio UI without repo-based `.mcs.yml` authoring.
When should I use this skill?
Preloaded by Copilot Studio author and advisor agents (`user-invocable: false`) when YAML reference tables for triggers, actions, or entities are needed.
What do I get? / Deliverables
Author and advisor agents cite consistent trigger, action, and schema reference tables while editing `.mcs.yml` agent projects.
- Consistent YAML kind and trigger semantics across authoring agents
- Lookup-ready tables for entities, variables, actions, and Power Fx during edits
Recommended Skills
Journey fit
Reference material is only relevant while building or extending Copilot Studio agent definitions in source control, not for distribution or growth work. Agent-tooling captures static authoring cheat-sheets that author/advisor agents consult instead of hallucinating trigger or file-type semantics.
How it compares
In-pack YAML cheat sheet for agents—not a standalone integration skill or Microsoft Learn documentation fetcher.
Common Questions / FAQ
Who is int-reference for?
Microsoft Copilot Studio implementers using the skills-for-copilot-studio author and advisor agents to write or review AdaptiveDialog and related YAML.
When should I use int-reference?
During Build agent-tooling when defining topics, actions, or knowledge YAML and you need trigger types, orchestration routing rules, or file-kind tables without opening external docs.
Is int-reference safe to install?
It is static reference content with no network calls by itself; review the Security Audits panel on this Prism page for the overall skills pack you install.
SKILL.md
READMESKILL.md - Int Reference
# Copilot Studio YAML Reference ## Core File Types | File | Purpose | |------|---------| | `agent.mcs.yml` | Main agent metadata (kind: GptComponentMetadata) | | `settings.mcs.yml` | Agent settings and configuration | | `connectionreferences.mcs.yml` | Connector references | | `topics/*.mcs.yml` | Conversation topics (kind: AdaptiveDialog) | | `actions/*.mcs.yml` | Connector-based actions (kind: TaskDialog) | | `knowledge/*.mcs.yml` | Knowledge sources (kind: KnowledgeSourceConfiguration) | | `variables/*.mcs.yml` | Global variables (kind: GlobalVariableComponent) | | `agents/*.mcs.yml` | Child agents (kind: AgentDialog) | ## Trigger Types Topics with `OnRecognizedIntent` have two routing mechanisms — which one matters depends on the orchestration mode: - **`modelDescription`** — used by **generative orchestration** (`GenerativeActionsEnabled: true`). The AI orchestrator reads this to decide routing. Primary mechanism for generative agents. - **Trigger phrases** (`triggerQueries`) — used by **classic orchestration**. Pattern-matched against the user's utterance. Secondary hints when generative orchestration is enabled. System triggers (`OnConversationStart`, `OnUnknownIntent`, `OnError`, etc.) fire automatically and don't use either mechanism. | Kind | Purpose | |------|---------| | `OnRecognizedIntent` | Trigger phrases matched | | `OnConversationStart` | Conversation begins | | `OnUnknownIntent` | No topic matched (fallback) | | `OnEscalate` | User requests human agent | | `OnError` | Error handling | | `OnSystemRedirect` | Triggered by redirect only | | `OnSelectIntent` | Multiple topics matched (disambiguation) | | `OnSignIn` | Authentication required | | `OnToolSelected` | Child agent invocation | | `OnKnowledgeRequested` | Custom knowledge source search triggered (YAML-only, no UI) | | `OnGeneratedResponse` | Intercept AI-generated response before sending | | `OnOutgoingMessage` | **Non-functional (2026-03-15)** — exists in schema but does not fire at runtime. Do not use. | ### YAML-Only Features These features work at runtime but are **not visible in the Copilot Studio UI**. Warn users that UI edits may silently remove them. | Feature | Notes | |---------|-------| | `triggerCondition` on knowledge sources | The UI only exposes this as an on/off toggle (`=false` to exclude from `UniversalSearchTool`). Arbitrary Power Fx expressions (e.g., `=Global.UserDepartment = "HR"`) work at runtime but can only be set via YAML. Use with caution. (2026-03-16) | ## Action Types | Kind | Purpose | |------|---------| | `SendActivity` | Send a message | | `Question` | Ask user for input | | `SetVariable` | Set/compute a variable (Power Fx expression, prefix `=`) | | `SetTextVariable` | Set a text variable using template interpolation (`{}`). Useful for converting non-text types (e.g., Number) to text: `"You have {Topic.Count} items"` | | `ConditionGroup` | Branching logic | | `BeginDialog` | Call another topic | | `ReplaceDialog` | Replace current topic | | `EndDialog` | End current topic | | `CancelAllDialogs` | Cancel all topics | | `ClearAllVariables` | Clear variables | | `SearchAndSummarizeContent` | Generative answers (grounded in knowledge) | | `AnswerQuestionWithAI` | AI answer (conversation history + general knowledge only) | | `EditTable` | Modify a collection | | `CSATQuestion` | Customer satisfaction | | `LogCustomTelemetryEvent` | Logging | | `OAuthInput` | Sign-in prompt | | `SearchKnowledgeSources` | Search knowledge sources (returns raw results, no AI summary) | | `CreateSearchQuery` | AI-generated search query from user input | ## Connector Actions (TaskDialog) Connector actions (`kind: TaskDialog`) invoke external connector operations. They are stored in `actions/` and require a co