封面由 Draw Things 本地生成(Flux 2 Klein 模型)
从选题、写作、封面生成到发布草稿,整个过程 AI 自动完成。这篇文章本身就是这个系统的产物——包括封面图和文中的配图。
起因
写公众号最大的痛苦不是"写",而是"写之前"和"写之后"。
写之前要选题、找素材、读新闻。写之后要排版、做封面、上传、预览。中间真正有价值的"写作"环节,反而被这些杂事挤压得只剩 20% 的时间。
于是我开始想:能不能让 AI 把 80% 的机械劳动吃掉?
整体架构
数据采集层:每天凌晨,脚本自动从 Techmeme、Hacker News、Product Hunt、少数派、IT之家抓取科技新闻和产品动态。生成的数据保存在本地文件里,早上起来就能看到一份信息摘要。
写作层:AI 读取采集到的新闻素材,按公众号风格写文章。不是那种"AI八股文",而是有观点、有态度、有具体数据的写法。
封面生成层:本地跑 Draw Things(macOS 原生 AI 生图 App),根据文章标题自动生成封面。系统配了 5 种配色方案和 6 种文本排版样式,每次随机选一个,所以每天的封面风格都不一样。
排版发布层:md2wechat CLI 工具负责把 Markdown 转成微信公众号兼容的 HTML,上传封面图,创建草稿。整个过程通过飞书消息触发,或者 cron 定时执行。
AI Agent 自动化工作流——数据流汇入中心节点
为什么选 Draw Things 而不是 DALL-E
三个原因:免费、本地、快。
Draw Things 用 SwiftUI 加自研推理引擎为 Apple Silicon 优化,跑 Flux 模型只需要 4 步就能出高质量图。一张 1024×1024 的图大概十几秒。而且不花一分钱 API 费用,不把图片上传到云端。
更重要的是,它有 MCP Server——这意味着 AI Agent 可以直接调用它生图,不需要人工打开 App 操作。
公众号 HTML 排版是个坑
微信公众号不支持标准 HTML。不能用外链 CSS,不能用 script 标签,很多 CSS 属性不生效。所以需要一个专门的转换层。
我用的方案是手动构建内联样式的 HTML。主色调是 elegant-blue(#2196F3),每个章节用一个圆角白色卡片包裹,参考链接用浅蓝背景区分。听起来简单,但魔鬼在细节——标题数量要跟 Markdown 源文件的章节数量对得上,参考链接的格式要正确解析,特殊字符不能破坏 HTML 结构。
这些坑都是实际生成后发现问题、再修脚本踩出来的。
封面生成的进化
第一版封面就是深蓝渐变加几条电路线条,每天长得一模一样。
第二版加了 5 种配色(蓝紫极光、暖橙落日、翠绿科技、赛博朋克、深海蓝绿),但波浪线条有锯齿。
第三版把线条改成了 1px 逐点绘制的平滑曲线加高斯模糊消锯齿。
第四版加入了 6 种文本样式(渐变填充、描边发光、上下分栏、左对齐色条、胶囊标签、大字报打字机),标题统一白字加阴影保证在深色背景上可读。
现在的系统是 5 乘 6 等于 30 种组合随机切换,每天的封面都不重样。
封面风格迭代——从单一蓝色到 30 种随机组合
实际跑起来的效果
每天凌晨 2:00,夜班探索脚本自动运行,抓取全球科技动态。
每天早上 8:00,cron 触发公众号文章生成:采集新闻 → AI 写作 → 生成封面(Pillow 加 Draw Things)→ 构建 HTML → 上传素材 → 创建草稿。
我醒来后打开微信公众号后台,审核一下草稿内容,满意就直接发。
整条链路的时间:从开始到草稿出现在后台,大约 3-5 分钟。
翻车记录
自动化的乐趣之一就是看它翻车。
有一次生成的 HTML 里,5 个章节标题全部丢失,所有段落堆在一个"HTTP/2 Bomb"标题下面。原因是 Python 用管道传 HTML 给 heredoc 时,HTML 里的特殊字符破坏了 Python 解析。后来改用临时文件传数据,问题解决。
还有一次 GitHub Trending 数据每天都一样,因为那段代码是硬编码的静态文本。脚本里直接输出固定内容,根本没去抓真实数据。改成实际抓取 GitHub trending 页面后,数据才活过来。
封面也有翻车——标题用了黑色字,在深色背景上完全看不到。后来统一改成白色加阴影,不管什么背景都能看清。
翻车也是进步——每次 bug 都让系统更健壮
下一步
目前系统的短板在"审核"环节——我还是得人工看一下内容质量。如果能加入自动化的质量检查(比如标题数对比、参考链接校验、图片是否上传成功),就能进一步减少人工介入。
另一个方向是让 AI 学会根据文章主题自动选择合适的配图风格和提示词,而不是每次都人工指定。
如果你也在做类似的事情,或者想把公众号写作自动化,可以参考文中的工具链。整套方案的成本是零(全是免费工具),硬件只需要一台 Apple Silicon 的 Mac。
参考链接
1. Draw Things 完整指南
https://www.heyuan110.com/zh/posts/ai/2026-02-15-draw-things-ultimate-guide/
2. Draw Things MCP Server
https://github.com/james-see/mcp-drawthings
3.md2wechat https://github.com/geekjourneyx/md2wechat-skill
夜雨聆风