【教程】使用Microsoft 365 Agents Toolkit快速开发Office加载项(上)
Lv.2潜力创作者
一、什么是 Office Web Add-Ins?
Office Web Add-Ins(加载项)是微软推出的 Office 扩展技术,是一个嵌入 Office 应用内部的 Web 应用,通过 Office.js 与Office 文档进行交互。相比传统的 VSTO/COM 插件,它基于 Web 技术栈,跨平台支持 Windows、macOS、Web 端。
Microsoft 365 Agents Toolkit 就是微软官方为构建这类加载项提供的一站式开发工具集。更多关于 Office 加载项平台的信息可参考官方概述:https://learn.microsoft.com/en-us/office/dev/add-ins/overview/office-add-ins
二、Microsoft 365 Agents Toolkit 概述
2.1 从 Teams Toolkit 到 Agents Toolkit
Microsoft 365 Agents Toolkit(GitHub 仓库:https://github.com/OfficeDev/microsoft-365-agents-toolkit)是微软 OfficeDev 团队维护的开源工具集,其前身是 Teams Toolkit。随着 Microsoft 365 Copilot 的推出,其定位从"Teams 应用开发工具"扩展为覆盖Copilot、Teams、Office 三大产品线的统一构建平台。开发者只需使用一套工具,即可触达 Microsoft 365 生态的全部可扩展面。
2.2 架构设计:一套工具,三条产品线
Agents Toolkit 采用"核心引擎 + 可插拔扩展"的模块化架构,其 GitHub 仓库(OfficeDev/microsoft-365-agents-toolkit)包含以下核心子包:
子包 | 职责 |
fx-core | IDE 扩展与 CLI 共享的核心引擎,实现脚手架生成、配置管理等基础能力 |
SDK | 封装客户端与服务端的认证逻辑,简化 OAuth 2.0 / SSO 集成 |
API | IDE 扩展和 CLI 支持的合约集合,开发者可编写插件扩展 TeamsFx 新能力 |
Spec Parser | 解析 OpenAPI 描述文档,自动生成基于 API 的消息扩展和 Adaptive Cards |
Azure Functions Extension | 无服务器函数集成支持,帮助开发者在 Teams 应用中包含 Azure Functions 后端 |
Simple Auth | 简化 SSO 认证模块 |
MCP Server | Model Context Protocol 服务器,对接 AI 模型上下文协议 |
这种"核心引擎 + 可插拔扩展"的架构模式,使工具集能够在不重构主体代码的前提下快速接入新的平台能力(如 MCP 协议支持)。这一架构设计,正是从单一 Teams 开发工具演进为覆盖三大产品线统一平台的基石。
2.3 三种使用形态
Agents Toolkit 提供三种使用方式,开发者可根据自身偏好选择:
Visual Studio Code 扩展:面向 JavaScript / TypeScript 开发者,集成项目脚手架、调试、部署全流程
Visual Studio 工作负载:面向 C# / .NET 开发者
CLI 命令行工具:通过 @microsoft/m365agentstoolkit-cli 分发,适用于 CI/CD 自动化
三、安装与环境准备
3.1 安装 Agents Toolkit
VS Code 扩展方式(推荐 JS/TS 开发者):
在 VS Code 的扩展市场中搜索"Microsoft 365 Agents Toolkit"并安装,安装后活动栏会出现 Agents Toolkit 图标。
CLI 命令行方式(适合 CI/CD 场景):
npm install -g @microsoft/m365agentstoolkit-cli安装后可通过 atk 命令使用,验证方式:atk -h。
Visual Studio 方式(适合 .NET 开发者):
在 Visual Studio 2022 安装程序中勾选"Microsoft 365 Agents Toolkit"工作负载即可。
3.2 前置条件
Node.js
Office 客户端:Office 网页版、Office on Windows、Office on Mac、Outlook on Windows 均支持,永久授权版 Office 和移动版 Office 暂不支持
Visual Studio Code 或 Visual Studio 2022
更多安装和配置细节可参考 Agents Toolkit 官方文档:https://learn.microsoft.com/en-us/microsoftteams/platform/toolkit/overview-agents-toolkit
四、使用 Agents Toolkit 创建 Office Web Add-In 项目
4.1 创建项目
Agents Toolkit 创建的 Office Add-In 项目使用 Microsoft 365 统一清单(Unified Manifest),这是相比传统 XML 清单的一个重大变化。统一清单采用 JSON 格式,使 Office 加载项能够与 Teams 选项卡、Copilot 代理合并为单一分发单元。
创建步骤如下:
打开 VS Code,点击活动栏中的 Agents Toolkit 图标
选择 Create a New App
在项目类型中选择 Office Add-in
在功能中选择 Task pane(任务窗格)
选择工作区文件夹并命名项目
Agents Toolkit 会自动生成项目脚手架,并在新窗口中打开
4.2 项目结构
my-office-addin/
├── src/
│ ├── taskpane/ # 任务窗格 HTML / CSS / JS
│ └── commands/ # 功能区命令逻辑
├── manifest.json # 统一清单(JSON 格式)
├── package.json
└── webpack.config.js4.3 统一清单
统一清单(Unified Manifest)将 Office 加载项与 Teams 选项卡、Copilot 代理统一为单一分发单元,使用 JSON 格式替代传统 XML 清单。
统一清单的核心属性包括:
"id":加载项唯一标识符
"version":版本号
"manifestVersion":清单版本(当前为 "1.0")
"name":加载项名称
"description":描述信息
"accentColor":主题色
"extensions":扩展点配置数组
"authorization":声明所需的 Microsoft Graph 权限
"webApplicationInfo":标识 Microsoft Entra ID 中的应用注册
完整架构参考:https://learn.microsoft.com/en-us/office/dev/add-ins/develop/unified-manifest-overview
注意,Office 安全策略要求加载项的所有资源必须通过 HTTPS 提供服务。开发阶段 Agents Toolkit 会自动生成本地开发证书(自签名证书)来启用 HTTPS,浏览器可能会提示证书风险,选择继续即可。生产部署时,必须将 Web 应用部署到支持 HTTPS 的服务器上,并在 manifest 中将加载项入口地址更新为生产环境的 HTTPS URL。
4.4 安装依赖与启动
# 在项目根目录安装依赖
npm install
# 启动开发服务器
npm start