内容
# 克劳德-雅达-邮件
[](https://github.com/nikarmontag-cmd/claude-yandex-mail/actions/workflows/lint.yml)
[](LICENSE)
[](https://www.python.org/downloads/)
插件适用于 **克劳德代码** 和 **克劳德协作** ,可将克劳德转变为雅达邮件的邮件助手(包括适用于具有自定义域名的企业的雅达 360)。
## 演示
```
你:检查邮件
克劳德:
未读邮件:5
🔴 需要回复(2):
• [UID 1234] 来自 Иванов И.И. <i.ivanov@example.com> · 商业
请求800平方米仓库的供暖报价。截止日期为周五。
• [UID 1233] 来自 accounting@bank.example · 财务
付款确认等待您的同意(截止日期为今天)。
🟡 应该阅读(1):
• [UID 1232] 来自 notifications@stripe.com · 通知
已收到来自 LLC Партнёр 的 $1,250.00 付款。
⚪️ 可以忽略(2):
• LinkedIn — 每周摘要
• GitHub — Dependabot 警报摘要
建议:首先回复伊万诺夫 — 截止日期为周五。
你:回复伊万诺夫,报价将于周三发送
克劳德:[显示带有签名和徽标的草稿]
发送?
你:是的
克劳德:✓ 已向 i.ivanov@example.com 发送回复(主题:Re: 请求报价 ...)
```
## 架构
```mermaid
sequenceDiagram
participant U as 用户
participant C as 克劳德(代码/协作)
participant S as 检查邮箱技能
participant M as MCP 服务器(server.py)
participant Y as 雅达 IMAP/SMTP
U->>C: "检查邮件"
C->>S: 技能匹配
S->>M: 获取未读邮件(限制=10)
M->>Y: UID 搜索未读<br/>UID 获取正文预览[]
Y-->>M: 原始 RFC822 消息
M-->>S: 解析(解码主题,正文,发件人)
S->>C: 分类 + 优先级
C-->>U: 结构化分诊
```
---
## 🇷🇺 简体中文
### 内部组件
| 组件 | 功能 |
|---|---|
| **MCP 服务器** `yandex-mail` | 11 个异步工具,通过 IMAP/SMTP:发送带有 HTML 签名和内联图片,搜索,列出文件夹,在文件夹之间移动,设置/取消已读标志,线程回复 |
| **技能** `check-inbox` | 未读邮件分诊:分类(商业/项目/财务/个人/通知/营销)和优先级(🔴/🟡/⚪️) |
| **技能** `compose-email` | 新的商业电子邮件,带有 HTML 签名,徽标和发送确认 |
| **技能** `reply-to-email` | 查找原始消息,回复时引用和保存线程(`Re:`,`In-Reply-To`,`References`) |
### 触发器
| 告诉克劳德 | 技能 |
|---|---|
| “检查邮件”,“有什么新的”,“显示未读邮件” | `check-inbox` |
| “写一封邮件给 X”,“发送邮件”,“撰写邮件” | `compose-email` |
| “回复 X”,“回复 X 的最新邮件” | `reply-to-email` |
### 安装
#### 1. 获取雅达应用密码
这 **不是** 您的普通账户密码。要获取:
1. 在 `id.yandex.ru` 上启用两步验证
2. 打开 `https://id.yandex.com/security/app-passwords`
3. 创建一个“邮件”应用密码 — 雅达仅显示一次 16 个字符的密码
4. 在雅达邮件设置中,确保启用 IMAP 访问(`所有设置 → 邮件客户端 → ☑ 从 imap.yandex.com 通过 IMAP`)
#### 2. 克隆并设置
```bash
git clone https://github.com/nikarmontag-cmd/claude-yandex-mail.git
cd claude-yandex-mail
chmod +x scripts/setup.sh
./scripts/setup.sh
```
脚本会询问您的电子邮件地址 + 应用密码,创建虚拟环境,安装依赖项并测试 IMAP 连接。然后询问签名详细信息(姓名,职位,公司,电子邮件,电话,网站,可选的徽标路径)。
#### 3. 连接到克劳德
**克劳德代码:**
```bash
claude plugin add /完整/路径/到/claude-yandex-mail
```
**克劳德协作:** 打包为 `.plugin` 并拖入应用程序:
```bash
./scripts/build-plugin.sh ~/Desktop
# 创建 ~/Desktop/claude-yandex-mail.plugin
```
然后将 `.plugin` 文件拖入协作工作区。
安装后,打开 `/mcp` (在克劳德代码中),确认 `yandex-mail` 已连接并尝试:“检查邮件”。
### 要求
- macOS / Linux(Windows 未测试 — 应该可以通过 WSL 或 MSYS 工作)
- Python 3.10+
- Bash 4+ 用于设置脚本
- 具有启用 2FA 和应用密码的雅达邮件账户
### 安全
- 凭证存储在 `server/.env` 中,权限为 `chmod 600`,被 git 忽略
- 签名和徽标位于 `assets/` 中,也被 git 忽略
- 没有任何数据离开雅达和您的本地机器
### 结构
```
claude-yandex-mail/
├── .claude-plugin/plugin.json # 插件清单
├── .mcp.json # MCP 服务器配置
├── server/
│ ├── server.py # MCP 服务器(asyncio + aioimaplib + aiosmtplib)
│ ├── requirements.txt
│ └── .env.example # 凭证模板
├── skills/
│ ├── check-inbox/SKILL.md
│ ├── compose-email/SKILL.md
│ └── reply-to-email/SKILL.md
├── assets/
│ ├── signature.template.html # 签名模板(HTML)
│ ├── signature.template.txt # 签名模板(纯文本)
│ ├── signature.html # 由设置脚本生成
│ ├── signature.txt # 由设置脚本生成
│ └── logo.jpg # 可选,由设置脚本复制
├── scripts/setup.sh
├── LICENSE
└── README.md
```
### 修改签名
删除 `assets/signature.html` 和 `assets/signature.txt`,然后重新运行 `./scripts/setup.sh`。
或者手动编辑文件 — 它们是纯 HTML/文本,生成后无需模板。
### 许可证
MIT — 请参阅 [LICENSE](LICENSE)。