大家好,我是木川

上篇展示 OpenClaw 工作流效果的时候,其中有一个工作流是: Markdown 文章写完直接自动排版并发布到公众号草稿箱

手动排版公众号太痛苦,Markdown 写好了还要逐段复制到编辑器,调字体、改间距、对齐样式……一篇文章排版 1 小时起步

我现在写完 Markdown,一条命令,3 秒后文章已经躺在公众号草稿箱里,排版精美,格式不乱

今天把这套「一键排版+自动发布」的完整配置拆给你——从样式模板设置到公众号 API 接入,跟着做就能复现

一、效果展示

快捷发布指令

指定路径指定样式发布指令

二、前置准备

OpenClaw :安装参考我上一篇文章 刷过 100 个 OpenClaw 视频还没动手?这篇带截图的,真的能跑通

微信公众号 API key、API Secret:登录微信开发者平台获取

三、实现步骤

0、方案选型

方案 A:远程 MCP 服务(简单,但有限制)

优点:配置简单

缺点:无法自定义代码块样式

方案 B:本地 wenyan-cli(推荐,完全控制)

优点:完全控制主题、代码高亮、所有参数

缺点:需要本地安装 node.js 和 wenyan-cli

推荐:使用 方案 B(本地 wenyan-cli)

1、安装 node.js

# 检查是否已安装
node --version  # 需要 v18+,推荐 v22+

# 如未安装,使用 nvm 安装
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install 22
nvm use 22

2、安装 wenyan-cli

在 OpenClaw 所在的机器的命令行执行如下命令,通过 npm 安装 wenyan-cli

npm install -g @wenyan-md/cli

3、配置微信凭证

登录微信开发者平台,获取 AppId 和 AppSecret 

https://developers.weixin.qq.com/console/product/mp/wx809d32b836a943ad?tab1=basicInfo&tab2=dev

命令行执行如下内容,将微信 AppId 和 AppSecret 写入 ~/.bashrc

echo 'export WECHAT_APP_ID="your-app-id"' >> ~/.bashrc
echo 'export WECHAT_APP_SECRET="your-app-secret"' >> ~/.bashrc
source ~/.bashrc

添加服务器 ip 到公众号白名单

 找到 openclaw 部署的服务器 ip,添加到 API IP 白名单;如果你用的腾讯云服务器部署的 openclaw,打开 https://console.cloud.tencent.com/lighthouse/instance/index?rid=15

4、样式模板配置

1)内置排版主题

wenyan theme -l

主题

风格

推荐场景

default

简洁经典

通用文章

lapis

青蓝色

技术文档

orangeheart

暖橙色

温暖风格

purple

优雅紫

品牌宣传

phycat

薄荷绿

清新风格

pie

现代时尚

时尚内容

2)代码高亮主题

浅色背景:

主题

背景色

特点

github

白色

GitHub 官方风格

solarized-light

浅黄

护眼柔和

atom-one-light

浅灰

Atom 编辑器风格

深色背景(推荐):

主题

背景色

特点

github-dark

深灰

GitHub 深色

dracula

深紫

流行深色主题

monokai

深灰

经典深色

solarized-dark

深青

护眼深色

atom-one-dark

深灰

Atom 深色

4、自定义样式

如果你觉得内置主题不满足要求,可以自定义样式,注册后就可以使用了

创建 CSS 文件 :~/.openclaw/workspace/themes/style-purple.css

:root {
    --primary-color: #8e44ad;
    --text-color: #2c3e50;
    --block-bg-color: #f5eef8;
    --bg-color: #ffffff;
}

#wenyan {
    line-height: 1.75;
    font-size: 16px;
    color: var(--text-color);
    background: var(--bg-color);
    padding: 20px;
}

#wenyanh1 {
    font-size: 1.8em;
    text-align: center;
    color: var(--primary-color);
    margin: 1.5em01em;
    border-bottom: 2px solid var(--primary-color);
    padding-bottom: 0.5em;
}

#wenyanh2 {
    font-size: 1.4em;
    color: var(--bg-color);
    background: var(--primary-color);
    padding: 8px16px;
    border-radius: 4px;
    margin: 1.5em00.8em;
    display: inline-block;
}

#wenyanh3 {
    font-size: 1.2em;
    color: var(--primary-color);
    margin: 1.2em00.6em;
}

#wenyanstrong {
    color: var(--primary-color);
    font-weight: 600;
}

#wenyana {
    color: var(--primary-color);
    text-decoration: none;
    border-bottom: 1px solid var(--primary-color);
}

#wenyana:hover {
    opacity: 0.8;
}

#wenyanblockquote {
    border-left: 4px solid var(--primary-color);
    background: var(--block-bg-color);
    padding: 1em1.5em;
    margin: 1em0;
    border-radius: 04px4px0;
}

#wenyancode {
    color: var(--primary-color);
    background: var(--block-bg-color);
    padding: 2px6px;
    border-radius: 3px;
    font-family: monospace;
    font-size: 0.9em;
}

#wenyanul, #wenyanol {
    margin: 1em0;
    padding-left: 2em;
}

#wenyanli {
    margin: 0.5em0;
}

#wenyantable {
    width: 100%;
    border-collapse: collapse;
    margin: 1.5em0;
}

#wenyanth {
    background: var(--primary-color);
    color: var(--bg-color);
    padding: 12px;
    text-align: left;
    font-weight: 600;
}

#wenyantd {
    padding: 10px12px;
    border-bottom: 1px solid #e0e0e0;
}

#wenyantr:nth-child(even) {
    background: var(--block-bg-color);
}

#wenyanp {
    margin: 1em0;
}

/* 代码块样式 */
#wenyan pre {
    background: var(--block-bg-color);
    border-radius: 6px;
    padding: 16px;
    overflow-x: auto;
    margin: 1em0;
    border: 1px solid rgba(0,0,0,0.05);
}

#wenyan pre code {
    background: transparent;
    padding: 0;
    color: var(--text-color);
    font-size: 14px;
    line-height: 1.6;
    font-family: 'Consolas', 'Monaco', 'Courier New', monospace;
}

/* 代码高亮颜色 */
#wenyan.keyword { color: #d73a49; font-weight: bold; }
#wenyan.string { color: #032f62; }
#wenyan.number { color: #005cc5; }
#wenyan.comment { color: #6a737d; font-style: italic; }
#wenyan.function { color: #6f42c1; }
#wenyan.operator { color: #d73a49; }

注册主题

wenyan theme --add --name style-purple --path ~/.openclaw/workspace/themes/style-purple.css

重新执行查看可用主题命令,就会看到自定义主题了

wenyan theme -l

5、添加快捷指令

/root/. Openclaw/workspace/Tools.md 增加如下内容:

## 公众号发布

**触发词**:"发布公众号"

**标准命令**:
```bash
wenyan publish -f {文件} -t style_blue -h github-dark --no-mac-style --no-footnote
**常用变体**:
- 默认文件:article.md
- 如需 Mac 风格:去掉 --no-mac-style
- 如需脚注:去掉 --no-footnote

四、使用

1、准备 markdown 文件

 注意事项:必须包含 title(标题) 和 cover (封面图)

---
author: 作者
title: 我的文章标题
cover: https://example.com/cover.jpg
summary: 文章摘要
---

# 一级标题

## 二级标题

### 三级标题

正文内容,支持 **加粗**、*斜体*、[链接](https://example.com)


## 代码示例

```python
def hello():
    print("Hello World")

2、命令行触发

命令行执行如下命令,手动排版和发布

wenyan publish -f file.md -t style_blue -h github-dark --no-mac-style --no-footnote

参数

说明

示例值

-f, --file

Markdown 文件路径

-f article.md
-t, --theme

排版主题

lapis

style_blue

-h, --highlight

代码高亮主题,默认使用 solarized-light 浅黄主题

github-dark

dracula

--no-mac-style

禁用 Mac 风格代码块

无值

--no-footnote

禁用链接转脚注

无值

-c, --custom-theme

自定义 CSS 路径

-c style.css

这个命令会完成调用 wenyan 排版引擎应用指定样式排版、自动上传图片到微信素材库、发布文章到公众号草稿箱多个步骤,一气呵成

3、自然语言触发

在飞书群上传要发布的 markdown 文件,直接告诉 AI 发布这篇公众号文章就行

五、常见问题

1、代码块背景是黄色,想改白色/深色

问题原因:wenyan 默认使用 solarized-light 主题(浅黄背景)

解决方案

# 使用深色背景高亮(推荐)
wenyan publish -f article.md -h github-dark

2、文章末尾有引用链接 [1] [2],想去掉

问题原因:wenyan 默认将链接转为脚注

解决方案

wenyan publish -f article.md --no-footnote

3、代码块有 Mac 窗口样式,想去掉

问题原因:默认开启 Mac 风格代码块

解决方案

wenyan publish -f article.md --no-mac-style

4、找不到文章标题

问题原因:Frontmatter 格式错误

解决方案

markdown 开头确认包含如下内容,并大小写正确

---
author:作者
title: 文章标题
cover: 封面图像链接
summary:文章摘要
---

六、写在最后

装完这套工作流,我最大的感受是:写作和发布之间那道烦人的沟,现在真的只是一条命令的事。

以前写完文章,想到还要排版和公众号编辑器编辑就头大,经常拖着不发。现在写完  Markdown,顺手敲个命令,3 秒后去公众号后台直接点发布,心情都不一样了。

如果配置过程中遇到问题,也欢迎留言,我尽量帮你排查。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐