Microsoft 365 Agents SDK

Build one multichannel, trusted agent that ships to Microsoft 365 Copilot, Teams, web, and custom apps.

Source repo
microsoft/Agents
Stars
★ 1.1k
Last updated
2d ago
License
MIT
Primary language
TypeScript

At a glance

How it runs
FrameworkLibrary / SDKAgent plugin / skill
Works with
Portable with changes
Cost
Free software; you pay for model usage
Setup effort
Medium · a few setup steps
You'll need
GitHub Copilot CLI or Claude Code (for agent plugins)Shell / CLINetwork accessLocal filesystem
Typical use
An enterprise developer who already has agent logic and wants it reachable inside Microsoft Teams or Microsoft 365 Copilot, letting the SDK own channel communication and event dispatch.
Not a fit if
  • Developers wanting one language repo: source lives in three separate language repos you must track
  • Teams expecting turnkey install docs: no install commands, runtime version, or dependency list in the README
Source review
62/100 · Some gaps

What does this agent do, and when should you use it?

The Microsoft 365 Agents SDK from Microsoft is a framework for building full stack, multichannel, trusted agents that deploy to channels such as Microsoft 365 Copilot, Microsoft Teams, Web & Custom Apps, and more, while the SDK handles the required channel communication scaffolding. This repository is deliberately a jumping-off point rather than a monolithic codebase: the client libraries live mostly in Agents-for-net (C#/.NET), Agents-for-js (JavaScript), and Agents-for-python (Python), and cross-cutting issues can be filed here while language-specific issues belong in those repos. The SDK gives you an agent 'container' with state, storage, and the ability to manage activities and events, and it stays agnostic about which AI you choose, so you can pick one or more services, models, or agents. The repo also hosts agent-plugins that give AI coding assistants deeper knowledge of the SDK's APIs, patterns, and common mistakes. Microsoft 365 Copilot is just one supported channel, and a subscription is not required to get started unless you target that or another subscription-gated channel.

The SDK lets you build an agent container that carries state and storage and manages activities and events, then deploy that container across channels including Microsoft 365 Copilot, Microsoft Teams, Web & Custom Apps and more, with the SDK providing the communication scaffolding each channel requires. Channel management capabilities are what publish the agent outward, and orchestration is left to the AI services, models, or agents you plug in yourself. At the repository level, this repo points to the language-specific implementations rather than containing them: Agents-for-net for C#/.NET, Agents-for-js for JavaScript, and Agents-for-python for Python, with cross-cutting issues accepted here. The repo also ships agent-plugins in four variants: agents-sdk-common covers Azure provisioning, identity credentials, and OAuth setup through the az CLI; agents-for-js covers building agents, debugging authentication and startup issues, and configuring OpenTelemetry observability; agents-for-net adds Bot Framework migration and ActivityHandler-to-AgentApplication migration; agents-for-python covers configuring and troubleshooting OpenTelemetry observability.

  1. An enterprise developer who already has agent logic and wants it reachable inside Microsoft Teams or Microsoft 365 Copilot, letting the SDK own channel communication and event dispatch.
  2. A team that refuses to lock into a single model vendor and wants one SDK whose orchestration layer accepts whichever AI services or models they pick.
  3. C#/.NET, JavaScript, or Python developers who want to start from the QuickStart and samples in their language's repository before committing to a framework.
  4. A builder on Copilot Studio who needs to embed an agent into an application or compose multi-agent patterns, starting from the Copilot Studio Client sample in the samples folder.
  5. A .NET team migrating off Bot Framework that wants the agents-for-net plugin's Bot Framework and ActivityHandler-to-AgentApplication migration skills to scope the rewrite.
  6. A developer working in GitHub Copilot CLI or Claude Code who wants SDK-specific guidance auto-activated by language and task.

How do you install or deploy this agent?

The README does not document installing the SDK itself; package installation must be looked up in the language-specific repositories. The only installation steps it does give are for the AI coding assistant plugins, explicitly for GitHub Copilot CLI or Claude Code:

  1. Add the plugin marketplace:
/plugin marketplace add microsoft/Agents
  1. Install the common plugin:
/plugin install agents-sdk-common@microsoft-agents-sdk
  1. Install the plugins for the SDKs you use:
/plugin install agents-for-js@microsoft-agents-sdk
/plugin install agents-for-net@microsoft-agents-sdk
/plugin install agents-for-python@microsoft-agents-sdk
  1. Run /plugin to verify installation; skills activate automatically, and no manual loading is needed.

Be aware that beyond plugin installation the README gives no dependency list, runtime version requirements, or credential setup for the SDK itself. The agents-sdk-common plugin does cover Azure provisioning, identity credentials, and OAuth setup via the az CLI, but the README does not spell out those parameters.

How do you use this agent?

The README's recommended entry point is the samples folder in this repository: pick your language, review the samples list, and start with QuickStart, which is recommended for fundamentals. From there move to the repository for your language — Agents-for-net for C#/.NET, Agents-for-js for JavaScript, Agents-for-python for Python. To work with Copilot Studio, pick the Copilot Studio Client sample in your chosen language. One practical boundary: a Microsoft 365 Copilot subscription is not required to get started with or use this SDK unless you are working specifically with that channel or others that gate their client behind a subscription or service. The README also states that the SDK is agnostic about the AI you choose, so you select one or more services, models, or agents to meet your requirements. Official docs live at aka.ms/M365-Agents-SDK-Docs, with separate .NET, JavaScript, and Python API references.

What are this agent's strengths and limitations?

Pros
  • Explicit channel coverage: Microsoft 365 Copilot, Microsoft Teams, Web & Custom Apps are named supported targets, and the SDK handles the required communication scaffolding, cutting down on per-channel plumbing.
  • AI-agnostic by design: the README states the SDK does not restrict you to a technology stack and lets you select one or more services, models, or agents.
  • Multi-language with clean separation: C#/.NET, JavaScript, and Python each live in their own repository, so teams pick their existing stack while cross-cutting issues stay centralized here.
  • First-class tooling for coding assistants: four agent-plugins, with agents-sdk-common covering Azure provisioning and az CLI OAuth setup and the .NET plugin covering Bot Framework and ActivityHandler-to-AgentApplication migration.
  • Low entry barrier on licensing: no Microsoft 365 Copilot subscription is needed to start unless you target that channel or another subscription-gated client.
Limitations
  • The SDK source is not in this repository: implementations sit in Agents-for-net, Agents-for-js, and Agents-for-python, so you must identify your language repo first and then track two places.
  • Thin installation documentation: no package install commands, runtime version, or dependency list appear in the README, so onboarding requires the language repos and official docs.
  • Deep ecosystem coupling: the primary channels are Microsoft products such as M365 Copilot, Teams, and Copilot Studio, so targeting other conversational platforms means evaluating migration or adaptation work.
  • Some capability depends on external tooling: agents-sdk-common relies on the az CLI for identity credentials and OAuth setup, and plugin installation is only documented for GitHub Copilot CLI or Claude Code.
  • Concept-level descriptions: the README speaks of state, storage, activities, and events without naming concrete APIs or failure handling, so a real evaluation has to go through the samples and official docs.

How does this agent compare with similar options?

The README names several related but distinct options. Semantic Kernel is an SDK that integrates LLMs such as OpenAI, Azure OpenAI, and Hugging Face with conventional languages like C#, Python, and Java by letting you define plugins that chain together in a few lines of code. Azure AI Foundry supplies the core backend agent functionality — reasoning, retrieval augmentation, observability, among other core functions — and developers can use the Azure AI Agent Service or assemble their own agent functionality from individual components. Copilot Studio is an agent building platform that can be combined with the Microsoft 365 Agents SDK to integrate your agent into applications and create multi-agent patterns. The README frames these as complementary: the Agents SDK gathers core components so developers can create, manage, and use AI Services and third-party SDKs for orchestration and custom agent logic.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
Microsoft 365 Agents SDK This agent 62 · Some gaps FrameworkFree + model costs ★ 1.1k 2d ago TypeScript —
Microsoft Agent Framework 70 · Some gaps Library / SDKFree + model costs ★ 15k today Python OpenAI API
Rig 70 · Some gaps Library / SDKFree + model costs ★ 9.1k today Rust OpenAI API
tRPC-Agent-Go 56 · Major gaps Library / SDKFree + model costs ★ 1.9k today Go OpenAI API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Some gaps
62/ 100 5-point scale 3.1 / 5
Trust 14/29
Reliability 8/14
Adaptability 14/18
Convention 12/18
Effectiveness 9/13
Verifiability 5/8
Why each dimension lost points
Trust14 / 29 · 2.4/5

The README describes support for multiple AI providers and channels and notes that other connected services have their own terms. The OTel skill explicitly says not to put tokens, prompts, or similar sensitive content in telemetry. Scores are limited because the supplied framework evidence does not establish complete controls for permission scope, confirmation of external actions, or rollback. The debugging skill recommends broad DEBUG logging and names authentication, token, state, and attachment log categories without pairing that advice with redaction or access controls. The security reporting path is clear, but concrete data-handling controls are incomplete.

Reliability8 / 14 · 2.9/5

The README positions this repository as an entry point to language-specific SDK repositories, and the sample-sync workflows show build and contract-check steps. The CLI sample emits a consistent failure message and nonzero status, supporting diagnosis. Scores are reduced because the packet does not include core implementations for each language or evidence about locked dependency availability; the README also contains spelling and grammar errors. Static evidence cannot establish runtime reliability.

Adaptability14 / 18 · 3.9/5

The materials identify .NET, JavaScript, and Python developers as audiences and cover Teams, Microsoft 365 Copilot, Web, and custom apps, with skills for production readiness, debugging, and telemetry. Scores are reduced because the skill sample is limited and some trigger descriptions are broad; although the production skill bounds its reference profile, this packet does not fully define all framework capability boundaries or supported environments.

Convention12 / 18 · 3.3/5

The README, language-repository links, sample navigation, plugin marketplace manifest, and installation commands provide a usable structure. The MIT license text is complete, and security reporting and contribution guidance are clear. Scores are reduced because the packet provides no changelog or SDK versioning policy; plugin versions alone do not explain SDK evolution. The README has wording errors, and example and FAQ coverage is incomplete.

Effectiveness9 / 13 · 3.5/5

The SDK's multichannel communication scaffolding, state and activity management, and provider-flexible design offer practical building blocks for agents. The skills include concrete configuration examples and procedures. Scores are not full because the sampled skills cover only some tasks, some debugging instructions require many steps and can produce extensive logs, and static materials cannot establish actual output quality, cost, or benefit.

Verifiability5 / 8 · 3.1/5

The README clearly states the repository's purpose and points to language repositories and documentation. Workflows show specific build, dependency-installation, and sample-contract-check configurations, while skills distinguish guidance from examples. Scores are reduced because several product claims are not corroborated by the supplied core implementation, the packet is only a sample, and static review cannot verify claimed build or behavioral results.

Risks and how to mitigate them
  • The debugging skill recommends DEBUG=agents:* and lists authentication, token, state, and attachment log categories; verify log contents, redaction, and access controls before deployment.
  • This assessment uses a limited file sample. Unseen implementations, dependencies, and skills are unknown and should not be treated as either present or absent.
Evidence confidence: Low Reviewed Nov 08, 2026 Reviewed revision 8f74d93e8a8b
See the full review method →
Maintain this project? Add the FARS badge to your README

The badge shows the current review score and verdict and links back to this page. It refreshes about once an hour after a re-review.

FARS

[![FARS review](https://followagents.com/badge/microsoft-agents.svg)](https://followagents.com/en/agents/microsoft-agents)
<a href="https://followagents.com/en/agents/microsoft-agents"><img src="https://followagents.com/badge/microsoft-agents.svg" alt="FARS review"></a>

FAQ

Do I need a Microsoft 365 Copilot subscription to use this SDK?
No. The README states Microsoft 365 Copilot is one of many supported channels and that a subscription is not required to get started with or use the SDK, unless you are working specifically with that channel or others that require a subscription or service for their client.
Where should I file an issue?
Open language-specific issues in the corresponding repository: Agents-for-net, Agents-for-js, or Agents-for-python. Cross-cutting issues can be opened in this repository.
Does the SDK decide which model or AI service I use?
No. The README says the SDK is agnostic regarding the AI you choose, so you select one or more services, models, or agents. The SDK's job is the agent container with state, storage, activities and events, plus the channel communication scaffolding.
What is the fastest path to a first working agent?
Open the samples folder in this repository, select your language, review the samples list, and start with QuickStart, which the README recommends for fundamentals. Official documentation is at aka.ms/M365-Agents-SDK-Docs.
Which channels does the SDK support natively?
The README lists Microsoft 365 Copilot, Microsoft Teams, Web & Custom Apps and more, published through the SDK's channel management capabilities. For Copilot Studio, the samples folder includes a Copilot Studio Client sample in each supported language.
Was this page helpful?
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.