Wenyan 使用教程

Wenyan 使用教程

项目简介

文颜(Wenyan) 是 caol64 做的 Markdown 排版工具,协议 Apache-2.0。命令行仓库在 2026-10-15 查询时是 243 个 Star,当前发布版本 2.0.12,排版核心库 3.0.12。它把一篇 Markdown 套上主题,变成公众号能直接用的版式,并放进草稿箱。

命令行发布时会自己读 frontmatter 里的标题和封面,把正文和封面里的图片传到公众号素材库,再用主题把 Markdown 渲染成富文本,最后创建一篇草稿。默认主题是 default,代码高亮默认 solarized-light,代码块带 Mac 三色圆点,链接默认转成脚注。图文和图片消息(小绿书)走同一条命令。

桌面版还能复制到知乎、今日头条、掘金、CSDN、Medium。这条视频用的是命令行版,方便丢给 Codex:装一次,配好公众号 AppID 和密钥,之后用一句话把字幕改写稿排成文章。主题也可以让 Codex 按 generate-wenyan-theme 这个 skills 现写一套 CSS,再注册进文颜。

📎 相关链接与下载地址(点击展开)

核心亮点

🎨 8 套公众号主题
默认、橙心、彩虹、青金、Pie、麦穗、紫色、物理猫薄荷,一条参数切换
🖼️ 图片自己上传
本地绝对路径、相对路径、网络图都会进公众号素材库,不指定封面就用正文第一张
📥 直接进草稿箱
发布命令创建的是草稿,后台看一眼再点发表,不会直接推给读者
📗 同一条命令发小绿书
frontmatter 里写 type: image,正文图片自动收成图集,最多 20 张

它能做什么、输出什么

项目 说明
输入 Markdown 文件、标准输入,或把短内容直接跟在命令后面。文章顶部用 frontmatter 写标题
适用类型 图文草稿;frontmatter 设 type 为 image 时发图片消息(小绿书)
输出 publish 创建公众号草稿;render 只渲染 HTML,不上传
语言 / 兼容 中文文稿为主。代码高亮可选 solarized-light、monokai、github、dracula 等 9 套
规格 / 容量 小绿书 image_list 最多 20 张,第一张当封面。图片格式支持 jpg、png、gif

环境要求

环境 建议配置
操作系统 Windows、macOS、Linux 都能跑命令行。macOS 另有 App Store 桌面版,Windows / Linux 有跨平台桌面版
运行环境 Node.js,用 npm 全局安装。仓库没有写死小版本,按当前 npm 包安装即可
硬件 排版在本机完成,不需要显卡。发布时要能访问公众号接口
没有固定 IP 时 本机 IP 要加进公众号后台白名单。IP 经常变,可以用文颜的 Server 模式,或给命令加代理
关键依赖 npm 包 @wenyan-md/cli,内部使用 @wenyan-md/core。公众号侧要准备 AppID 和 AppSecret

如何使用

💡 先装命令行,配一次公众号凭据和 IP 白名单,再用橙心主题把一篇 Markdown 存进草稿箱。

步骤 1
安装命令行

本机先有 Node.js。在 GitHub 搜索 caol64/wenyan-cli,或直接用下面这一行装官方 npm 包。

bash
npm install -g @wenyan-md/cli
步骤 2
填写公众号凭据,并把本机 IP 加进白名单

公众号后台的开发接口里拿到 AppID 和 AppSecret,写进环境变量。IP 白名单没加时,上传会返回 invalid ip。IP 经常变,可以改走 Server 模式,由一台固定机器去调公众号接口。

bash
WECHAT_APP_ID=你的AppID
WECHAT_APP_SECRET=你的密钥
步骤 3
写一篇最小文章,用橙心主题存草稿

标题必填。封面可以不写,有正文图片时会用第一张。先用 render 在本地看 HTML,确认后再 publish。

markdown
---
title: 一条口播改成的文章
cover: ./cover.jpg
author: IT小圈
---

## 先把口语收干净

字幕里的口头禅删掉,再拆成小标题。
bash
wenyan render -f article.md -t orangeheart
wenyan publish -f article.md -t orangeheart

常用参数说明:

参数 作用
-f, --file Markdown 路径。不传文件时,也可以从管道或命令参数读内容
-t, --theme 主题 id,默认 default。橙心是 orangeheart
-h, --highlight 代码高亮主题,默认 solarized-light
-c, --custom-theme 这一次使用的自定义 CSS,本地文件或网络地址
--no-mac-style 关掉代码块顶部的三色圆点
--no-footnote 关掉链接转脚注
--app-id 多个公众号时指定发到哪一个
--env-file 从指定文件读 AppID 和密钥
步骤 4
注册自己的主题,或发一条小绿书

内置主题用 wenyan theme -l 查看。自定义 CSS 先注册再按名字使用。小绿书不套主题,把 type 写成 image,正文里的图片会收成图集,最多 20 张。

bash
wenyan theme --add --name my-theme --path ./my-theme.css
wenyan publish -f article.md -t my-theme
wenyan publish -f photos.md
markdown
---
title: 这周的九张图
type: image
---

![](./1.jpg)
![](./2.jpg)
![](./3.jpg)
步骤 5
结合 Codex 使用

把安装命令发给 Codex,让它执行 npm install -g @wenyan-md/cli。凭据放在环境变量里,不要写进口播和截图。想要自己的版式,让 Codex 安装 skills generate-wenyan-theme,用一句话生成 CSS,再注册成主题。之后直接说:把这周三条视频都改成公众号文章,每篇配三张截图,再挑九张图发一条小绿书。

✅ Codex 负责改写和调用命令,文颜负责排版、传图、存草稿。发表前仍在草稿箱里看一眼。

典型应用场景

🎬 视频改成公众号
字幕删掉口头禅,按意思拆小标题,关键画面截图插进对应段落
📗 同一条视频发小绿书
从成片里挑最多 20 张图,type 设为 image,发出图集草稿
🎨 一句话换主题
内置 8 套直接用;想要自己的风格,让 skills 生成 CSS 再注册
🧪 先渲染再发布
render 只出 HTML,确认标题和代码块没散,再 publish 进草稿箱
🤖 交给 Codex
安装、改稿、选主题、存草稿都说人话,凭据留在环境变量里
🖥️ 桌面版顺手复制
命令行主攻公众号草稿。知乎、头条、掘金这些用桌面版复制过去

和手排的差别

做法 结果
Markdown 直接粘进公众号编辑器 标题、引用、代码块样式经常掉,图片还要一张张上传
只让 AI 写出 Markdown 稿子有了,排版和传图仍要自己做
文颜命令行 套上主题,图片进素材库,草稿箱里多一篇。小绿书用同一条命令

🧠 主题 CSS 来自文颜核心库。公众号 8 套是 default、orangeheart、rainbow、lapis、pie、maize、purple、phycat。渲染时把样式写进标签,所以粘进公众号编辑器后版式还在。

常见问题

Q: 和自己粘贴进编辑器有什么差别?

文颜先按主题把 Markdown 渲染成公众号富文本,并把图片换成素材库地址。手粘贴时标题和代码块最容易散,图片也要另外上传。

Q: 命令行能发到知乎和头条吗?

publish 创建的是微信公众号草稿,包括图文和小绿书。知乎、今日头条、掘金、CSDN、Medium 用桌面版排好后复制过去。

Q: 提示 invalid ip 怎么办?

当前机器的 IP 不在公众号白名单里。把 IP 加进后台,或者改用 Server 模式,让一台固定地址的机器去调接口。也可以给命令加代理。

Q: 提示 invalid appid or secret 怎么办?

检查环境变量 WECHAT_APP_ID 和 WECHAT_APP_SECRET,或用 –env-file 指定文件。配了多个公众号时,用 wenyan credential -l 看凭据,发布时加上 –app-id。

Q: 需要显卡吗?

不需要。排版在本机用 Node.js 完成。真正花时间的是改稿和截图,这两步交给 Codex 和 ffmpeg,不占显存。

Q: 主题怎么选?

公众号内置 8 套,wenyan theme -l 可以列出。视频里用的橙心,命令是 -t orangeheart。想要自己的风格,用 skills generate-wenyan-theme 生成 CSS,再 wenyan theme –add 注册。内置主题删不掉,只能删自己加的。

Q: 怎么和 Codex 一起用?

把 npm 安装命令发给 Codex。AppID 和密钥放环境变量,不要贴进对话。改写口播、截图、选择主题、执行 publish,都用一句人话。MCP 版是另一条路,对话里直接说「用橙心主题把这篇文章存进草稿箱」。

Q: 命令行、桌面版、MCP 是什么关系?

排版能力在核心库 wenyan-core。桌面版适合手点复制,命令行适合脚本和 Codex,MCP 适合在对话里直接发草稿。主题 CSS 三边通用。

Q: 可以商用吗?

Apache-2.0,可以用于自己的公众号和商业内容。保留许可证声明即可。发布出去的是你自己的文章,文颜只负责排版和存草稿。

Q: 图片上传失败怎么办?

先确认路径存在,格式是 jpg、png 或 gif。相对路径只在用 -f 读取本地文件时有效。封面不写时,会用正文第一张图。

© 版权声明
THE END
喜欢就支持一下吧
点赞8 分享