microsoft / microsoft/agentsleague
Project: Enterprise Agents - Article Forge
Nobody has claimed this yet.
- Dominant language
- No language data
- Stars
- 286
- Forks
- 92
- Avg merge
- 12h 44m
- Merged PRs (30d)
- 1
Description
Track
Enterprise Agents (M365 Agents Toolkit)
Project Name
Article Forge
GitHub Username
@GeorgiaGit
Repository URL
https://github.com/GeorgiaGit/AgentForce.git
Project Description
The agent creates formatted KB articles for a SharePoint knowledge base repository by either:
a typed scenario (e.g., “Clear Teams cache on Windows and macOS”), or
an uploaded rough-draft PDF
Purpose: Rapidly respond with consistent KB articles while creating a continuous knowledge base.
Demo Video or Screenshots
Demo Video https://youtu.be/DdwH42_PuMs
Screen Shots https://github.com/GeorgiaGit/AgentForce/tree/main/assets/screenshots
Primary Programming Language
C#/.NET
Key Technologies Used
- Microsoft Copilot Studio
- Microsoft Graph
- Azure Functions C#
- AI Builder / Dataverse
Submission Type
Individual
Team Members
No response
Submission Requirements
- My project meets the track-specific challenge requirements
- My repository includes a comprehensive README.md with setup instructions
- My code does not contain hardcoded API keys or secrets
- I have included demo materials (video or screenshots)
- My project is my own work with proper attribution for any third-party code
- I agree to the Code of Conduct
- I have read and agree to the Disclaimer
- My submission does NOT contain any confidential, proprietary, or sensitive information
- I confirm I have the rights to submit this content and grant the necessary licenses
Quick Setup Summary
Public Quick Start: Import Agent + Connect Azure Function
This guide is for a new user who cloned this public repo and wants to run the solution.
What you need first
- A Microsoft Copilot Studio environment
- A Power Platform environment where you can import an unmanaged solution
- An Azure subscription where you can deploy an Azure Function
- Power Platform + Azure admin permissions (or help from your admin)
1) Deploy the Azure Function first
Use the Azure Function project in this repo:
- Project folder:
VSCode/SharePointPageCreation_public-template
Follow the deployment steps in:
- VSCode/SharePointPageCreation_public-template/README.md
- VSCode/SharePointPageCreation_public-template/copilot-easy-auth-alignment-runbook.md
When done, save these values:
- Function host URL (example:
https://<FUNCTION_APP_NAME>.azurewebsites.net) - API app registration details (client/app IDs, scope URI)
- Copilot client app registration details
2) Import the Copilot Studio unmanaged solution
- Open Power Apps maker portal.
- Select your target environment.
- Go to Solutions > Import. AgentForce_1_0_0_1_unmanaged.zip
- Select the unmanaged solution zip.
- Complete import and wait for success.
3) Reconnect actions after import
After import, open the solution and fix connection references:
- Open Connection references.
- Create or rebind each reference to your environment connections.
- For the SharePoint Page Creation connector, confirm OAuth values match your tenant/app setup.
4) Update environment-specific values
In Copilot Studio, update any placeholder or old values:
- SharePoint site URL
- Function/API host URL
- OAuth scope (
api://.../access_as_user) - Redirect URI(s) in app registration
5) Validate Easy Auth alignment (required)
In Azure Function Authentication (Easy Auth v2), make sure:
- Allowed audiences includes your API identifier URI
- Allowed applications includes your Copilot client app ID
- Unauthenticated action is set appropriately (
Return401for production)
Use the runbook for exact checks:
6) Test end-to-end
- Open the agent in Copilot Studio.
- Ask it to generate a KB preview.
- Choose Continue (if your topic flow requires it).
- Confirm the SharePoint page is created.
- Confirm output fields return (
success,message,pageUrl,serverRelativeUrl).
Common issues
- 401/403 from API: Easy Auth allowed app/audience mismatch.
- Connector sign-in fails: Redirect URI mismatch between connector and app registration.
- Import works but action fails: connection reference not rebound in target environment.
- No page created: managed identity/Graph permissions missing on function app.
Public repo safety checklist
Before pushing changes:
- Do not commit real tenant URLs, client IDs, or environment IDs unless intended.
- Do not commit secrets, keys, certs, or
local.settings.jsonwith real values. - Keep sample values as placeholders in docs and payload files.
Technical Highlights
Wiring up the Azure Function with OAuth in Copilot Studio is the one thing I'm most proud of.
Challenges & Learnings
What I’ve Learned
The biggest challenge for me was simply doing the work. From Copilot Dev Camp to Agent Academy, the examples all make perfect sense in isolation. The difficulty comes when you try to apply those concepts to a real problem—mentally shifting from traditional, linear programming to composing solutions by orchestrating AI-driven components.
Watching Luise Freese wire up Azure Functions during the agent battle was a turning point for me. It shifted my trajectory away from purely declarative creativity and back toward Copilot Studio, paired with the flexibility and power of Azure. In hindsight, starting my very first agent with these concepts may not have been the easiest path—but it was a valuable one.
The most important skill I’ve gained is learning how to build orchestration. The more I built, the more ideas I had for where this agent could evolve. A key milestone was getting Azure authentication working correctly and successfully returning a usable payload.
At this stage, the function creates the page and injects the markdown content. However, additional work is needed using the SharePoint API to fully incorporate a page template and complete the end-to-end experience.
Contact Information
https://www.linkedin.com/in/andrewkburns/
Country/Region
United States
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The submission points to GeorgiaGit/AgentForce.git and identifies VSCode/SharePointPageCreation_public-template as the Azure Function project; start with its README and copilot-easy-auth-alignment-runbook.md. Review the deployment, OAuth, Easy Auth, solution import, and end-to-end validation steps, with successful KB preview-to-SharePoint page creation as the completion check.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, csharp
- Domain
- ai, cloud
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100