Wechatsync:一个 Chrome 插件,一键把文章同步到 31 个平台
写完一篇文章,然后呢?微信公众号要发一遍,知乎要发一遍,掘金要发一遍,CSDN 要发一遍,头条要发一遍,小红书要发一遍……光登录切换就花了半小时。
Wechatsync 解决的就是这个问题。一个 Chrome 插件,5.4k star,一键把文章同步到 31 个平台。
本文提纲
- 一句话解释它怎么做到的
- 支持的 31 个平台完整列表
- 实际使用流程:登录 → 同步 → 发布
- 不是爬虫,不是模拟登录
- 图片怎么处理
- CLI 和 MCP:从命令行也能调
- 局限性
一句话解释它怎么做到的
Wechatsync 的原理说出来很简单:
你在浏览器里已经登录了知乎、掘金、头条……这个插件直接用你浏览器的登录态(Cookie),调用各平台的官方 Web API,帮你把文章推到各平台的草稿箱。
不是爬虫,不模拟登录,不经过任何第三方服务器。数据从你的浏览器直接到各平台。
所以核心前提只有一个:你在 Chrome 里登录了哪些平台,它就能同步到哪些平台。
支持的 31 个平台
| 类别 | 平台 |
|---|---|
| 主流媒体 | 微信公众号、知乎、微博、小红书、抖音图文 |
| 技术社区 | 掘金、CSDN、SegmentFault、博客园、51CTO、开源中国、慕课网、语雀 |
| 综合内容 | 头条号、B 站专栏、百家号、简书、豆瓣、搜狐号、网易号 |
| 金融 | 雪球、东方财富 |
| 产品 | 人人都是产品经理 |
| 其他 | 大鱼号、一点号、搜狐焦点、什么值得买 |
| 海外 | X(Twitter) |
| 自建站 | WordPress、Typecho |
| 静态站 | Hexo、Hugo(导出 Markdown 压缩包) |
31 个。基本覆盖了中文互联网所有主流内容平台。
实际使用流程
第一步:装插件
Chrome 应用商店搜"文章同步助手"安装,或者从 GitHub Releases 下载。装完后浏览器右上角出现插件图标。
第二步:登录各平台
在 Chrome 里逐个打开知乎、掘金、头条、CSDN……正常登录。每个平台只需要登录一次,以后 Cookie 会一直保持。
第三步:写文章
在任意平台上写——微信公众号后台、掘金编辑器、甚至任意网页上的文章都行。Wechatsync 的 Content Script 注入到所有页面,用 Safari Reader Mode 同源的技术(defuddle 库)自动提取文章标题、正文和封面图。
第四步:点同步
写完文章后,点击插件图标,弹出同步对话框:
┌─────────────────────────────┐
│ 文章标题 │
│ [封面图预览] │
│ │
│ ☑ 知乎 ☑ 掘金 ☑ CSDN │
│ ☑ 头条 ☑ 小红书 ☑ B站 │
│ ☑ 百家号 ☑ 博客园 ☑ 语雀 │
│ ... 更多平台 ... │
│ │
│ [同步到所选平台] │
└─────────────────────────────┘
勾选目标平台,点"同步"。插件以 3 个并发 同时推送。每个平台的图片自动上传到该平台的图床,内容格式自动适配。
第五步:手动发布
这里要明确一点:Wechatsync 同步的是草稿,不是直接发布。
每个平台收到文章后,你需要打开该平台的草稿箱,检查一下格式和内容,确认没问题后手动点"发布"。
这是有意为之的设计——避免自动发布导致格式问题或内容事故。
所以完整的流程是:
登录平台(一次性)→ 写文章 → 点同步 → 各平台草稿箱出现文章 → 逐个确认发布
不是爬虫,不是模拟登录
Wechatsync 的 README 里有句话说得很好:
"文章同步助手不是爬虫,不模拟登录,不经过任何第三方服务器。"
具体来说:
| 特性 | Wechatsync | 爬虫方案 |
|---|---|---|
| 认证方式 | 浏览器现有 Cookie | 模拟登录/抓取 Cookie |
| 数据流向 | 浏览器 → 各平台 API | 脚本 → 第三方服务器 → 平台 |
| API 调用 | 平台官方 Web API(前端用的同一个) | 逆向的内部 API |
| 安全性 | 不存储密码,不经过第三方 | Cookie 可能泄露 |
| 平台感知 | 平台能识别正常的浏览器请求 | 可能触发风控 |
它用的是 Chrome Extension 的 chrome.cookies API 直接读取浏览器的 Cookie,然后通过 credentials: 'include' 发起 fetch 请求——这和你自己在浏览器里操作没有任何区别。
对于需要 CSRF Token 的平台(比如知乎),它会先 fetch 编辑器页面,从 HTML 中提取 token,然后带上 x-xsrftoken 头发起 API 请求。通过 declarativeNetRequest API 注入必要的 Origin 和 Referer 头来绕过 CORS 限制。
图片怎么处理
图片是跨平台发布最头疼的问题。你在掘金文章里引用的图片 URL,知乎不会显示,因为知乎要上传到自己的 CDN(zhimg.com)。
Wechatsync 的处理流程:
- 正则提取内容中所有
<img src="...">和 - 对每张图片,根据目标平台选择上传策略
- 跳过已在目标平台 CDN 上的图片(比如知乎跳过 zhimg.com)
- 去重处理,同一张图片只上传一次
- 用平台特定的 API 上传,替换 URL
- 每张图片间隔 300ms,避免触发频率限制
各平台的图片上传策略不同:
| 平台 | 策略 |
|---|---|
| 知乎 | URL 直接传递 → 或计算 MD5 → 获取 OSS Token → 上传到阿里云 OSS → 返回 zhimg.com URL |
| 掘金 | Markdown 优先,通过掘金图片 API 上传 |
| 小红书 | ProseMirror JSON 格式,上传后获得签名 URL |
| WordPress | MetaWeblog API 的 newMediaObject |
| 通用 | fetch(url) → Blob → FormData → POST 到平台上传接口 |
这个图片处理管线是 Wechatsync 工程量最大的部分之一,也是它比手动复制粘贴高效的核心原因。
CLI 和 MCP:从命令行也能调
Wechatsync 不只是浏览器插件。v2 版本新增了两个入口:
CLI 工具(@wechatsync/cli):
命令行同步文章,适合脚本化工作流:
npx @wechatsync/cli sync --title "文章标题" --file article.md
CLI 通过桥接机制和 Chrome 扩展通信——扩展执行实际的同步操作,CLI 返回结果。
MCP Server:
Wechatsync 实现了 MCP(Model Context Protocol)服务器,可以集成到 Claude Desktop 或 Claude Code 里。这意味着 AI Agent 也能调用 Wechatsync 的同步能力——写完文章直接让 Agent 帮你同步到所有平台。
架构变成了:
packages/
├── extension/ # Chrome 扩展(MV3)
├── core/ # 核心逻辑(适配器、同步引擎)
├── mcp-server/ # MCP 服务器(AI Agent 集成)
└── cli/ # 命令行工具
Monorepo 结构,pnpm workspace 管理,核心逻辑在 core 包里共享。
局限性
草稿不等于发布。 一键同步到 31 个平台的草稿箱,但每个平台还需要你手动确认发布。这是安全和质量保障的设计,但意味着不是真正的"一键发布"。
必须用 Chrome 浏览器。 不是独立的命令行工具或服务,依赖浏览器的 Cookie 和 Extension API。CLI 模式也需要 Chrome 在后台运行。
部分适配器不开放源码。 小红书、抖音、头条等平台的适配器在私有 submodule 里(wechatsync-private-adapters),不在 GitHub 开源部分中。
格式兼容性有差异。 31 个平台的编辑器格式各不相同——知乎用 Draft.js HTML,掘金用 Markdown,小红书用 ProseMirror JSON。Wechatsync 会自动转换,但复杂表格、LaTeX 公式等特殊格式在各平台的显示效果可能不一致。
Cookie 会过期。 各平台的登录态有时效,过期后需要重新在浏览器里登录。没有 refresh token 机制。
平台 API 可能变化。 调用的是各平台 Web 前端的内部 API,不是公开接口。平台改版可能导致适配器失效。README 里提到简书、一点号、搜狐都经历过需要重新适配的情况。
回答标题的问题:是的,登录一次,勾选平台,点一下,文章进所有平台的草稿箱。 31 个平台覆盖了中文互联网几乎所有内容渠道。Wechatsync 做的事不复杂——利用浏览器现有的登录态调 API——但工程量惊人,31 个平台每个都有不同的 API、不同的图片上传方式、不同的内容格式。5.4k star 说明这个痛点足够真实。
作者: itech001
来源: 公众号:AI人工智能时代
主页: https://www.theaiera.cn,每日分享最前沿的AI新闻和技术。
本文首发于 AI人工智能时代,转载请注明出处。

浙公网安备 33010602011771号