MS Outlook + Teams Assistant

📬 Outlook 桌面智能管家,本地守护收件箱

通过 Outlook COM 自动化监控未回复邮件与 Teams 提及,生成待办提醒并起草简洁回复草稿,全程本地执行不依赖网页版。

收藏
11.1k
安装
2.4k
版本
1.0.0
CLS 安全性认证2026-07-01
点击查看完整报告 >

使用说明

核心用法

MS Outlook + Teams Assistant 是一款面向 Windows 用户的桌面级效率工具,通过直接调用 Outlook COM 接口实现本地化邮件管理。核心功能分为三大模块:

1. 智能监控与提醒

  • 扫描过去 7 天(可配置)的 Outlook 收件箱,基于启发式算法识别需要回复的邮件:优先处理"收件人"字段包含用户的邮件、过滤广播邮件、检测主题/正文中的直接请求
  • 可选通过 Microsoft Graph API 监控 Teams 私信提及(1:1 聊天)和群组中被@的消息
  • 生成 Telegram 格式的待办提醒,支持一键忽略或延后处理

2. 邮件回复草稿生成

  • 基于现有邮件线程自动生成两种长度的回复建议:简短版(2-5句)和标准版(5-10句)
  • 严格遵循用户预设的写作风格: conversational(对话式)、spartan(简洁)、避免行话、禁用长破折号
  • 在 Outlook 中创建草稿(不自动发送),或输出到 Telegram 供用户审阅

3. 状态管理

  • 本地 JSON 状态文件跟踪已忽略/延后的项目,防止重复提醒
  • 支持通过邮件 internetMessageId 或主题+时间戳作为唯一标识

显著优点

  • 零依赖网页版:直接操控 Outlook 桌面客户端,绕过企业环境下网页版访问限制
  • 本地优先架构:邮件内容不经过第三方云服务,敏感数据驻留本地
  • 可配置启发式规则:用户可自定义"需要回复"的判定标准
  • 双模式提醒:Telegram 为默认安全通道,Teams 发送需显式开启
  • 符合企业合规:不自动发送任何消息,所有输出均为草稿或待确认状态

潜在局限

  • Windows 独占:依赖 pywin32 和 Outlook COM 自动化,macOS/移动端无法使用
  • Teams 功能受限:需 Entra ID 应用注册,且受租户策略约束;部分企业可能禁用 Graph 权限
  • 邮件线程解析局限:"最佳努力"提取历史内容,复杂嵌套回复可能上下文丢失
  • 状态文件无加密:本地 dismissed 列表以明文 JSON 存储,多用户机器存在隐私风险
  • 网络条件依赖:Teams Graph 首次需设备码登录,过期后需重新授权

适合人群

  • 企业环境中强制使用 Outlook 桌面版、无法使用网页邮箱的 Windows 用户
  • 日均邮件量 50-200 封、需外部系统辅助优先级判断的知识工作者
  • 对 Teams 消息响应延迟敏感、希望集中管理 Outlook+Teams 待办的管理者
  • 重视数据本地化处理、不愿将邮件内容同步至云端 AI 服务的隐私敏感用户

常规风险

| 风险类别 | 具体表现 | 缓解措施 |
|---------|---------|---------|
| 自动化误伤 | 启发式规则误判广播邮件为需回复 | 定期审核 `config.json` 中的排除发件人列表 |
| 权限扩散 | Teams Graph 权限范围过宽 | 严格遵循最小权限原则,仅申请 `ChatMessage.Read` |
| 凭证泄露 | `config.json` 包含 clientId/tenantId | 绝对禁止提交至版本控制,使用 `.gitignore` 保护 |
| 提醒疲劳 | 高频扫描导致 Telegram 消息轰炸 | 调整 `--days` 和 `--max-items` 参数,善用 snooze 功能 |
| 合规边界 | 某些企业视 COM 自动化为"非标准访问" | 使用前咨询 IT 安全团队,确认符合终端安全策略 |

安全解读

核心功能

MS Outlook + Teams Assistant 是一款专注于 Windows 桌面环境的效率工具,通过 COM 自动化与 Microsoft Graph API 双通道,帮助用户管理邮件和即时消息的回复任务。

三大核心用法

1. 智能扫描与提醒(Nagging)

  • Outlook 桌面端:扫描最近7天邮件,通过启发式算法识别需要回复的邮件(优先处理"To:"字段收件人、含直接询问语义的邮件)
  • Teams 消息:可选通过 Microsoft Graph API 追踪私聊和群组中被@的消息
  • 提醒机制:默认发送至 Telegram 待用户确认,仅当显式启用时才发送至 Teams

2. 邮件回复草稿生成

  • 基于现有邮件线程,生成两种长度草稿(简洁版2-5句/标准版5-10句)
  • 严格遵循用户设定的语气规则:对话式、避免术语、简短、消除冗余、禁用破折号
  • 输出至控制台或直接在 Outlook 创建草稿(--create-draft),绝不自动发送

3. 状态管理

  • 本地 JSON 状态文件记录已忽略/延后项目,防止重复提醒
  • 支持通过 internetMessageId 或主题+时间戳组合标识邮件

显著优点

| 维度 | 优势 |
|------|------|
| **隐私优先** | 所有数据处理本地完成,OAuth Token 仅存本地,不经过第三方服务器 |
| **安全默认** | 明确禁止自动发送,每次提醒需人工确认,降低误操作风险 |
| **双通道设计** | COM 自动化保证 Outlook 桌面版原生体验,Graph API 扩展 Teams 能力 |
| **启发式智能** | 基于收件人字段、语义分析的邮件优先级判断,减少噪音 |
| **可配置性** | 扫描天数、提醒渠道、最大条目数均可通过 CLI 参数调节 |

潜在局限

环境依赖较重

  • 仅限 Windows 平台(依赖 pywin32 + Outlook Desktop)
  • Teams 功能需要 Entra ID 应用注册,企业租户策略可能阻止 Device Code 流

技术门槛

  • 需手动配置 config.json,包含 tenantId/clientId 等 Azure AD 概念
  • 首次 Graph 授权需用户手动完成 Device Code 登录流程

功能边界

  • 不处理附件上传、会议邀请等复杂场景
  • 邮件线程提取为"尽力而为"(best-effort),可能出现上下文截断
  • 仅支持单向扫描,无法实时推送(非 Webhook 架构)

适合人群

  • 重度 Outlook 用户:每日邮件量50+,依赖桌面客户端办公
  • Teams 高频使用者:在多个群组中被@,容易遗漏待回复消息
  • Telegram 主力通讯者:希望将工作提醒汇聚至常用 IM 工具
  • 隐私敏感型企业用户:不接受 SaaS 邮件助手,要求数据不出本地

常规风险

| 风险类型 | 说明 | 缓解措施 |
|----------|------|----------|
| **OAuth Token 泄露** | 本地存储的 refresh_token 若被窃取可导致账户访问 | 建议配置文件设置 0600 权限,避免版本控制提交 |
| **COM 自动化稳定性** | Outlook 进程异常可能导致 COM 调用失败 | 代码含异常捕获,建议保持 Outlook 运行 |
| **误报提醒** | 启发式算法可能将无需回复的邮件标记为待办 | 用户可通过 dismiss/snooze 机制快速过滤 |
| **T3 来源信任** | 个人开发者维护,无企业 SLA 保障 | 建议审计代码后使用,关注后续更新签名 |

合规认证

通过 CLS-Certify v2.1.0 安全扫描,总体评分 78/A级。GDPR 数据最小化、用户同意机制、传输加密均通过;敏感数据访问项标注警告(因涉及邮件内容读取,属预期行为)。

MS Outlook + Teams Assistant 内容

references文件夹
scripts文件夹
手动下载zip · 16.2 kB
config.example.jsonapplication/json
请选择文件