公众号排版
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_5223609c/md-to-wechat。
技能介绍
要解决的具体问题
在微信公众号中发布内容时,许多作者习惯使用 Markdown 撰写文章,但公众号编辑器不支持原生 Markdown 渲染。这导致两个主要痛点:一是手动将 Markdown 转换为公众号的富文本格式耗时耗力,容易出错;二是内容发布流程涉及复制粘贴、格式调整和草稿保存,缺乏自动化。本技能旨在解决这一核心问题,将本地 Markdown 文件直接转换为微信公众号样式的 HTML,并自动推送到草稿箱,减少重复劳动。
技能如何工作
核心能力
本技能的核心是自动化渲染与推送。它接收一个 Markdown 文件路径,通过内置脚本解析 Markdown 语法,应用微信公众号的样式规则生成 HTML,并利用微信公众号 API 完成草稿上传。关键能力包括:
- 样式适配:自动处理标题、列表、加粗等元素,确保在公众号中显示正常。
- 封面图智能检测:优先使用 Markdown 中的图片作为封面,若无则回退到环境变量配置的默认封面,避免推送失败。
- 配置化操作:通过
.env文件管理账号信息、主题 ID 等,简化首次设置。
关键步骤
执行流程分为五个必要步骤,确保可靠性和用户确认:
- 确认前置配置:读取
.env文件,检查ACCOUNT、THEME_ID、WECHAT_APP_ID和WECHAT_APP_SECRET是否已填写。如果缺失,提示用户参考references/setup.md完成配置。 - 确认 MD 文件路径:从对话或引用中获取 Markdown 文件的绝对路径,确保文件存在。
- 一次性确认 IP 和文章信息:运行脚本获取本机 IP,并提取 Markdown 文件和配置信息,一次性展示给用户确认。重点包括封面图来源(如使用 MD 中第一张图片或默认封面),收集修改意见。
- 正式推送:使用
--confirmed参数运行脚本,根据用户反馈传入可选参数(如--title、--cover)覆盖默认值。 - 推送成功:输出结果,指导用户前往公众号后台草稿箱查看。
辅助工具
技能还提供辅助命令,例如:
- 查询主题列表:运行
list_themes.cjs获取所有主题名称和 ID,帮助用户正确设置.env中的THEME_ID。
适用边界或注意点
配置要求
- 首次使用必须配置:用户需编辑
.env文件填入微信公众号的 App ID、App Secret 等信息,否则技能无法运行。配置过程参考references/setup.md。 - IP 白名单:微信公众号 API 要求 IP 白名单,如果推送失败并返回错误码
40164,需运行脚本获取当前 IP 并更新公众号后台白名单。
错误处理
常见错误及处理方式包括:
missing_env:.env未配置或缺字段,需检查文件。api_error:账号或主题 ID 错误,运行list_themes.cjs确认。file_not_found:Markdown 文件路径不正确。cover_download_failed:封面图无法下载,需确保图片 URL 可访问或使用--cover指定本地图片。
局限性
- 本技能专注于 Markdown 到微信公众号的转换和推送,不涉及其他平台或格式。
- 推送依赖网络连接和微信 API 可用性,离线环境无法使用。
- 封面图处理基于自动检测,但可能失败,用户需手动提供备用方案。
使用场景
- 技术作者在本地用 Markdown 撰写教程后,需要快速转换为公众号兼容格式并推送草稿,以便预览和发布。
- 内容运营团队定期将 Markdown 格式的周报或活动公告推送到公众号草稿箱,确保格式统一且减少手动排版时间。
- 在配置微信 App ID 和主题 ID 后,运行脚本获取本机 IP 并更新白名单,实现安全的自动化内容发布流程。
- 当 Markdown 文章包含多张图片时,自动检测第一张作为封面图,避免推送失败并简化封面选择步骤。
适合人员
- 技术博主:需要将 Markdown 书写的编程教程或技术文章发布到微信公众号,避免格式错乱并节省排版时间。
- 内容运营专员:负责将团队 Markdown 格式的周报、营销文案定期推送到公众号草稿箱,确保内容一致性和发布效率。
- 个人自媒体创作者:习惯用 Markdown 写作,希望自动化处理转换和推送,专注于内容创作而非格式调整。
- 开发团队负责人:管理多个 Markdown 文档的发布流程,需要通过配置和脚本实现批量处理或自动化集成。