- What is an Agent? Conversational vs. Autonomous Framing
- Lite Agent Capabilities and Limitations
- Building an HR Policy Agent inside M365 Copilot
- Where Lite Agents Fit in an Enterprise Landscape
- Hands-on: Build Your Own HR Lite Agent
- Generative Orchestration vs. Classic Topic Routing
- When to Use Each Orchestration Model
- Tool Selection, Knowledge Selection, Fallback Behavior
- Walk-through of an Orchestration Trace
- Tour of the Copilot Studio Authoring Experience
- Creating an Agent using the Describe Flow
- Switching to Configure View: Instructions, Starter Prompts, Tone, Role
- Saving, Testing, and Versioning
- Knowledge Strategy — Why Grounding Matters
- Connecting Websites, Uploading Files, SharePoint Sites
- Adding Web Search as a Fallback
- Connecting Dataverse for Structured Data Grounding
- Governance Considerations by Source Type
- When to Use a Topic vs. Letting Generative Orchestration Handle It
- Trigger Phrases, Variables, Conditions, and Branching
- Authored vs. Generated Topics
- Hands-on Topic Building Demo
- What is a Prompt Tool? Reusable, Parameterised AI Prompts
- Designing Structured Outputs (JSON Schema)
- When to Use a Prompt Tool vs. a Topic vs. a Flow
- Conversational vs. Autonomous vs. Workflow Automation
- Triggers, Tools, and Deep Reasoning
- Activity Tab for Monitoring and Debugging
- What an Agent Flow Is and When to Build One
- Calling a Flow as a Tool from an Agent
- Returning Structured Data to the Agent
- Extending Agents with Custom Connectors
- Authentication Patterns Overview (API Key, OAuth)
- Building and Testing a REST Action
- What MCP Is and Why It Matters for Agent Ecosystems
- Connecting an MCP Server to Copilot Studio
- When to Choose MCP over a Custom Connector
- Multi-Agent Patterns — Delegation, Specialisation, Escalation
- Context Passing and Guardrails Between Agents
- Designing a Sub-Agent for a Specific Role
- Publishing Conversational Agents to Teams, M365 Copilot, Website / Direct Line
- Activating Triggers and Monitoring Autonomous Agents via the Activity Tab
- Governance: Environments, DLP, Agent Lifecycle, Ownership, "Off Switch"
- Q&A and Resource Handoff
實作 Lab — Hands-on Labs
課程共設計 6 個實作 Lab(2 個 Major Lab + 4 個 Mini Lab),全程圍繞真實企業情境。
Goal
Build a conversational agent that collects leave requests and calls an Agent Flow to submit them to SharePoint and notify the manager.
Conversational Agent
- Create "Leave Request Agent" with role, tone, required fields
- Build "Apply for Leave" Topic with trigger phrases
- Capture Leave Type, Start Date, End Date, Reason
- Confirmation + Branching (Confirm / Edit / Cancel)
Agent Flow
- Create Agent Flow "Submit Leave Request" with inputs
- Create SharePoint item (Status = Pending)
- Send approval email to manager
- Bind flow to topic and test end-to-end
- Stretch: Add "Check my leave balance" topic
Goal
Build an autonomous agent that receives expense claim emails, reasons against the policy, and emails the employee with an approve / flag / reject decision.
Key Tasks
- Create "Expenses Agent" (Configure mode)
- Add "Send an Email" tool (Outlook / Gmail connector)
- Upload Expenses Policy PDF as knowledge source
- Write instructions: decision framework, policy citation, HTML email
- Add "When a new email arrives" trigger (subject: Expense Claim)
- Test without reasoning → enable Deep Reasoning → retest
- Publish and verify via Activity Tab
Three Test Scenarios
- Approve — $62 client lunch
- Flag — $340 monitor (requires manager review)
- Reject — $85 gym membership (non-reimbursable)
Goal
Build a Prompt Tool that extracts structured data from unstructured invoices / receipts, then saves the extracted fields to a SharePoint list via an Agent Flow.
Prompt Tool
- Create "Extract Invoice Data" Prompt Tool
- Input: invoice_text
- Extract: invoice_number, vendor, date, total, currency, category
- Configure JSON structured output schema
Agent Flow
- Create "Save Extracted Invoice" Agent Flow
- Map extracted fields to SharePoint list columns
Topic Integration
- Trigger: "extract this invoice" / "file this receipt"
- Prompt → Confirm → Save Flow
- Stretch: Confidence score, duplicate check, high-value routing
Goal
Wire a public REST API as a custom tool and call it from an agent. No auth, no setup — perfect for a quick hands-on integration.
Key Tasks
- Add Tool → Custom Connector / REST API
- Base URL: https://jsonplaceholder.typicode.com
- Action: GetUserById (GET /users/{id})
- Test with id = 1, verify JSON response
- Ask agent: "Get me the contact details for user 3"
- Discussion: Connector vs. Agent Flow HTTP action
Goal
Connect a pre-existing MCP server to Copilot Studio and call one of its tools from an agent.
Key Tasks
- Add Tool → Model Context Protocol
- Paste MCP server URL + authentication
- Review discovered tools, enable selected ones
- Test via agent question + inspect Activity map
- Discussion: MCP vs. Connector vs. Flow, governance
Goal
Extend the Expense Review Agent with a connected L2 Reviewer Agent that handles complex or high-value cases.
Key Tasks
- Create "L2 Expense Reviewer" agent with deeper policy knowledge
- Enable Deep Reasoning and publish
- From Expenses Agent → Add Tool → Agent (Connected)
- Instruction: Hand off when flagged or > $500
- Test with $1,200 business-class claim
- Observe delegation via Activity map
- Discussion: Sub-agents vs. more tools, context passing