跳转到主要内容
在 Microsoft Teams 中,一有 bug、功能需求或问题,就标记 @Devin。每当被标记时,Devin 会在对应线程中回复最新进展并提出相关问题。

快速开始

安装

  1. 前往 Settings > Integrations,选择 Microsoft Teams
  2. 点击 “Connect”
  3. 系统会提示你在你的租户和/或目标团队(Team)中安装适用于 Microsoft Teams 的 Devin 应用
  4. 确保绑定你的个人账户。组织内所有用户都需要完成此步骤才能使用 Devin
  5. 在团队频道或聊天中 @Devin 以开始会话
注意:要让 Devin 对每位用户生效,每个人都必须在 Devin 仪表盘中连接自己的账户(Settings > Integrations)。这样 Devin 才能将其在 Microsoft Teams 中的身份与对应的 Devin 用户关联起来。

如何在 Microsoft Teams 中使用 Devin

安装 Microsoft Teams 集成后,只需在任意团队频道中使用 @Devin 即可激活 Devin。 Devin 会在线程中回复你的会话。你可以像在常规 Devin 聊天界面中一样与 Devin 进行双向交流。 请注意,Devin 可能会出错。请务必仔细检查回复内容。

Teams 内联关键词与功能

KeywordFunction
!ask在消息开头使用 !ask,可在不启动完整智能体的情况下快速获取代码库相关回答
!deep使用高级搜索获取更深入的研究型回答
mute阻止 Devin 查看此线程中的后续消息
unmute撤销上述操作
(aside), !aside让 Devin 忽略该消息(适用于在同一线程中直接对 Devin 的运行进行评论)
sleep让 Devin 进入休眠;要唤醒 Devin,在该线程中发送任意消息即可
archive让 Devin 进入休眠,并归档该会话
EXIT结束当前会话
help显示包含可用关键词和功能的帮助信息

定价

如果你还没有 Devin 账号,可以在这里了解各类套餐及价格详情。

隐私

我们的隐私政策请见此处

身份验证流程

下图展示了 Microsoft Teams 集成的高级身份验证架构,说明了身份验证如何从 Teams 经过各层流转,从而创建已通过验证的 Devin 会话。

权限详情

下面是我们的集成所需的 Microsoft Teams 和 Microsoft Graph 权限摘要——每个权限能做什么、我们为什么需要它,以及它在何处被使用。
一览
  • Graph(应用程序,租户级):用于发现和安装编排。
  • Teams 机器人 RSC(按团队/聊天):仅在机器人已安装或存在的团队/聊天中,对消息、成员和设置进行限定范围的访问。

租户级 Microsoft Graph(应用)权限

这些权限在 Entra ID(Azure AD)中需要管理员同意。它们仅限应用程序使用(不涉及用户委托)。
Permission允许的操作我们为什么需要它
Organization.Read.All读取组织的基本信息验证正在安装应用的租户
User.ReadBasic.All读取所有用户的基本信息映射成员身份,并解析关联 Teams 中的 @ 提及
AppCatalog.Read.All读取 Teams 应用目录定位到我们的应用,并获取安装所需的 teamsAppId
TeamsAppInstallation.ReadWriteAndConsentSelfForTeam.All安装/卸载我们自己的应用;为应用授予 RSC通过 Devin 仪表板在选定的团队中安装/移除机器人
注意:我们不会使用租户级 Graph 权限读取消息内容。消息访问仅通过 RSC 授予,且仅限机器人已安装/存在的团队。
这些权限在安装时按各个团队/聊天单独授予(不在整个租户范围内生效)。
PermissionScopeWhat it allowsWhy we need it
ChannelMessage.Read.GroupTeam/Channel读取安装了应用的频道中的消息处理频道会话(摘要、触发器、同步)
ChannelMessage.Send.GroupTeam/Channel在安装了应用的频道中发送消息(新帖子和线程回复)在频道线程中回复消息,并主动向频道发布更新
Member.Read.GroupTeam/Channel读取团队成员信息映射身份、执行权限检查、处理 @ 提及路由
TeamSettings.Read.GroupTeam/Channel读取团队设置遵守团队级策略并据此调整行为
ChatMember.Read.ChatChat读取聊天参与者正确称呼和回复用户,并支持审计日志追踪
ChatMessage.Read.ChatChat读取机器人参与的聊天中的消息处理提示、上下文和后续交互
ChatMessage.Send.ChatChat在机器人参与的 1:1 和群组聊天(私信/DM)中发送消息;不适用于频道在私信和群组聊天中回复用户,发布通知,并在聊天线程中发送交互式回复
ChatSettings.Read.ChatChat读取聊天设置(例如,审核配置)将行为与聊天策略对齐(频率限制、谁可以发言等)
RSC 保护措施:访问权限仅限于安装应用或机器人参与的特定团队/聊天。将应用从某个团队/聊天中移除会立即撤销对此的访问权限。

示例:用于 Teams 发现的基于证书的身份验证

下图展示了我们在 Microsoft Graph 上使用仅应用(app-only)、基于证书的身份验证方案。服务使用 X.509 客户端证书获取访问令牌,然后调用 Graph 列出 Teams(GET /v1.0/teams)。此示例演示 Devin 如何在没有用户上下文的情况下安全地执行租户发现。
凭证说明:我们使用 X.509 证书(客户端断言)而不是客户端密钥(client secret)来进行服务到服务的身份验证。这适用于对 Microsoft Graph 的调用、机器人与 Bot Framework 适配器之间的通信,以及该集成发起的任何仅应用程序(app-only)API 调用。

完整消息处理流程(Teams → Cognition)

下图展示了当用户在 Microsoft Teams 中向 Devin 发送消息时的端到端处理流程,包括令牌验证和机器人处理。
凭证说明:我们使用 X.509 证书(client assertion)而不是 client secret 进行服务到服务的身份验证。这适用于 Microsoft Graph 调用、机器人与 Bot Framework 适配器之间的通信,以及由该集成发起的任何仅应用程序身份(app-only)的 API 调用。
  1. 管理员同意(租户范围)
    • Entra ID 管理员授予上述 Graph 应用程序权限。
  2. 应用发现
    • 集成会查询 Teams 应用目录以定位我们的应用并获取 teamsAppId
  3. 定向安装
    • 我们通过仪表板将机器人安装到特定的 Team 团队中。
    • 在安装过程中,RSC 权限范围仅授予该 Team(或在聊天中调用时,仅授予该特定 Chat)。
  4. 运行
    • 资源发现(组织/团队/频道/应用目录)使用 Graph 应用程序权限。
    • 读取/发送消息以及读取成员/设置依赖于已安装界面内的 RSC 权限。

最小权限说明

  • 仅基础读取权限:User.ReadBasic.All(不包含租户范围的消息读取权限)。
  • 消息内容仅通过 RSC 访问,且仅限于机器人已安装/存在的地方。
  • 不请求任何邮箱、文件或日历权限。

撤销与卸载

  • 撤销管理员同意:租户管理员可以在 Entra ID 中移除该应用的企业应用权限。
  • 从 Teams 卸载:从某个 Team/Chat 中移除该应用以撤销该资源的 RSC。
  • 数据处理:卸载后,我们的集成将停止处理该 Team/Chat 的事件,并清理相关订阅和链接。