wechat-formatter · Markdown → 微信 HTML

SkillDocs & knowledge

Converts Markdown documents into inline-styled HTML usable in WeChat Official Accounts. **Trigger scenarios**: user says "convert markdown to HTML that works for Official Accounts" / "format this article" / "apply a theme" / "the WeChat editor doesn't recognize my styles" / any request mentioning "O

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the wechat-formatter · Markdown → 微信 HTML skill

What this skill tells your AI

The instructions your AI receives, as published by yishu5/claude-skills in skills/wechat-formatter/SKILL.md and read by ahel’s review.

只解决一件事:把 Markdown 转成微信编辑器粘贴后样式不丢的 HTML

核心问题

微信公众号编辑器不识别 <style> 标签和 CSS class。所以普通的 markdown → html 转换器输出的 HTML 粘到微信里会变成裸文本,所有样式全丢。

唯一可靠方案:所有 CSS 都内联到元素的 style="..." 属性里。doocs/md 是这件事的开源标准,本 skill 直接调用它。

使用方法

python3 scripts/markdown_to_wechat_doocs.py \
  --input drafts/article.md \
  --output drafts/article.html \
  --theme <主题名>

输出的 HTML 可以直接复制粘贴到微信公众号编辑器,样式全部保留。

主题选择

8 个主题,按文章内容氛围选(不只看标题关键词):

文章基调推荐主题适用
温暖、励志、有人情味orange个人成长 / 励志 / 鸡汤 / 故事
专业、理性、技术感blue技术评测 / 工具教程 / 商业分析
清新、自然、放松green健康养生 / 户外 / 环保
文艺、清爽、小清新cyan文艺随笔 / 旅行 / 生活美学
优雅、高端、品牌purple品牌故事 / 艺术文化 / 设计
简约、高级、极简black摄影 / 极简主题 / 严肃话题
热情、节日、醒目red节日 / 重要通知 / 活动
甜美、浪漫、少女pink情感 / 美妆 / 少女向

选择原则:读完 Markdown 后,问自己"这篇要给读者什么情绪",再选主题。不要靠标题关键词匹配(比如标题里没"励志"也可能是励志文)。

如果用户已在 .env 设了 MARKDOWN_THEME:除非用户明确说"换个主题",否则用 .env 里的。

输出验收

转出来的 HTML 必须:

  • 不包含 <style> 标签(所有样式必须内联)
  • 不包含 CSS class(微信不解析)
  • 图片如果是本地路径 → 必须先用 wechat-publisher 的 upload_material.py 换成微信 URL,否则发布后图片裂掉

不做的事

  • 不发布到草稿箱 → 用 wechat-publisher
  • 不写文章 / 不改稿 → 用 wechat-writer
  • 不生成封面图 → 用 wechat-publisher 的 generate_cover.py
  • 不上传本地图片到微信 CDN → 用 wechat-publisher 的 upload_material.py(如果 Markdown 里有 ![](./local/img.png),先告诉用户调用 publisher 上传换链接,再回来排版)

配置

.env 文件支持的变量:

MARKDOWN_THEME=        # orange / blue / green / purple / red / cyan / black / pink
                       # 留空则让 agent 按内容判断

Signals

GitHub stars
93
Last commit
Sep 2026
Advanced
Catalog kind
skill
Gateway key
wechat-formatter
Source
github.com/yishu5/claude-skills