Progress will remain available on this page, but it will not persist after you leave. Easy Mode remains available.
About this workshop
Workshop mission: Turn motivated, open-minded, non-technical sales professionals into AI superheroes who can match the practical output and problem-solving pace of technical peers who are not using AI, while staying evidence-grounded, governed, and honest about what the tools proved.
Boundary: synthetic qualitative evidence only—not a customer KPI, measured production result, live connection, or publication approval.
Found something inaccurate? Use Report an issue at that point. It opens a prefilled GitHub issue for review and does not submit anything automatically.
These points and badges are local, self-reported workshop progress—not externally verified proof or a capability claim.
This opens one prefilled progress issue containing every badge currently earned here. Nothing syncs until you submit it. Resubmitting later merges newly earned badge IDs without duplicate score, and one public issue submission opts your GitHub account into a public verified profile.
1
Workshop setup
Open GitHub Copilot Chat
Start in GitHub Copilot Chat. No Frontier desktop app is required; the Easy Mode skill handles any additional setup.
Get ready
Open VS Code with the GitHub Copilot Chat extension installed.
Sign in to GitHub with an account that has Copilot access.
Open the Copilot Chat panel and select Agent mode.
Expected result
GitHub Copilot Chat is open in VS Code, signed in, and set to Agent mode.
What you will learn
Use the single Easy Mode skill.
Build and prove the portable agent.
Deploy the reviewed solution as an unpublished Draft.
Confirm the behavior yourself in Copilot Studio Preview.
Recognize the evidence that means the module is complete.
Before you begin
Use VS Code with GitHub Copilot Chat in Agent mode.
Sign in to GitHub with Copilot access.
Have access to a Copilot Studio environment.
The skill handles setup for you.
Do not publish. This module ends with a validated Draft.
Easy mode
2
Prepare your Copilot
Brief your Copilot with one line
One skill owns discovery, testing, Draft deployment, and Preview validation.
Do this
Open GitHub Copilot Chat in VS Code and select Agent mode.
Paste this one line and send it. Copilot reads the skill itself; nothing to download.
Send this message
Go and read https://raw.githubusercontent.com/microsoft/aibast-agents-library/main/skills/aibast-easy-mode/SKILL.md and run the Campaign Delivery Optimizer workshop for me.
Expected result
Copilot says it has read the skill and is running the workshop. The skill owns the remaining setup and validation.
3
Prove the solution locally
Ask Easy Mode to build and test Campaign Delivery Optimizer
This step proves the portable business logic before any Copilot Studio work begins. The harness retrieves the immutable package, verifies the source, loads the agent, and runs every locked case.
Send this message
Give me Campaign Delivery Optimizer using Easy Mode and test it for me.
Expected result
Copilot reports a verified source and 3/3 locked local cases passed.
Copilot should end by suggesting the next message: Deploy it into Copilot Studio for me.
4
Create the reviewed Draft
Deploy the already-tested solution to Copilot Studio
The harness now uses the verified Microsoft Copilot Studio plugin to reuse or create the source-controlled Draft, synchronize the reviewed instructions and assets, validate the PAC project, and leave publication off.
Send this message
Deploy it into Copilot Studio for me.
Expected result
Draft: Campaign Delivery Manual
Model: Claude Opus 5.5
Knowledge files: 2
Skills: 3
Status: Draft; published: false
The harness then validates the real Preview front door before returning its final verdict.
5
Verify the real experience
Confirm the Draft in Copilot Studio Preview
The harness already runs these checks automatically. Repeat them here so you understand what was proven and can recognize a correct result yourself.
Open the validated Draft.
Select Preview.
Choose New chat before each case.
Paste the exact prompt.
Compare the answer with the required and forbidden markers.
Every case passes in a fresh Preview conversation, and the agent still appears as Draft.
CDO-01 · Ad Operations Manager
Confirm the expected evidence
Is the Harborlight Streaming campaign falling behind this week, and by how much?
Must include
Campaign Risk18% below plan235,000
Must not claim
I do not have accessI cannot help
Visible positive anchors: Campaign Risk; 235,000; 18% below plan. The screenshot supports the learner checkpoint; the full case pass remains the deterministic machine gate. Source: 1424×863 JPEG. Download original.
CDO-02 · Campaign Manager
Confirm the expected evidence
Where can we find extra reach this week to close the Harborlight gap?
Must include
Available ReachStreaming Home Screen Takeover42,000
Must not claim
I do not have accessI cannot help
Visible positive anchors: Streaming Home Screen Takeover; 42,000; Available Reach. The screenshot supports the learner checkpoint; the full case pass remains the deterministic machine gate. Source: 1424×863 JPEG. Download original.
CDO-03 · Ad Sales Lead
Confirm the expected evidence
Draft the make-good for Harborlight so Maya can review it. Don't send anything to the advertiser yet.
Must include
Approval RecommendationPending sales lead approvalDraft only
Must not claim
I do not have accessI cannot help
Visible positive anchors: Draft only; Pending sales lead approval; Approval Recommendation. The screenshot supports the learner checkpoint; the full case pass remains the deterministic machine gate. Source: 1424×863 JPEG. Download original.
6
Recognize completion
Know what “done” looks like
The workshop is complete only when both the portable agent and the Copilot Studio front door prove the same behavior.
Local proof3/3 locked cases passedPreview proof3/3 locked cases passedDraft identityCampaign Delivery ManualModelClaude Opus 5.5Inventory2 knowledge · 3 skillsPublication gateDraft · published false
The harness reports status: complete, exact case totals, the Draft identity, and published: false. The module ends here; it does not offer publication.
Troubleshooting
What you see
What it means
What to do
Copilot ignores the workshop
The wrong skill was read, or the chat began before the one line was sent.
Start a new Agent-mode chat and send the one line first.
Local validation is not 3/3
The portable source, package, or locked behavior does not match.
Stop. Do not deploy. Let the harness report the exact failed case and marker.
No active Copilot Studio environment
PAC has no selected environment.
Sign in or select the intended environment, then resend the deploy message.
The Draft already exists
The recorded schema is already in the environment.
The harness should clone and reconnect automatically. Treat an attendee choice prompt as a harness defect.
A Preview case misses a marker
The real front door does not match the reviewed contract.
Keep the case failed. Inspect instructions and assets; do not retry until it happens to pass.
The agent is Published
The workshop crossed its safety boundary.
Stop immediately. The module must end at Draft with published: false.
Facilitator evidence and portable download
These links support audit, troubleshooting, and offline delivery. They are not learner steps.
See how Campaign Delivery Optimizer Agent is built, one capability at a time.
Optional. Easy mode already did all of this for you from one skill file. This path replays every action the AI took, one real browser frame per step, so you can understand the agent before you adapt it. No PAC CLI, YAML import, or plugin architect; stop at Draft.
Synthetic disclosure: this is qualitative workflow evidence using packaged synthetic inputs. It is not a customer KPI or a live-system result.
Found something inaccurate? Use Report an issue on that step. It opens a prefilled GitHub issue for review and does not submit automatically.
Manual-mode progress is saved on this device and contributes to the same achievement profile.
Build and verify
1
Create a blank Copilot Studio agent
Step 1 of 16
Action
Create a blank Copilot Studio agent
Expected resultA blank Copilot Studio agent is visible in the captured Draft workspace.
Positive visual checkpoint: Untitled Agent. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
2
Name Campaign Delivery Manual
Step 2 of 16
Action
Campaign Delivery Manual
Name Campaign Delivery Manual
Expected resultThe page header shows the recorded manual build name: Campaign Delivery Manual.
Positive visual checkpoint: Campaign Delivery Manual. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
3
Enter the reviewed global instructions
Step 3 of 16
Action
# Campaign Delivery Optimizer — Manual Global Instructions
You are a synthetic campaign delivery pilot for a media company's ad sales and ad operations teams. Explain the fixed weekly delivery snapshot and prepare reviewable recommendation drafts without booking inventory, changing a campaign, or sharing anything with an advertiser.
## Fixed synthetic snapshot
- Use only the uploaded Campaign Delivery Optimizer synthetic records, rules, and three
packaged skills.
- The media company and every advertiser campaign, reach figure, placement, inventory record, sales lead, and recommendation draft are invented.
- Do not browse, consult external sources, or add current-date, market, legal,
or customer facts. Never invent a record, value, deadline, decision, or
transaction.
- Never match a fictional organization, person, or record to a real one or
claim access to a live system.
## Natural-language routing
- Use **campaign risk check** for: someone asks whether a campaign is behind plan this week, how big the delivery gap is, or why it is at risk.
- Use **available reach** for: someone asks which placements have extra reach this week to close a campaign's delivery gap.
- Use **recommendation draft for approval** for: someone asks for the recommendation or make-good for a campaign, its approval status, or who approves it; returns a draft that is never shared.
## Human and side-effect gates
- Never book or release inventory, change a campaign, placement, or order, approve a recommendation, or share anything with an advertiser.
- Every decision stays with authorized ad sales leads and ad operations managers. Present drafts as drafts.
- Include only the evidence needed for the question.
## Evidence-first response contract
1. Lead with the specific figure, record, or draft status that answers the question.
2. Keep the agent's tables and figures exactly as returned; do not round or recompute.
3. State the recommended next step and who decides it.
4. Make the no-action boundary explicit; never speculate.
5. End substantive answers with: **Synthetic campaign delivery evidence only. No inventory was booked, no campaign was changed, and nothing was shared with an advertiser.**
<!-- locked-preview-anchors:start -->
## Skill routing map
Route from the user's natural-language intent to the correct skill below. Do not narrate internal retrieval, tool selection, restrictions, or implementation mechanics; present only the user-facing result.
- `CDO-01` uses skill `campaign-risk`.
- `CDO-02` uses skill `available-reach`.
- `CDO-03` uses skill `approval-recommendation`.
These skill names above are the ONLY valid skill identifiers. Never invent, guess, or reference any other skill name. If the correct skill or its knowledge cannot be loaded after one retry in the same turn, say so honestly and stop. Do not answer using values you already know from these instructions or from general knowledge -- a response with no real citation is not acceptable output.
<!-- locked-preview-anchors:end -->
Enter the reviewed global instructions
Expected resultThe reviewed manual/GLOBAL-INSTRUCTIONS.md policy is visible or saved without unrecorded edits.
Positive visual checkpoint: Campaign Delivery Optimizer — Manual Global Inst. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
4
Save the instruction policy
Step 4 of 16
Action
Save the instruction policy
Expected resultThe reviewed manual/GLOBAL-INSTRUCTIONS.md policy is visible or saved without unrecorded edits.
Positive visual checkpoint: Draft. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
5
Remove default web search
Step 5 of 16
Action
Remove default web search
Expected resultThe captured inventory no longer lists the default web-search capability.
Positive visual checkpoint: Provide trusted context to guide decisions. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
Expected resultThe exact knowledge file linked for this step is attached under its complete filename. Wait for processing to finish before continuing. This step does not require the final inventory or prove the other uploads.
Positive visual checkpoint: aibast_campaign-delivery-optimizer-rules-and-gua. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
Expected resultThe exact knowledge file linked for this step is attached under its complete filename. Wait for processing to finish before continuing. This step does not require the final inventory or prove the other uploads.
Positive visual checkpoint: aibast_campaign-delivery-optimizer-synthetic-rec. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
8
Add skill: aibast_approval-recommendation_03
Step 8 of 16
Action
Add skill: aibast_approval-recommendation_03
Expected resultThe linked SKILL.md appears with its frontmatter name and description. Open it and compare the complete instructions with the source file. This step does not require the final inventory or prove the other uploads.
Positive visual checkpoint: approval-recommendation. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
9
Add skill: aibast_available-reach_02
Step 9 of 16
Action
Add skill: aibast_available-reach_02
Expected resultThe linked SKILL.md appears with its frontmatter name and description. Open it and compare the complete instructions with the source file. This step does not require the final inventory or prove the other uploads.
Positive visual checkpoint: available-reach. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
10
Add skill: aibast_campaign-risk_01
Step 10 of 16
Action
Add skill: aibast_campaign-risk_01
Expected resultThe linked SKILL.md appears with its frontmatter name and description. Open it and compare the complete instructions with the source file. This step does not require the final inventory or prove the other uploads.
Positive visual checkpoint: campaign-risk. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
11
Review model, skills, knowledge, and safety boundaries
Step 11 of 16
Action
Review model, skills, knowledge, and safety boundaries
Expected resultThe screenshot visibly confirms Claude Opus 5.5, 3 rendered skills, and no tools. Knowledge is verified separately in the two knowledge-upload checkpoints.
Positive visual checkpoint: Claude Opus 5.5; campaign-risk; available-reach; approval-recommendation; aibast_campaign-delivery-optimizer-synthetic-rec; aibast_campaign-delivery-optimizer-rules-and-gua. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
12
Open a fresh Preview conversation
Step 12 of 16
Action
Open a fresh Preview conversation
Expected resultA fresh Preview surface or its recorded qualitative result is visible; only the evidence file defines a pass.
Positive visual checkpoint: Campaign Delivery Manual; New chat. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
13
Pass CDO-01: Ad Operations Manager
Step 13 of 16
Action
Is the Harborlight Streaming campaign falling behind this week, and by how much?
Pass CDO-01: Ad Operations Manager
Expected resultThe captured Preview evidence records CDO-01 with the recorded identifiers Campaign Risk, 18% below plan, 235,000; do not infer results beyond it.
Before this case
Open Preview in a fresh conversation before running CDO-01. A previous response must not influence the evidence.
Positive visual checkpoint: 18% below plan; 235,000; Campaign Risk. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
14
Pass CDO-02: Campaign Manager
Step 14 of 16
Action
Where can we find extra reach this week to close the Harborlight gap?
Pass CDO-02: Campaign Manager
Expected resultThe captured Preview evidence records CDO-02 with the recorded identifiers Available Reach, Streaming Home Screen Takeover, 42,000; do not infer results beyond it.
Before this case
Open Preview in a fresh conversation before running CDO-02. A previous response must not influence the evidence.
Positive visual checkpoint: Available Reach; Streaming Home Screen Takeover; 42,000. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
15
Pass CDO-03: Ad Sales Lead
Step 15 of 16
Action
Draft the make-good for Harborlight so Maya can review it. Don't send anything to the advertiser yet.
Pass CDO-03: Ad Sales Lead
Expected resultThe captured Preview evidence records CDO-03 with the recorded identifiers Approval Recommendation, Pending sales lead approval, Draft only; do not infer results beyond it.
Before this case
Open Preview in a fresh conversation before running CDO-03. A previous response must not influence the evidence.
Positive visual checkpoint: Draft only; Pending sales lead approval; Approval Recommendation. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
16
Confirm Draft and stop before publish
Step 16 of 16
Action
Confirm Draft and stop before publish
Expected resultThe agent remains Draft and no Publish action is taken.
Positive visual checkpoint: Campaign Delivery Manual. Source capture: 1424×863 JPEG. The full pass remains the deterministic machine gate. Download original.
Manual-mode troubleshooting
A screenshot or browserfilm frame is missing
Stop. Do not invent, recreate, or substitute an image. Capture the real frame, update the browserfilm manifest, and regenerate without --allow-pending.
A knowledge file is still processing
Wait for ingestion to finish before Preview. A partial answer is not evidence.
A skill upload fails
Use the linked raw SKILL.md. Fix the reviewed source deliberately; do not silently skip the action.
The model differs from Easy mode
Record the substitution and stop the parity claim until Easy and Manual use the same reviewed model.
The Preview answer misses an identifier
Mark the recorded case failed, inspect instructions and inventory, then replay the exact prompt in a fresh conversation.
Should I publish?
No. Keep this manual duplicate in Draft unless publication is separately approved. Do not choose Publish as part of this tutorial.