[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-74281":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":27,"readmeContent":28,"aiSummary":29,"trendingCount":16,"starSnapshotCount":16,"syncStatus":15,"lastSyncTime":30,"discoverSource":31},74281,"outlookEmailPlus","ZeroPointSix\u002FoutlookEmailPlus","ZeroPointSix"," Outlookmail Plus: Designed Specifically for Registration  |  Outlookmail Plus：专为注册而生  |  ","",null,"Python",1524,317,3,2,0,41,70,370,123,20.51,"Apache License 2.0",false,"main",true,[],"2026-06-12 02:03:24","# Outlook Email Plus\n\n[English](.\u002FREADME.en.md) · [发布流程](.\u002FRELEASE.md)\n\nOutlookMail Plus 是一款面向个人与团队的注册邮箱管理器。\n\n与市面上通用型邮箱客户端不同，它更聚焦在**注册与验证**场景，并围绕注册流程做了深度优化。\n\n### 为什么是 OutlookMail Plus\n\n- **专为注册而生**：尽量减少注册流程中不必要的操作。你可以一键复制邮箱地址；在注册页发送验证邮件后，回到管理器点击“验证码”，即可自动拉取最新验证邮件，并用正则快速提取验证码或验证链接，尽量减少等待。\n- **更轻、更专注**：舍弃发件等非核心能力，界面更清爽，所有设计都围绕“把注册跑通”。\n- **导入兼容更广**：支持主流邮箱导入（Gmail、QQ、163 等），也支持自定义 IMAP 服务器。即使是自建邮箱也能使用；内置 CF Worker 临时邮箱，支持多域配置与 Admin Key 加密，大幅降低注册场景的隐私泄露风险。\n- **支持自动化**：对外提供接口，支持批量自动化注册流程；邮箱池支持 `project_key` 项目隔离领取。对于长期邮箱，在领取阶段显式传入 `project_key + caller_id + task_id` 时，同项目成功账号不会被重复分配，`claim-complete(result=success)` 后会直接回到 `available`，并可被其他项目立即复用；临时邮箱 \u002F `cloudflare_temp_mail` 继续沿用旧语义。获取接码与释放邮箱等能力一应俱全。\n- **第三方通知**：支持第三方渠道通知，当前已接入 Telegram；重点邮箱收到邮件可自动推送提醒。\n\n简而言之，OutlookMail Plus 是一款为“注册流程”打造的邮箱管理器。\n\n## 演示站点\n\n演示站点：https:\u002F\u002Fdemo.outlookmailplus.tech\u002F\n登录密码：`12345678`\n\n站点内置 10 个邮箱账号用于演示，数据会定期重置。请勿删除演示账号或将其用于个人用途。\n\n演示涵盖本项目的主要功能（Telegram 推送因需要额外配置，演示站未启用）。\n\n\n\n\n## 界面预览\n\n当前仓库已包含部分截图，后续将继续补充更多演示图片。\n\n![仪表盘](img\u002F仪表盘.png)\n![邮箱界面](img\u002F邮箱界面.png)\n![提取验证码](img\u002F提取验证码.png)\n![设置界面](img\u002F设置界面.png)\n\n\n## 版本亮点\n\n当前稳定版本：`v2.2.2`\n\n### 近期版本速览\n\n| 版本 | 日期 | 核心新功能 |\n|------|------|-----------|\n| **v2.2.0** | 2026-04 | 🔌 **临时邮箱 Provider 插件化**：支持第三方插件动态安装\u002F卸载\u002F配置，内置 Cloudflare \u002F Custom \u002F GPTMail \u002F Moemail，Provider 设置与域名选择解耦；浏览器扩展新增本地个人信息生成器与完整 Jest 测试覆盖 |\n| **v2.1.0** | 2026-04 | 📊 **数据概览大盘**：5 Tab 统一看板（总览 \u002F 验证码提取 \u002F 对外 API \u002F 邮箱池 \u002F 系统活动），新增 `verification_extract_logs` 统一观测链路，并修复浏览器扩展 API Key 复制与 overview i18n\u002F实时刷新问题 |\n| **v2.0.0** | 2026-04 | 🌐 **浏览器扩展**（Chrome\u002FEdge MV3）：一键申领邮箱 → 自动提取验证码\u002F链接 → 完成\u002F释放，无需切换标签页；后端新增 `chrome-extension:\u002F\u002F` CORS 跨域支持 |\n| **v1.19.0** | 2026-04 | 🔧 刷新失败提示结构化增强（错误码 + 可执行步骤 + trace 反馈指引）；Selected 账号刷新提前失败修复（Issue #45） |\n| **v1.18.0** | 2026-04 | 🔄 邮箱池**项目成功复用**：显式携带 `project_key + caller_id + task_id` 时，success 后直接回到 `available`，支持跨项目立即复用（DB v22）|\n| **v1.17.0** | 2026-04 | 🪝 **Webhook 通知通道**：全局单 URL 配置，与 Email\u002FTelegram 并存；X-API-Key 随机生成快捷入口 |\n| **v1.16.0** | 2026-04 | 🔑 OAuth Token 工具升级：新增\"获取授权链接\"模式，稳定支持跨环境授权 |\n| **v1.15.0** | 2026-04 | 🤖 **AI 验证码增强**：系统级 AI fallback（双低置信才触发），固定 JSON 契约；**邮箱别名**（`+tag`）自动识别与回溯 |\n| **v1.13.0** | 2026-04 | ⚡ **一键热更新**：Watchtower（推荐）和 Docker API 双模式，自动检测新版本弹出提示 |\n| **v1.11.0** | 2026-04 | 🏊 **邮箱池项目隔离**（`project_key`）；CF Worker 多域 + Admin Key 加密；前端账号列表分页；统一轮询引擎 |\n| **v1.9.0** | 2026-03 | 🌐 **双语界面**（中\u002F英）；统一通知分发（Email + Telegram）；演示站点登录密码保护 |\n\n---\n\n### v2.1.0 — 数据概览大盘与观测增强\n\n- 新增 5 Tab 数据概览大盘，替换旧 dashboard\n- 新增 `verification_extract_logs`，统一观测普通账号 \u002F 临时邮箱 \u002F external API 提取链路\n- 修复浏览器扩展“API 无效”的真实根因：复制脱敏 API Key 与 external pool \u002F pool_access 前置条件认知偏差\n- overview 前端补齐实时重拉与完整 i18n，页头 \u002F Tab \u002F hover note \u002F timeline 现与主体卡片保持一致\n\n### v2.0.0 — 浏览器扩展（新）\n\n`browser-extension\u002F` 目录包含 Chrome\u002FEdge Manifest V3 扩展，详见 [浏览器扩展](#浏览器扩展) 章节。\n\n### v1.15.0–v1.16.0 — OAuth Token 获取工具\n\n- 新增独立 Token 工具窗口，以**兼容账号导入模式**获取 Microsoft refresh token\n- 当前模式固定面向个人 Microsoft 账号：Public Client、`tenant=consumers`、不支持 `client_secret`\n- Azure 应用注册的 **Supported account types** 应选择 **Accounts in any identity provider or organizational directory and personal Microsoft accounts**；仅组织目录会报 `unauthorized_client`，而 **Personal Microsoft accounts only** 会在写入前 `\u002Fcommon` 验证阶段报 `AADSTS9002331`\n- 如果 Azure 门户在切换 Supported account types 时提示 `Property api.requestedAccessTokenVersion is invalid`，请到 **Manifest** 中把 `api.requestedAccessTokenVersion` 改为 `2`\n- 如果已经开启 Public Client 仍然报\"必须包含 `client_secret`\"，说明当前回调仍被 Azure 视为机密 Web 客户端；此时应改用 **Mobile and desktop applications** 平台的 public redirect（如 `http:\u002F\u002Flocalhost`），并在工具里走手动粘贴回调 URL\n- 如果遇到 `AADSTS70000`（scope 未授权\u002F失效），优先检查\"授权时 scope\"和\"验证时 scope\"是否一致，并重新执行一次 **强制 Consent** 授权\n- Graph 场景建议最小权限：**offline_access + Mail.Read + User.Read**；如需 IMAP 再额外补 **Office 365 Exchange Online → IMAP.AccessAsUser.All**\n- 支持 Graph \u002F IMAP Scope 预设、错误引导、JWT audience\u002Fscope 诊断；前端默认推荐 **Graph 邮件预设**（后端环境变量 fallback 保持 IMAP 兼容 Scope）\n- 页面内置 Azure 应用注册快速指引折叠卡片（5 步）与教程入口：\u003Chttps:\u002F\u002Freal-caption-6d1.notion.site\u002FOutlooKMailplus-token-344463aed7e680099380dc324ecdf1c9?source=copy_link>\n- 支持一键写入已有 Outlook 账号或创建新账号，写入前自动验证 refresh token，并拒绝不兼容配置\n\n### v1.13.0 — 一键更新\n\n- 支持两种更新方式：Watchtower（推荐）和 Docker API 自更新（高级）\n- 自动检测 GitHub 最新版本，界面弹出更新提示\n- 完整的部署信息检测：镜像标签、本地构建、Watchtower 连通性等\n- Watchtower 已是最新版本智能检测（基于 Watchtower 同步行为）\n- Docker API 模式 digest 预检查，相同版本不触发无效更新\n\n### v1.11.0 — 邮箱池 & 前端增强\n\n- **邮箱池项目隔离**：`project_key` 防止同项目重复领取（DB v17）\n- **CF Worker 临时邮箱多域支持**：设置页配置多个域名，\"同步域名\"按钮一键刷新\n- **Admin Key 加密存储**：`cf_worker_admin_key` 以 `enc:` 前缀加密写入数据库（DB v18）\n- **账号列表前端分页**：每页 50 条，大量账号时列表加载更流畅\n- **统一轮询引擎**：标准模式与简洁模式合并为单一 `poll-engine`，修复竞态与状态积压\n\n## 核心能力\n\n- 多邮箱账号管理\n  支持 Outlook OAuth、普通 IMAP 邮箱和 CF Worker 临时邮箱（多域配置，Admin Key 加密存储）\n- 批量导入与分组整理\n  支持批量导入、标签、搜索、分组、导出\n- 邮件读取与提取\n  支持验证码、链接、原文内容读取\n- 邮箱池调度\n  支持可领取、释放、完成、冷却恢复、过期回收等状态流转；长期邮箱支持 `project_key` 项目维度成功复用：同项目按 success 记录防重复领取，`success` 后回到 `available`，跨项目可立即复用；未传 `project_key` 与 `provider=cloudflare_temp_mail` \u002F 临时邮箱继续保持旧语义；`claim-random` 仍支持池空时动态创建 CF 邮箱\n- 受控对外接口\n  支持 `X-API-Key` 鉴权、多调用方 Key 管理、邮箱范围授权、IP 白名单和速率限制\n- 通知能力\n  支持业务邮件通知、Telegram 推送和测试发送\n- 演示站点保护\n  可通过环境变量锁定登录密码修改入口，避免访客在设置页改后台密码\n\n## 项目结构\n\n```text\noutlook_web\u002F          Flask 应用主体（controllers \u002F routes \u002F services \u002F repositories）\ntemplates\u002F            页面模板\nstatic\u002F               前端脚本与样式\ndata\u002F                 SQLite 数据与运行时文件\ntests\u002F                自动化测试\nweb_outlook_app.py    兼容入口\n```\n\n## 快速开始\n\n### Docker 部署\n\n**方式一：docker run（快速体验）**\n\n```bash\ndocker run -d \\\n  --name outlook-email-plus \\\n  -p 5000:5000 \\\n  -v $(pwd)\u002Fdata:\u002Fapp\u002Fdata \\\n  -e SECRET_KEY=your-secret-key-here \\\n  -e LOGIN_PASSWORD=your-login-password \\\n  -e ALLOW_LOGIN_PASSWORD_CHANGE=false \\\n  guangshanshui\u002Foutlook-email-plus:latest\n```\n\n**方式二：docker-compose（推荐，含一键更新）**\n\n保存以下内容为 `docker-compose.yml`，然后运行 `docker-compose up -d`：\n\n```yaml\nservices:\n  app:\n    image: ghcr.io\u002Fzeropointsix\u002Foutlook-email-plus:latest   # 推荐（国内网络稳定）\n    # image: guangshanshui\u002Foutlook-email-plus:latest         # Docker Hub 备选\n    container_name: outlook-email-plus\n    restart: unless-stopped\n    ports:\n      - \"5001:5000\"           # 可改为 5000:5000 或其他端口\n    env_file:\n      - .env\n    environment:\n      SECRET_KEY: \"${SECRET_KEY:?请在 .env 中设置 SECRET_KEY}\"\n      # 一键更新 Token：留空即可直接使用内置默认值；生产环境建议设为随机强密码\n      WATCHTOWER_HTTP_API_TOKEN: \"${WATCHTOWER_HTTP_API_TOKEN:-outlook-mail-plus-watchtower-default}\"\n      # Docker API 自更新（可选，高级功能）\n      # ⚠️ 启用后容器可通过 Docker API 控制宿主机其他容器，存在安全风险\n      # DOCKER_SELF_UPDATE_ALLOW: \"false\"\n    volumes:\n      - .\u002Fdata:\u002Fapp\u002Fdata\n      # Docker socket 挂载（可选，仅用于 Docker API 自更新功能）\n      # ⚠️ 挂载 docker.sock 会授予容器完全的 Docker API 访问权限，请谨慎使用\n      # - \u002Fvar\u002Frun\u002Fdocker.sock:\u002Fvar\u002Frun\u002Fdocker.sock\n    labels:\n      - \"com.centurylinklabs.watchtower.enable=true\"\n    networks:\n      - outlook-net\n\n  watchtower:\n    image: containrrr\u002Fwatchtower\n    container_name: watchtower\n    restart: unless-stopped\n    volumes:\n      - \u002Fvar\u002Frun\u002Fdocker.sock:\u002Fvar\u002Frun\u002Fdocker.sock\n    environment:\n      # 与上方 app 服务保持一致；留空时两边同步使用内置默认值，无需手动对齐\n      - WATCHTOWER_HTTP_API_TOKEN=${WATCHTOWER_HTTP_API_TOKEN:-outlook-mail-plus-watchtower-default}\n      - WATCHTOWER_HTTP_API_UPDATE=true\n      - WATCHTOWER_CLEANUP=true\n      - WATCHTOWER_HTTP_API_PERIODIC_POLLS=false\n    command: --http-api-update --label-enable\n    labels:\n      - \"com.centurylinklabs.watchtower.enable=false\"\n    networks:\n      - outlook-net\n\nnetworks:\n  outlook-net:\n    driver: bridge\n```\n\n说明：\n\n- 建议始终挂载 `data\u002F`，避免数据库与运行数据丢失\n- `SECRET_KEY` 必须稳定且足够强，建议随机64位：`python -c \"import secrets; print(secrets.token_hex(32))\"`\n- `WATCHTOWER_HTTP_API_TOKEN` **可留空**，留空时 app 和 watchtower 自动使用同一内置默认值，部署后一键更新即可使用\n- 配置好后，当有新版本时系统界面会自动弹出更新提示，点击\"立即更新\"即可完成升级\n- 一键更新功能**仅在 docker-compose 部署方式下有效**；`docker run` 单容器模式不支持\n\n**更新方式**：默认使用 Watchtower（推荐）。如需使用 Docker API 自更新（无需 Watchtower），需在 `docker-compose.yml` 中：\n1. 取消 `DOCKER_SELF_UPDATE_ALLOW` 注释并设为 `\"true\"`\n2. 取消 docker.sock 挂载注释\n3. 在设置页选择\"更新方式\"为\"Docker API\"\n4. ⚠️ 请充分了解安全风险后再启用\n\n#### ClawCloud \u002F 反向代理部署注意事项\n\n- 健康检查请显式使用 `GET \u002Fhealthz`，不要依赖 `\u002F`、`\u002Flogin` 或 302 跳转链路；本项目首页 `\u002F` 受登录保护，会重定向到 `\u002Flogin`\n- `no healthy upstream` 表示反向代理当前没有健康后端，不等于应用一定是“代码崩溃”；更新后若持续出现，优先查看**新容器启动日志**与平台事件\n- 若平台事件出现 `Stopping container`、`FailedKillPod`、`KillPodSandbox DeadlineExceeded`，说明故障至少包含平台侧 Pod 停止\u002F回收异常，不能只根据应用日志下结论\n- 本项目默认使用 SQLite + 持久卷，更新时建议保持**单实例**；若新旧实例短时并发访问同一数据库文件，启动阶段的迁移或文件锁等待可能导致健康检查超时\n- `TEMP_EMAIL_UPSTREAM_READ_FAILED` 与 `no healthy upstream` 需要分开理解：前者是临时邮箱上游读取失败，后者是入口层前面没有健康应用实例\n\n### 本地运行\n\n```bash\npython -m venv .venv\npip install -r requirements.txt\npython web_outlook_app.py\n```\n\n### 运行测试\n\n```bash\npython -m unittest discover -s tests -v\n```\n\n## 常用环境变量\n\n- `SECRET_KEY`\n  会话与敏感字段加密密钥，必须配置\n- `LOGIN_PASSWORD`\n  初始后台登录密码，首次启动后会写入数据库并哈希存储\n- `ALLOW_LOGIN_PASSWORD_CHANGE`\n  是否允许在设置页修改登录密码。演示站点建议设为 `false`\n- `DATABASE_PATH`\n  SQLite 数据库路径，默认 `data\u002Foutlook_accounts.db`\n- `PORT` \u002F `HOST`\n  Web 服务监听地址\n- `SCHEDULER_AUTOSTART`\n  是否自动启动后台调度器\n- `OAUTH_TOOL_ENABLED`\n  是否启用 OAuth Token 获取工具入口与相关 API，默认 `true`\n- `OAUTH_CLIENT_ID`\n  Outlook OAuth 应用 ID\n- `OAUTH_CLIENT_SECRET`\n  兼容导入模式下应保持为空；如 Azure 应用依赖 `client_secret`，则不属于当前支持范围\n- `OAUTH_REDIRECT_URI`\n  Outlook OAuth 回调地址\n- `OAUTH_SCOPE`\n  后端环境变量默认 Scope（fallback），默认 `offline_access https:\u002F\u002Foutlook.office.com\u002FIMAP.AccessAsUser.All`；前端首次展示默认 Graph 预设\n- `OAUTH_TENANT`\n  Token 工具默认 Tenant，固定兼容模式 `consumers`\n- `GPTMAIL_BASE_URL`\n  GPTMail 服务地址\n- `GPTMAIL_API_KEY`\n  GPTMail API Key，用于临时邮箱能力\n- `CF_WORKER_BASE_URL`（设置页对应 `cf_worker_base_url`）\n  Cloudflare Temp Email Worker 地址\n- `CF_WORKER_ADMIN_KEY`（设置页对应 `cf_worker_admin_key`）\n  Cloudflare Worker Admin 密码；建议仅通过设置页保存，系统会加密存储\n\n### 一键更新相关\n\n- `WATCHTOWER_HTTP_API_TOKEN`\n  Watchtower API 鉴权令牌。**可留空**，留空时 app 和 watchtower 两边自动使用同一内置默认值，开箱即用；生产环境建议设置随机强密码\n- `WATCHTOWER_API_URL`\n  Watchtower API 地址，默认 `http:\u002F\u002Fwatchtower:8080`（Docker 内部网络，通常无需修改）\n- `DOCKER_SELF_UPDATE_ALLOW`\n  是否启用 Docker API 自更新功能，默认 `false`。⚠️ 启用后容器可访问 Docker API，存在安全风险\n- `DOCKER_IMAGE`\n  当前容器镜像名（可选，用于部署信息检测）\n\n> **安全提示**：Docker API 自更新需要挂载 `\u002Fvar\u002Frun\u002Fdocker.sock`，这会授予容器完全的 Docker API 访问权限。生产环境建议使用 Watchtower 方式。\n\n## 通知能力说明\n\n### 邮件通知\n\n如果你准备启用“邮件通知”，需要额外配置 SMTP。邮件通知与 Telegram、GPTMail 是独立链路，不能互相替代。\n\n最少需要配置：\n\n- `EMAIL_NOTIFICATION_SMTP_HOST`\n- `EMAIL_NOTIFICATION_FROM`\n\n常见可选配置：\n\n- `EMAIL_NOTIFICATION_SMTP_PORT`\n- `EMAIL_NOTIFICATION_SMTP_USERNAME`\n- `EMAIL_NOTIFICATION_SMTP_PASSWORD`\n- `EMAIL_NOTIFICATION_SMTP_USE_TLS`\n- `EMAIL_NOTIFICATION_SMTP_USE_SSL`\n- `EMAIL_NOTIFICATION_SMTP_TIMEOUT`\n\n示例：\n\n```env\nEMAIL_NOTIFICATION_SMTP_HOST=smtp.qq.com\nEMAIL_NOTIFICATION_SMTP_PORT=465\nEMAIL_NOTIFICATION_FROM=your_account@qq.com\nEMAIL_NOTIFICATION_SMTP_USERNAME=your_account@qq.com\nEMAIL_NOTIFICATION_SMTP_PASSWORD=your_smtp_auth_code\nEMAIL_NOTIFICATION_SMTP_USE_SSL=true\nEMAIL_NOTIFICATION_SMTP_USE_TLS=false\nEMAIL_NOTIFICATION_SMTP_TIMEOUT=15\n```\n\n注意：\n\n- 设置页中的测试邮件遵循“先保存，再测试”\n- 测试接口不会直接读取输入框临时值\n- 系统只会读取已保存的 `email_notification_recipient`\n\n### Telegram 推送\n\n项目支持在设置页配置：\n\n- `telegram_bot_token`\n- `telegram_chat_id`\n- `telegram_poll_interval`\n\n当前版本中，Telegram 推送与业务邮件通知已经统一接入通知分发链路。\n\n## 外部接口与邮箱池集成\n\n如果你要把本项目接入注册机、脚本平台或其他自动化系统，当前推荐方式是受控外部接口：\n\n- 路径前缀：`\u002Fapi\u002Fexternal\u002F*`\n- 鉴权头：`X-API-Key`\n- 邮箱池接口：`\u002Fapi\u002Fexternal\u002Fpool\u002F*`\n\n当前外部接口支持：\n\n- 单 Key 鉴权\n- 多 Key 配置\n- 按调用方限制邮箱范围\n- 公网模式白名单与速率限制\n- 可禁用原文读取、长轮询等高风险端点\n\n注意：\n\n- 旧匿名 `\u002Fapi\u002Fpool\u002F*` 已移除\n- 生产环境建议开启受控公网模式并配置白名单\n\n## 浏览器扩展\n\n`browser-extension\u002F` 目录包含配套的 Chrome \u002F Edge 扩展（Manifest V3），提供「申领邮箱 → 获取验证码\u002F链接 → 完成\u002F释放」一站式快捷面板，无需切换标签页。\n\n详细说明见 [browser-extension\u002FREADME.md](.\u002Fbrowser-extension\u002FREADME.md)。\n\n### 项目 Key（Project Key）\n\n项目 Key 用于**邮箱池的多租户隔离**：不同业务\u002F项目的申领互不干扰，配合 `caller_id + task_id` 还能在同项目内防止重复分配。\n\n- **不填**：从公共邮箱池随机申领\n- **填写**：只在该项目的邮箱中申领；`success` 完成后邮箱立即回到 `available`，可被其他项目复用\n\n### 完成 vs 释放\n\n完成和释放都会结束当前任务，区别在于邮箱的后续状态：\n\n| 操作 | 邮箱状态 | 适用场景 |\n|------|---------|---------|\n| **释放（Release）** | → `available`（立即可再申领） | 注册失败、误领、测试归还 |\n| **完成（Complete）** | → `used`（已用，默认不再分配） | 注册成功、验证码已使用 |\n\n> 启用项目复用时，`complete(result=success)` + 显式 `project_key` 路径会直接回到 `available`，支持跨项目立即复用。\n\n## 演示站点建议\n\n如果你要公开一个演示站点给其他人访问，建议至少这样配置：\n\n```env\nLOGIN_PASSWORD=your-strong-password\nALLOW_LOGIN_PASSWORD_CHANGE=false\n```\n\n- 站点仍然可以登录\n- 访客无法在“系统设置”里改掉后台登录密码\n\n\n\n## 项目文档\n\n- [注册与邮箱池接口文档](.\u002F注册与邮箱池接口文档.md)\n- [Registration Worker and Mail Pool API](.\u002Fregistration-mail-pool-api.en.md)\n- [临时邮箱 Provider 插件接入说明](.\u002F临时邮箱Provider插件接入说明.md)\n- [临时邮箱 Provider 插件接入提示词](.\u002F临时邮箱Provider插件接入提示词.md)\n\n如果你要对接注册机或批量工作流，优先看邮箱池和外部接口文档。\n\n如果你要新增一个临时邮箱 Provider 插件，优先看上面的「插件接入说明」与「插件接入提示词」。\n\n## 致谢\n\n本项目基于以下技术与服务能力构建：\n\n- Flask\n- SQLite\n- Microsoft Graph API\n- IMAP\n- APScheduler\n\n  \n 外部友链：https:\u002F\u002Flinux.do\u002F\n\n\n也参考了以下项目的思路：\n\n- [assast\u002FoutlookEmail](https:\u002F\u002Fgithub.com\u002Fassast\u002FoutlookEmail)\n- [gblaowang-i\u002FMailAggregator_Pro](https:\u002F\u002Fgithub.com\u002Fgblaowang-i\u002FMailAggregator_Pro)\n\n## 许可证\n\nApache License 2.0\n\n## 联系方式\n\n如果你在使用过程中遇到问题，或有合作意向，欢迎通过邮件联系：[outlookmailplus@163.com](mailto:outlookmailplus@163.com)\n\n","OutlookMail Plus 是一款专为注册与验证场景设计的邮箱管理器。其核心功能包括一键复制邮箱地址、自动拉取并提取验证码或验证链接，以及支持主流邮箱导入和自定义IMAP服务器。此外，它还提供自动化接口支持批量注册，并内置了临时邮箱服务以增强隐私保护。此工具特别适合需要频繁进行在线服务注册的个人或团队使用，如开发者测试、营销活动等。通过减少不必要的操作步骤，OutlookMail Plus 能够显著提高注册流程的效率。","2026-06-11 03:49:49","high_star"]