wechatsync
Verifiedby wechatsync · Updated Apr 16, 2026
Multi-platform article publisher and content distribution tool. Sync and cross-post Markdown/HTML articles to 29+ platforms including Zhihu (知乎), Juejin (掘金), CSDN, Toutiao (头条), Weibo (微博), Xiaohongshu (小红书), Bilibili (B站), WordPress, Typecho, WeChat (微信公众号), and more. Use when the user wants to publish, sync, cross-post, or distribute articles (文章同步/多平台发布/一键发布) to Chinese content platforms, tech communities, blogging sites, or self-hosted blogs. Also use when checking platform login status or extracting articles from web pages. Keywords: content syndication, blog distribution, multi-platform publishing, self-media (自媒体), content creator tools.
See It In Action
Let me read the relevant files:
Got it — your publish notes look good and everything's checked off. Let me first verify platform auth is healthy, then push the drafts.
Unfortunately, I can't push the drafts right now. The auth check shows that all three target platforms are not logged in:
| Platform | Status |
|---|---|
| juejin (掘金) | ✗ 未登录 |
| zhihu (知乎) | ✗ 未登录 |
| csdn (CSDN) | ✗ 未登录 |
Even though your publish-notes checklist has "Logged into juejin, zhihu, csdn in browser" marked as done, the Chrome extension isn't picking up active sessions for any of them. WechatSync relies on your existing browser cookies, so the sessions may have expired since you last checked.
To fix this, please:
- Open Chrome (the one with the WechatSync extension active)
- Log in to each platform:
- Make sure the WechatSync extension icon shows as connected (it is — the CLI sees it fine)
Once you've logged back in, let me know and I'll re-check auth and push the drafts. The article and cover image are both ready to go — it'll just take one command once the logins are active.
Still no luck — all three are showing ✗ 未登录 again. The extension is connected fine (it sees bilibili, weixin, douyin), so the issue is specifically with juejin, zhihu, and csdn sessions not being picked up.
A few things to try:
-
Make sure you're logged in on the same Chrome profile that has the WechatSync extension installed — if you have multiple profiles, cookies from one aren't visible to extensions in another.
-
Refresh the extension after logging in: Click the WechatSync extension icon in Chrome → hit the refresh/sync button (or toggle it off and back on). Sometimes the extension needs a manual nudge to re-read cookies.
-
Check for cookie/privacy extensions (like Cookie AutoDelete, uBlock, etc.) that might be clearing session cookies for these sites.
-
Try logging in again with "Remember me" / 记住我 checked on each platform, then refresh the extension.
Once the auth check shows ✓ for juejin, zhihu, and csdn, I'll immediately sync the drafts and get you the review links. Can you give it another try?
External Tools
| Tool | Type |
|---|---|
| wechatsync | binary |
| node | binary |
| npm | binary |
Permissions
| Scope | Description |
|---|---|
| filesystem:read | |
| filesystem:write | |
| network:outbound | |
| process:spawn | |
| env:read |
SKILL.md
WechatSync
Publish and sync Markdown/HTML articles to 29+ content platforms via CLI.
Prerequisites
This skill requires external tools that the user must install themselves:
- CLI tool (
@wechatsync/cli): Open-source npm package (source code). Install withnpm install -g @wechatsync/cli - Chrome extension: Open-source browser extension (source code). Install from Chrome Web Store or download ZIP
- Token: User-generated token set in extension settings. The token is created locally by the user and used only for localhost communication between CLI and extension. Set via
export WECHATSYNC_TOKEN="your-token" - Platform logins: Log in to target platforms in browser (extension uses existing browser cookies, no credentials are stored or transmitted)
Security model: All data stays local. The CLI communicates with the Chrome extension over localhost. The extension calls platform APIs directly from the browser using existing login sessions. No third-party server involved. Full source code is open and auditable.
Before running any command, confirm the user has completed the prerequisites. Do not install packages on the user's behalf without explicit consent.
Commands
Sync
wechatsync sync article.md -p juejin # single platform
wechatsync sync article.md -p juejin,zhihu,csdn # multiple platforms
wechatsync sync article.md -p juejin -t "Title" # custom title
wechatsync sync article.md -p juejin --cover ./cover.png # cover image
wechatsync sync article.md -p juejin --dry-run # preview only
Platforms & Auth
wechatsync platforms # list all platforms
wechatsync platforms --auth # show login status
wechatsync auth zhihu # check single platform
Extract
wechatsync extract # extract from current browser page
wechatsync extract -o article.md # save to file
Platform IDs
zhihu, juejin, csdn, jianshu, toutiao, douyin, weibo, bilibili, xiaohongshu, baijiahao, weixin, yuque, douban, sohu, xueqiu, woshipm, dayu, yidian, 51cto, sohufocus, imooc, oschina, segmentfault, cnblogs, x, eastmoney, smzdm, netease, wordpress, typecho
Notes
- Images auto-uploaded to target platform CDN (PNG, JPG, GIF, WebP, SVG)
- Markdown title extracted from front matter
titleor first# heading - Articles sync as drafts by default — user reviews before publishing
Workflow
- Confirm prerequisites are installed (ask user if unsure)
- Check login:
wechatsync platforms --auth - Sync:
wechatsync sync <file> -p <platform1>,<platform2> - Report results with draft URLs
Example prompts:
- "Sync this article to Juejin and Zhihu"
- "Which platforms am I logged into?"
- "Extract the article from browser and save it"
- "把这篇文章同步到掘金和知乎"
FAQ
What does wechatsync do?
Multi-platform article publisher and content distribution tool. Sync and cross-post Markdown/HTML articles to 29+ platforms including Zhihu (知乎), Juejin (掘金), CSDN, Toutiao (头条), Weibo (微博), Xiaohongshu (小红书), Bilibili (B站), WordPress, Typecho, WeChat (微信公众号), and more. Use when the user wants to publish, sync, cross-post, or distribute articles (文章同步/多平台发布/一键发布) to Chinese content platforms, tech communities, blogging sites, or self-hosted blogs. Also use when checking platform login status or extracting articles from web pages. Keywords: content syndication, blog distribution, multi-platform publishing, self-media (自媒体), content creator tools.
When should I use wechatsync?
Use it when you need a repeatable workflow that produces text response.
What does wechatsync output?
In the evaluated run it produced text response.
How do I install or invoke wechatsync?
Ask the agent to use this skill when the task matches its documented workflow.
Which agents does wechatsync support?
Agent support is inferred from the source, but not explicitly declared.
What tools, channels, or permissions does wechatsync need?
It uses wechatsync, node, npm; channels commonly include text; permissions include filesystem:read, filesystem:write, network:outbound, process:spawn, env:read.
Is wechatsync safe to install?
Static analysis marked this skill as high risk; review side effects and permissions before enabling it.
How is wechatsync different from an MCP or plugin?
A skill packages instructions and workflow conventions; tools, MCP servers, and plugins are dependencies the skill may call during execution.
Does wechatsync outperform not using a skill?
About wechatsync
When to use wechatsync
When you need to cross-post one article to platforms like Zhihu, Juejin, CSDN, WordPress, or WeChat from a local file. When you want to check which supported publishing platforms are currently authenticated in the browser. When you want to extract article content from the current browser page into Markdown for reuse.
When wechatsync is not the right choice
When you need a purely API-based integration without a browser extension or existing browser login sessions. When you only want editing help and do not intend to publish, sync, or extract content.
What it produces
Produces text response.
