Markdown to WeChat
面向 AI Agent 的微信公众号创作与发布 CLI:写 Markdown 即可一键排版成 40+ 样式、生成封面与配图、预览校验后推送草稿箱,支持 Claude Code/Codex/WorkBuddy 等通过 JSON discovery 稳定调用。
仓库:geekjourneyx/md2wechat-skill
热度证据:3.5k star,公众号作者圈流传的排版技能
五维评分
热度4/5
质量5/5
创新4/5
易用4/5
文档5/5
优秀点拆解
- Discovery API 消灭猜测:capabilities/list/show/render 四层 --json 发现命令让 Agent 可探测、可枚举、可验证地获取能力,指令明确「以 CLI 输出为唯一事实源,禁止凭记忆猜」
- 副作用显式化:inspect 输出 data.readiness.targets/blockers 作为发布门禁,preview 只写成功 HTML,convert 默认零副作用、--upload/--draft 必须用户显式请求,不发草稿不发布除非用户要求
- SOP 内嵌二进制:skills_embed.go 用 //go:embed 把 SKILL.md 打进 CLI,Agent 可随时 skills read 读回当前版本协议,杜绝文档与运行时版本漂移
- Brand Profile 自然语言偏好:~/.config/md2wechat/brand.md 是自由格式 Markdown「写给 Agent 的信」(含正反例写法),CLI 不解析、由 Agent 读取作软约束,配明确优先级链,档案缺失不阻塞任务
- 受控排版 DSL::::module 语法 + 9 种 body_format schema + 契约测试过的 canonical example witness + layout validate 本地校验,配合「4 件事原则」与最少模块纪律,把创意排版变成确定性操作
可复用的设计模式
- Discovery-First 契约:可枚举资源(主题/模型/prompt/模块)做成分层 JSON 发现接口,指令写明以 CLI 输出为事实源,且要求最小查询集
- 检查-预览-执行三段式 + readiness 门禁:inspect(只读检查)→ preview(无副作用试运行)→ convert(显式 opt-in 副作用),危险动作拆成独立命令并在检查层给出机器可判定的放行条件
- SOP 内嵌工具本体 + 多文件版本一致性门禁:go:embed 打包使用说明,quality-gates.sh 强制 VERSION/package.json/marketplace.json/CHANGELOG 对齐,发布前跑真实 E2E 渲染验证
- 自由格式偏好文件 + 降级优先级链:风格偏好用 Agent 读、机器不解析的 Markdown 承载,写明缺失不阻塞 + CLI flag > 用户指令 > Brand Profile > config > 保守默认的优先级
适用场景
把 Markdown 笔记一键转成公众号排版 HTML 并预览生成文章封面图/信息图(内置 cover/infographic preset,支持多图片 provider 或宿主 Agent Image Gen 计划模式)公众号标题候选生成(title suggest 只产出 host-Agent AI 请求,不替用户定稿)AI 文章去味(humanize authentic 强度)与按风格写作(write)多公众号矩阵草稿推送与发布前 readiness 检查(inspect/convert --draft)图片消息/小绿书图文发布(create_image_post,区别于 convert --draft)
边界与注意:高级排版模块与 48 个专业主题仅在付费 API 模式下渲染,免费 AI 模式只输出 prompt 而非最终 HTML;本地 layout validate 只能验语法不能证明远端渲染;商业使用有 Source Available 授权墙,且仅限微信公众号生态
完整拆解分析文档
本页为摘要版,完整精读分析(核心机制、逐条优秀点拆解、写作过程)见本地 Markdown 文档:
analysis/md2wechat-skill.md