用途:把 Markdown 文档(含 YAML frontmatter)转换为符合 RFC 5322 的 .eml 邮件文件,便于在 Outlook、Thunderbird 等邮件客户端中发送格式化内容,适用于简报、治理沟通、利益相关方更新及批量发送前的测试邮件。
主要能力:frontmatter 映射为邮件头(To、From、Subject、CC、Reply-To);生成邮件安全 HTML(内联 CSS、表格布局,无 style 块);支持标题、粗斜体、链接、图片、代码块、行内代码、表格、引用、列表、Emoji、分隔线;本地图片以 base64 CID 附件嵌入;Mermaid 图因邮件不支持 JS 而转为表格回退。
使用方式:需 Node.js 24+ 与 pandoc。基本命令:node .github/skills/md-to-eml/scripts/md-to-eml.cjs newsletter.md;测试预览:加 --test --test-to me@example.com;嵌入图片:加 --inline-images;调试:加 --debug。frontmatter 示例:to、from、subject 为必填,cc、reply-to 可选。
限制:邮件客户端无法执行 JavaScript,Mermaid 仅表格回退,高保真图需预渲染为 PNG;复杂 CSS 在不同客户端渲染有差异,部分客户端会剥离 CSS;内联图片增大邮件体积,图片多时建议改为链接;主题建议不超过 60 字符;总大小超 5MB 需压缩或改用链接。
要求:Node.js 24+、pandoc,以及共享模块 markdown-preprocessor.cjs、mermaid-pipeline.cjs。脚本版本 v1.0.0,技能版本 2.0.0。