<div align="center">
<a href="https://github.com/mindfold-ai/Trellis">
<img src=".github/trellis-banner.png" width="600" alt="Trellis">
</a>
<p>
本 Skill 基于 <a href="https://github.com/mindfold-ai/Trellis"><b>Trellis</b></a> 构建 — Claude Code、Cursor 与 iFlow 的一体化 AI 框架与工具集。<br>
<a href="https://github.com/mindfold-ai/Trellis">查看详情</a>
</p>
</div>
---
# xhs-content
[](./LICENSE)
[](https://discord.gg/tWcCZ3aRHc)
[English](./README.en.md) | **中文**
小红书选题调研 + 内容生成 Claude Code Skill。输入一个关键词,自动采集热门笔记、生成分析报告、产出小红书风格草稿。
## 功能
`/xhs-content [关键词]` 执行三步流水线:
```
采集 → 分析 → 生成
```
| 步骤 | 说明 |
|------|------|
| **采集** | 搜索小红书关键词,获取 Top 帖子的完整正文、标签、互动数据 |
| **分析** | 生成选题报告:热度概览、角度分类、Top 笔记摘要、差异化建议 |
| **生成** | 产出 1–3 篇符合小红书原生风格的笔记草稿 |
输出:`sources.jsonl` + `report.md` + `drafts.md`,保存到 `./data/<日期>-<关键词>/`。
## 和 xhs-cli 有什么区别?
本 Skill 基于 [xhs-cli](https://github.com/jackwener/xhs-cli) 构建,在此之上增加了 AI 驱动的内容工作流:
| | xhs-cli | xhs-content |
|---|---------|-------------|
| **搜索** | 返回卡片级数据(标题 + 点赞) | 搜索 + 逐条 read 获取完整正文、标签、时间戳、IP 地区 |
| **分析** | 无 — 原始 JSON 输出 | 自动生成选题报告:趋势概览、角度聚类、空白机会分析 |
| **创作** | 无 | 生成符合小红书原生风格的笔记草稿 |
| **存储** | 一次性 stdout | 按关键词+日期结构化存档:JSONL + Markdown |
| **工作流** | 手动敲 CLI 命令 | 一个关键词触发整条流水线 |
简单说:**xhs-cli 是扳手,本 Skill 是自动化流水线。**
## 前置依赖
| 依赖 | 用途 | 安装 |
|------|------|------|
| [Claude Code](https://claude.ai/claude-code) | 运行环境 | [文档](https://docs.anthropic.com/en/docs/claude-code) |
| [xhs-cli](https://github.com/jackwener/xhs-cli) | 小红书数据采集 | `pipx install xhs-cli` |
| Python 3.8+ | 运行采集脚本 | 大多数系统已预装 |
### 首次配置
```bash
# 安装 xhs-cli
pipx install xhs-cli
# 登录(二维码 / cookie / 自动从 Chrome 提取)
xhs login
```
## 安装
### 方式 A:一行安装
```bash
git clone https://github.com/mindfold-ai/xhs-content.git ~/.claude/skills/xhs-content
```
### 方式 B:手动
```bash
# 克隆到任意位置
git clone https://github.com/mindfold-ai/xhs-content.git
# 软链接到 skills 目录
ln -s $(pwd)/xhs-content ~/.claude/skills/xhs-content
```
## 使用
### 作为 Claude Code Skill(推荐)
直接告诉 Claude:
```
> 帮我调研一下小红书上 "AI 桌宠" 的热门内容,然后生成几篇笔记草稿
```
或直接触发 Skill:
```
> /xhs-content AI 桌宠
```
Claude 会自动:
1. 运行采集脚本
2. 读取 JSONL 生成选题报告
3. 生成小红书风格笔记草稿
### 独立脚本
```bash
# 采集关键词帖子(JSON 输出到 stdout)
python3 scripts/xhs-search.py --keyword "AI agents" --limit 30
# 少量采集
python3 scripts/xhs-search.py --keyword "Claude" --limit 10
```
## 输出格式
每次运行创建目录:`data/<YYYY-MM-DD>-<关键词>/`
```
data/2026-03-11-AI桌宠/
├── sources.jsonl # 每行一条 JSON,原始采集数据
├── report.md # 选题报告(Claude 生成)
└── drafts.md # 小红书风格笔记草稿(Claude 生成)
```
### JSONL 字段
```json
{
"source_platform": "xhs",
"url": "https://www.xiaohongshu.com/explore/...",
"title": "把oc做成ai桌宠?",
"text": "完整正文...",
"author": "用户名",
"likes": 9529,
"favorites": 3536,
"comments": 523,
"shares": 902,
"posted_at": "2025-12-06 03:58",
"tags": ["AI聊天", "oc"],
"ip_location": "广东",
"keyword_matched": "AI 桌宠"
}
```
## 架构
```
xhs-content skill
│
├── scripts/xhs-search.py ← Python 封装
│ │
│ ├── xhs search <kw> --json ← 卡片数据(标题、点赞)
│ └── xhs read <id> --json ← 完整详情(正文、标签、时间)
│ │
│ └── xhs-cli(camoufox 浏览器)
│ │
│ └── window.__INITIAL_STATE__
│
├── references/prompt.md ← 小红书写作风格规则
│
└── Claude(分析 + 生成)
│
├── report.md ← 选题报告
└── drafts.md ← 小红书风格笔记草稿
```
## 小红书写作风格
生成 prompt 强制执行小红书原生写作规范:
**DO:**
- emoji + 吸睛短标题(15 字以内)
- 第一人称,像和朋友分享经验
- 小红书原生用语:亲测、踩坑、安利、绝绝子
- 干货结构:步骤、清单、对比
- 结尾 3–5 个相关话题标签
**DON'T:**
- 不用企业腔:赋能、驱动、赛道、底层逻辑
- 不用「首先…其次…最后」三段式
- 不用破折号(——)做解释
- 不用「总结一下」收尾套话
- 单篇不超过 800 字
## 注意事项
- xhs-cli 使用 [camoufox](https://github.com/daijro/camoufox)(反指纹 Firefox)— 首次运行需下载 ~300MB 浏览器引擎。
- Cookie 存储在 `~/.xhs-cli/cookies.json`(权限 `0600`)。
- 脚本对互动量 Top 10 帖子获取完整详情,其余帖子仅有卡片级数据(标题 + 点赞,无正文)。
- 小红书持续加强反爬 — 会话可能过期,遇到认证错误时重新运行 `xhs login`。
## License
MIT