Microsoft 365 Agents SDK
用一套 SDK 构建可部署到 Microsoft 365 Copilot、Teams、Web 与自定义应用的多渠道智能体。
- Star 数
- ★ 1.1k
- 最近更新
- 2 天前
- License
- MIT
- 主语言
- TypeScript
- FA 评分
- 62/100 · 存在缺口
30 秒速览
- 运行形态
- 可在哪里用
- 兼容但需适配
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 企业开发者需要把已有智能体接入 Microsoft Teams 或 Microsoft 365 Copilot,希望由 SDK 承担渠道通信与事件分发的脚手架工作。
- 不适合
- 只想用单一语言 SDK 的开发者:源码分散在三个语言仓库,需先定位并同时跟踪两处
- 期待开箱即用安装文档的团队:README 未给出安装命令、运行时版本或依赖清单
- 源码审查
- 62/100 · 存在缺口
这个 Agent 能做什么,适合哪些场景?
Microsoft 365 Agents SDK 是微软提供的智能体开发框架,README 明确其目标是帮助开发者构建 full stack、multichannel、trusted 的智能体,并可部署到 M365、Teams、Copilot Studio、Webchat 等渠道。该仓库本身是语言无关的入口仓库,客户端库源码主要分布在 Agents-for-net、Agents-for-js、Agents-for-python 三个独立仓库中,本仓库用于汇总、分流 issue 并托管 agent-plugins。SDK 提供所谓的 agent 'container',包含状态、存储以及处理 activities 与 events 的能力,并负责处理渠道所需的通信脚手架。SDK 对 AI 服务保持 agnostic,开发者可自行选择一个或多个服务、模型或智能体,而不被绑定到特定技术栈。README 还列出 Semantic Kernel、Azure AI Foundry、Copilot Studio 等相关平台,说明各自的定位与配合方式。
该 SDK 让开发者创建一个带状态与存储的智能体容器,并在其中管理 activities 和 events;SDK 负责处理与各渠道通信所需的脚手架,使同一个智能体可部署到 Microsoft 365 Copilot、Microsoft Teams、Web 与自定义应用等渠道。它通过渠道管理能力把智能体对外发布,并允许开发者接入自选的 AI 服务、模型或智能体来完成编排。仓库层面,本仓库本身不直接承载某一种语言的源码,而是指向 Agents-for-net(C#/.NET)、Agents-for-js(JavaScript)、Agents-for-python(Python)等语言仓库;跨语言的通用问题可在此提交,单一语言问题应提交到对应仓库。此外,仓库托管 agent-plugins,为 AI 编码助手提供 agents-sdk-common、agents-for-js、agents-for-net、agents-for-python 四个插件;其中 agents-sdk-common 覆盖 Azure 资源预配、身份凭据与通过 az CLI 完成的 OAuth 设置,agents-for-js 覆盖构建智能体、调试认证与启动问题以及配置 OpenTelemetry 可观测性,agents-for-net 额外包含 Bot Framework 迁移和 ActivityHandler 到 AgentApplication 的迁移,agents-for-python 覆盖 OpenTelemetry 可观测性的配置与排错。
- 企业开发者需要把已有智能体接入 Microsoft Teams 或 Microsoft 365 Copilot,希望由 SDK 承担渠道通信与事件分发的脚手架工作。
- 团队希望在不锁定单一模型供应商的前提下构建智能体,用同一套 SDK 接入自选的 AI 服务或模型。
- 使用 C#/.NET、JavaScript 或 Python 的开发者,按语言进入对应仓库查找 QuickStart 与 samples 后开始实现第一个智能体。
- 使用 Copilot Studio 构建智能体,并通过本仓库 samples 中的 Copilot Studio Client 示例把智能体集成进自己的应用或构建多智能体模式。
- 从 Bot Framework 迁移到 Agents SDK 的 .NET 团队,借助 agents-for-net 插件中的 Bot Framework 迁移与 ActivityHandler 到 AgentApplication 迁移技能降低改造工作量。
- 在 GitHub Copilot CLI 或 Claude Code 中工作的开发者,安装 SDK 插件以获得 SDK API、常见模式和常见错误的提示。
如何安装或部署这个 Agent?
README 未给出 SDK 本身的安装命令,实际的包安装方式需查阅对应语言仓库。已记录的安装步骤仅针对 AI 编码助手插件,且明确适用于 GitHub Copilot CLI 或 Claude Code:
- 添加插件市场:
/plugin marketplace add microsoft/Agents- 安装通用插件:
/plugin install agents-sdk-common@microsoft-agents-sdk- 按需安装语言插件:
/plugin install agents-for-js@microsoft-agents-sdk
/plugin install agents-for-net@microsoft-agents-sdk
/plugin install agents-for-python@microsoft-agents-sdk- 使用 /plugin 命令确认安装结果;技能会按语言与任务自动激活,无需手动加载。
需要注意,除插件安装外,README 没有提供 SDK 的依赖清单、运行时版本要求或凭据配置步骤;agents-sdk-common 插件涉及通过 az CLI 完成 OAuth 与身份凭据配置,但具体参数未在 README 中列出。
如何使用这个 Agent?
README 建议的入手路径是进入本仓库的 samples 目录,先选择语言,再浏览示例列表,其中 QuickStart 被推荐用于理解基础概念。随后根据所用语言转到对应仓库:C#/.NET 使用 Agents-for-net,JavaScript 使用 Agents-for-js,Python 使用 Agents-for-python。若要接入 Copilot Studio,可在 samples 中选择对应语言的 Copilot Studio Client 示例。一个重要的边界是:使用该 SDK 本身并不需要 Microsoft 365 Copilot 订阅,只有当目标渠道本身要求订阅或服务时才需要,例如专门面向 Microsoft 365 Copilot 渠道时。此外,README 说明 SDK 对 AI 服务保持 agnostic,开发者需自行选择一个或多个服务、模型或智能体来完成编排;官方文档地址为 aka.ms/M365-Agents-SDK-Docs,另有 .NET、JavaScript、Python 的 API 文档链接。
这个 Agent 有哪些优点和局限?
- 渠道覆盖明确:README 点名 Microsoft 365 Copilot、Microsoft Teams、Web 与自定义应用,并由 SDK 承担渠道所需的通信脚手架,减少自建渠道适配的重复工作。
- AI 服务中立:SDK 明确对所选 AI 保持 agnostic,可选择一个或多个服务、模型或智能体,避免被单一模型供应商绑定。
- 多语言且按仓库拆分:C#/.NET、JavaScript、Python 分别有独立源码仓库,团队可按既有技术栈选型,跨语言问题保留在总仓库汇总。
- 内置面向编码助手的能力:agent-plugins 提供四个插件,agents-sdk-common 覆盖 Azure 预配与 az CLI 的 OAuth 设置,net 插件还覆盖 Bot Framework 与 ActivityHandler 迁移,对存量迁移场景有直接帮助。
- 无需 Copilot 订阅即可起步:README 明确除非针对需要订阅的渠道,否则使用该 SDK 不要求 Microsoft 365 Copilot 订阅。
- 本仓库不含客户端库源码:实际实现分布在 Agents-for-net、Agents-for-js、Agents-for-python,定位仓库后再跳转会增加检索与跟踪成本。
- 安装信息不完整:README 没有给出 SDK 的包安装命令、运行时版本或依赖清单,新手必须先进入语言仓库与官方文档才能补齐。
- 生态耦合度高:核心渠道是 Microsoft 365 Copilot、Teams、Copilot Studio 等微软产品,若目标是其他对话平台需要评估迁移或适配成本。
- 部分能力依赖插件生态与外部工具:agents-sdk-common 依赖 az CLI 完成 OAuth 与凭据配置,插件安装仅在 GitHub Copilot CLI 或 Claude Code 中记录。
- README 中关于状态、存储、activities 与 events 的描述偏概念化,缺少具体 API 名称与错误处理说明,评估时必须结合 samples 与官方文档。
这个 Agent 与同类方案有什么区别?
README 明确点名了几个相关但不同的选择。Semantic Kernel 是把 OpenAI、Azure OpenAI、Hugging Face 等 LLM 与传统编程语言集成的 SDK,通过可链式组合的 plugins 实现编排;Azure AI Foundry 提供核心后端智能体能力,包括推理、检索增强与可观测性,可选用 Azure AI Agent Service 或用其单个组件自行构建;Copilot Studio 是智能体构建平台,可与 Microsoft 365 Agents SDK 配合把智能体集成进应用并构建多智能体模式。三者的定位是互补关系,README 将 Agents SDK 描述为汇聚核心组件、便于创建和管理 AI 服务与第三方 SDK 的入口。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Microsoft 365 Agents SDK 当前 | 62 · 存在缺口 | 开发框架免费 + 模型费 | ★ 1.1k | 2 天前 | TypeScript | — |
| Microsoft Agent Framework | 70 · 存在缺口 | 代码库 / SDK免费 + 模型费 | ★ 15k | 今天 | Python | OpenAI API |
| Rig | 70 · 存在缺口 | 代码库 / SDK免费 + 模型费 | ★ 9.1k | 今天 | Rust | OpenAI API |
| tRPC-Agent-Go | 56 · 缺口较多 | 代码库 / SDK免费 + 模型费 | ★ 1.9k | 今天 | Go | OpenAI API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
README说明SDK可接入不同AI服务并部署到多个渠道,且声明其他服务另受其协议约束;OTel技能明确要求不把令牌、提示词等敏感内容写入遥测。得分有限:权限范围、外部操作确认及回滚机制未在所给框架证据中形成完整控制说明;调试技能建议启用广泛DEBUG日志,并列出认证、令牌、状态和附件相关日志类别,未同时说明脱敏或日志访问保护。安全报告路径清楚,但具体数据处理控制仍不足。
README将此仓库定位为各语言SDK仓库的入口,样例同步工作流也展示构建与合约检查步骤;CLI样例用统一错误输出并返回非零状态,支持一定的故障可诊断性。扣分原因是所给材料不含各语言核心实现或依赖锁定与可用性证据,且README有拼写和语法问题;静态材料不能证明运行可靠性。
材料明确面向.NET、JavaScript和Python开发者,覆盖Teams、Microsoft 365 Copilot、Web及自定义应用,并包含生产准备、调试和遥测等技能,适用场景较广。扣分原因是技能样本有限,部分触发条件较宽泛;文档虽说明生产参考仅适用于特定部署配置,但没有在本材料中完整界定框架全部能力边界及环境支持。
仓库README、语言仓库链接、样例入口、插件市场清单及安装命令构成可理解的导航;MIT许可证文本完整,安全报告和贡献说明也明确。扣分原因是本材料没有变更日志或版本策略说明,插件版本虽列出但无法据此了解SDK版本演进;README措辞错误、示例和FAQ覆盖也不完整。
SDK的多渠道通信脚手架、状态和活动管理,以及可替换AI服务的设计,能为构建代理提供实用基础;技能提供具体配置示例和操作步骤。得分未满是因为样例技能只覆盖部分任务,部分调试步骤要求逐项执行并产生较多日志,成本、输出质量及实际收益无法由静态材料充分确认。
README对仓库用途、语言仓库和文档入口有明确说明;工作流展示了具体构建、依赖安装和样例契约检查配置,技能也将规范性要求与示例区分。扣分原因是产品描述的多项能力未在所给核心实现中交叉验证,材料只是文件抽样,且静态审阅不能验证声称的构建或行为结果。
- 调试技能建议使用 DEBUG=agents:*,且列出认证、令牌、状态及附件相关日志;部署前应确认日志内容、脱敏方式和访问权限。
- 本审阅依据有限文件抽样;未见的实现、依赖和其他技能属于未知,不能据此推断其存在或缺失。
常见问题
使用这个 SDK 需要购买 Microsoft 365 Copilot 订阅吗?
遇到问题应该在哪个仓库提 issue?
SDK 会替我决定用哪个模型吗?
从哪里开始写第一个智能体?
SDK 对渠道有哪些原生支持?
谢谢反馈,我们会据此改进页面。