ByteNoteByteNote

字节笔记本

2026年8月29日

doocs/cose:一键同步发到国内多平台

API中转
¥120

同一篇技术文要发公众号、掘金、知乎、CSDN,复制粘贴再调格式,一轮下来比写作还累。 doocs/cose 把这件事收成浏览器扩展:在 doocs/md 里写完 Markdown,点一次发布,它会打开各平台后台、填进标题和正文。 全称是 Create Once, Sync Everywhere。当前扩展版本是 v1.3.6,许可证 Apache-2.0。

文章只在你这台浏览器里流转:从编辑器读出来,再写进已经登录的后台。隐私政策写明不收集个人信息,也不往自己的服务器传内容。

先装编辑器,再装扩展

COSE 只给 md.doocs.org(或你自己部署的 doocs/md)加按钮。单独装扩展、打开掘金后台,看不到发布入口。

  1. 用 Chrome、Edge 或 Brave 打开商店页安装:COSE
  2. 打开 md.doocs.org,编辑器也建议用 Chrome。
  3. 另开标签登录要发的平台后台。扩展靠 cookie 判断登录态,没登录的会标出来。

不想走商店就自己构建。仓库是 monorepo,扩展代码在 apps 下的 extension 目录。

克隆 https://github.com/doocs/cose ,安装依赖并执行仓库的 build 脚本,再到浏览器扩展页开启开发者模式,加载构建产物目录(一般是 apps/extension/dist)。另外还有 Firefox 和 Safari 的构建目标,商店主推仍是 Chrome 版。

演示视频:BilibiliYouTube。第一次用可以先看点击顺序。

同步一次的流程

在编辑器里把 Markdown 写完。标题、封面、代码块、公式由 doocs/md 渲成适合公众号的样式。点顶部的发布,弹出平台列表,勾要去的那几个,确定。

接下来扩展会给每个平台开一个标签,并收进同一组标签分组。再把标题和 HTML 填进对方编辑器。

微信这条路更绕。公众号后台是 ProseMirror,普通赋值经常贴不进去。扩展申请了 debugger 权限来模拟粘贴。v1.3.6 修的就是:等正文编辑器出来再贴。同步微信时,Chrome 顶上可能闪一句正在调试浏览器,这是权限在干活。

公众号会尽量保住 doocs/md 渲出来的样式,并存成草稿,不会直接群发。同步结束先别关标签。各后台的发布或保存按钮长得不一样,扩展填完内容,最后确认通常还是你自己点。封面、摘要、话题标签很多平台也还要补。

现在能发到哪些平台

README 按字母列了一张表,覆盖媒体、博客、云厂商开发者社区。日常技术写作常用这些:

类型平台
微信生态微信公众号(草稿加样式)
技术社区掘金、CSDN、思否、开源中国、博客园、InfoQ、51CTO
综合媒体知乎、简书、今日头条、百家号、网易号、搜狐号、微博文章、少数派
短视频或社交长文抖音文章、小红书长文、B 站专栏
云与模型社区腾讯云、阿里云社区、华为云博客、华为开发者文章、火山引擎社区、百度云千帆、ModelScope
海外Medium、X Articles

完整名单以仓库 README 为准,缺平台可以提 Issue。manifest 里的 host 权限和表不一定完全同步,以弹窗里能勾的为准。

它实际在浏览器里做什么

源码拆成两块:packages/core 管同步流程,packages/detection 管登录检测。扩展是 Manifest V3,后台是 service worker。权限可对照 PRIVACY.md

  • cookies:只用来看你有没有登录,不存、不外传
  • clipboardRead 和写入:部分平台只能走剪贴板里的 HTML
  • tabGroups:同步标签归组
  • debugger:主要伺候微信编辑器的粘贴

文章路径是 md.doocs.org 到本机扩展再到目标站点编辑器。中间没有 COSE 自己的服务器。账号、草稿、已发布文章仍活在各平台后台里。

这也带来两个限制。平台改一版编辑器,选择器对不上,这一路就会失败;微信最近几次发版都在修 ProseMirror。扩展能填字段,不能替你过审:公众号还是要过原创和图片检测,掘金还是要选标签。

图片和样式

doocs/md 本身带图床(GitHub、OSS、COS、R2、七牛、Telegram 等)。同步前先在编辑器里把图传上去,让正文是稳定的 HTTPS 地址。COSE 不会帮你重新传图,只搬运已经渲好的 HTML。

各平台对外链图态度不一样:公众号经常要转存到它自己的 CDN,掘金和 CSDN 相对宽松。想公众号观感接近编辑器预览,用 doocs/md 的主题和代码高亮,不要同步后再用公众号自带的 Markdown 转换走一遍,会把样式冲掉。

常见卡住的地方

没登录。弹窗里会标登录态,灰掉的平台先开后台登进去再同步。Cookie 过期也一样。

一次勾太多。每个平台一个标签,十几个一起开会把浏览器打满,也更容易触发某个后台的异常操作。先发公众号、掘金、知乎三条,确认草稿在,再补 CSDN 和云社区。

微信贴进去是空的,或只有标题。多半是编辑器还没挂载完。v1.3.6 已经加了等待;仍失败就单独再同步一次微信,或把 HTML 手动粘进正文区。Chrome 调试横幅在同步结束后应当消失。

本地部署的 doocs/md:商店版扩展的 host 权限写的是 md.doocs.org。如果你是 localhost 或自己的域名,商店版可能插不进按钮,需要改 manifest 再加载未打包版本。Firefox 和 Safari 仓库能构建,日常安装路径仍是 Chrome 商店,不要默认它们和 Chrome 行为一致。

适合什么场景

个人或小团队把同一篇技术文铺到国内几个社区,写作用 Markdown,发布不想再排十遍版。它补的是从编辑器到各后台草稿箱这一段。定时发布、数据统计、一键改所有已发文章,都不是它的活。内容仍要符合各平台规则。搬运省下来的时间,审核还是各平台自己的事。

仓库:doocs/cose。编辑器:doocs/mdmd.doocs.org。商店安装:COSE - 多平台文章同步

分享: