Obsidian + WorkBuddy 公众号创作工作流
把「写作」交给人,「排版/配图/标题/数据」交给 Agent,用本地 Markdown 知识库做长期资产。
核心定位
- WorkBuddy = 创作 Agent:读写 Vault 文件、ImageGen 生封面、把 Markdown 转公众号 HTML、做数据复盘。
- Obsidian = 本地 Markdown 知识库 + 写作台:所有文件本地存储、AI 友好、可当 LLM Wiki。
- 闭环:灵感(Inbox) → 写稿(10-写作) → WorkBuddy 辅助(标题/封面/排版) → 发布(公众号后台) → 数据复盘(反哺 30-知识库)。
何时用本技能
- 用户要做微信公众号 / 微信图文创作
- 用户要把 Markdown 文章转成「可直接 Ctrl+V 粘贴到公众号后台」的 HTML
- 用户想用 Obsidian 本地知识库驱动 AI 写作、生成标题或封面
- 用户问「公众号排版怎么弄」「Markdown 怎么发公众号」
一、搭建 Obsidian Vault(目录即模板)
obsidian-workbuddy-vault/
├── 00-Inbox/ ← 灵感随手丢
├── 10-写作/ ← 正式文章(.md)
├── 20-素材库/ ← 标题库 / 封面提示词库 / 排版主题 / 数据分析模板
├── 30-知识库/ ← 领域沉淀(WorkBuddy 能力清单、Obsidian 笔记)
├── 90-Templates/ ← 公众号文章模板(含 frontmatter)
├── _attachments/ ← 封面、插图(png)
└── .obsidian/ ← app.json + community-plugins.json
要点:.obsidian/app.json 设置 "alwaysUpdateLinks": true,"newLinkFormat": "relative","attachmentFolderPath": "_attachments";文章 frontmatter 用 title/date/tags/cover/status。
二、创作四步(对 WorkBuddy 说的话)
- 标题:「基于这篇文章 + 我 Vault 里历史文章风格,生成 5 个爆款标题」
- 封面:调用 ImageGen,比例必须 1536×640(2.35:1) 或 900×383,否则公众号会裁掉两侧。提示词用扁平插画/科技风。
- 排版转换:「把这篇文章转成公众号内联样式 HTML」(或跑
scripts/md2wechat.py)。 - 数据复盘:发后把后台「阅读/在看/分享/收藏/评论」贴给 WorkBuddy,让它返回结构化复盘并写回 30-知识库。
三、导出公众号 HTML(关键交付物)
仓库内 scripts/md2wechat.py 是专用转换器,特性:
- 全内联 style,不输出 <style>/class/id(微信会剥离这些,必须内联)
- 代码块 white-space:pre 保留对齐;表格内联边框;本地图片自动 base64 内嵌
- 封面(_attachments/cover-workbuddy-obsidian.png)自动作为头图内嵌
用法:
python3 scripts/md2wechat.py <输入.md> <输出.html>
生成的 .wechat.html 全选 → Ctrl+C → 公众号后台新建图文 → Ctrl+V。
> 若微信拒收 base64 头图(个别账号),用公众号「图片」按钮单独上传封面,正文 HTML 照粘即可。
四、必须提醒用户的 5 个坑(真实踩过)
- 封面比例:用 2.35:1,否则被裁。
- CSS 会丢:微信剥离
<style>和 class,必须内联 style(别直接粘 Obsidian CSS 片段)。 - 双链不认:Obsidian
![[图.png]]公众号不识别,发布前转成上传后的线上 URL。 - 长文截断:单篇 md 超 ~5000 行会被 Agent 读取截断,拆篇或用大纲管理。
- 代理:装 Obsidian 社区插件、访问 CDN 需开代理。
五、提示词/模板库(可复用,放进 20-素材库)
- 标题库:信息密度型 / 痛点型 / 对比型 / 数字型 / 悬念型 各存 1–2 条实测样例。
- 封面 prompt:扁平插画风固定模板,只换主语。
- 排版主题:只维护「公众号兼容内联版」(每元素内联 style)+「本地预览版」(Obsidian CSS 片段,仅本地看)。
六、开源 / 共享的两种形式
- Skill 形式(WorkBuddy 内):本文件即用户级技能,安装在
~/.workbuddy/skills/,WorkBuddy 自动可用,可随账号迁移。 - GitHub 形式(对外界):把整个
obsidian-workbuddy-vault/作为仓库,加README.md+.gitignore(忽略.obsidian/workspace等本地状态),git init→commit→ 推到 GitHub 即开源。转换器md2wechat.py一并提交,别人 clone 后python3 md2wechat.py 文章.md 文章.wechat.html即可用。
> 发布时如要真正「一键同步公众号后台」,需走公众号素材/草稿 API(需服务号权限),不在本工作流免费范围内,按需另行集成。
七、能力边界(诚实声明)
- 不能一键同步公众号后台(需粘贴或 API)。
- WorkBuddy 不是 Obsidian 插件,没有右侧实时 Chat 面板;改完 Vault 文件后 Obsidian 自动刷新,跨窗口切换即可看到。
- 生图约 5–10 积分/张,单篇 1 张封面足够,轻量近乎零成本。