| name | wechat-article-writer |
| description | 公众号/自媒体全流程。根据用户表述自动匹配:撰写文章、封面图、正文插图、风格提取。支持多种写作风格。当用户提到写公众号、技术博客、公众号封面、正文插图、步骤图、演示图、流程示意、分析写作风格、克隆文风、模仿爆款、提取风格时使用。详见 reference 目录。 |
公众号/自媒体创作
一、任务识别
根据用户需求选择执行路径:
| 任务类型 | 触发词 | 执行 |
|---|
| 仅封面/结尾图 | 封面图、公众号封面、B站封面、小红书配图 | 读取 cover_guide.md |
| 仅正文插图 | 插图、步骤图、演示图、流程示意、前后对比 | 读取 illustration_guide.md |
| 撰写文章 | 写公众号、写文章、自媒体写作、爆款文章、内容创作 | 执行 Step 2–6 |
| 风格提取 | 分析写作风格、克隆文风、模仿某篇、提取风格、范文转风格指南 | 执行「四、风格提取流程」 |
二、写作风格
撰写文章时,按用户指定选择风格文件;未指定则用默认风格。
三、撰写流程(Step 2–6)
Step 2:搜索资料
- 并行搜索多来源(官方文档、X/Twitter、Reddit、技术论坛等)
- 优先当月/当季最新资料
- 深度总结后再进入撰写
Step 3:撰写文章
- 读取风格文件:按「二、写作风格」选择对应 reference 文件,严格遵循其写作规范与结尾语
- 通用要求:故事化开头、带情感色彩、准备 2–3 个备选标题
Step 4:生成标题
生成 5 个爆款风格标题:痛点明确、数字吸引、结果导向、情绪调动、悬念设置。
Step 5:排版优化
输出排版与配图建议:段落结构、配图位置(封面/正文/结尾)、代码块留白、金句单独成段。
Step 6:生成配图(可选)
用户要求或排版建议中标注配图时:
-
读取指南:
- 封面/结尾图 → 读取
reference/cover_guide.md
- 正文插图 → 读取
reference/illustration_guide.md
-
生成并保存 .drawio 文件:
- 必须保存:生成完整的 mxGraph XML 内容并保存为文件
- 封面图保存为
images/covers/source/主题关键词-cover.drawio
- 正文插图保存为
images/illustrations/source/主题关键词-图序号.drawio
- 配色与文章统一
- 保存成功后告知用户文件路径
-
自动转换为 PNG(可选):
- 检查是否安装 draw.io CLI 工具
- 如已安装:自动运行
bash scripts/export-drawio.sh covers,将 drawio 转为 PNG
- 如未安装:提示用户手动导出或安装 draw.io CLI
- PNG 保存到
images/covers/export/ 或 images/illustrations/export/
-
输出使用说明:
- 封面说明:布局用途与风格(1-2 句)
- 文件路径:已保存的 .drawio 文件位置
- 如果自动转换成功:PNG 文件位置
- 如果需要手动导出:导出步骤说明
图片文件夹结构:
images/
├── covers/source/ # 封面 .drawio 文件(自动保存)✅
├── covers/export/ # 封面 PNG/JPG(自动或手动导出)
├── illustrations/source/ # 正文 .drawio 文件(自动保存)✅
└── illustrations/export/ # 正文 PNG/JPG(自动或手动导出)
导出 PNG 方式(三选一):
- 自动导出(推荐):如果已安装 draw.io CLI,系统会自动转换
- 脚本导出:手动运行
bash scripts/export-drawio.sh covers
- 手动导出:用 Draw.io 打开 → 文件 → 导出为 → PNG(2x 分辨率)
Step 7:上传到微信公众号(可选)
用户要求上传到草稿箱时执行,支持手动和自动两种模式。
前置准备
- 确保图片已导出为 PNG/JPG 格式(Step 6)
- 配置微信公众号凭证(仅自动模式需要):
WECHAT_APPID=your_app_id
WECHAT_SECRET=your_app_secret
模式 A:手动上传(零代码,推荐新手)
-
读取已生成的文件:
- 文章路径:
drafts/日期-主题.md(Step 3 已保存)
- 标题路径:
drafts/备选标题.txt(Step 4 已保存)
- 封面图:
images/covers/source/主题-cover.drawio(Step 6 已保存)
-
导出封面图:
- 用 Draw.io 打开
.drawio 文件
- 文件 → 导出为 → PNG(2x 分辨率)
- 保存到
images/covers/export/
-
转换 Markdown 为微信格式:
- 打开 Doocs MD 编辑器
- 打开
drafts/日期-主题.md,复制全部内容
- 粘贴到 Doocs MD 左侧编辑区
- 选择主题样式(默认、橙心、姹紫等)
- 右侧实时预览微信格式
-
复制到公众号:
- 点击"复制"按钮
- 打开公众号后台 → 新建图文 → 粘贴内容
- 上传封面图(从
images/covers/export/)
- 从
备选标题.txt 中选择标题
- 保存为草稿或直接发布
优点:无需技术配置,即开即用,样式丰富,所有文件已自动生成
适用场景:偶尔发文、注重样式调整
模式 B:自动上传(API 调用,推荐频繁发文)
-
读取已生成的文件:
- 文章:
drafts/日期-主题.md(Step 3 已保存)
- 封面:
images/covers/export/主题-cover.png(需先导出)
- 标题:从
drafts/备选标题.txt 中选择
-
自动执行流程:
npx wechat-article-publisher \
--markdown drafts/2026-03-19-ai-tools.md \
--cover images/covers/export/ai-tools-cover.png \
--images images/illustrations/export/ \
--auto-upload
node scripts/upload-to-wechat.js \
--title "2026 最全 AI 编程工具盘点:30+ 神器让代码写得飞起" \
--content drafts/2026-03-19-ai-tools.md \
--cover images/covers/export/ai-tools-cover.png
-
自动化步骤(脚本内部执行):
- 获取微信 access_token(自动缓存 7200 秒)
- 上传封面图到素材库 → 获取
thumb_media_id
- 上传正文图片 → 替换 Markdown 中的图片链接
- 转换 Markdown → 微信 HTML(内联样式)
- 调用草稿箱 API 创建草稿
- 返回草稿 ID 和预览链接
-
输出示例:
✅ 草稿已上传成功!
✅ 草稿 media_id: Mzg5MjQ3NTg2Mg==_1234567890
✅ 请在公众号后台查看并发布
⏱️ 耗时: 3.2 秒
优点:全自动化,批量发布,节省时间
适用场景:频繁发文、团队协作、内容矩阵
注意事项
⚠️ 限制条件:
- 必须是已认证的公众号(个人号无法使用发布 API)
- 封面图 < 10MB,格式 JPG/PNG
- 正文图 < 2MB,格式 JPG/PNG/GIF
⚠️ 安全提醒:
- 不要将 AppSecret 提交到 Git 仓库
- 使用
.env 文件或环境变量存储凭证
- Token 缓存后提前 5 分钟刷新,避免 40001 错误
⚠️ 发布限制(2025年7月起):
- 个人未认证账号:只能创建草稿,需手动发布
- 已认证账号:可调用发布 API 自动发布
四、风格提取流程
当用户提供样本文章(全文粘贴或本地路径),希望分析风格、克隆文风、将范文转为风格指南时执行。
先读取 extraction_dimensions.md,按统一维度提取。
Step 1:任务确认
- 样本数量(1 篇或多篇)
- 使用目标(模仿写作 / 团队风格规范 / Prompt 固化)
- 是否保留作者口头禅、品牌词
Step 2:结构拆解
提取:开头钩子模式、行文骨架、段落节奏、结尾动作。
Step 3:语言与修辞拆解
提取:语气人称、句式与标点、高频词/过渡词/口头禅、修辞手法。
Step 4:产出风格规则包
输出必须包含:风格画像(100–200 字)、可执行规则(15–30 条,必须/优先/避免)、风格复刻 Prompt、反向自检清单、边界声明。
Step 5:验证与回放(可选)
若用户需要:同主题试写大纲、100–200 字试写段落、相似点/差异点说明。
输出顺序:样本概况 → 风格画像 → 风格规则包 → Prompt 模板 → 自检清单 → 边界声明
五、示例
| 用户请求 | 执行 |
|---|
| 生成这篇文章的封面 | 读取 cover_guide.md,默认生成合并封面(1283×383) |
| 生成 Cursor 启用四步骤的步骤图 | 读取 illustration_guide.md 并生成 |
| 帮我写一篇关于 Cursor Skills 的公众号文章 | Step 2–6 完整流程 |
| 用高流量风格写一篇关于 Vibe Coding 的文章,并上传到草稿箱 | 读取 viral_style.md,按爆款风格撰写 + Step 7 自动上传 |
| 用资源盘点风格写免费传大文件替代方案 | 读取 resource_roundup_style.md,按盘点风格撰写 |
| 用深度随笔风格写 AI 时代记日记 | 读取 personal_essay_style.md,按随笔风格撰写 |
| 用个人实测风格写软件推荐 | 读取 personal_tool_review_style.md,按实测推荐风格撰写 |
| 用清单体写提升效率的 5 个习惯 | 读取 checklist_methodology_style.md,按方法论风格撰写 |
| 用故事化风格写职场转型经历 | 读取 story_emotional_style.md,按情感共鸣风格撰写 |
| 用认知颠覆风格写「努力是最被高估的品质」 | 读取 contrarian_opinion_style.md,按反常识观点撰写 |
| 用身份共鸣风格写 30 岁转行做自媒体 | 读取 identity_transformation_style.md,按逆袭叙事撰写 |
| 写完后帮我转换成微信格式 | 执行 Step 7A(手动模式),输出 Doocs MD 使用指引 |
| 自动上传这篇文章到公众号 | 执行 Step 7B(自动模式),调用微信 API 上传 |
| 分析这篇公众号文章的写作风格、提取可复用规则 | 执行「四、风格提取流程」 |