核心用法
Agent Teams 是一款面向 AI Agent 和人类用户的 TypeScript CLI 工具,通过命令行接口与 Microsoft Teams 进行交互。其核心设计理念是"零配置启动"——首次运行时自动从本地 Teams 桌面应用提取身份令牌,无需手动注册应用或配置 OAuth。
主要功能模块
- 消息操作:发送、列出、获取、删除频道消息,支持表情反应
- 频道管理:列出频道、获取历史消息、查看频道信息
- 团队切换:多团队支持,可快速切换不同工作空间
- 账户切换:支持工作与个人账户切换
- 快照模式:为 AI Agent 提供团队全景数据(频道、成员、近期消息)
- 文件传输:上传文件、列出频道文件
典型工作流
# 获取团队全景 agent-teams snapshot # 发送消息到指定频道 agent-teams message send <team-id> <channel-id> "内容" # 监控频道并自动刷新令牌 agent-teams message list <team-id> <channel-id> --limit 50
显著优点
1. 无缝身份验证:自动从 Teams 桌面应用提取 skypetoken_asm 令牌,60-90 分钟过期后自动刷新
2. AI 原生设计:所有命令默认输出 JSON,便于程序解析;snapshot 命令专为 AI Agent 场景优化
3. 多租户支持:原生支持多团队、多账户(工作/个人)切换
4. 零依赖部署:通过 agent-messenger npm 包分发,Node.js 生态即装即用
潜在局限
- 实时性限制:无 WebSocket 连接,不支持实时事件推送,需轮询获取新消息
- 功能边界:不支持语音/视频、会议管理、团队创建/删除、Adaptive Cards、Webhook
- 令牌依赖:必须保持 Teams 桌面应用登录状态,否则自动刷新失败
- 平台绑定:仅支持 Microsoft Teams,无法复用于 Discord、Slack 等其他平台
适用人群
- AI Agent 开发者:需要让 LLM 与 Teams 集成的场景
- 自动化运维团队:需要通过脚本批量发送通知、监控频道动态
- 个人效率用户:偏好命令行、需要跨团队快速切换的重度 Teams 用户
常规风险
- 凭证安全:令牌存储于
~/.config/agent-messenger/teams-credentials.json,权限设为 0600,但仍依赖本地文件系统安全 - 令牌泄露:
skypetoken_asm可完全控制 Teams 账户,需避免日志泄露或版本控制误提交 - 服务中断:Microsoft 可能随时变更内部 API 或令牌机制,导致工具失效
- 合规风险:自动消息发送可能违反组织通讯政策,建议明确标识"自动化发送"来源