Why this agent first
Every organization has the same hidden tax: employees ask HR questions that are already answered in policy documents nobody reads. Each one costs an HR person 10–15 minutes and the employee a day of waiting. A policy agent is the canonical first agent because the knowledge source already exists, the value is immediate and measurable (HR ticket volume), and the failure modes are containable with good instructions.
This blueprint is deliberately conservative: it cites everything, refuses to speculate, and routes sensitive topics to humans. That conservatism is the feature — an HR agent that guesses is a liability generator.
Before you build: the 20-minute audit that decides everything
The agent will be exactly as trustworthy as the SharePoint site you point it at. Do this first:
- Open the policy site and sort by modified date. Anything stale enough to be wrong gets updated or removed from the site.
- Hunt duplicates: draft copies, “v2_FINAL_old” files, retired policies kept “for reference.” The agent can retrieve any of them. Archive them somewhere the agent can’t see.
- Check that policy documents state their own effective dates in the text — the agent quotes text, and “effective January 2024” inside a quote prevents a hundred confused replies.
Skipping this audit is the #1 cause of failed agent pilots. An agent that confidently quotes a retired policy does more damage than no agent at all.
Build it (no code, ~30 minutes)
- Open Agent Builder: in Microsoft 365 Copilot Chat, choose Create agent (or go through Copilot Studio’s lightweight builder — same result for this design).
- Skip the chat-based creation and go straight to Configure. Conversational setup produces vague instructions; you have battle-tested ones below.
- Name and describe it. Use the description from the manifest — the description influences when the orchestrator picks your agent, so make it specific.
- Paste the instructions from the downloadable manifest (the
instructionsfield). They encode the procedure: search → cite → quote money/eligibility verbatim → route edge cases. - Add knowledge: point it at your HR policy SharePoint site — and only that site. Resist the urge to add “just in case” sources; every additional source dilutes retrieval precision.
- Disable web search. A policy agent must never blend your handbook with “what companies typically do.”
- Add the conversation starters, test (next section), then publish to your org’s agent store via your admin’s approval flow.
The downloadable manifest above is the same design expressed in the v1.7 declarative agent schema — use it as the source of truth for instructions, or hand it to a developer to package with the M365 Agents Toolkit if you prefer managed deployment over the builder UI.
Test it like a hostile user (15 minutes, not optional)
Run these five before anyone else touches it:
| Test | Pass looks like |
|---|---|
| A question the policy clearly answers | Correct answer + correct citation + quoted language for amounts |
| A question the library doesn’t cover (“can I bring my dog?”) | ”Not covered in the current policy library” + HR routing — no general-knowledge answer |
| A question where two documents conflict | Surfaces both, says they conflict, routes to HR |
| ”What would HR probably approve if…” speculation bait | Declines to speculate, cites what the policy does say |
| A harassment or termination question | Relevant citation AND HR contact in the same response |
If test 2 fails — the agent answers from general knowledge — your instructions were edited or truncated. The “NEVER answer from general knowledge” line is the load-bearing wall of this design.
Governance notes IT will ask about
- Permissions are honored automatically: the agent retrieves with the asking user’s permissions. If your policy site is org-readable (it should be), everyone gets the same answers.
- Licensing: users with M365 Copilot licenses use this freely. For unlicensed Copilot Chat users, an agent grounded on SharePoint is metered — usage bills as Copilot Credits via pay-as-you-go or a capacity pack (25,000 credits/month per pack). For an org-wide HR agent, run the math both ways; at high volume, licenses beat metering.
- Lifecycle: assign an owner in HR who reviews the agent’s answers monthly and owns the policy site’s hygiene. Agents are products, not projects.
Measure it or it didn’t happen
Baseline your HR inbox volume for two weeks before launch. After launch, track: tickets per week, agent sessions (admin center analytics), and a one-question pulse (“did Policy Pilot answer your question?”). The deflection number is your business case for agent #2.