In this blog post series, I will go through the steps to build an autonomous agent in Copilot Studio. This blog post series has been broken down into 9 parts.
Use case: Imran Rashid Training Ltd (a fictitious company) wants to develop an autonomous AI agent. An agent that can automatically respond to events and take actions without human intervention, using Copilot Studio.
The company wants to help new trainers who are looking for a mentor to help them prepare for new Microsoft courses, such as AZ‑104, SC‑300, AZ‑700, PL‑7008, AZ‑204, AI‑102, AI‑900, AZ‑900, and others.
The company requires new trainers/mentees to complete a Microsoft Form if they would like help when preparing for a course before they begin delivering to customers. When the Microsoft form is submitted, it triggers an autonomous action that allows the agent to process the request automatically. In simple terms, the autonomous agent reacts when something happens, such as a Microsoft form submission.
The autonomous AI agent detects the form submission and processes the request. The agent accesses an Excel spreadsheet that includes a list of trainers who already deliver a number of Microsoft courses and have volunteered to mentor others who are delivering specific courses for the first time.
The agent analyses the form submission and compares it with the Excel data to determine which mentor should be assigned. An email is then automatically sent to the selected mentor so a one‑to‑one call can be arranged.
Furthermore, the agent will update a central Excel spreadsheet with the details of the request, such as the requester’s name, email address, country and areas of concern. The agent will also complete the mentor assigned field so we can track which mentor was automatically assigned to the request.
To summarise, we will:
Create a Microsoft Form that allows new trainers to submit mentoring requests.
Build an autonomous AI agent in Copilot Studio, without writing any code, using natural language to define what the agent is built for and the tasks it needs to complete.
We will name the agent, upload an image/logo, and add draft instructions so the agent understands what it was built for. These instructions will include a few placeholders that we’ll return to and complete later.
Create a Microsoft Form trigger so the agent is able to detect and process new Microsoft forms submissions whenever a form is completed.
Connect the agent to tools such as Excel and Outlook, allowing the agent to automate sending an email, reading an Excel spreadsheet which will include a list of mentors, and updating a log file including mentee details and the name of the mentor assigned.
Let’s get started and build our autonomous AI agent in Copilot Studio.
Task 1: Create Microsoft Form for requesters who require a course mentor
Select Create new and choose Form (in some tenants it may say New form).
Instead of creating the form manually, I will use Copilot in Microsoft Forms to generate the form for me. In Copilot for Microsoft Forms, enter the following prompt:
Promptstart
Create a Microsoft Form titled “Trainer Mentoring Request” for Imran Rashid Training Ltd.
Purpose: allow trainers to request mentoring support before delivering a Microsoft course.
Add a short description at the top explaining that a mentor will be assigned based on the information provided, so it is important that the form is completed accurately.
Include the following questions:
1) Full Name (text, required) 2) Email Address (text, required) 3) Course Selection (choice, required):
5) Specific Areas of Concern (long text, required) – for example, help with demos or course delivery
Prompt end
4. Check you’re happy with the form and feel free to test it clicking the preview button. Change the design of the form if needed and make any additional tweaks to the form.
In this blog post I will explore topics in Copilot Studio, but before we do, let’s understand what topics are for.
Note: In this example, I have already created a Copilot agent and added instructions to define how the agent should behave. The steps below focus specifically on working with topics rather than creating the agent from scratch.
A topic in Copilot Studio tells your agent what to do when a visitor asks a certain type of question. Topics are the core building blocks of an agent because they define how a conversation should flow.
When you create a new agent, Copilot Studio includes some built-in system topics by default. These system topics have specific roles that help the agent handle common conversation events. For example, one system topic is called Conversation Start, which is used to greet users and introduce the agent when a conversation begins.
A topic contains a series of conversation nodes. These nodes define what the agent says, what questions it asks, and how it responds based on the user’s input. Nodes can display messages, ask questions, offer multiple‑choice options, save information, or decide what happens next in the conversation.
Topics are triggered based on what the user means, not just the exact words they type. This means a topic can start even if the user phrases their question differently to the examples you provide. As long as the intent matches, the agent can recognise it and respond using the appropriate topic.
Together, topics and their conversation nodes control how your agent interacts with users and guide them through a natural, structured conversation.
When a visitor starts a new conversation with the agent, the Conversation Start system topic runs automatically. This happens as soon as the conversation begins and does not depend on what the visitor types.
The purpose of this topic is to greet the visitor and set the tone of the conversation. For example, it might say hello and ask whether the visitor needs help or has a question. This helps the conversation feel friendly and natural from the start.
Let’s take another example. A visitor types, “What’s the status of my order?” or “Has my expense form been approved?”
In this case, we can create a custom topic that triggers when someone asks about an order. This topic can ask the visitor for a reference, such as an email address or request ID, and then use connected data (for example, an Excel file or database) to provide an update or response.
Here’s another scenario. A visitor says: “I need a mentor.”
We can create a topic that is designed to trigger whenever someone asks for a mentor. When this topic starts, it can guide the visitor by asking a few simple follow‑up questions, such as:
What subject do you need help with?
What is your experience level?
How would you prefer to be contacted?
Based on the answers, the topic can help the visitor submit a mentor request or move them to the next step in the process.
In simple terms: The visitor asks for a mentor → the topic guides them through the process step by step.
Why topics in Copilot Studio are important
Topics are important because they control how your Copilot behaves during a conversation. They decide:
When Copilot should respond
What Copilot should say
How Copilot avoids guessing or responding incorrectly
Without topics, Copilot wouldn’t know:
Which questions it can answer
What steps to follow
When to stop talking
System vs custom topics
When you create a new agent in Copilot Studio, it automatically includes two types of topics: system topics and custom topics.
System topics are built in by Copilot Studio and handle basic conversation behaviour, such as greeting a visitor, starting or ending a conversation, or responding when the agent doesn’t understand a message. These topics exist in every agent so it can behave politely and safely. You can usually enable or disable system topics, but you can’t delete them because they are part of how Copilot Studio works.
Custom topics control the real work your agent does. Copilot Studio creates a few custom topics automatically to help you get started. These behave just like the custom topics you create yourself, you can open them, edit them, or delete them if you don’t need them. Custom topics are where you define specific scenarios, such as when someone asks for a mentor or wants to check the status of a request.
In short, system topics handle basic conversation rules, while custom topics (including the default ones) are fully under your control.
When a user sends a message, Copilot Studio evaluates all available topics, including both system topics and custom topics, and selects the best matching topic based on what the user is asking.
Let’s take a look at these built-in topics and go through the process of creating a new custom topic.
Select an existing Copilot agent that you have already created. If you don’t have one yet, click Create agent to create a new one.
4. Select Test from the top‑right corner of the Copilot Studio interface, as shown in the image below.
You’ll see that the agent displays the following default welcome message:
“Hello. I’m the Course Mentor Agent. How can I help?”
This message comes from a built‑in system topic called Conversation Start. The Conversation Start topic runs automatically when a new conversation begins and is responsible for greeting the visitor.
Let’s change this default message slightly.
5. Select the topics tabs as shown in the image below.
6. Select System to view the default system‑created topics. These topics are built into Copilot Studio and cannot be deleted.
Select the topic named Conversation Start. This system topic runs automatically when a new conversation begins, which is why it triggers when you open the Test pane. The Conversation Start topic is responsible for greeting the visitor at the start of the chat.
7. I’ll change the welcome message to:
How are you today? 😊
To insert an emoji on Windows, place your cursor in the Copilot Studio message or topic text field and press Windows + . (Windows key and full stop). This opens the emoji picker, allowing you to select an emoji to insert.
8. After editing your topic, click Save inside the topic editor (for example, after updating trigger phrases or the welcome message).
9. Then click Publish at the top of the agent designer to apply all your changes to the agent.
10. Start a new chat by selecting the + icon in the Test window. You’ll see your updated welcome message in the new conversation.
Note: Sometimes the Save button remains greyed out until the focus moves away from the message box. If this happens, click in a plain area outside the topic to enable Save.
Let’s explore some of the other built-in system topics
Copilot Studio Agent System Topics
System topic
What it does
When it triggers
Example (what it can do)
Conversation Start
Greets the user and introduces the agent
When a new conversation begins
User opens chat → Agent says: “Hi! I’m the Course Mentor Agent. How can I help today?”
Conversational boosting
Uses generative AI to answer when no topic matches
When the agent can’t match the user’s query
User asks: “What’s our exam resit policy?” → Agent searches knowledge sources and generates an answer
Fallback
Says it didn’t understand and asks to rephrase
When no topic matches the user’s input
User types “asdfgh??” → Agent replies: “I’m sorry, I’m not sure how to help with that. Can you try rephrasing?”
Multiple Topics Matched
Asks user to clarify when more than one topic applies
When input matches multiple topics. Triggers when a user’s message closely matches multiple topics.
User says “I need help with access” → Agent asks: “Did you mean password reset or request access?”
Escalate
Offers to hand off to a human or support
When “talk to agent” is detected or escalate is triggered
User says: “Can I speak to a person?” → Agent responds with handoff steps.
End of Conversation
Confirms resolution and ends the chat
Triggered when conversation is redirected to end
Agent asks: “Did that solve your problem?” before ending
On Error
Shows a friendly error message with details
When a user error occurs in the flow. The message includes an error code, the conversation ID, and the error timestamp, which can be used later for debugging.
Resets the conversation by clearing variable values and forcing the agent to use its latest published version.
Triggered by reset/redirection
User says: “Start over” → Agent resets and restarts cleanly.
Sign In
Prompts user to authenticate
Prompts customers to sign in when user authentication is enabled. Triggers at the beginning of the conversation when users are required to sign in, or when the conversation reaches a node that uses authentication variables.
User asks: “Show my requests” → Agent asks user to sign in first
Copilot Custom Topics (System created)
Copilot Studio creates a few custom topics automatically to help you get started with your agent, and these behave just like the custom topics you create yourself. You can open them, edit them, or delete them if you don’t need them. Custom topics are where you define specific scenarios, such as when someone asks for a mentor or wants to check the status of a request. In short, system topics handle basic conversation rules, while custom topics (including the default ones) are fully under your control and can be changed or removed.
Custom topic name
What it does
When it triggers (example phrases)
Example (what it can do)
Greeting
Responds to common greetings and starts the conversation in a friendly way
“Hi”, “Hello”, “Good morning”, “Hey”
Visitor: “Hello” → Agent: “Hi! How can I help you today?”
Visitor: “Bye” → Agent: “Thanks for chatting—have a great day!”
Start Over
Restarts the conversation so the visitor can begin again from scratch
“Start over”, “Restart”, “Let’s begin again”
Visitor: “Let’s begin again” → Are you sure you want to restart the conversation?
Agent clears the current flow and begins again from the start if the visitor confirms yes
11. Let’s create a new custom topic. From the Topics page and select the Custom tab.
12. Click the + Add a topic button, as shown in the image below.
13. You’ll see two options to create a topic. The “Add from description with Copilot” option allows you to describe what you want the topic to do, and Copilot will automatically create the topic for you.
14. Selecting “From Blank” allows you to create a topic from scratch. In this example, I’ll use Copilot to help create the topic for me (Add from description with Copilot).
15. Enter a name for the topic and a short description of what you want the topic to do, then click Create.
16. The resulting topic is shown in the image below. Copilot has automatically created the topic with additional nodes that ask the visitor for more details when they request a mentor.
17. Click Save and then click test. Testing allows us to check the agents response when I ask for a mentor. The Request a Mentor Topic should automatically trigger based on keywords such as “I need a mentor”
18. When a new conversation begins, the Conversation Start system topic runs automatically and displays the welcome message to the visitor.
19. I then enter the following message in the chat window: “I need a mentor”.
20. The message “I need a mentor” matches the trigger for the Request a mentor custom topic, which then starts the topic flow created earlier.
21. I enter my name, “Imran Rashid”, and press Enter.
22. I am then asked to enter my email address, as configured in the topic.
23. I enter a dummy email address ([email protected]) and press Enter. I am then asked which course I am preparing for, based on the next question node configured in the topic.
24. I enter “AZ‑104” and press Enter. I am then asked for my preferred method of communication, with options including Email, Phone, and Chat.
I select Email.
25. The conversation ends with the following message:
Thank you, Imran Rashid! We will connect you with a mentor for the course “AZ‑104”. You will be contacted via email at [email protected].
Topics in Copilot Studio are flexible and can be configured to meet your exact requirements. You can extend a topic by adding more questions, messages, and triggers, and even use the information collected to store data in an Excel spreadsheet, send automated emails, or trigger other processes.
The purpose of this post was to help you understand what topics are in Copilot Studio and why they are important. I hope you found this post useful. If you have any questions or feedback, feel free to leave a comment below. See you in the next post.
Subscribe
Subscribe to new tech posts.
We will never send you spam email or forward your details to third parties.