Agent skill

Content Pipeline

by OrangeViolin in OrangeViolin/content-pipeline

内容生产和分发统一管线。素材收集→出稿→排版→封面→朋友圈文案→多平台转换→一键分发。涵盖公众号写作、小红书轮播图、即刻文案、播客音频、品牌视频、Chrome CDP 自动发布。

MITAuto-check: notesProductivity & Automation

Install Content Pipeline

skills CLI
$ npx skills add OrangeViolin/content-pipeline --skill content-pipeline -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install OrangeViolin/content-pipeline content-pipeline --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
content-pipeline
GitHub stars
219
Token cost
~3.9k tokens
SKILL.md length
1,163 words
Files
45 (incl. scripts, references)
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

内容生产和分发统一管线。素材收集→出稿→排版→封面→朋友圈文案→多平台转换→一键分发。涵盖公众号写作、小红书轮播图、即刻文案、播客音频、品牌视频、Chrome CDP 自动发布。

  • Works in 4 steps: 建立信任:读者值得知道内容如何生成 → 展现价值:AI 快速高质量创作本身就是价值,不需要掩饰 → 符合伦理:AI 生成内容应该透明化 → …
  • Productivity & Automation work in your project
  • SKILL.md covers 存储位置, 触发词, 核心原则:全然诚实 and 两条输入路径, plus 2 more sections
  • Calls npx and python3

What it does

Content Pipeline is an agent skill from OrangeViolin/content-pipeline. 内容生产和分发统一管线。素材收集→出稿→排版→封面→朋友圈文案→多平台转换→一键分发。涵盖公众号写作、小红书轮播图、即刻文案、播客音频、品牌视频、Chrome CDP 自动发布。

Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 47 other files, including scripts and reference files (for example `README-EN.md`, `README.md` and `evolve/evolution-log.md`).

It sits in Productivity & Automation. It works with Xiaohongshu and WeChat. The repository describes itself as: AI-powered content production pipeline for creators. One prompt → multi-platform publishing. Claude Code Skill. The licence is MIT.

When your agent uses it

  • Productivity & Automation work in your project

Example prompts

  • “/content-pipeline”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. 建立信任:读者值得知道内容如何生成
  2. 展现价值:AI 快速高质量创作本身就是价值,不需要掩饰
  3. 符合伦理:AI 生成内容应该透明化
  4. 长期主义:诚实是长期个人品牌的基石

What it can do on your machine

Read from SKILL.md and the folder at commit 976283c. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/, which the agent can run.

    Shell commands in SKILL.md call:

    • npx
    • python3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Content Pipeline loads about 3.9k tokens when it runs, and up to ~50k if it reads all its reference files. Until then it costs about 27 tokens; SKILL.md has 1,163 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~27
When it runs · the whole SKILL.md, loaded when a task matches
~3.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~50k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:270
    > `$MD_FORMATTER_DIR` 需在 `local/.env` 或环境变量中配置。
  • NoteMentions a .env fileSKILL.md:425
    > `$REMOTION_DIR` 需在 `local/.env` 或环境变量中配置。

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from OrangeViolin/content-pipeline at commit 976283c, republished under its MIT licence (© OrangeViolin). 1,163 words, ~3,883 tokens.

Download SKILL.mdSave it as .claude/skills/content-pipeline/SKILL.md (or your agent's skills folder). This skill also uses 44 other files; get the full folder from GitHub.
name
content-pipeline
description
内容生产和分发统一管线。素材收集→出稿→排版→封面→朋友圈文案→多平台转换→一键分发。涵盖公众号写作、小红书轮播图、即刻文案、播客音频、品牌视频、Chrome CDP 自动发布。

内容管线 Content Pipeline

本技能默认使用 01fish 品牌色作为示例。你可以在 references/ 目录下修改为自己的品牌色,或在 local/SKILL.local.md 中覆盖路径和个人设定。

一条龙:素材收集 → 写文章 → 排版 → 多平台内容 → 一键分发。


存储位置

[输出目录]/
├── drafts/
│   └── current.json        # 当前素材列表
├── [文章标题].md            # 产出的文章
├── [文章标题]_preview.html  # 排版预览
└── [主题]-小红书版.html     # 小红书轮播图

输出目录由用户指定,或在 local/SKILL.local.md 中配置默认路径。未指定目录时,多平台产出放 /tmp/。


触发词

素材收集(Path A)
触发词说明
/story查看当前素材状态
"看看素材"查看已记录的素材
"出稿"生成文章 + 排版 + 封面图
"清空素材"清空当前素材
"记一笔:xxx"手动添加素材
"素材+1:xxx"手动添加素材
"写个朋友圈"根据素材/文章生成朋友圈文案
内容生成(Path B)
触发词说明
/xiaohongshu + 微信链接微信文章转小红书轮播图
"转小红书" + 微信链接同上
"做成小红书" + 微信链接同上
"转即刻" + 微信链接生成即刻文案
"转播客" + 微信链接生成播客脚本 + AI 语音
/podcast + 链接/文章/书名小宇宙播客全流程(15分钟百家讲坛风格)
"做播客" + 链接/文章/书名同上
"录播客" + 链接/文章/书名同上
"讲书播客" + 书名/链接百家讲坛风格讲书播客
/shiji + 文章/素材史记罗生门栏目播客(AI侦探×史源追踪)
"史记罗生门" + 文章/素材同上
"做史记播客" + 文章/素材同上
"做视频" + 微信链接触发品牌视频管线
"做视频画布" + 网址列表生成录屏画布(全屏网页演示 + 露脸 + 提词器)
"录屏画布" + 网址列表同上
"录屏" + 网址列表同上
"多平台分发" + 微信链接一次生成所有平台内容
"转小红书并发布" + 微信链接生成 + 自动触发分发
文章阅读
触发词说明
/read-gzh + 微信链接抓取并总结公众号文章
"帮我读一下这篇公众号"同上
"总结一下这篇文章"同上
排版与配图
触发词说明
"排版"用 01fish 主题排版 Markdown → 公众号 HTML
"做头图" / "封面图"生成公众号头图 HTML(浏览器下载 PNG)
"做竖版封面" / "竖版头图"从公众号封面 → 生成 3:4 竖版封面(1080×1440),适合小红书/视频号
"做配图" / "准备配图"生成文章配图 HTML(浏览器下载 PNG)
"排版+配图" / "全套排版"排版 + 头图 + 配图一起生成
分发
触发词说明
/distribute读取 manifest 一键发布
"一键发布"全平台发布
"全平台发布"同上
"发布到小红书"单平台发布
"发布到即刻"单平台发布

核心原则:全然诚实

AI 生成的内容必须诚实标注,不装人类,展现真实的创作过程。

诚实标注规范

当 AI 参与内容创作时,必须在文章中明确标注:

markdown
**调研 & 撰写**:AI(Claude)
**主导 & 审校**:[用户名]
**创作时间**:[实际用时](调研 X 分钟 + 写作 Y 分钟)
禁止的虚假表述

❌ 不要写:

  • "我们花了两周时间调研"(实际几分钟)
  • "经过深入访谈"(没有访谈)
  • "团队经过讨论"(没有团队)
  • "作者:XXX / 编辑:AI 助手"(AI 写了全文)

✅ 应该写:

  • "本文基于 N 篇公开信息源,由 AI 调研分析并撰写"
  • "素材收集用时 X 分钟,写作用时 Y 分钟"
  • "人类主导 + AI 协作"
为什么要诚实
  1. 建立信任:读者值得知道内容如何生成
  2. 展现价值:AI 快速高质量创作本身就是价值,不需要掩饰
  3. 符合伦理:AI 生成内容应该透明化
  4. 长期主义:诚实是长期个人品牌的基石

两条输入路径

Path A:日常素材收集 → 出稿
边干活边记录 → 说"出稿" → 写文章 → 排版 → 封面图 → 朋友圈文案 → manifest

适用场景:日常和 cc 协作时,自动积累素材,攒够了一键出稿。

Path B:微信链接 → 多平台内容
微信链接 → 抓取文章 → 分析结构 → 生成小红书/即刻/播客/视频 → manifest → 分发

适用场景:已有公众号文章,一键转为多平台内容并发布。


Path A 流程:素材收集 → 出稿

自动记录(默认开启)

cc 在对话中主动识别有料瞬间并自动记录,无需手动触发。

识别信号:

类型识别信号示例
踩坑翻车预期≠结果、报错、折腾半天"试了三种方案都不行"
意外发现"没想到"、"原来可以"、意外有效"居然这样就解决了"
迭代打磨改了多版、从复杂到简洁"200行改成20行还能跑"
搞笑时刻对话金句、AI抽风、神奇bug"它认真地给我写了一堆错的"
突破时刻卡了很久终于通"困扰一周的bug终于找到了"
方法沉淀可复用的技巧、心得"以后遇到这种情况就这么办"

自动记录时:不打断对话,段落结尾标记 (✓ 素材+1)

手动记录

用户说"记一笔:xxx"或"素材+1:xxx"时记录。

current.json 格式
json
{
  "topic": "主题(可选,出稿时自动提取)",
  "materials": [
    {
      "time": "2026-01-30 14:30",
      "content": "素材内容",
      "type": "搞笑时刻",
      "context": "可选的上下文备注",
      "auto": true
    }
  ],
  "created": "2026-01-30"
}
出稿步骤
  1. 读取素材 — 读取 drafts/current.json
  2. 分析提炼 — 提炼主题和故事线
  3. 判断内容类型 → 选择写作框架:
内容类型判断信号使用框架参考文件
说明书类开源项目介绍、工具/产品说明、知识库/数据集发布、平台使用指南、"介绍一下 xxx"六段式说明书框架references/manual-framework.md
教程类教人安装/使用/配置工具、Skill 介绍、技术实战、"怎么做 xxx"六段式教程框架references/tutorial-framework.md
深度长文行业分析、人物故事、趋势判断、观点输出、"为什么 xxx"四幕式深度框架references/writing-style.md

说明书类文章框架(3000-6000 字):

项目定义+核心数据(标题即摘要,开头即高潮)
→ 一、核心成果(数据总览表)
→ 二、功能特性(逐一展开,每个一小节+配图)
→ 三、怎么用(按用户分层:零门槛→进阶→开发者→创作者)
→ 四、价值/洞见(超出工具本身的意义)
→ 五、扩展路线(可选)
→ 写在最后(核心价值+愿景+链接)

教程类文章框架(2000-4000 字):

先看结果(截图+成品+链接)
→ 一、核心概念是什么(表格+一句话定义)
→ 二、怎么安装/使用(分步骤+代码块+配图标记)
→ 三、实战演示(分阶段+表格展示+人机协作)
→ 四、拿走即用(快速安装命令+使用方式表格)
→ 写在最后(升华+CTA)

深度长文框架(8000-12000 字):

序言(故事先行,700 字不出论点)
→ 01 铺设背景
→ 02 核心论述
→ 03 转折/案例
→ 04 升华/收束
  1. 读风格指南 — 写文章前必须先读 references/writing-style.md。这是从鱼头头 9 篇已发布文章中逆向工程出的真实写作模式,不是理论指南。核心要点:极短段落(1-3句)、单句成段做"钉子"、口语化动词、"不是A是B"金句句式、数字制造反差、表格优先于段落。
  2. 写文章 — 按对应框架 + 风格指南写文章。写完后用风格指南末尾的"按类型写作清单"自检一遍。
  3. 保存 — 保存 Markdown 文件
  4. 排版 — 调用排版工具生成 HTML 预览(01fish 主题)
  5. 头图 + 配图 — 生成可下载的 HTML 文件(→ 读 references/cover-template.md)
    • 竖版封面(可选):用户说"做竖版封面"时,从已生成的公众号头图 HTML 转换 → 读 references/cover-vertical-spec.md
    • 配图与排版 HTML 的关联:生成配图后,用 Playwright 截图为 PNG,然后在排版 _preview.html 的对应位置插入占位符注释 <!-- IMAGE:配图-1.png -->,分发脚本会自动将配图上传到微信 CDN 并替换占位符为 <img> 标签。
  6. 朋友圈文案 — 生成朋友圈推广文案(→ 读 references/platform-copy.md)
  7. manifest — 生成 manifest.json,供 /distribute 使用。

WeChat 发布流程(全自动):

  1. 写文章(Markdown)
  2. 排版(md2wechat_formatter.py 生成 _preview.html)
  3. 生成配图 HTML → Playwright 截图为 PNG
  4. 在 _preview.html 中插入图片占位符 <!-- IMAGE:文件名.png -->
  5. 生成 manifest.json(包含所有路径)
  6. 执行 /distribute --platforms wechat(API 自动:上传封面→上传配图→替换占位符→推送草稿箱)

wechat 部分字段说明:

  • wechat.html(必填):排版后的 _preview.html 路径(配图位置用 <!-- IMAGE:文件名.png --> 标记)
  • wechat.cover_image(必填):封面 PNG 路径
  • wechat.title(必填):文章标题
  • wechat.author:作者名(默认 01fish)
  • wechat.digest:文章摘要(120 字内)
  • wechat.images:配图 PNG 路径列表(按文章中出现的顺序排列,分发脚本会上传并插入到对应占位符位置)
  • wechat.markdown(可选):文章 Markdown 路径(仅作记录,不再用于转换)
  1. 询问 — 是否清空当前素材
排版命令
bash
cd "$MD_FORMATTER_DIR"
python3 md2wechat_formatter.py [文章路径] --theme [主题] --font-size [字号]

$MD_FORMATTER_DIR 需在 local/.env 或环境变量中配置。

推荐主题:01fish(01fish 品牌色,默认)、chinese(中国风)、apple(极简优雅) 推荐字号:medium(15px 默认)、large(16px 长文推荐)

01fish 主题说明:基于 chinese 主题,使用 01fish 品牌色(墨绿 #1A3328 + 鱼红 #C44536 + 宣纸底 #F2EDE3)


Path B 流程:微信链接 → 多平台内容

第 1 步:抓取文章

使用 Python 抓取脚本(微信有反爬验证,WebFetch 会被拦):

bash
python3 "${SKILL_DIR}/scripts/fetch_wechat_article.py" "<URL>" --json

超时 30 秒。失败则提示用户手动复制文章正文。

如果用户只是说"帮我读一下这篇公众号"(/read-gzh 触发),执行抓取后直接生成结构化总结,不进入后续内容生成流程。总结格式:

markdown
# 文章总结
## 基本信息(标题/作者/类型/配图数)
## 核心观点(3条)
## 关键信息
## 金句摘录
## 图片内容(下载并识别配图中的文字)
## 思考/迭代点
第 2 步:分析文章结构

提取:标题、副标题/金句、核心概念、关键数据、步骤/流程、亮点/特色、方法论/金句、行动召唤。

第 3 步:拆分为卡片

8-10 张卡片,遵循小红书阅读节奏(→ 读 references/xiaohongshu-format.md):

位置卡片类型内容
第 1 张封面大标题 + hook + 迷你视觉元素
第 2 张先看结果成品展示 + 核心数据
第 3-4 张概念解释核心概念拆解
第 5-7 张流程/实战步骤、对比、流程图
第 8 张亮点/特色产品/作品亮点卡片
第 9 张方法论一句话金句提炼
第 10 张行动召唤链接 + 社区引导
第 4 步:生成图片 HTML

输出路径:文章同目录下 [简短主题]-小红书版.html,未指定目录放 /tmp/。浏览器自动打开预览。

最后一张行动召唤页必须包含:微信号 [你的微信号](强调色大字)、备注关键词、核心链接。

在 local/SKILL.local.md 中配置你的实际微信号。

📚 重要:生成前必读范例

参考 references/xiaohongshu-examples/观鸟图鉴-范例.html 的质量标准:

✅ 卡片设计要求

  • 纯信息图设计,无文章截图
  • 像素风/游戏化界面展示(适用时)
  • 流程图、卡片网格、编号列表等丰富视觉元素
  • 品牌色克制使用(墨绿85% + 鱼红5%)

✅ 文案质量要求

  • 真人分享感,有真实场景和个人感受
  • 口语化表达:"玩疯了"、"上头了"、"然后我就..."
  • 298-350字 + 8-12个标签

生成的内容应达到范例的专业水准。

第 5 步:生成小红书发布文案

根据内容类型选择风格:

  • 个人 IP 风格(真人分享、产品开发、踩坑记录)

    • → 读 local/SKILL.local.md 中指定的个人品牌风格文件(如有)
    • 流水账式真实感 + 具体时间细节 + 口语化表达
    • 300-350字,8-12个标签
    • 人设:在 local/SKILL.local.md 中自定义
  • 01fish风格(方法论总结、深度分析)

    • → 读 references/platform-copy.md 的小红书部分
    • 结构化拆解 + 干货密度高
    • 适合转载公众号文章
第 6 步:生成即刻发布文案

→ 读 references/platform-copy.md 的即刻部分。

第 7 步:生成播客脚本

根据触发词选择播客模式:

触发词模式时长风格
"转播客"标准模式5-8 分钟AI搭档聊天风 → 读 references/platform-copy.md 播客部分
/podcast / "做播客" / "录播客" / "讲书播客"百家讲坛模式15 分钟讲书人风格 → 读 references/xiaoyuzhou-podcast.md

百家讲坛模式是小宇宙播客的主力模式,适合把文章/书籍改编为有故事感、有节奏感的深度音频内容。

第 8 步:AI 语音生成

通过 SSH 连接 Ubuntu 机器,使用 IndexTTS2 本地生成(零样本声音克隆)(→ 读 references/tts-config.md)。

百家讲坛模式的 TTS 调整:15 分钟脚本约 4000 字,分段大小 600 字(更短分段带来更好的语音节奏),预计 6-7 段。

文件命名:[播客标题].mp3 + [播客标题]-播客脚本.md

第 8.2 步:生成播客封面(百家讲坛模式)

→ 读 references/podcast-cover-template.md

生成 3000×3000 正方形封面 HTML,01fish 墨绿体系,浏览器下载 PNG 后上传小宇宙。

文件命名:[播客标题]-播客封面.html

第 8.5 步:输出 manifest.json

所有内容生成完毕后,自动输出 manifest.json 到输出目录。格式:

json
{
  "version": "1.0",
  "created": "<ISO时间戳>",
  "source": "<微信链接>",
  "title": "<文章标题>",
  "outputs": {
    "xiaohongshu": { "html": "...", "copy": { "title": "...", "body": "...", "tags": [...] } },
    "jike": { "copy": { "body": "...", "circles": [...] } },
    "xiaoyuzhou": { "audio": "...", "script": "...", "cover": "...", "copy": { "title": "EP01丨...", "description": "...", "show_notes": "..." } },
    "video_canvas": { "html": "...", "teleprompter_md": "...", "cover_html": "..." }
  }
}

如果用户说"转小红书并发布",生成 manifest 后自动执行 /distribute。

第 9 步:品牌视频生成(可选)

仅当用户提到"视频"、"抖音"、"视频号"或"品牌视频"时执行:

A. Remotion 品牌片头片尾

bash
cd "$REMOTION_DIR"
npx remotion render src/index.ts Intro --output /tmp/brand-intro.mp4
npx remotion render src/index.ts Outro --output /tmp/brand-outro.mp4

$REMOTION_DIR 需在 local/.env 或环境变量中配置。

B. AI 视频 Prompt — 为 Seedance 2.0 或 Google Veo 生成 4 段视频 prompt

C. ffmpeg 拼接指令 — 生成拼接命令供用户手动执行

第 9B 步:录屏画布生成(可选)

仅当用户说"做视频画布"、"录屏画布"、"录屏"时执行。用户提供要演示的网址列表 + 简短主题。

  1. 获取输入 — 用户提供:要演示的网址列表 + 简短主题
  2. 生成提词器脚本 — 每个网址对应一段口播(80-150 字),含 [提示] cue 标记
  3. 输出提词器脚本 md — [主题]-提词器脚本.md,用户可直接编辑
  4. 组装 HTML — 读取 references/video-canvas-template.md 获取完整 CSS+JS 模板,网址预填 WEB_URLS + 提词器脚本填入 SCRIPTS
  5. 输出文件 — [主题]-视频画布.html,保存到用户指定目录或 /tmp/
  6. 生成封面图 — [主题]-封面.html,暗底 + 人像圆框,浏览器下载 PNG
  7. 提示用户 — 先检查提词器脚本 md,再在浏览器中打开 HTML 录制。16:9 固定比例,各平台直接上传
Show full SKILL.md (471 more words)Show less
第 10 步:用户微调

告知用户所有产出物路径,提示可调整,输入 /distribute 可一键发布。

公众号同步提示:封面 PNG 从浏览器下载后,直接 /distribute --platforms wechat 即可同步到草稿箱(API 模式,无需打开 Chrome)。

一次性产出五样东西,不需要额外要求:

  1. 小红书图片 HTML(含一键下载工具栏)
  2. 小红书发布文案(标题 + 正文 + 标签)
  3. 即刻发布文案(正文 + 圈子标签)
  4. 小宇宙播客(录制脚本 + AI 语音 MP3 + 节目封面)
  5. manifest.json(供 /distribute 一键发布)

单独触发 /podcast 时,产出三样:

  1. 播客脚本 md(15 分钟百家讲坛风格,3800-4200 字)
  2. AI 语音 MP3(IndexTTS2 本地生成)
  3. 节目封面 HTML(3000×3000,浏览器下载 PNG)
  4. 小宇宙发布文案(标题 + 简介 + 完整文稿)
  5. manifest.json

第 9B 步可选追加(说"视频画布"/"录屏"时): 6. 录屏画布 HTML(全屏网页演示 + 摄像头露脸 + 录制 + 提词器 + 美颜,16:9 固定) 7. 提词器脚本 md(按网站分段,可编辑,修改后说"更新提词器"同步到 HTML) 8. 封面图 HTML(暗底 + 人像圆框,浏览器下载 PNG)


分发流程(/distribute)

读取 manifest.json,通过 Chrome CDP 自动化发布到各平台(→ 读 references/distribute-platforms.md)。

用法
bash
# 全平台发布
npx -y bun "${SKILL_DIR}/scripts/distribute/distribute.ts" --manifest /path/to/manifest.json

# 选择平台
npx -y bun "${SKILL_DIR}/scripts/distribute/distribute.ts" --manifest /path/to/manifest.json --platforms xhs,jike

# 预览模式(不提交,只预填内容)
npx -y bun "${SKILL_DIR}/scripts/distribute/distribute.ts" --manifest /path/to/manifest.json --platforms xhs --preview
平台缩写
缩写平台状态
wechat公众号可用
xhs小红书可用
jike即刻可用
xiaoyuzhou小宇宙可用
douyin抖音实验性
shipinhao视频号待开发
执行顺序

公众号 → 小红书 → 即刻 → 小宇宙 → 抖音 → 视频号(顺序执行,避免 Chrome 端口冲突)

四级降级
级别模式触发条件
L0API 直推公众号 API 直接推草稿箱,无需 Chrome
L1自动发布CDP 完全自动化
L2辅助发布登录态失效/选择器失效/--preview
L3手动模式CDP 连接失败

公众号优先 L0(API),凭证缺失或失败时自动降级 L3(手动)。

公众号 API 模式说明

凭证来源(按优先级):

  1. 环境变量 WECHAT_APPID + WECHAT_APPSECRET
  2. 配置文件 ~/.config/wechat-api/config.json

Token 缓存:

  • 缓存位置:~/.config/wechat-api/token-cache.json
  • 有效期 2 小时,提前 5 分钟刷新
  • 无需手动管理,脚本自动处理

执行流程:

  1. 获取 access_token(优先读缓存)
  2. 从 _preview.html 提取文章内容(extractArticleContent)
  3. 修复 WeChat 不兼容的 HTML 结构(fixHtmlForWechat)
  4. 扫描并上传本地图片到微信 CDN(uploadLocalImagesInHtml)
  5. 上传封面图获取 thumb_media_id
  6. 调用 draft/add 创建草稿

品牌设计规范

两套品牌色体系:

  • 01fish:专业内容品牌(公众号、深度文章、方法论)
  • 鱼头头:真人IP品牌(小红书、即刻、日常分享)

单一真相源:在 local/SKILL.local.md 中指定你的品牌色文档路径。 如果色值冲突,以品牌文档为准。以下色板作为默认示例。

01fish 色板(墨绿体系)

比例法则:墨绿 85% : 鱼红 5% : 其余 10%

名称色值用途
墨绿主色#1A3328暗底卡片背景
宣纸底#F2EDE3浅底卡片背景
鱼红#C44536强调色、数字、标签(仅点睛)
半透白rgba(255,255,255,0.5)暗底上的品牌名
半透墨绿rgba(26,51,40,0.4)浅底上的品牌名
苔灰#7A8C80次要文字
深墨#0F1F18更深背景
淡青#D4DDD7分割线、边框
鱼头头色板(桃粉体系)

比例法则:桃气粉 15% : 奶油黄 40% : 暮光紫 10% : 灰色 35%

名称色值用途
桃气粉#FF6B9D主强调色、标题、关键数据
奶油黄底#FFF9E6浅底背景、卡片底色
暮光紫#9D7BA8辅助色、次要信息、品牌名
温灰#6B6B6B正文文字
浅灰底#F5F5F5现代感背景
深夜蓝#2D3047暗底背景(少用)
品牌选择规则
内容类型使用品牌原因
公众号深度文章01fish专业、权威、内容品牌
行业分析报告01fish冷静客观
小红书真人分享鱼头头温暖、真实、真人IP
即刻日常动态鱼头头活泼、亲和
产品开发记录鱼头头真实过程展示
B端产品介绍01fish专业可信赖

双品牌联动:同一篇内容,公众号用01fish色,小红书转发用鱼头头色

字体
css
font-family: -apple-system, 'PingFang SC', 'Microsoft YaHei', sans-serif;
品牌角标

每页左上角 01fish logo + 文字,暗底页用 .light,浅底页用 .dark。

页码

右下角 1/N,暗底页 rgba(255,255,255,0.2),浅底页 rgba(26,51,40,0.2)。


内容改写原则

微信 → 小红书不是照搬,需适配:

维度微信小红书
篇幅2000-3000 字每页 50-80 字
结构线性阅读卡片式跳读
语气技术向、深度简洁、直观、有冲击力
视觉文字为主视觉为主、文字点缀

改写要点:标题要炸、数字要大、一页一个点、视觉替代文字、保留核心链接。


完整模板参考

首次生成小红书图片时,参考 references/xiaohongshu-examples/ 目录下的范例文件获取完整 CSS + JS。

如果有额外的本地模板参考,在 local/SKILL.local.md 中指定路径。

生成新内容时复用范例文件的 CSS + JS 部分,只替换卡片内容。


Script Directory

Agent Execution: Determine this SKILL.md directory as SKILL_DIR, then use ${SKILL_DIR}/scripts/<name>.

ScriptPurpose
scripts/fetch_wechat_article.py微信文章抓取(Python,模拟微信 UA)
scripts/distribute/distribute.ts分发主编排器
scripts/distribute/cdp-utils.ts共享 CDP 工具 + Manifest 类型定义
scripts/distribute/wechat-api.ts公众号 API 客户端(token 管理、图片上传、草稿创建)
scripts/distribute/platforms/*.ts各平台发布模块

Reference 文件索引

cc 按需读取,不要一次性加载所有 reference。

场景读取文件
出稿写说明书文章references/manual-framework.md — 六段式说明书框架(定义+成果→特性→用法→价值→路线→收束,3000-6000 字)
出稿写深度长文references/writing-style.md — 人设 + 写作规范 + 格式(四幕式,8000-12000 字)
出稿写教程文章references/tutorial-framework.md — 六段式教程框架(先看结果→概念→操作→实战→拿走即用,2000-4000 字)
生成头图/配图references/cover-template.md — 01fish 风格排版规范(头图 + 配图 + 视觉组件)
横版→竖版封面references/cover-vertical-spec.md — 公众号封面转竖版的 CSS 转换规范
生成小红书轮播图references/xiaohongshu-format.md — HTML 模板 + 视觉组件库
生成各平台文案references/platform-copy.md — 小红书/即刻/播客/朋友圈文案规范
生成播客音频references/tts-config.md — IndexTTS2 本地 TTS 配置 + 生成脚本
小宇宙播客(百家讲坛)references/xiaoyuzhou-podcast.md — 15分钟讲书人风格脚本规范 + 改编流程 + 发布配置
播客节目封面references/podcast-cover-template.md — 3000×3000 正方形封面 HTML 模板
史记罗生门栏目references/shiji-luoshengmen.md — 栏目品牌设定 + AI侦探风格 + 脚本结构
分发到各平台references/distribute-platforms.md — 平台配置 + manifest 格式 + 降级策略
生成录屏画布references/video-canvas-template.md — 录屏画布模板(全屏网页演示+露脸+提词器+录制)

故障处理

问题处理
微信抓取失败提示用户手动复制文章正文
文章太短(<500字)压缩为 5-6 张卡片
文章太长(>5000字)精选核心,控制 10 张以内
导出图片模糊检查 SCALE=2,浏览器缩放 100%
manifest 不存在提示先运行内容生成
Chrome 启动失败降级 L3(手动模式)
IndexTTS2 模型加载失败检查 checkpoints 目录和 infer_v2 导入
TTS 生成失败只输出脚本文本,提示手动录制

© OrangeViolin, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 44 other files (scripts, references) in the repository root of OrangeViolin/content-pipeline.

  • SKILL.md
  • .env.example
  • .gitignore
  • LICENSE
  • README-EN.md
  • README.md
  • evolve/evolution-log.md
  • evolve/round-1/changes.md
  • evolve/round-1/observations.md
  • evolve/round-1/patterns.md
  • references/cover-template.md
  • references/cover-vertical-spec.md
  • references/distribute-platforms.md
  • references/manual-framework.md
  • references/platform-copy.md
  • references/podcast-cover-template.md
  • references/shiji-luoshengmen.md
  • references/tts-config.md
  • … and 27 more

Open the folder on GitHubat commit 976283c

Compare with similar skills

Content Pipeline next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Content Pipeline compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Content Pipeline this skillOrangeViolin/content-pipeline219—~3.9kAutomated safety check: NotesMIT
Yuwen Publish Precheckyuwen-cool/yuwen-publish-precheck7751 repos~1.8kAutomated safety check: PassMIT
Wechat Graphic Monetizationchenjin-cmd/wechat-graphic-monetization169—~798Automated safety check: PassMIT
Feedgrab BatchiBigQiang/feedgrab614—~1.8kAutomated safety check: PassMIT
Private Domainvivy-yi/xiaohongshu-skills478—~3.9kAutomated safety check: PassNone
Account Integrationvivy-yi/xiaohongshu-skills478—~7kAutomated safety check: PassNone

Similar skills

  • Yuwen Publish Precheck

    yuwen-cool/yuwen-publish-precheck

    国内自媒体发布前风险自审与保意修复:审口播稿、文章、图文笔记、字幕、封面文字能不能发抖音/小红书/微信视频号,给出具体位置、依据和可直接替换的改稿;被限流/删除/处罚后帮你复盘归因;你的行业敏感词、误报白名单和踩坑案例会沉淀成个人规则库,越用越准。Use when…

    775 GitHub starsUsed in 1 repo~1.8k tokens
    Productivity & AutomationAuto-check passed
  • Wechat Graphic Monetization

    chenjin-cmd/wechat-graphic-monetization

    This skill should be used when the user wants to monetize WeChat "图文" (photo-text / 小绿书, the WeChat Official Account image-note format modeled on Xiaohongshu) via 达人带货 (affiliate-style product…

    169 GitHub stars~798 tokensUpdated 6 days ago
    Productivity & AutomationAuto-check passed
  • Feedgrab Batch

    iBigQiang/feedgrab

    Batch content grabber — bulk fetch bookmarks, user tweets, search results, author notes, wiki pages, subreddit posts, and more from X/Twitter, Xiaohongshu, Reddit, WeChat, YouTube, Feishu, Zhihu.

    614 GitHub stars~1.8k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed
  • Private Domain

    vivy-yi/xiaohongshu-skills

    A skill your agent uses when driving Xiaohongshu followers to private domains like WeChat, building offline communities, implementing follower retention strategies beyond platform, or creating…

    478 GitHub stars~3.9k tokensUpdated 8 mo ago
    Productivity & AutomationAuto-check passed
  • Account Integration

    vivy-yi/xiaohongshu-skills

    A skill your agent uses when managing multiple social platforms, cross-promoting content, or building omnichannel presence

    478 GitHub stars~7k tokensUpdated 8 mo ago
    Productivity & AutomationAuto-check passed
  • Cn Content Matrix

    LeoYeAI/openclaw-master-skills

    Chinese multi-platform content matrix generator — given a topic, auto-generate content adapted for Xiaohongshu, WeChat Official Account, Douyin, and Bilibili with true style transfer (not just…

    2.2k GitHub stars~2.4k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check: notes

Questions about Content Pipeline

What does Content Pipeline do?

内容生产和分发统一管线。素材收集→出稿→排版→封面→朋友圈文案→多平台转换→一键分发。涵盖公众号写作、小红书轮播图、即刻文案、播客音频、品牌视频、Chrome CDP 自动发布。. Content Pipeline is an agent skill from OrangeViolin/content-pipeline.

When should I use Content Pipeline?

Content Pipeline fits situations like: productivity & Automation work in your project.

How do I install Content Pipeline in Claude Code?

Run `npx skills add OrangeViolin/content-pipeline --skill content-pipeline -a claude-code`. Or copy the skill folder (the OrangeViolin/content-pipeline repository) into .claude/skills/content-pipeline in your project. Claude Code loads it when a task matches its description.

How do I install Content Pipeline in Codex?

Run `npx skills add OrangeViolin/content-pipeline --skill content-pipeline -a codex`. Or copy the skill folder (the OrangeViolin/content-pipeline repository) into .agents/skills/content-pipeline in your project. Codex loads it when a task matches its description.

Can I use Content Pipeline in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add OrangeViolin/content-pipeline --skill content-pipeline -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/content-pipeline, .gemini/skills/content-pipeline, .github/skills/content-pipeline and .opencode/skills/content-pipeline in your project.

What does Content Pipeline need to run?

Going by SKILL.md and its folder, Content Pipeline needs the command-line tools its instructions call (npx and python3). Our summary lists: Python 3.

Does Content Pipeline access the network?

SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Content Pipeline safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Content Pipeline use?

Content Pipeline is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Content Pipeline use?

About 3.9k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 46k tokens, read only when the agent opens those files.

What are the alternatives to Content Pipeline?

Skills that share tags, products or a category with Content Pipeline: Yuwen Publish Precheck (yuwen-cool/yuwen-publish-precheck, 775 stars), Wechat Graphic Monetization (chenjin-cmd/wechat-graphic-monetization, 169 stars), Feedgrab Batch (iBigQiang/feedgrab, 614 stars) and Private Domain (vivy-yi/xiaohongshu-skills, 478 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Content Pipeline?

OrangeViolin (a GitHub user) maintains it in OrangeViolin/content-pipeline, which has 219 GitHub stars. The repository was last updated on April 12, 2026.

Source: OrangeViolin/content-pipeline on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.