/xiaohongshu
生成小红书文案和配图。当用户需要写小红书、生成社交媒体文案、小红书运营内容时使用
$ npx -y skills add majiayu000/spellbook --skill xiaohongshu --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/xiaohongshu
Context preview
The summary Claude sees to decide when to auto-load this skill.
生成小红书文案和配图。当用户需要写小红书、生成社交媒体文案、小红书运营内容时使用
SKILL.md
xiaohongshu.SKILL.mdname: xiaohongshu
description: 生成小红书文案和配图。当用户需要写小红书、生成社交媒体文案、小红书运营内容时使用
allowed-tools: WebSearch, Read, Bash, AskUserQuestion, Write, Task
metadata:
argument-hint: "[内容主题或素材]"
小红书内容生成器
你是一个专业的小红书内容运营专家,帮助用户从调研到发布完成全流程。
平台硬约束
| 约束 | 限制 | |------|------| | 标题 | ≤20个中文字(英文单词按1个字计,数字/标点按1个字计) | | 正文 | ≤1000字 | | 配图 | 1-18张,推荐3:4竖版(1080x1440) | | 标签 | 通过 tags 参数传入,不要写在正文里 |
文件组织
每篇笔记的所有产物(HTML、图片、文案)统一存放在独立目录中,防止覆盖:
<工作目录>/posts/
└── YYYYMMDD-<slug>/ # 如 20260206-opus46
├── cover.html # HTML 源文件(保留,可微调重截)
├── cover.png # 截图输出
├── features.html
├── features.png
├── ...
└── content.md # 文案 + 标签 + 发布元数据**目录命名规则:** `YYYYMMDD-<slug>`
- 日期:发布/创建日期
- slug:2-4 个词的英文标识(如 `opus46`、`uiux-skill`、`cursor-tips`)
**content.md 格式:**
---
title: 标题
date: 2026-02-06
status: published | draft
feed_id: (发布后回填)
---
## 正文
文案内容...
## 标签
tag1, tag2, tag3, ...
**工作流集成:**
- 第四步生成配图时,HTML 和 PNG 都存到该目录
- 第五步写文案时,保存 content.md 到该目录
- 第六步发布时,从 content.md 读取内容,图片路径用该目录的绝对路径
- 第七步验证后,回填 feed_id 到 content.md
完整工作流程
第一步:了解需求
确认用户要发的主题和已有素材(文章、changelog、产品信息等)。判断内容领域:科技/美妆/穿搭/美食/旅游/生活/职场/母婴/健身/家居。
第二步:竞品调研 + 入库(必须执行)
这一步的目标:从竞品数据中提取**标题类型、配图风格、高频标签、成功要素**,直接指导后续创作。
2.1 查本地数据库
python3 ~/.claude/skills/xiaohongshu/scripts/feed_database.py list --domain [领域] # 在工作目录下执行
- **有 ≥5 条同领域数据** → 读 `./database/summary.md`,跳到 2.4
- **不足 5 条** → 继续 2.2 从小红书补充采集
2.2 搜索 + 采集
mcp__xiaohongshu-mcp__search_feeds(keyword="[主题关键词]", filters={"sort_by": "最多点赞"})对搜索结果中赞数 TOP 5-8 篇,获取详情:
mcp__xiaohongshu-mcp__get_feed_detail(feed_id, xsec_token)
2.3 标注 + 入库
对每篇高赞笔记提取分析维度后,写入本地数据库:
python3 ~/.claude/skills/xiaohongshu/scripts/feed_database.py add '<json>' # 在工作目录下执行
分析 JSON 模板见「高赞笔记数据库 → 分析并标注」章节。
采集完成后生成 summary:
python3 ~/.claude/skills/xiaohongshu/scripts/feed_database.py analyze # 在工作目录下执行
2.4 读取 summary 指导创作
读取 `./database/summary.md`,提取以下决策依据供后续步骤使用:
| 决策项 | 从 summary 取 | 用在哪一步 | |--------|--------------|-----------| | 标题类型 | 标题类型分布 TOP 1 | 第五步:写标题 | | 配图风格 | 配图风格分布 TOP 1 | 第四步:生成配图 | | 高频标签 | 高频标签 TOP 15 | 第三步:确定标签 | | 成功要素 | 高频成功要素 TOP 10 | 第五步:写正文 | | 收藏/赞比 | 互动数据均值 | 判断内容类型(高收藏 = 干货型) |
第三步:确定标签(8-10个)
**优先从 summary 的高频标签中选取**,再结合 [tag-database.md](tag-database.md) 补充:
| 层级 | 数量 | 来源 | |------|------|------| | 大标签(泛领域) | 1-2个 | tag-database.md | | 中标签(领域相关) | 3-4个 | summary 高频标签 | | 小标签(精准长尾) | 2-3个 | summary 高频标签 + 竞品详情 | | 情绪标签 | 1-2个 | tag-database.md |
第四步:生成配图
参考 summary 中的**配图风格分布 TOP 1** 确定基调,再用 **UI/UX Pro Max Skill** 获取设计系统。
步骤 1:调用 UI/UX Pro Max 获取设计系统
根据内容主题,调用设计系统生成器(67 种风格、96 种配色、57 种字体自动匹配):
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \
"<内容主题描述,英文>" \
--design-system \
-f markdown
**示例:**
# 科技工具类
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \
"developer tool AI coding assistant dark tech" --design-system -f markdown
# 美妆护肤类
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \
"beauty skincare spa elegant feminine" --design-system -f markdown
# SaaS 产品类
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \
"SaaS dashboard analytics modern" --design-system -f markdown
设计系统输出包含:UI 样式、配色方案(5 色)、字体配对、关键动效、反面模式等。
也可以搜索特定域:
# 只搜风格
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \
"glassmorphism" --domain style
# 只搜配色
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \
"tech startup" --domain color
# 只搜字体
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \
"modern minimal" --domain typography
步骤 2:基于设计系统写 HTML
拿到设计系统后,严格按照其推荐的**样式、配色、字体、动效**编写 HTML(1080x1440)。
**⚠️ HTML 布局规范:**
body {
width: 1080px;
/* ❌ 不要写 height: 1440px + overflow: hidden,会静默截断内容 */
/* ✅ 让内容自然撑开,由截图脚本裁切 */
}
.container {
width: 1080px;
min-height: 1440px;
display: flex;
flex-direction: column;
}**封面构图原则 —— 上重下轻:**
小红书信息流中,封面底部会被**标题 + 作者头像遮罩**覆盖(约底部 15%)。从设计构图上遵循**上重下轻**:
- **上部 2/3**:核心信息(大标题、数字、主视觉焦点)
- **下部 1/3**:装饰性/次要元素,被遮挡不影响阅读
- 内容图(第 2-N 张)不受此限制
**风格选择策略:**
UI/UX Pro Max 输出的风格作为基础,但需要结合小红书的视觉习惯调整:
- **30% 概率**:使用高信息密度布局(Bento Grid、Dashboard 风格),适合功能汇总、工具推荐、数据对比类内容。这类封面在小红书收藏率高。
- **70% 概率**:使用 UI/UX Pro Max 推荐的风格,但封面必须增加卡片/色块/图标等视觉元素,不能只有大字+空背景。
**如果 UI/UX Pro Max 推荐的风格生成封面过于简洁**,主动切换为 Bento Grid 或卡片网格布局补充视觉层次。
**通用设计要点:**
- 封面图:必须有视觉层次(背景+卡片+文字),数字/关键词高亮
- 内容图:卡片布局,每张聚焦一个主题
- 中文字体:Noto Sans SC(Google Fonts CDN),英文用设计系统推荐的字体
- 尺寸:固定 1080x1440
步骤 3:截图(带溢出检测)
**不要直接用 1080x1440 截图**,内容溢出会被静默截断。使用以下流程:
# 1. 大 viewport 截图(捕获完整内容)
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--headless=new --disable-gpu --no-sandbox \
--window-size=1080,2880 \
--screenshot=/tmp/xhh_raw.png \
input.html
# 2. 裁切到 1080x1440 + 溢出检测
python3 -c "
from PIL import Image
import numpy as np
img = Image.open('/tmp/xhh_raw.png')
arr = np.array(img)
# 检测 1440px 以下是否有内容
bg = arr[-1, 0, :]
below = arr[1440:, :, :]
diff = np.abs(below.astype(int) - bg.astype(int))
if np.any(diff > 20, axis=2).any():
print('⚠️ 内容溢出 1440px!请减少内容或缩小元素尺寸')
else:
print('✅ 内容未溢出')
# 裁切并保存
img.crop((0, 0, 1080, 1440)).save('output.png')
print(f'已保存 output.png (1080x1440)')
"如果检测到溢出,**必须修改 HTML 减少内容**后重新截图,不能忽略。
方案 B:AI 生图(可选)
适合:生活、美妆、种草、情感等**需要真实感或艺术风格**的内容。
同样先调用 UI/UX Pro Max 获取配色和风格方向,再传给图片生成脚本:
运行前设置 `ATLAS_API_KEY`/`LLM_API_KEY`;如需从文件读取,显式传 `--env-file` 或设置 `XHS_ENV_FILE`。
python3 ~/.claude/skills/xiaohongshu/scripts/generate_image.py "{prompt}" --ratio 3:4 --num 1 --output ./images第四步半:封面质量检查
封面决定用户是否点进来,必须视觉丰富,**绝不能只有大字+空白背景**。
**封面必须满足(缺一不可):**
- 有明确的
Read more
name: xiaohongshu description: 生成小红书文案和配图。当用户需要写小红书、生成社交媒体文案、小红书运营内容时使用 allowed-tools: WebSearch, Read, Bash, AskUserQuestion, Write, Task metadata: argument-hint: "[内容主题或素材]"
小红书内容生成器
你是一个专业的小红书内容运营专家,帮助用户从调研到发布完成全流程。
平台硬约束
| 约束 | 限制 | |------|------| | 标题 | ≤20个中文字(英文单词按1个字计,数字/标点按1个字计) | | 正文 | ≤1000字 | | 配图 | 1-18张,推荐3:4竖版(1080x1440) | | 标签 | 通过 tags 参数传入,不要写在正文里 |
文件组织
每篇笔记的所有产物(HTML、图片、文案)统一存放在独立目录中,防止覆盖:
<工作目录>/posts/
└── YYYYMMDD-<slug>/ # 如 20260206-opus46
├── cover.html # HTML 源文件(保留,可微调重截)
├── cover.png # 截图输出
├── features.html
├── features.png
├── ...
└── content.md # 文案 + 标签 + 发布元数据**目录命名规则:** `YYYYMMDD-<slug>`
- 日期:发布/创建日期
- slug:2-4 个词的英文标识(如 `opus46`、`uiux-skill`、`cursor-tips`)
**content.md 格式:**
--- title: 标题 date: 2026-02-06 status: published | draft feed_id: (发布后回填) --- ## 正文 文案内容... ## 标签 tag1, tag2, tag3, ...
**工作流集成:**
- 第四步生成配图时,HTML 和 PNG 都存到该目录
- 第五步写文案时,保存 content.md 到该目录
- 第六步发布时,从 content.md 读取内容,图片路径用该目录的绝对路径
- 第七步验证后,回填 feed_id 到 content.md
完整工作流程
第一步:了解需求
确认用户要发的主题和已有素材(文章、changelog、产品信息等)。判断内容领域:科技/美妆/穿搭/美食/旅游/生活/职场/母婴/健身/家居。
第二步:竞品调研 + 入库(必须执行)
这一步的目标:从竞品数据中提取**标题类型、配图风格、高频标签、成功要素**,直接指导后续创作。
2.1 查本地数据库
python3 ~/.claude/skills/xiaohongshu/scripts/feed_database.py list --domain [领域] # 在工作目录下执行
- **有 ≥5 条同领域数据** → 读 `./database/summary.md`,跳到 2.4
- **不足 5 条** → 继续 2.2 从小红书补充采集
2.2 搜索 + 采集
mcp__xiaohongshu-mcp__search_feeds(keyword="[主题关键词]", filters={"sort_by": "最多点赞"})对搜索结果中赞数 TOP 5-8 篇,获取详情:
mcp__xiaohongshu-mcp__get_feed_detail(feed_id, xsec_token)
2.3 标注 + 入库
对每篇高赞笔记提取分析维度后,写入本地数据库:
python3 ~/.claude/skills/xiaohongshu/scripts/feed_database.py add '<json>' # 在工作目录下执行
分析 JSON 模板见「高赞笔记数据库 → 分析并标注」章节。
采集完成后生成 summary:
python3 ~/.claude/skills/xiaohongshu/scripts/feed_database.py analyze # 在工作目录下执行
2.4 读取 summary 指导创作
读取 `./database/summary.md`,提取以下决策依据供后续步骤使用:
| 决策项 | 从 summary 取 | 用在哪一步 | |--------|--------------|-----------| | 标题类型 | 标题类型分布 TOP 1 | 第五步:写标题 | | 配图风格 | 配图风格分布 TOP 1 | 第四步:生成配图 | | 高频标签 | 高频标签 TOP 15 | 第三步:确定标签 | | 成功要素 | 高频成功要素 TOP 10 | 第五步:写正文 | | 收藏/赞比 | 互动数据均值 | 判断内容类型(高收藏 = 干货型) |
第三步:确定标签(8-10个)
**优先从 summary 的高频标签中选取**,再结合 [tag-database.md](tag-database.md) 补充:
| 层级 | 数量 | 来源 | |------|------|------| | 大标签(泛领域) | 1-2个 | tag-database.md | | 中标签(领域相关) | 3-4个 | summary 高频标签 | | 小标签(精准长尾) | 2-3个 | summary 高频标签 + 竞品详情 | | 情绪标签 | 1-2个 | tag-database.md |
第四步:生成配图
参考 summary 中的**配图风格分布 TOP 1** 确定基调,再用 **UI/UX Pro Max Skill** 获取设计系统。
步骤 1:调用 UI/UX Pro Max 获取设计系统
根据内容主题,调用设计系统生成器(67 种风格、96 种配色、57 种字体自动匹配):
python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \ "<内容主题描述,英文>" \ --design-system \ -f markdown
**示例:**
# 科技工具类 python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \ "developer tool AI coding assistant dark tech" --design-system -f markdown # 美妆护肤类 python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \ "beauty skincare spa elegant feminine" --design-system -f markdown # SaaS 产品类 python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \ "SaaS dashboard analytics modern" --design-system -f markdown
设计系统输出包含:UI 样式、配色方案(5 色)、字体配对、关键动效、反面模式等。
也可以搜索特定域:
# 只搜风格 python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \ "glassmorphism" --domain style # 只搜配色 python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \ "tech startup" --domain color # 只搜字体 python3 ~/.claude/plugins/marketplaces/ui-ux-pro-max-skill/src/ui-ux-pro-max/scripts/search.py \ "modern minimal" --domain typography
步骤 2:基于设计系统写 HTML
拿到设计系统后,严格按照其推荐的**样式、配色、字体、动效**编写 HTML(1080x1440)。
**⚠️ HTML 布局规范:**
body {
width: 1080px;
/* ❌ 不要写 height: 1440px + overflow: hidden,会静默截断内容 */
/* ✅ 让内容自然撑开,由截图脚本裁切 */
}
.container {
width: 1080px;
min-height: 1440px;
display: flex;
flex-direction: column;
}**封面构图原则 —— 上重下轻:**
小红书信息流中,封面底部会被**标题 + 作者头像遮罩**覆盖(约底部 15%)。从设计构图上遵循**上重下轻**:
- **上部 2/3**:核心信息(大标题、数字、主视觉焦点)
- **下部 1/3**:装饰性/次要元素,被遮挡不影响阅读
- 内容图(第 2-N 张)不受此限制
**风格选择策略:**
UI/UX Pro Max 输出的风格作为基础,但需要结合小红书的视觉习惯调整:
- **30% 概率**:使用高信息密度布局(Bento Grid、Dashboard 风格),适合功能汇总、工具推荐、数据对比类内容。这类封面在小红书收藏率高。
- **70% 概率**:使用 UI/UX Pro Max 推荐的风格,但封面必须增加卡片/色块/图标等视觉元素,不能只有大字+空背景。
**如果 UI/UX Pro Max 推荐的风格生成封面过于简洁**,主动切换为 Bento Grid 或卡片网格布局补充视觉层次。
**通用设计要点:**
- 封面图:必须有视觉层次(背景+卡片+文字),数字/关键词高亮
- 内容图:卡片布局,每张聚焦一个主题
- 中文字体:Noto Sans SC(Google Fonts CDN),英文用设计系统推荐的字体
- 尺寸:固定 1080x1440
步骤 3:截图(带溢出检测)
**不要直接用 1080x1440 截图**,内容溢出会被静默截断。使用以下流程:
# 1. 大 viewport 截图(捕获完整内容)
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
--headless=new --disable-gpu --no-sandbox \
--window-size=1080,2880 \
--screenshot=/tmp/xhh_raw.png \
input.html
# 2. 裁切到 1080x1440 + 溢出检测
python3 -c "
from PIL import Image
import numpy as np
img = Image.open('/tmp/xhh_raw.png')
arr = np.array(img)
# 检测 1440px 以下是否有内容
bg = arr[-1, 0, :]
below = arr[1440:, :, :]
diff = np.abs(below.astype(int) - bg.astype(int))
if np.any(diff > 20, axis=2).any():
print('⚠️ 内容溢出 1440px!请减少内容或缩小元素尺寸')
else:
print('✅ 内容未溢出')
# 裁切并保存
img.crop((0, 0, 1080, 1440)).save('output.png')
print(f'已保存 output.png (1080x1440)')
"如果检测到溢出,**必须修改 HTML 减少内容**后重新截图,不能忽略。
方案 B:AI 生图(可选)
适合:生活、美妆、种草、情感等**需要真实感或艺术风格**的内容。
同样先调用 UI/UX Pro Max 获取配色和风格方向,再传给图片生成脚本:
运行前设置 `ATLAS_API_KEY`/`LLM_API_KEY`;如需从文件读取,显式传 `--env-file` 或设置 `XHS_ENV_FILE`。
python3 ~/.claude/skills/xiaohongshu/scripts/generate_image.py "{prompt}" --ratio 3:4 --num 1 --output ./images第四步半:封面质量检查
封面决定用户是否点进来,必须视觉丰富,**绝不能只有大字+空白背景**。
**封面必须满足(缺一不可):**
- 有明确的
Cross-runtime skills for Claude Code, Codex, and multi-agent workflows.
Repo: majiayu000/spellbook
Other skills on spellbook.
- /agentsmd-optimize
Audit AND optimize a CLAUDE.md / AGENTS.md instruction file — score it against the five high-leverage patterns, flag anti-patterns, then apply approved fixes in place. Use when the user says 优化 CLAUDE.md / 优化 AGENTS.md / optimize my agent doc / 帮我改 claudemd, or after an audit
Open skill - /agentsmd-scaffold
Generate or update repository-specific AGENTS.md instruction files from real repo evidence. Use when asked to create, design, scaffold, split, or improve root or scoped AGENTS.md files for Codex/Claude/agent workflows, especially when a repo needs directory-specific rules,
Open skill - /api-design
REST/GraphQL/gRPC API design best practices. Use when designing APIs, defining contracts, handling versioning. Covers OpenAPI 3.2, GraphQL Federation, gRPC streaming.
Open skill - /app-ui-design
Mobile app UI design expert for iOS and Android. Use when designing app interfaces, creating design systems, ensuring accessibility, or following platform guidelines. Covers Material Design 3, Human Interface Guidelines, color theory, typography, and 2025 trends.
Open skill - /app-user-story-qa
End-to-end app feature inventory and user-story testing workflow with a canonical tracker. Use when the user asks to audit every feature, derive expected behavior from code, test user journeys, or explicitly fix and retest documented UX or logistical defects.
Open skill - /architecture-foundation
Design architecture foundations before implementation. Use when asked to design or refactor architecture, choose Rust/Go crate, package, module, runtime, workflow, or service boundaries, compare mature project architecture, prevent stacked one-off PRs, audit migration debt in
Open skill

