wjs-syndicating-articles

Solid

Use when the user wants to auto-syndicate their latest 微信公众号 article across social platforms — picks the newest un-syndicated article, extracts one core copy, auto-posts to API platforms (X / Bluesky / Threads / LinkedIn) and prepares a copy-paste outbox for manual platforms (Facebook / 小红书 / 即刻 / 知乎). Triggers — "分发文章到各平台", "同步到社交平台", "今天的文章发各平台", "/wjs-syndicating-articles".

AI & Automation 108 stars 15 forks Updated 4 days ago MIT

Install

View on GitHub

Quality Score: 86/100

Stars 20%
68
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# wjs-syndicating-articles 每天把最新一篇还没分发过的公众号文章,扇出(syndicate)到各社交平台。**一套文案走天下**,有 API 的真发,没 API 的备好待发件箱让你手动粘。 ## Core Principles - **稳定第一**:每个平台是独立步骤,一个失败绝不影响其它。 - **幂等去重**:`state/history.jsonl` 按 `(slug, platform)` 记录;重复跑只补发没成功的,永不重复发。 - **凭证降级**:API 平台缺/过期凭证 → 自动转 outbox(手动),不报错。 - **署名 / CTA 用「王建硕」**(用户全局偏好),不写营销腔、不堆 hashtag/@/emoji(除非原文有)。 ## Inputs ``` /wjs-syndicating-articles # 选最新未分发文章,走完整流程(默认/定时用) /wjs-syndicating-articles <article-folder># 显式指定文章 /wjs-syndicating-articles --open # 交互模式:打开手动平台 web 页 + 文案进剪贴板 /wjs-syndicating-articles --dry-run # 只草拟,不发、不写 history /wjs-syndicating-articles --mark <slug> <platform> # 手动标记某平台已发 ``` `SKILL_DIR = ~/.claude/skills/wjs-syndicating-articles` ## Workflow (default / scheduled run) ### Step 0: --mark short-circuit 若调用是 `--mark <slug> <platform>`:`bash $SKILL_DIR/scripts/history.sh record <slug> <platform> posted` 然后告诉用户已标记,结束。 ### Step 1: 选文章 ```bash bash $SKILL_DIR/scripts/pick-next-article.sh ``` - 显式指定了 `<article-folder>` 则跳过此脚本,直接用它。 - 输出为空 → 最近文章都分发完了,今天 rest day,结束。 - 记 `FOLDER`,`SLUG=$(basename "$FOLDER")`。 ### Step 2: 抽一套核心文案(你来做,不是脚本) 读 `$FOLDER/article.md` 和 `$FOLDER/meta.json`。抽出**一段最 quotable 的核心句/小段,≤120 字**(保证塞进 X 的 280 字符;中文每字算 2),保留王建硕语气。再加一行软 CTA + 文章链接(公众号链接,没有就用 `meta.json` 里信息+ `article_url_base`)。 把最终文案写进 `$SKILL_DIR/outbox/<date>-<SLUG>/post.txt`(先 `mkdir -p`)。`<date>=$(date +%F)`。 `--dry-run` 时:打印 post.txt 内容 + 下面每个平台「将发什么」,**不**继续 Step 3+,结束。 ### Step 3: 扇出(一个确...

Details

Author
jianshuo
Repository
jianshuo/claude-skills
Created
2 months ago
Last Updated
4 days ago
Language
Python
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Solid

wjs-tweeting-from-articles

Use when the user wants to post a daily X/Twitter tweet inspired by one of their recently-published 微信公众号 articles. Picks the newest article that hasn't been tweeted yet, drafts 3 tweet candidates from it (different angles — quote / metaphor / one-liner), posts the chosen one via xurl, records to history. Triggers — "每天发一个 tweet", "从文章里发推", "今天的 tweet", "/wjs-tweeting-from-articles".

108 Updated 4 days ago
jianshuo
AI & Automation Listed

download-wechat-articles

把用户自己名下微信公众号的全部「已发表」历史文章批量下载成干净 Markdown(�� frontmatter,图片保留外链),供备份或给 AI 当写作风格采样。用户只需在已登录的公众号后台网页里粘一段控制台脚本导出文章清单,其余由本地脚本完成,全程无需手动查找 token/cookie。触发词:下载我的公众号文章、备份公众号、导出公众号文章、把我的公众号存到本地、抓取我名下公众号、archive my wechat articles。

0 Updated 2 days ago
YijiaDuan
AI & Automation Solid

wjs-publishing-wechat

当用户想写或发布微信公众号文章时使用——他们给出零散思路、草稿或笔记,请你润色、生成题图和解释图,或准备上传到 mp.weixin.qq.com。触发词:"写一篇微信文章"、"公众号"、"润色"、"题图"、"发公众号"、"/wjs-publishing-wechat"。

108 Updated 4 days ago
jianshuo