ποΈ The Ambassador β
π§ Work in progress
Scenario 3 is still being built and tested. Steps, downloads, and screenshots may change before the event.
You'll build this in Microsoft Scout. You describe what you want; Scout writes it.
The AI Skilling Ambassador program runs on people who volunteer for it, and it has to keep them. The person who ran it left halfway through.
72 ambassadors across nine regions do it on top of their real jobs: office hours, answering questions, mentoring one-on-one, and writing the quickstart guides everyone else leans on. Nobody is paid for it, so the program runs on what it can offer back: an invitation in, a facilitation slot, a nomination, a sponsor conversation. Last round five people withdrew and seven were passed over.
The Ambassador skill they left behind picks the next cohort. It reads DEFINITION.md, applies it to the candidates, and comes back with eight names, a reason for each, and what to offer them. It is fast, it is confident, and it cannot show its work.
Ship something that finds someone the skill misses, shows the evidence behind every claim, and lets a person overrule it. Then give it somewhere to run.
- 9 data files, 1 read
- 0 claims checked against a record
- 72 candidates, ~2,000 evidence records
New to Scout?
An agentic assistant that runs on your machine. Two things plug into it:
- Microsoft 365, through Work IQ - your mail, calendar, Teams, files and org context. Nothing to connect, and it only sees what you can already see.
- GitHub Copilot CLI - so it can write and run code locally.
For this scenario the second one matters most: Scout can read the program data and build something that runs against it, in the same conversation. Setup is in the Guides.
What you're shipping β
Three conditions, plus one that only Scout can do. How you meet them is yours.
| Condition | |
|---|---|
| 1 | It finds someone the shipped skill misses |
| 2 | Every claim it makes points at a record that supports it |
| 3 | A person can overrule it, and the next run remembers |
| 4 | It runs again without you |
Nothing says which to do first. A table that ships one condition well beats a table that half-ships four.
Nothing gets sent
Invitations and nominations are drafted and held for a person to read. Keep that in whatever you build.
How this runs β
| Time | ||
|---|---|---|
| 1 | Run it, and swap the definition | 20 min |
| 2 | Build | 60 min |
| 3 | Show it | 20 min |
Do step 1 on your own. Everything after is the table.
Everything stays local. Nothing is hosted, nothing leaves your machine, and nothing is sent to anyone in the data.
Before you start β
Check Scout is signed in. Ask it anything and confirm you get an answer back.
The data is fictional. Invented people, invented scores, invented feedback. Nothing here describes a real person and no real program is being modeled.
Two places to get unstuck
Ask Scout: it's building with you, so paste the error or describe what came back wrong. For mechanics like scheduling or running things locally, the Guides are short how-tos. Coaches are in the room and every table has an SME.
1 Β· Run it, and swap the definition β
Done when: two definitions have given you two different shortlists.
- Unzip both downloads. Put the
program-datafolder somewhere you can point Scout at. - In Scout, open Extensions β Import and drag in the
ambassadorfolder. Import the folder, notSKILL.md:references/holds the definition and the playbook. - Start a new session. Skills load when a session begins.
Then ask it the question the program exists to answer:
Who should be in the next cohort? The data is in [path to program-data].Eight names, a reason each, and what to offer them. Now change what it's looking for:
Use definitions/depth.md as the definition instead. Re-run and tell me which names changed.Then try definitions/rising.md. Same 72 people, and the shortlists barely overlap: depth.md and rising.md share two names out of eight, and each surfaces four people no other definition finds.
The definition is plain prose in a file. Open references/DEFINITION.md, write what your program would look for, and re-run.
What it can't do β
Ask it directly:
What did you not read, and which of your claims aren't backed by a record?It reads CandidateProfiles.csv and nothing else. It can say someone's work "gets reused across teams" because a summary score is high, with nothing in ProgramContributions.csv behind it. And running it twice gives you two shortlists with nowhere to record that you disagreed.
Those are the conditions, and they're where the next 60 minutes go.
2 Β· Build β
Done when: one condition is met, on real output, with a name on screen.
π This is the fun part - keep it low-stress
Pick whatever direction sounds good and build it with your table. It doesn't have to be perfect, and it doesn't have to solve everything - the whole point is to explore your tool, trade ideas, and vibe-code something together. Use whatever you came here to learn, see how far you get, and have fun with it. You're here to learn by doing.
Where the room is β
Eight files shipped with the program and the skill opens none of them:
| File | Rows | What it holds |
|---|---|---|
CommunityActivities.csv | 866 | What people ran, for whom, at what quality |
ProgramContributions.csv | 390 | What they made, whether it was reused, teams reached |
PeerFeedback.csv | 283 | Sentiment, theme, how well evidenced |
LearningCredentials.csv | 275 | Completed, facilitated, coached |
RecognitionHistory.csv | 128 | Who's been recognized before |
AmbassadorApplications.csv | 41 | Who put their hand up |
Point Scout at one and say what to do with it. Point it at all six at once and you won't know which file changed the shortlist.
Ideas, not instructions β
Starting points if you want one. Take one, combine two, or ignore all of them.
| What it is | Start with | |
|---|---|---|
| π₯οΈ A board Β· easiest | A local page you open: who's proposed, the evidence behind each, what's waiting on a decision | "Build a local HTML page showing the current eight, the records behind each, and anything waiting on a decision." |
| β° A scheduled scan | Runs on a timer and reports only what changed | "Run this on a schedule and tell me only who entered or left the shortlist since last time." |
| π The watch | Who's climbing and who's stopped showing up | "Build a watch list from activity dates: who's picking up, who's gone quiet, and who was recognized before and stalled." |
| π§ Manager's view | One file per manager, written to disk so it's there next time | "Write one brief per manager into a folder: their candidates, what's proposed, one next action each." |
| π Recruitment | The people one file can't see, with the records that surfaced them | "Read peer feedback and contributions, then tell me who that surfaces who wasn't in the shipped eight." |
| π― Yours | Whatever your table thinks this program is missing | "The program needs [what]. Build the smallest version that runs, then make it run again on its own." |
Pick by what your table would still run next time round, not by what sounds most impressive.
Definition, playbook, capability
references/DEFINITION.md is what the program wants. references/PLAYBOOK.md is how the program runs. A new capability, like reading another file or checking a claim, belongs in its own references/*.md. The skill's instructions point Scout toward that structure.
Build in layers β
Get one real name on screen end to end before you add anything:
- The smallest version - "Build the smallest version that runs end to end. Start simple."
- The evidence - "Now make every line carry the record behind it, and say which files you read."
- One addition - "That works. Now add [one thing]."
- A bound - "Cap this at [N] people per run and say what was left out."
- The runtime - "If this needs JavaScript, use Scout's bundled Node under
resources/node, not a barenode."
The more specific your prompt, the less you'll undo:
| Vague | Specific |
|---|---|
| "Build me a dashboard" | "A page with one panel: people the definition matches whose evidence sits outside CandidateProfiles.csv." |
| "Make it fairer" | "Show whether the shortlist skews by region, and flag anyone I can't justify from a record." |
| "Make it better" | "For each name, cite the file and row that supports the claim." |
Push it further β
- Point it at something real - the skill reads files, and a SharePoint list export is the same shape.
- Give it a memory - a file it writes as well as reads, so it reports what changed since last run.
- Make it stop - a rule that routes thin evidence to a person with a specific question.
- Two definitions, one room - hand another table your definition and compare shortlists on the same data.
- Take the definition with you -
DEFINITION.mdis plain text and works at any altitude.