mcpField
G
gigamail

gigamail

本地服务
gigamail.ai通信协作171 天前更新

关于 gigamail

gigamail 是面向 AI Agent 的邮件与日历 MCP 服务,支持 Microsoft Graph 和 IMAP 多账户。邮件数据保存在本机,并以人工站外审批和审计日志控制发送、删除等操作。

主要功能

  1. 01Microsoft Graph 与 IMAP 多账户
  2. 02本地邮件归档与混合搜索
  3. 03发件人记忆与联系人备注
  4. 04日历空闲时段辅助起草
  5. 05敏感字段遮蔽
  6. 06危险操作需人工审批并留存日志

适用场景

  1. 01搜索多个邮箱中的历史邮件
  2. 02依据联系人信息和资料起草回复
  3. 03根据日历空档建议会议时间
  4. 04在发送或删除前进行人工核准

MCP 相关

通过 stdio 向 MCP 客户端提供邮件、日历、搜索及文件等工具。发送、删除等危险操作返回待审批请求,由人工在控制台或命令行批准后执行。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"adecubed-gigamail": {
"command": "uvx",
"args": [
"gigamail"
],
"env": {
"GIGAMAIL_ROOT": "<GIGAMAIL_ROOT>"
}
}
}
}
启动命令uvx gigamail
需要配置的环境变量
GIGAMAIL_ROOTData directory (Windows: %APPDATA%\ADE, POSIX: ~/.ade). Optional; declare it if your MCP client filters the subprocess environment.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypigigamail0.3.4

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

GigaMail — 为 AI Agent 提供邮件服务

English · Italiano · 中文

Download Download gigamail.ai PyPI PyPI Downloads License AGPL-3.0 GitHub stars Python MCP server Claude Code Codex OpenClaw Hermes

MCP 服务,为你的 Agent(Claude、Codex、OpenClaw、Hermes 或任何 MCP 客户端)提供安全、受控的邮件访问权限——支持多账户(Microsoft Graph + IMAP)、日历、 本地搜索索引、发件人记忆,以及感知 Agent 的权限模型。

不内置 LLM:智能由你的 Agent 提供。MCP 服务仅通过 stdio 通信,不开放网络端口。(可选的人类控制台会添加一个绑定到 127.0.0.1 的本地 HTTP API。)

数据由你掌控:GigaMail 会将邮件索引、凭据、记忆和 配置保存在你的设备上——我们不运行任何服务,也不会接收任何数据。 当然,Agent 读取的邮件内容会由该 Agent 及其模型提供商按照各自的数据政策处理。请据此 选择 Agent;遮蔽器可在 Agent 看到敏感字段之前将其隐藏(税号、增值税号、IBAN、电子邮件地址、电话号码——以确定性方式验证,不使用 AI)。

GigaMail

## 为什么
  • 混合搜索:服务商搜索(Graph/IMAP)+ 本地 SQLite 索引 — 快速且适合离线使用
  • 独立归档:所有账户的每封邮件都会保存在本地,包括附件;即使服务器已将其删除,仍可搜索。Outlook 在 PC 上的历史邮件会导入一次(gigamail archive)
  • 发件人记忆:记录每位发件人的语气、话题和往来历史,让回复听起来自然得体
  • 联系人备注:记录与每个人有关的情况 — 会议进行得如何、对方想要什么 — 并写在其姓名旁;每封发给他们的草稿都会读取这些备注
  • 观察器:从用户编辑过往草稿的方式中学习模式
  • 日历感知草稿:草稿只会提议日历中空闲且处于办公时间内的时段
  • 合并查看账户(控制台):将一个账户磁贴拖到另一个账户上,即可把两个邮箱作为一个列表查看;每封邮件都会保留所属账户,因此回复会从正确的地址发出;点击“拆分”即可撤销合并。Agent 仍会看到彼此独立的账户
  • 知识文件:将价目表、条款、产品说明附加到账户 — Agent 会读取这些内容来回复邮件。你的 Agent 不必什么都懂:账户自带专属知识
  • Agent 感知权限:读取无需审批;发送/删除需要通过带外方式批准 — Agent 会收到一个无操作能力的请求 ID,由人工通过控制台或命令行批准,然后才会执行,并且使用的参数与人工看到的完全一致。每项写入操作都会记录在仅追加的操作日志中
  • 凭据绝不会进入 Agent 通道:登录和账户管理仅在命令行中进行 — 邮件中的提示词注入无法添加账户或读取机密

快速开始

GigaMail 通过两种渠道提供:

  • Windows 和 macOS 桌面应用 — 从 gigamail.ai 或 最新版本下载。这是带有独立 Python 的人工操作界面:一个安装程序,无需前置条件、无需管理员密码,并且会自动更新。

    • Windows 10/11:GigaMail-Setup.exe,已进行代码签名。证书是新的,因此首次启动时 Windows 可能仍会提示“无法识别的应用”:点击 更多信息,然后点击 仍要运行。
    • macOS:Apple 芯片设备使用 GigaMail-arm64.dmg,Intel 设备使用 GigaMail-x64.dmg,两者均使用 Apple Developer ID 签名,并经 Apple 公证。

    SHA-256 摘要与文件一同列在版本发布页面上。 如需自行构建:Node 22+、console/prepare-python.ps1 (Windows)或 console/prepare-python.sh(macOS),然后运行 npm run dist 或 npm run dist:mac。

  • pip install gigamail — Agent 核心:MCP 服务、命令行、监视器 和桌面应用的本地 HTTP 后端。不含图形界面 — 适合由 Agent 充当界面的场景。

以下内容均介绍 pip 渠道。

pip install "gigamail[all]"

gigamail login                # Microsoft device flow
gigamail accounts add-imap    # or IMAP: Aruba, Gmail, Libero, ...
gigamail check                # search, a draft held for your approval, a test mail to yourself

Microsoft 登录说明:捆绑的 Azure 应用尚未通过发布者验证,因此授权屏幕会显示“未验证”提示 (可以正常使用;某些企业租户可能会阻止它)。常见的替代方案: 注册自己的 Azure 应用,并在 src/gigamail/core/ms_config.json 中设置 client_id。IMAP 无需进行这些操作。

为账户设置身份信息和知识(这样回复才会体现你的风格):

gigamail identity set                       # who am I, what I do, tone
gigamail identity add-file C:\docs\pricelist.xlsx
gigamail identity add-file C:\docs\catalog\   # whole folder

在 Claude Desktop / Claude Code 中注册(mcpServers):

{
  "gigamail": {
    "command": "gigamail-server"
  }
}

这些命令也保留了旧名称 (ade-mail-agent、ade-mail-agent-server),Python 包也兼容旧名称 ade_mail_agent(python -m ade_mail_agent.server),因此现有配置仍可继续使用。

使用 Claude Code?该仓库也是一个 Claude Code 插件:它会注册 gigamail MCP 服务,并添加一项教 Claude 遵循审批关卡的技能。

claude plugin marketplace add adecubed/gigamail
claude plugin install gigamail@gigamail

使用 Codex?该仓库也是一个 Codex 插件:它会注册 gigamail MCP 服务,并添加一项教 Codex 遵循审批关卡的技能。

codex plugin marketplace add adecubed/gigamail
codex plugin add gigamail@gigamail

GigaMail 也收录在 OpenAI 插件目录中, 作为一项技能提供:从该目录安装后,再使用 codex mcp add gigamail -- gigamail-server 注册服务(服务通过 pip 安装, 如上所述)。

使用 OpenClaw 或 Hermes?已验证的配置见 INTEGRATIONS.md。

你是代表人类进行设置的 AI Agent 吗? 你可以完成安装和 MCP 注册:pip install "gigamail[all]",然后 将 gigamail-server 添加到客户端的 MCP 配置中(参见 INTEGRATIONS.md; 如果客户端会过滤环境变量,请声明 GIGAMAIL_ROOT)。**到此为止。**连接邮箱(gigamail login、gigamail accounts add-imap)需要提供凭据,必须由人类在自己的 shell 中完成 — 这不是你应该做的事,而且 GigaMail 的设计确保你无法代为完成。 告诉他们要运行什么,然后等待。

接下来只需对 Agent 说:“用价目表回复最近的报价请求” — 它会读取邮件,从你的文件中提取数字,起草回复,并在发送前征求你的确认。

工具

30 个类型化工具,由服务自身生成:

  • 读取(18) — 账户、身份、知识文件及其内部搜索、消息、未读邮件、 文件夹、混合搜索、附件文本、发件人历史记录、学习到的 模式、日历事件、空闲时段可用情况、Drive 文件及 文件文本
  • 安全写入(3,已审计) — 标记为已读、移动消息、创建文件夹
  • 危险操作(9,需通过其他渠道获得人工批准) — 发送、回复、删除 消息、删除文件夹、创建/删除日历事件、创建 Zoom 会议、将文件上传到 Drive、将 Drive 文件移至垃圾桶

日历由 Microsoft Graph 或 Google Calendar 提供服务,具体取决于 用户连接的服务;两者使用相同的工具。Drive 使用 drive.file 范围,因此只能查看 GigaMail 自行创建的文件。 连接 Google:GOOGLE_SETUP.md。

完整映射与设计决策:MAPPA_MCP.md。

安全模型

电子邮件内容被视为不可信数据(提示词注入)。从设计上说, Agent 无法批准自己的操作:危险工具只会返回一个惰性的 request_id,而批准它(通过控制台或 gigamail approvals approve)需要在操作系统层面验证机器前 的用户身份(Windows Hello/Touch ID)。进程 (包括持有 shell 的 Agent)可以打开验证提示,但无法通过验证。在 两者都不可用的 Linux 上,则使用在交互式终端中输入的本地 PIN (gigamail approvals pin):安全性较弱,SECURITY.md 中也明确说明了这一点。Telegram 批准是可选的,也是三种渠道中 安全性最低的。任何密钥都不会进入模型上下文,因此注入指令 无从利用。重复提交该 ID 只会返回等待批准。Agent 只能读取用户明确注册的文件,无法读取文件系统中的其他内容。 每项写入操作都会记录到 %APPDATA%/ADE/agent_audit.jsonl (仅追加:GigaMail 不会重写过去的条目;它不是,也不声称是 防篡改存储)。

我们会对此进行红队测试:向真实 Agent 提供恶意邮件,邮件要求 窃取数据、大规模删除内容,以及让 Agent 自行批准操作;同时启用所有邮件工具。

这是一次修复。v0.1.0 会在工具结果中返回一次性确认令牌, 使其进入模型上下文:Agent 同时掌握了两部分。感谢 r/mcp 上的 u/ranbuman 和 u/anderson_the_one 发现了这个问题。 现在,这个开关位于 Agent 无法触及的地方。

反注入测试框架:针对真实
Agent 的三种恶意邮件场景,未发生任何破坏性操作

该测试套件中结构化测试的部分会在每次推送时于 CI 中运行 (tests/test_injection.py);真实 Agent 测试部分 需主动选择运行(scripts/injection_e2e.py),并带有试运行保护, 因此已确认的操作会被审计,但绝不会执行。

回复规则(0.2):半自动和自动回复,严格受限

你可以告诉 GigaMail:来自这些发件人(或这个文件夹)的邮件,使用这些文档起草回复。规则通过 CLI 创建 — gigamail rules add — 并经过与审批相同的 Windows Hello / Touch ID 提示;gigamail watch 进程负责应用这些规则。MCP 服务保持被动,没有任何 MCP 工具可以操作规则:注入的指令无法启用自动驾驶。

  • semi(默认):草稿会成为普通审批请求 — 你会收到通知,通过 Hello 批准后,邮件就会发出。
  • 无论你身在何处,都能收到通知:Windows toast,带有 ✅ / ❌ 按钮(运行一次 gigamail desktop-setup — 会出现 UAC 提示 — 让按钮可点击;点击后会打开审批并触发 Hello),以及 Telegram(gigamail telegram setup,使用你自己的 bot:如果你已通过 Hello 使用 --approve 选择加入,可点击 ✅ 批准;❌ 拒绝;✏️ 请求修改 — 仅接受来自你聊天的操作)。Telegram 审批只是为了方便,并非常规途径:任何已登录你 Telegram 的设备都能点击,因此安全性低于 Hello(参见 SECURITY.md)。
  • auto:请求一创建就已获批准,decided_by automode:<rule_id> — 你在创建规则时,已针对明确的适用范围、强制到期时间、每日上限和每位发件人的冷却时间授予了该批准。仍会触发通知。

起草器(通过 claude -p 运行的你自己的 Agent)只生成回复正文,不生成其他内容:收件人、主题和会话均根据收到的邮件固定 — 始终发给发件人,从不发给 Reply-To,也不会发给草稿中写出的地址。确定性屏障会先行运行:DMARC 未通过 → 绝不自动发送;自动生成的邮件、列表邮件、无回复发件人、服务商判定为垃圾邮件的邮件、带可执行文件附件的邮件 → 完全不回复;来自新发件人的第一封邮件始终由你处理;短时间内匹配过多时,规则会自行暂停。详情见 SECURITY.md。

扩展:行业功能不进入核心

gigamail 包负责邮件:账户、索引、搜索、两阶段发送、日历、知识文件和审计。只适用于特定行业的功能放在包外,默认关闭,需由你启用:

  • appointments(内置,默认关闭):连接邮件和日历,覆盖从首次回复到后续跟进的全过程。
    • 检查所有已发送邮件及其会话中的回复,识别预约。提议的时间不会加入日历;客户端接受的时间才会加入。
    • 跟进会话中的客户端回复会通过 Telegram 和桌面通知发给你,每条都带有 Reply 按钮:输入“ok, fine”,你的 Agent 就会起草回复,等待你像审批其他邮件一样审批。当客户端指定了一个日历中有空的明确时间时,系统会立即起草确认邮件。
    • 视频通话确认后,会创建 Zoom 会议,并起草附有会议链接的邮件,供你审批。
    • 会后:会议开始一小时后,GigaMail 会询问会议情况 — 是否出席、未出席、改期,以及几行备注 — 可通过 Telegram 或桌面通知回复(gigamail debrief 会列出尚未回复的项目)。你的回复会记入联系人的备注。
    • 一周后跟进:如果客户端出席了会议,七天后 GigaMail 会根据你的备注,在同一会话中起草跟进邮件,供你审批。如果你在会议后已经联系过对方,系统就不会打扰你。
  • real_estate(extras/real_estate):为回复房产平台咨询的中介机构检查草稿中的公寓类型,并根据房屋代码选择附件。这正是 GigaMail 的起源。
gigamail extensions list
gigamail extensions enable appointments   # asks for Windows Hello / Touch ID
gigamail extensions install real_estate   # into the data folder: survives app updates
gigamail extensions enable real_estate

已启用但加载失败的扩展会停止自动起草,并告知用户;绝不会悄无声息地跳过。

许可证

AGPL-3.0-or-later。 可自由使用、研究、修改和分享。如果你分发修改后的版本,或将其作为网络服务运行,就必须按照相同的许可证公开其源代码。版权所有者提供闭源使用的商业许可证。


GigaMail — 为你的 AI Agent 提供邮件服务

English · 意大利语 · 中文

下载 下载 gigamail.ai PyPI PyPI 下载量 AGPL-3.0 许可证 GitHub 星标 Python MCP 服务 Claude Code Codex OpenClaw Hermes

MCP 服务为你的 Agent——Claude、Codex、OpenClaw、Hermes 或任何 MCP 客户端——提供安全、可控的邮件访问权限——支持多个账户(Microsoft Graph + IMAP)、日历、本地搜索索引、发件人记忆,以及专为 Agent 设计的权限模型。

不包含内置大模型:智能来自你的 Agent。MCP 服务仅通过 stdio 通信,不开放网络端口。(可选的人类操作控制台会在 127.0.0.1 上提供本地 HTTP API。)

数据由你掌控:GigaMail 会在你的电脑上保存邮件索引、凭据、记忆和配置——我们不运营任何服务,也不会接收任何数据。你的 Agent 读取的邮件内容,显然会由该 Agent 及其模型提供商按照各自的政策处理。请据此选择 Agent;在 Agent 查看数据之前,脱敏工具可以隐藏敏感信息(税号、增值税号、IBAN、电子邮件地址、电话号码——通过确定性方式验证,不使用 AI)。

GigaMail

## 为什么
  • 混合搜索:provider(Graph/IMAP)+ 本地 SQLite 索引——快速且 适合离线使用
  • 自己的邮件库:每个账户的每封邮件都保存在本地, 包括附件,即使服务器上已不再有这些邮件,也能搜索。 Outlook 在电脑上的历史邮件可导入一次(gigamail archive)
  • 发件人记忆:记录语气、话题和历史,以便恰当地回复
  • 联系人备注:记录与每个人相关的情况——会面进展如何、对方在寻找什么—— 这些信息会保存在姓名旁,每封为其撰写的草稿都会读取这些内容
  • Observer:从用户对过去草稿的修改中学习模式
  • 了解日程的草稿:草稿只会建议你日历中空闲的时段, 且限于办公时间内
  • 一起查看账户(控制台):将一个账户卡片拖到另一个账户上, 即可在同一个列表中查看两个邮箱;每封邮件仍属于各自的账户, 因此回复会从正确的地址发出;点击“分开”即可恢复。Agent 仍会看到彼此独立的账户
  • 知识文件:将价目表、条款和产品说明关联到一个账户——Agent 会读取这些内容来回复邮件。 你的 Agent 无需无所不知:它需要的信息会随账户一起提供
  • Agent 权限:可自由读取;发送/删除操作需要 带外批准——Agent 只会收到一个不可操作的 ID,由人工从控制台或 CLI 批准, 之后才会执行,且执行时使用的参数与人工看到的完全一致。每次写入 都会记录在仅追加的日志中
  • 凭据不经过 Agent 通道:登录和账户管理只能通过 CLI 进行——邮件中的提示词注入无法添加账户或读取机密

快速设置

GigaMail 可通过两个渠道安装:

  • 桌面应用,Windows 和 macOS — 可从 gigamail.ai 或最新版本下载。包含其自带 Python 的人工操作控制台:只需一个安装程序,无需前置条件,无需管理员密码,并且会自动更新。

    • Windows 10/11:GigaMail-Setup.exe,已签名。证书是新的:首次启动时,Windows 仍可能提示“无法识别此应用”;点击更多信息,然后点击仍要运行。
    • macOS:GigaMail-arm64.dmg 适用于 Apple Silicon,GigaMail-x64.dmg 适用于 Intel,均已使用 Apple Developer ID 签名并经 Apple 公证。

    SHA-256 摘要位于版本发布页面的文件旁。若要自行构建:需要 Node 22+,运行 console/prepare-python.ps1(Windows)或 console/prepare-python.sh(macOS),然后运行 npm run dist 或 npm run dist:mac。

  • pip install gigamail — Agent 核心:MCP 服务、命令行、监视器以及控制台的本地 HTTP 后端。没有图形应用 — 当你的界面是 Agent 时,应使用此渠道。

以下内容均针对 pip 渠道。

pip install "gigamail[all]"

gigamail login                # device flow Microsoft
gigamail accounts add-imap    # oppure IMAP: Aruba, Gmail, Libero, ...
gigamail check                # ricerca, bozza in attesa della tua approvazione, mail di prova a te stesso

关于 Microsoft 登录的说明:内置的 Azure 应用尚未通过发布者验证,因此同意页面会显示“未验证”警告(但仍可正常使用;某些企业租户可能会拦截它)。标准替代方案:注册你自己的 Azure 应用,并将自己的 client_id 填入 src/gigamail/core/ms_config.json。 使用 IMAP 则无需进行这些操作。

为账户设置身份和知识(这正是让回复像你写的的关键):

gigamail identity set                       # chi sono, cosa faccio, tono
gigamail identity add-file C:\docs\listino.xlsx
gigamail identity add-file C:\docs\catalogo\   # intera cartella

在 Claude Desktop / Claude Code 中注册(mcpServers):

{
  "gigamail": {
    "command": "gigamail-server"
  }
}

旧名称的命令仍然可用(ade-mail-agent、ade-mail-agent-server),Python 包也兼容旧名称 ade_mail_agent(python -m ade_mail_agent.server),因此现有安装仍可继续使用。

使用 Claude Code?此仓库也是 Claude Code 插件:注册 MCP 服务 gigamail,并添加一项技能,教 Claude 使用审批关卡。

claude plugin marketplace add adecubed/gigamail
claude plugin install gigamail@gigamail

使用 Codex?此仓库也是 Codex 插件:注册 MCP 服务 gigamail,并添加一项技能,教 Codex 使用审批关卡。

codex plugin marketplace add adecubed/gigamail
codex plugin add gigamail@gigamail

使用 OpenClaw 或 Hermes?请查看 INTEGRATIONS.md 中经过验证的配置。

然后向你的 Agent 提出请求:“使用价目表回复最近的报价请求” — 它会读取邮件,从你的文件中提取数字,准备好回复,并在发送前征求你的确认。

工具

30 个类型化工具,由服务自身生成:

  • 读取(18) — 账户、身份、知识文件及其内容搜索、邮件、未读邮件、文件夹、混合搜索、附件文本、发件人历史、已学习的模式、日历事件、空闲时段、Drive 文件及其文本
  • 安全写入(3,带审计) — 标记为已读、移动、创建文件夹
  • 危险操作(9,需通过带外人工审批) — 发送、回复、删除邮件、删除文件夹、创建/删除事件、创建 Zoom 会议、将文件上传到 Drive、将 Drive 文件移入回收站

日历由 Microsoft Graph 或 Google Calendar 提供,具体取决于用户连接的服务:工具相同。Drive 使用 drive.file 权限范围,因此只能看到 GigaMail 创建的文件。 连接 Google:请参阅 GOOGLE_SETUP.md。

完整映射和设计决策:请参阅 MAPPA_MCP.md。

安全模型

电子邮件内容一律视为不可信数据(提示词注入)。从设计上说,Agent 无法批准自己的操作:危险工具只会返回一个无效的 request_id,而批准请求——无论是在控制台还是通过 gigamail approvals approve——都需要在操作系统级别验证实际用户身份(Windows Hello / Touch ID)。进程(包括拥有 shell 的 Agent)可以打开验证提示,但无法通过验证;没有这类后端,就不会批准任何操作。模型上下文中不会出现任何机密信息,因此注入的指令没有任何可利用之物。重复提交该 ID 只会返回等待批准。Agent 只能读取用户明确登记的文件,绝不会读取文件系统中的其他内容。每项写入操作都会记录到 %APPDATA%/ADE/agent_audit.jsonl(仅追加:GigaMail 绝不会改写过往记录——它不是、也不声称自己是防篡改日志)。

我们会对其进行测试:将要求外传数据、大量删除内容,以及要求 Agent 自行批准的恶意邮件交给一个启用了所有工具的真实 Agent。

这是一次设计修正。v0.1.0 会在工具结果中返回一次性确认令牌,因此令牌会进入模型上下文:Agent 同时掌握令牌的两部分。感谢 r/mcp 上的 u/ranbuman 和 u/anderson_the_one 指出了这个问题。现在,开关设在 Agent 无法触及之处。

反注入测试框架:针对真实 Agent 的三个恶意邮件场景,不执行任何破坏性操作

套件中的结构性测试会在每次推送时于 CI 中运行 (tests/test_injection.py);真实 Agent 测试为可选运行 (scripts/injection_e2e.py),并使用 dry-run 模式,因此已确认的操作会记录到审计日志中,但绝不会实际执行。

回复规则(0.2):半自动与自动回复,均设有护栏

你可以告诉 GigaMail:来自这些发件人(或位于这个文件夹)的邮件,应使用这些文档拟写回复。规则通过 CLI 创建——gigamail rules add——并受与审批相同的 Windows Hello / Touch ID 提示保护,而 gigamail watch 是应用规则的进程。MCP 服务保持被动,没有任何 MCP 工具可以操作规则:注入的指令无法启动自动驾驶。

  • 半自动(默认):草稿会变成普通的审批请求——你会收到通知,通过 Hello 批准后,邮件才会发出。
  • 无论你身在何处,都能收到通知:Windows 通知带有 ✅ / ❌ 按钮(需先运行一次 gigamail desktop-setup——会出现 UAC 提示——才能启用点击操作;按钮会打开审批流程,并触发 Hello 验证);以及 Telegram (运行 gigamail telegram setup,并使用你的机器人:✅ 在你选择通过 Hello 进行 --approve 时批准,❌ 拒绝,✏️ 请求修改——只接受来自你本人聊天窗口的操作)。
  • 自动:请求创建时即已获批,decided_by automode:<rule_id>——这是你创建规则时给予的批准,适用范围明确,并且必须设置到期时间、每日上限和按发件人设置的冷却时间。仍会发送通知。

负责撰写回复的人(你的 Agent,通过 claude -p)只能生成回复正文,除此之外什么都不能决定:收件人、主题和邮件线程都由 GigaMail 根据收到的邮件确定——始终发送给发件人,从不使用 Reply-To,也不使用草稿中写入的地址。发送前还会经过确定性安全关卡:DMARC 未通过则绝不自动回复;自动邮件、邮件列表、no-reply 发件人、邮件服务商的垃圾邮件判定以及可执行附件,都会导致不予回复;新发件人的第一封邮件始终由你处理;匹配过于频繁时,规则会自动暂停。详情请参阅 SECURITY.md。

扩展:业务逻辑留在核心之外

gigamail 包负责邮件:账户、索引、搜索、两阶段发送、日历、文档、审计。仅适用于某一种业务的功能放在核心之外,默认关闭,只有启用后才会运行:

  • appointments(已包含,默认关闭):将邮件与日历关联起来,从首次回复到后续跟进。
    • 读取每封已发送的邮件及其所在邮件线程中的回复,寻找预约信息。提议的时间不会加入日历;只有客户接受的时间才会加入。
    • 跟进线程中客户的回复会发送到 Telegram,并作为通知显示在电脑上,两种方式都带有 回复 按钮:写下“好,可以”,你的 Agent 就会准备回复,和其他回复一样等待你批准。客户指定了日程中明确空闲的时间后,确认邮件会自动准备好。
    • 视频通话确认后,会创建 Zoom 会议,并准备包含链接的邮件,等待批准。
    • 会面后:开始后一小时,GigaMail 会询问会面情况——对方是否出席、是否缺席、是否改期,以及两行备注——通过 Telegram 或电脑通知发送(gigamail debrief 可列出尚未回复的事项)。回复会保存到联系人备注中。
    • 一周后跟进:如果客户出席了,七天后 GigaMail 会根据你的备注,在同一邮件线程中撰写跟进邮件,等待批准。如果期间你们已经联系过,就不会做任何处理。
  • real_estate(extras/real_estate):为回复房产门户网站咨询的中介机构检查草稿中的物业类型,并通过房源代码选择附件。GigaMail 就是从这里起步的。
gigamail extensions list
gigamail extensions enable appointments   # chiede Windows Hello / Touch ID
gigamail extensions install real_estate   # nella cartella dati: resiste agli aggiornamenti
gigamail extensions enable real_estate

已启用但无法加载的扩展会阻止自动草拟,并通知人工处理;绝不会悄无声息地跳过。

许可证

AGPL-3.0-or-later。 可以自由使用、研究、修改和分享。如果你分发修改后的版本,或将其作为网络服务提供,就必须以相同的许可证公开源代码。版权所有者可提供用于闭源用途的商业许可证。


GigaMail — 给你的 AI 代理的邮箱

English · Italiano · 中文

下载 下载 gigamail.ai PyPI PyPI Downloads License AGPL-3.0 GitHub stars Python MCP server Claude Code Codex OpenClaw Hermes

一个 MCP 服务器,让你的代理 —— Claude、Codex、OpenClaw、Hermes 或任何 兼容 MCP 的客户端 —— 安全、受控地访问你的真实邮箱 —— 多账户(Microsoft Graph + IMAP)、日历、本地搜索索引、发件人 记忆,以及面向代理的权限模型。

不内置任何 LLM:智能来自你自己的代理。MCP 服务器只使用 stdio 传输,不开 网络端口。(可选的人工控制台会在 127.0.0.1 上提供一个本地 HTTP API。)

关于你的数据:GigaMail 把邮件索引、凭据、记忆和配置全部保存在你自己 的机器上 —— 我们不运行任何服务,也收不到任何数据。代理读取的邮件内容当 然会经过该代理及其模型提供商,适用他们各自的数据政策。请据此选择你的代理。

GigaMail

为什么

  • 混合搜索:提供商搜索(Graph/IMAP)+ 本地 SQLite 索引,快速且支持离线
  • 自有归档:每个账户的每封邮件(含附件)都保存在本地,即使服务器上已删除 也仍可搜索。电脑上 Outlook 的历史邮件只需导入一次(gigamail archive)
  • 发件人记忆:按发件人记录语气、话题与往来历史,让回复更贴切
  • 联系人备注:与每个人之间发生的事 —— 会面情况如何、对方在找什么 —— 都记在其名字旁边,之后写给此人的每一份草稿都会读取
  • 观察者:从用户对过往草稿的修改中学习偏好
  • 了解日程的草稿:草稿只会提议你日历中空闲、且在办公时间内的时段
  • 合并查看账户(控制台):把一个账户卡片拖到另一个上,即可在同一个列表中 阅读两个邮箱;每封邮件仍属于自己的账户,回复会从正确的地址发出,点击"拆分" 即可恢复。代理看到的仍是各自独立的账户
  • 知识文件:把价目表、条款、产品资料挂到账户上,代理读取它们来回信 —— 你的代理不需要什么都懂:账户自带知识
  • 面向代理的权限:读取自由;发送/删除需要带外给出的人工批准 —— 代理只拿到一个惰性的请求 id,人从控制台或 CLI 批准后才会执行,且执行的 是人当时看到的那份参数。每次写操作都会记入只追加的审计日志
  • 凭据永远不经过代理通道:登录与账户管理只存在于 CLI —— 邮件里的提示 注入无法添加账户或读取任何机密

快速开始

GigaMail 通过两个渠道发布:

  • 桌面应用,Windows 与 macOS — 可从 gigamail.ai 或最新版本下载。面向人的控制台,内置 Python:一个安装包、无需前置依赖、 无需管理员密码,并会自动更新。

    • Windows 10/11:GigaMail-Setup.exe,已代码签名。证书较新, 首次启动时 Windows 可能仍提示"无法识别的应用":点击 更多信息,再点 仍要运行。
    • macOS:Apple Silicon 用 GigaMail-arm64.dmg, Intel 用 GigaMail-x64.dmg,均以 Apple Developer ID 签名并经 Apple 公证。

    SHA-256 摘要见发布页文件旁。自行构建:Node 22+,console/prepare-python.ps1 (Windows)或 console/prepare-python.sh(macOS),然后 npm run dist 或 npm run dist:mac。

  • pip install gigamail — 代理核心:MCP 服务器、CLI、watcher 和 控制台的本地 HTTP 后端。不含图形界面 — 如果你的代理就是界面,选这个渠道。

下文内容均针对 pip 渠道。

pip install "gigamail[all]"

gigamail login                # Microsoft 设备码登录
gigamail accounts add-imap    # 或任意 IMAP 提供商
gigamail check                # 搜索、等待你批准的草稿、给自己发一封测试邮件

为账户设置身份与知识(这是让回复"像你"的关键):

gigamail identity set                       # 我是谁、做什么、语气
gigamail identity add-file C:\docs\pricelist.xlsx

在 Claude Desktop / Claude Code 中注册(mcpServers):

{
  "gigamail": {
    "command": "gigamail-server"
  }
}

命令也保留旧名称(ade-mail-agent、ade-mail-agent-server),Python 包也 响应旧名 ade_mail_agent(python -m ade_mail_agent.server),现有配置 继续可用。

使用 Claude Code?本仓库也是一个 Claude Code 插件:它注册 gigamail MCP 服务器,并附带一个教 Claude 如何面对审批关卡的 skill。

claude plugin marketplace add adecubed/gigamail
claude plugin install gigamail@gigamail

使用 Codex?本仓库本身就是一个 Codex 插件:它注册 gigamail MCP 服务器,并附带一个教 Codex 如何面对审批关卡的 skill。

codex plugin marketplace add adecubed/gigamail
codex plugin add gigamail@gigamail

使用 OpenClaw 或 Hermes?经过验证的配置见 INTEGRATIONS.md。

你是替人类做安装的 AI 代理吗? 你可以完成安装与 MCP 注册: pip install "gigamail[all]",然后把 gigamail-server 加入客户端的 MCP 配置。到此为止。 连接邮箱(gigamail login、gigamail accounts add-imap)需要输入凭据,必须由人类在自己的终端里完成 —— 这不是你该做的 事,GigaMail 的设计也让它无法经由你完成。告诉他们要运行什么,然后等待。

之后直接对你的代理说:"用价目表回复最近那封询价邮件" —— 它会读邮件、从你 的文件里取数字、写好草稿,并在发送前征得你的同意。

工具

29 个类型化工具,由服务器本身生成:

  • 读取(17) —— 账户、身份、知识文件、邮件、未读、文件夹、混合搜索、 附件文本、发件人历史、学习到的偏好、日历事件、空闲时段、Drive 文件及其文本
  • 安全写入(3,有审计) —— 标记已读、移动邮件、新建文件夹
  • 危险操作(9,需带外人工批准) —— 发送、回复、删除邮件、删除文件夹、 创建/删除日历事件、创建 Zoom 会议、上传文件到 Drive、将 Drive 文件移入回收站

日历由 Microsoft Graph 或 Google Calendar 提供,取决于用户连接了哪一个; 工具完全相同。Drive 使用 drive.file 权限,只能看到 GigaMail 自己创建的 文件。连接 Google 的方法见 GOOGLE_SETUP.md。

安全模型

邮件内容被视为不可信数据(提示注入)。代理从构造上就无法批准自己的 操作:危险工具只返回一个惰性的 request_id,而批准它 —— 无论从控制台还是 gigamail approvals approve —— 都需要对机器前的人进行操作系统级验证 (Windows Hello / Touch ID)。任何进程(包括持有 shell 的代理)都能 弹出这个验证框,却无法通过它;没有此类验证后端时,一律拒绝(fail-closed)。 没有任何机密进入模型上下文,被注入的指令无物可用。重复提交 id 只会得到 等待批准。代理只能读取用户明确注册的文件,永远碰不到文件系统的其余部分。 每次写操作都记入只追加的审计日志(GigaMail 从不改写历史条目 —— 它不是、 也不自称是防篡改存储)。

我们对此做红队测试:让恶意邮件命令真实代理外泄数据、批量删除、自我批准 —— 在所有邮件工具全开的情况下,零破坏性操作。

回复规则(0.2):带栅栏的半自动与全自动回复

你可以告诉 GigaMail:来自这些发件人(或这个文件夹)的邮件,用这些文档起草 回复。规则只能从 CLI(gigamail rules add)或控制台创建,且要经过与批准 相同的 Windows Hello / Touch ID 验证;gigamail watch 是执行规则的进程。 MCP 服务器保持被动,不存在任何能触碰规则的 MCP 工具:被注入的指令无法 打开自动驾驶。

  • semi(默认):草稿成为一个普通的批准请求 —— 你收到通知,用 Hello 批准后才会发出。
  • 通知会找到你:Windows 桌面通知带 ✅/❌ 按钮(运行一次 gigamail desktop-setup 使其可点击;按钮只是打开批准流程,仍需 Hello), 以及 Telegram(gigamail telegram setup,用你自己的机器人:✅ 批准需 在 Hello 背后显式开启 --approve;❌ 拒绝、✏️ 要求修改 —— 且只接受来自 你那个会话的指令)。
  • auto:请求生来即已批准,decided_by automode:<rule_id> —— 这份批准是 你创建规则时在 Hello 背后给出的,范围精确、必有过期时间、每日上限和按 发件人的冷却时间。通知照常发出。

起草者(你自己的代理,经 claude -p)只产出回复正文:收件人、主题与 会话线程由 GigaMail 从来信中确定 —— 永远回给通过验证的发件人,绝不理会 Reply-To,也绝不使用草稿里写出的地址。确定性栅栏先行:DMARC 未通过 → 永不 auto;自动生成的邮件、邮件列表、no-reply 发件人、提供商的垃圾邮件判定、 可执行附件 → 一律不回复;新发件人的第一封邮件永远经过你;短时间内大量命中 会让规则自动暂停。详见 SECURITY.md。

扩展:行业逻辑留在核心之外

gigamail 包只做邮件:账户、索引、搜索、两阶段发送、日历、知识文件、审计。 只对某一个行业有意义的功能放在核心之外,默认关闭,需要时才开启:

  • appointments(内置,默认关闭):把邮件和日历连接起来,从第一次回复 一直到跟进。
    • 在每封已发送的邮件及其线程中的回复里查找预约。提议的时间不进日历; 客户接受的时间才写入日历。
    • 客户在跟进线程中的回复会发到 Telegram,并同时以电脑桌面通知的形式出现, 两者都带 回复 按钮:写一句"好的,可以",你的代理就会起草回复,并像 其他草稿一样等待你的批准。如果客户提出一个日历中空闲的具体时间,确认邮件 会自动起草。
    • 已确认的视频通话会自动创建 Zoom 会议,并生成附带链接的邮件,等待批准。
    • 会面之后:会面开始一小时后,GigaMail 会在 Telegram 或电脑桌面通知中 询问情况如何 —— 已到场、未到场、改期,外加几句备注(gigamail debrief 列出尚未回答的问题)。回答会写入该联系人的备注。
    • 一周后的跟进:如果客户到场了,七天后 GigaMail 会根据你的备注,在同一 线程中起草跟进邮件,等待你的批准。如果会面之后你们已经通过邮件联系过, 它就不会打扰。
  • real_estate(extras/real_estate):为回复房产门户 询盘的中介检查草稿中的户型,并按房源编号选择附件。GigaMail 就是在这里成长起来的。
gigamail extensions list
gigamail extensions enable appointments   # 需要 Windows Hello / Touch ID
gigamail extensions install real_estate   # 装在数据目录中:应用更新后仍然保留
gigamail extensions enable real_estate

已开启但无法加载的扩展会停止自动草稿并通知人类,绝不会被悄悄跳过。

许可证

AGPL-3.0-or-later. 自由使用、研究、修改与分享。若你分发修改版 —— 或将 其作为网络服务运行 —— 必须以相同许可证提供其源代码。闭源商用许可可向版权 持有人洽询。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。