Skip to content

๐Ÿ”ง Module 07: Teach Bit Skills & Equip Tools โ€‹

Codename: OPERATION PLAYBOOK
Time: 70 minutes
Scenario: Skills, Tools, and Logging a Ticket


๐ŸŽฏ Learning Objectives โ€‹

By the end of this module, you will be able to:

  • Explain how Skills replace topics and triggers in the new experience
  • Author four reusable markdown Skills for Bit
  • Add the Office 365 Outlook โ†’ Send an email and SharePoint โ†’ Create item tools
  • Understand AI-filled inputs and the user-vs-maker execution context
  • Test a password reset (email) and log a support ticket end-to-end
  • Iterate a skill to also generate and attach a PDF report

๐Ÿงญ Overview โ€‹

In Module 06 you gave Bit knowledge and memory โ€” he can talk and know. Now you'll give him Skills (what to do) and Tools (the muscle to do it).

Skills are the headline of the new Copilot Studio. A skill is a set of reusable instructions in markdown that defines a specific behavior โ€” when it activates, the guidelines to follow, examples, and notes. The orchestrator loads the right skill at the right moment. No topics. No trigger phrases.

You'll author four skills, wire up two tools, and watch Bit log a real ticket to SharePoint and email a confirmation.


๐Ÿงฐ Prerequisites โ€‹

  • Bit grounded with knowledge and memory from Module 06.
  • The Tickets list site URL + list name from Module 00.
  • Connections available for Office 365 Outlook and SharePoint (your facilitator may have pre-authorized these).

๐Ÿซ In the facilitated workshop, the SharePoint site, Tickets list, and connections are pre-provisioned. If you're at the office, complete Module 00 and Module 06 first.


๐Ÿงฌ Anatomy of a Skill โ€‹

When you create a skill from blank, you define:

  • Name โ€” all lowercase, no spaces; use hyphens, not underscores; don't start or end with a hyphen (e.g. password-reset)
  • Description โ€” what it does and when it should activate (this is how the orchestrator picks it)
  • Instructions (markdown) โ€” typically when to activate, guidelines, examples, and notes

โš ๏ธ Hyphens vs. underscores. Skill names must use hyphens โ€” underscores are invalid. (Later, in Module 09, you'll name a Workflow manager_approval_for_software with underscores โ€” workflows follow different naming rules. Don't let that trip you up: skills = hyphens, workflows = underscores.)

๐Ÿ” Skills are reusable. You can upload an existing skill file, build one from blank, or download any skill to reuse in another agent (you can even bring in GitHub Copilot / Claude Code skills).

๐Ÿงฐ Bit also has built-in skills out of the box โ€” including ones that read Word, PowerPoint, and PDF files โ€” which is why he could parse the FAQ document in Module 06.


๐Ÿงช Lab 7.1: Author Four Skills โ€‹

For each skill: Build page โ†’ Skills (right-hand panel) โ†’ add a skill โ†’ Create from blank, then fill in Name, Description, and Instructions (markdown), and Create.

Create from blank skill form showing Name (password-reset), Description, and markdown Instructions

๐Ÿ“„ Upload format. The other tab, Upload a skill, expects a SKILL.md file whose name and description are in YAML at the top. That's the format to use for the downloadable skills below โ€” and what you'd get if you download a skill to reuse elsewhere.

๐Ÿ“ฅ Prefer to upload? Skills are portable files. Download the four ready-made skills and upload them instead of copy-pasting: password-reset ยท vpn-troubleshooting ยท smart-triage ยท software-installation-request. (Copy-paste from below works just as well.)

7.1.1 password-reset โ€‹

  • Name: password-reset
  • Description: Use when a user asks to reset or recover their password, or says they are locked out.
  • Instructions:
markdown
# When to activate
The user wants to reset their password or is locked out of their account.

# Guidelines
1. Confirm the user's full name and work email, and verify their identity
   (e.g., ask for their employee ID). Never ask for the current password.
2. Once identity is verified, send a password reset link to their work email
   using the Send-email tool.
3. Tell the user the link has been sent and what to do next.

# Examples
- "I forgot my password" โ†’ confirm name + email โ†’ verify ID โ†’ send reset link.
- "I'm locked out" โ†’ same flow.

# Notes
Never ask for passwords or one-time codes. Do not bypass identity verification.

7.1.2 vpn-troubleshooting โ€‹

  • Name: vpn-troubleshooting
  • Description: Use when a user reports VPN connection problems (can't connect, keeps dropping, slow).
  • Instructions:
markdown
# When to activate
The user reports a VPN issue: cannot connect, frequent disconnects, or slow VPN.

# Guidelines
1. Ask one focused question if needed (error message, client/app, on/off corporate network).
2. Walk quick fixes first: sign out/in of the VPN client, switch network, restart client.
3. Then ordered steps: check credentials, update the VPN client, try an alternate gateway.
4. If still unresolved, offer to log a ticket (hand off to smart-triage).

# Examples
- "My VPN keeps disconnecting and restarting didn't help" โ†’ quick fixes โ†’ steps โ†’ offer ticket.

# Notes
Keep steps short and numbered. Don't request passwords.

7.1.3 smart-triage โ€‹

This is the skill that turns an unresolved issue into a ticket. It tells Bit to read your SharePoint list's schema and create a record โ€” using the tools you'll add in Lab 7.2.

  • Name: smart-triage
  • Description: Use when an issue can't be resolved in chat or needs admin access and the user agrees to log a ticket.
  • Instructions:
markdown
# When to activate
An issue cannot be resolved directly (or needs admin access) and the user agrees
to log a ticket.

# Guidelines
1. Query the IT Help Desk SharePoint site and look up the Tickets list.
2. Understand the schema of the Tickets list columns (Title, Description,
   Status, Priority, Category, Requestor).
3. Create a ticket in the Tickets list using the Create-item tool:
   - Title  = one-line summary
   - Description = symptoms + what was already tried
   - Category = Hardware | Software | Network | Access | Other
   - Priority = Low | Normal | High | Critical (Critical if user is fully blocked)
   - Status = New
4. Send the user a confirmation email (Send-email tool) including the ticket
   number and priority.

# Examples
- "This needs admin access โ€” log a ticket" โ†’ create record โ†’ email confirmation.

# Notes
Read the live list schema before creating the record so fields map correctly.

๐Ÿง  Notice Bit isn't told how to read the schema step-by-step โ€” the enhanced orchestrator figures that out using the Create item tool. You describe intent; it plans the steps.

7.1.4 software-installation-request โ€‹

  • Name: software-installation-request
  • Description: Use when a user asks to install or request software.
  • Instructions (v1 โ€” knowledge only for now):
markdown
# When to activate
The user asks to install or request a software application.

# Guidelines
1. Look up the requested app in the Contoso Approved Software List knowledge.
2. If the app is self-service: tell the user no approval is needed and give the
   install steps.
3. If the app requires manager sign-off: tell the user approval is required.
   (In Module 09 you'll update this skill to actually start the approval workflow.)

# Examples
- "Can I install Power BI Desktop?" โ†’ self-service โ†’ no approval, here are steps.
- "I need Microsoft Visio" โ†’ requires manager sign-off โ†’ approval needed.

# Notes
Only reference apps from the approved list. If it's not listed, offer to log a ticket.

โœ๏ธ You'll edit this skill in Module 09 to call the manager-approval workflow. Editing a skill is how you iterate behavior โ€” no rebuilding required.

โœ… Checkpoint: Bit's Skills list shows all four skills. Select any skill โ†’ note you can download it (proof that skills are portable, reusable units).

โณ Don't fully test the ticket/password flows yet โ€” they need the tools below. A quick vpn-troubleshooting check (knowledge + reasoning only) is fine now.


๐Ÿงช Lab 7.2: Equip Bit's Tools โ€‹

Skills tell Bit what to do; Tools let him actually do it. Add tools from the Build page โ†’ Tools. Types include connectors, MCP servers, REST APIs, Workflows, and prompts. The orchestrator decides when to call a tool based on the conversation, Bit's instructions, your skills, and each tool's description.

๐Ÿค– AI-filled inputs: for connector actions, Copilot Studio can let AI fill the inputs from conversation context (the default). You can also fill a field manually or add context to guide the AI.

๐Ÿ‘ค Execution context โ€” reconciled with Module 06. In Module 06 you set Authenticate with Microsoft, so tools can run as the signed-in user. Each tool can also be set to run as the maker (your account). For this workshop demo, running these two tools as the maker is simplest and most predictable; in production you'd typically run them as the user. Pick one approach and apply it consistently.

7.2.1 Add the Send-email tool โ€‹

  1. Build โ†’ Tools โ†’ + Add a tool โ†’ Connectors โ†’ Office 365 Outlook.
  2. Choose the Send an email (V2) action.
  3. Set the execution context (as the maker for the demo โ€” see the note above).
  4. Leave inputs (To, Subject, Body) set to AI fills (the default). Save / Add.

Add a tool dialog with Featured/MCP/Connectors/Workflows tabs, showing Office 365 Outlook and SharePoint connectors

The password-reset and smart-triage skills reference "send email" โ€” this is the tool that makes that real.

7.2.2 Add the Create-item tool โ€‹

  1. Tools โ†’ + Add a tool โ†’ Connectors โ†’ SharePoint โ†’ Create item.

  2. Add context so it targets the right list, for example:

    text
    The site address must be the IT Help Desk site and the list name must be Tickets.

    (Paste your actual site URL and confirm the list name is Tickets.)

  3. Save / Add.

๐Ÿง  You don't pre-map every column. The smart-triage skill tells Bit to read the list schema at runtime, and the orchestrator maps fields when it calls Create item.

โœ… Checkpoint: Bit has two tools โ€” Send an email and Create item.


๐Ÿงช Lab 7.3: Test โ€” Password Reset (Email) โ€‹

  1. Preview โ†’ new chat:

    text
    I'm locked out and I forgot my password.
  2. Following password-reset, Bit confirms your name and email, then asks to verify identity (employee ID). Provide it.

  3. On verification, Bit calls Send an email and tells you a reset link was sent. Check your mailbox for the email.

โœ… Checkpoint: Bit verified identity and sent a reset email.


๐Ÿงช Lab 7.4: Test โ€” Log a Ticket (Triage โ†’ Create item + Email) โ€‹

  1. New chat. Describe something needing admin access, e.g.:

    text
    My account can't access the shared finance drive and I think it needs admin rights.
  2. Bit searches knowledge, recognizes it needs admin access, and offers to log a ticket. Reply:

    text
    Yes, please log a ticket.
  3. smart-triage activates. Watch Bit:

    • grab the Tickets list metadata and understand the column schema,
    • call Create item to create the record, then
    • call Send an email with the ticket number and priority.
  4. Verify in SharePoint: open the Tickets list โ€” the new row is there. Check your mailbox for the confirmation email.

๐ŸŽ‰ That's an agent answering and acting: reading a list schema, writing a record, and emailing a confirmation โ€” all driven by a markdown skill plus two connector tools.

โœ… Checkpoint: Bit logged a real ticket and emailed a confirmation.


๐Ÿงช Lab 7.5: Iterate โ€” Add a PDF Report to the Ticket โ€‹

Skills are editable โ€” let's level up smart-triage so it also produces a PDF.

  1. Skills โ†’ open smart-triage โ†’ edit the instructions. Keep the triage steps and add:

    markdown
    # After creating the ticket
    - Generate a one-page PDF report that summarizes the ticket (number, summary,
      description, category, priority, requestor, date).
    - When sending the confirmation email, attach the PDF report to the email.
  2. Save the skill. Bit uses his built-in PDF skill to generate the document โ€” no extra tool needed.

  3. Preview โ†’ new chat โ†’ test a hardware issue:

    text
    I spilled coffee on my phone and now it won't turn on at all.

    Then log a ticket. Bit creates the Tickets row, generates the PDF, and sends the confirmation email with the PDF attached.

  4. Verify: a new row in the Tickets list, and an email with the PDF attachment.

โš ๏ธ Facilitator note (preview behavior). Built-in PDF generation is a preview capability and may not be lit up in every tenant. If Bit can't produce a PDF attachment, fall back to having the confirmation email include a formatted text/HTML summary of the ticket instead โ€” the teaching point (iterating a skill to add a step) is identical. Confirm this works in your tenant before the workshop.

โœ… Checkpoint: Bit logs a ticket and attaches a one-page report (PDF, or a formatted summary as a fallback).


๐Ÿง  Key Takeaways โ€‹

  • Skills replace topics โ€” reusable markdown behaviors selected by the orchestrator, no trigger phrases
  • Skill names use hyphens (workflows use underscores โ€” different rules)
  • Tools provide the muscle โ€” connectors the orchestrator calls; AI fills the inputs
  • Execution context matters โ€” run a tool as the user or the maker; choose deliberately and consistently
  • Schema-at-runtime โ€” smart-triage reads the Tickets list schema; you don't pre-map columns
  • Skills are editable โ€” adding the PDF step is a quick instruction change, not a rebuild

๐Ÿ—๏ธ What You've Built โ€‹

Bit now takes real action:

  • โœ… Four reusable skills (password-reset, vpn-troubleshooting, smart-triage, software-installation-request)
  • โœ… Two tools (Outlook Send an email, SharePoint Create item)
  • โœ… Resets passwords by email, logs tickets to SharePoint, and emails confirmations โ€” with a generated report

โญ๏ธ Next Steps โ€‹

In Module 08: Enhance with Adaptive Cards, you'll make Bit's responses richer โ€” presenting the ticket he just logged (or a software request) as an interactive Adaptive Card instead of plain text.


Course Navigation: โ† Module 06 | Course Index | Next: Module 08 โ†’