360 Secure SkillHub
360 安全技能中心

Proton Bridge Email

该 Skill 提供通过 Proton Mail Bridge 本地 SMTP 发送邮件的脚本,并用 age 加密保存 Bridge 凭据;包含 send_email.py 与 encrypt_env.sh 两个脚本及 Linux 设置说明。适用于设置 Agent 邮箱或发送自动报告/告警邮件。

boilerrat
boilerrat
热度 83.91
最近更新 2026-05-17 11:19:48
分类:协作依赖:代码执行 / 读写文件 / 第三方 API应用场景:邮件起草 / 自动化脚本 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add protom-bridge-email
Metadata
name
proton-bridge-email
description
Send email through Proton Mail Bridge (localhost SMTP) using age-encrypted credentials. Use when setting up Proton Bridge for an agent mailbox, encrypting Bridge credentials (no 1Password), or sending automated emails (daily reports, alerts) via Proton Bridge.

Proton Bridge Email (age-encrypted)

Authored by Boilermolt + Boiler (Chris).

Use Proton Mail Bridge for local SMTP/IMAP and keep credentials encrypted at rest with age.

What this skill provides

  • A minimal SMTP sender: scripts/send_email.py
  • A helper to encrypt the Bridge env file: scripts/encrypt_env.sh
  • Setup notes: references/proton-bridge-setup.md

Expected local secret location

This skill assumes the encrypted env file is at:

  • ~/clawd/secrets/proton.env.age

And your age identity is at:

  • ~/.config/age/keys.txt

The encrypted file should contain at least:

  • PROTON_EMAIL
  • PROTON_BRIDGE_USER
  • PROTON_BRIDGE_PASS (Bridge “Use this password”, not your Proton web password)
  • SMTP_HOST, SMTP_PORT, SMTP_SECURITY

Quick start

  1. Set up Proton Bridge (Linux) → see references/proton-bridge-setup.md.
  2. Create a temporary plaintext env file (e.g., /tmp/proton.env), then encrypt it:
bash scripts/encrypt_env.sh /tmp/proton.env <age-public-key>
  1. Send a test email:
python3 scripts/send_email.py \
  --to you@example.com \
  --subject "Test" \
  --body "Sent via Proton Bridge."

Notes / gotchas

  • Bridge typically uses a local/self-signed cert for TLS on localhost. The sender script allows it.
  • Bridge must be running for localhost SMTP to work.
  • Do not commit or share secrets; only share the .age encrypted file if you intend to.