Skip to content

iliasjennane/LearningAgent

Repository files navigation

Agent Learning & Skilling Platform

An experimental, agentic learning platform built on Azure AI Foundry, Microsoft Agent Framework, and Microsoft 365 Agents SDK — inspired by Microsoft AI Skills Navigator.

Mentor, not catalog. Six specialized AI agents collaborate to give each learner a personal, adaptive skilling experience across Microsoft Teams, M365 Copilot, and a Next.js web app.

License: MIT .NET 10 Status: Experimental


What's in here

A reference implementation for a multi-agent learning platform that demonstrates:

  • Six specialized agents orchestrated through Azure AI Foundry — Assessment, Path Builder, Coaching, Progress Tracker, Credential, and Team Advisor.
  • Prompt-based agents with server-side tools — agents are defined declaratively (YAML + system prompts); tool calls hit Azure Functions via OpenAPI 3.0.1 specs.
  • Three client surfaces — Teams Bot and M365 Copilot app (via Microsoft 365 Agents SDK) and a Next.js 15 web app (NextAuth v5 + Entra ID).
  • Event-driven backbone — Azure Service Bus topics, Cosmos DB change feed, and Functions timer triggers for proactive nudges.
  • End-to-end IaC — Bicep modules for Foundry, Cosmos, Service Bus, Functions, App Insights, Redis, App Configuration.
  • Agent evals + integration tests — xUnit harnesses for prompt regressions and pipeline behavior.

Why publish this

This repo is shared publicly because the architecture, ADRs, and agent design patterns may be useful to anyone exploring:

  • Building production-shaped agentic systems on Azure AI Foundry.
  • Coordinating multiple specialized agents with handoffs vs. workflows.
  • Wiring Foundry agents to OpenAPI tool endpoints on Azure Functions.
  • Delivering the same agent fabric through Teams, Copilot, and a custom web UI.
  • Using AI coding agents (GitHub Copilot, etc.) against a documented architecture — see AGENTS.md and ARCHITECTURE.md.

Architecture at a glance

Clients (Teams · Copilot · Web)
        │
        ▼ Entra ID SSO
   API Gateway (APIM)  ──►  Service Bus  ──►  Azure Functions (tool endpoints)
                                 │                        ▲
                                 ▼                        │ OpenAPI calls
                       Azure AI Foundry  ────────────────┘
                       (6 prompt agents, gpt-4o)
                                 │
                                 ▼
        Cosmos DB · Redis · AI Search · Blob · App Insights

Full diagrams, agent inventory, message contracts, and design rationale: ARCHITECTURE.md.

Architectural decisions and open questions: docs/adr/.

Repository layout

src/
├── Agents/          One .NET project per agent (Assessment, PathBuilder, Coaching,
│                    ProgressTracker, Credential, TeamAdvisor) + Foundry agent.yaml
├── Api/Functions/   Azure Functions (HTTP tool endpoints + Service Bus triggers)
├── Clients/
│   ├── TeamsBot/    Microsoft 365 Agents SDK
│   ├── CopilotApp/  Microsoft 365 Agents SDK
│   └── WebApp/      Next.js 15 · React 19 · NextAuth v5
└── Shared/          Models, Contracts, Persistence, Utils, AgentHost
infra/
├── bicep/           Foundry, Cosmos, Service Bus, Functions, Redis, App Insights, ...
├── foundry/         Foundry agent manifest + sync script
└── scripts/         deploy-* helpers
tests/
├── AgentEvals/      Prompt regression harness
├── Integration/     Pipeline tests
└── DevHarness/      Local agent runner
docs/
├── architecture.md  · user-flow.md
└── adr/             Decision log + open questions

Tech stack

Layer Technology
Backend (all) C# / .NET 10, isolated Functions worker
Agent runtime Azure AI Foundry + Microsoft Agent Framework 1.0
Channel integration Microsoft 365 Agents SDK (Teams + Copilot)
Web app TypeScript, Next.js 15 (App Router), React 19
Web auth NextAuth v5 (beta) + Microsoft Entra ID
Data Cosmos DB (NoSQL), Redis, AI Search, Blob, Data Explorer
Messaging Azure Service Bus (topics + sessions)
Observability App Insights, Log Analytics, Foundry tracing
Infra Bicep

See AGENTS.md for full coding conventions when contributing or letting an AI agent work in this repo.

Getting started

Status: This is an experimental reference architecture, not a turnkey product. Expect to read ARCHITECTURE.md and adapt to your tenant.

Prerequisites

  • An Azure subscription with permission to create Foundry, Functions, Cosmos DB, and Service Bus resources.
  • An Entra ID tenant where you can register applications.
  • .NET 10 SDK, Node.js 20+, Azure CLI, and gh.

1. Provision infrastructure

# Review the Bicep first — replace location, naming, and quotas to suit your tenant.
./infra/scripts/deploy-infra.sh

2. Register and sync Foundry agents

./infra/scripts/register-agents.sh        # creates agents in Foundry from infra/foundry/agents.json
./infra/foundry/sync-agents.sh            # pushes prompt + tool updates

3. Deploy Functions and Web App

./infra/scripts/deploy-functions.sh
./infra/scripts/deploy-webapp.sh

4. Run locally

# Backend (agent dev harness)
dotnet run --project tests/DevHarness

# Web app
cd src/Clients/WebApp && npm install && npm run dev

You'll need to create your own local.settings.json, .env.local, and appsettings.Development.json files — these are intentionally excluded from version control. See ARCHITECTURE.md for the required configuration keys.

Project status

This is a personal experimental project shared publicly for learning value. It is not a Microsoft product, and is not affiliated with or endorsed by Microsoft. Expect rough edges, in-progress refactors, and breaking changes.

Contributing

Issues and discussions are welcome. For substantive changes, please open an issue first to discuss the direction. There is no formal PR process — please be patient with reviews.

Security

See SECURITY.md for the (low-formality) vulnerability reporting process.

License

MIT © 2026 Ilias Jennane.


The agent design philosophy and overall product framing draw inspiration from Microsoft AI Skills Navigator. All implementation here is original work unless otherwise noted.

About

Experimental agentic learning & skilling platform on Azure AI Foundry, Microsoft Agent Framework, and M365 Agents SDK. Six specialized agents across Teams, Copilot, and a Next.js web app.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors