# Xiaohongshu Title Score

> 拆解爆款标题逻辑，结合用户输入一键生成10个优质爆款标题，告别标题纠结；同时对已有标题从主题匹配度、结构合规度、利益清晰度、情绪唤醒度、稀缺性感知和合规安全性六大维度加权评分，输出等级评定与优化建议；当用户需要生成小红书爆款标题、评估标题爆款潜力、了解标题与爆款规律匹配度或获取标题优化建议时使用

- Skill: `redfox-data/xiaohongshu-title-score` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds add redfox-data/xiaohongshu-title-score`
- Raw SKILL.md: https://api.skillmd.com/api/skills/redfox-data/xiaohongshu-title-score/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: redfox-data (https://skillmd.com/u/redfox-data)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/redfox-data/xiaohongshu-title-score

---


# 小红书标题生成与评分

## 功能路由

根据用户意图选择执行路径：
- **创作新标题**（如"帮我写标题"、"生成爆款标题"、"关于XX的标题"）→ 执行**功能一**
- **评估已有标题**（如"评分"、"打分"、"这个标题怎么样"、"评估标题"）→ 执行**功能二**

无论执行哪个功能，用户输入的任何信息都基于此生成爆款标题或评估标题潜力。

## 全局规则

### 鉴权

#### 获取 API Key
1. 访问 [红狐Hub 官网](https://redfox.hk/?source=github) 了解服务详情
2. 前往 [注册页面](https://redfox.hk/login?source=github) 注册账号
3. **新注册用户将获赠免费积分**，可立即开始使用 API 服务
4. 注册登录后，在个人中心获取 API Key，格式为 `ak_xxxxxxxx`

#### 配置 API Key
- `REDFOX_API_KEY` 从环境变量获取，格式 `ak_xxxxxxxx`
- 若未设置，提示用户自行配置：`export REDFOX_API_KEY=<你的apikey>`；若用户不会配置，Agent应主动帮用户设置：
  - **macOS/Linux**：将 `export REDFOX_API_KEY=<值>` 追加到 `~/.zshrc`（zsh）或 `~/.bashrc`（bash），然后 `source` 对应文件使其全局生效
  - **Windows**：使用 `[Environment]::SetEnvironmentVariable("REDFOX_API_KEY", "<值>", "User")` 设置用户级永久环境变量（需重启终端生效）
  - 配置完成后应验证：`echo $REDFOX_API_KEY`（macOS/Linux）或 `echo %REDFOX_API_KEY%`（Windows），确保换一个skill也能读取到

### 用词规范
- **禁止**："爬取"、"抓取"
- **替代**：使用"获取"

### 关键词精准匹配
- 用户输入的是什么产品，就只查询什么产品，不随意扩展到相关但不同的产品
- 理解产品具体形态边界：霜≠喷雾≠衣；膏≠液≠粉；液≠霜≠气垫；口红≠唇釉≠唇油
- 核心原则：用户输入的产品是什么形态/类型，就严格限定在该范围内

### 关键词类型判断
- **细分词/垂直赛道**（含具体场景/属性修饰，如"职场穿搭"、"减脂餐"）→ 直接查询
- **具体产品词**（如"防晒霜"、"睫毛膏"）→ 直接查询，不扩展到其他产品
- **泛化词/大分类**（纯大类词无修饰，如"穿搭"、"美妆"）→ 执行泛化词拓展策略

详细判断标准与示例见 [references/guide.md](references/guide.md)

### 泛化词拓展策略

仅当关键词为泛化词时执行，细分词/具体产品词跳过此步直接查询。

1. 查询近7天网页资讯中与泛化词相关的小红书热点，生成10个细分方向（覆盖趋势词、人群词、场景词、意图词各2-3个，词的大小适中不加组合）
2. 输出推荐并**停止执行**，等待用户回复「拓展」或「不拓展」
3. 用户回复「拓展」→搜索10个细分词；回复「不拓展」/「继续」→搜索原关键词

### 数据查询规则

**时间计算**：先获取当前系统时间，再计算 startDate（格式 yyyy-MM-dd）
- 今天：startDate = 昨天
- 近N天：startDate = 今天 - N天

**数据不足时自动扩展时间**（禁止换词）：
1. 近1天 → 近3天 → 近7天 → 近30天
2. 每次扩展后提示用户："该关键词近X天数据不足5条，已自动扩展时间范围至近Y天"
3. 即使扩展到近30天仍不足5条，如实展示并提示数据不足

**超出范围说明**：
- 用户说"今天/今日"："非常抱歉，今天的数据暂未更新，已为您展示最近可用的数据"
- 时间超出30天："非常抱歉，当前仅支持最近30天的数据，已为您展示最接近的数据"

**执行命令**：
- `python scripts/fetch_xhs_trends.py --keyword <关键词> --start-date <日期>`
- 多关键词用逗号分隔：`python scripts/fetch_xhs_trends.py --keyword "防晒霜,防晒喷雾" --start-date 2024-01-15`
- 全站热门：`python scripts/fetch_xhs_trends.py --keyword "" --start-date <日期>`

---

## 功能一：爆款标题生成

### 第一步：提取关键词

从用户输入中提取核心关键词，判断关键词类型（见全局规则），泛化词需先执行拓展策略。

### 第二步：查询数据

- **默认时间范围**：近7天（startDate = 今天 - 7天）
- 执行数据查询命令（见全局规则）
- 读取生成的 Markdown 文件：`关键词_爆款数据.md`
- **必须向用户输出数据获取数量**：从脚本执行的 stderr 输出中读取各类别数据条数，向用户汇报（如"共获取到爆款数据 XX 条，其中低粉爆款 XX 条、点赞最多 XX 条、单日互动 XX 条、7日增长 XX 条"）
- 数据时间差说明（内部参考，不展示）：互动数据截止为入库时间，非实时数据

### 第三步：生成爆款标题

**必须先内部完成爆款标题分析，再生成标题，顺序不能颠倒。**

1. **[仅内部执行]分析爆款标题**：从数据中提取所有标题，分析标题结构、关键词、情绪、目标人群、痛点、利益承诺。分析结果不展示给用户。
2. **生成10个新爆款标题（向用户展示）**：
   - 基于分析规律创新创作，非直接采用参考爆款
   - 标题字数控制在20字以内
   - 推荐理由须详细说明：标题结构、关键词、目标人群、痛点、价值、平台适配性
   - 匹配指数8-10之间，保留一位小数，同一指数最多重复2次
   - 参考爆款须带链接：`[标题文字](https://www.xiaohongshu.com/explore/{photoId})`

### 输出格式（必须严格遵守）

**标题列表前必须输出数据说明**：
> ⚠️数据说明：！！！受小红书风控规则限制，部分作品链接可能无法正常跳转，您可复制对应作品标题前往小红书搜索查看，感谢理解🙇‍♀️🙇‍♀️

**每个标题格式**：
```
**标题X：[标题内容]**
📈匹配指数：[8.0-10.0]
🔥参考的爆款：[标题1](https://www.xiaohongshu.com/explore/{photoId})（互动数：XXX）、[标题2](...)（互动数：YYY）
👍推荐理由：[详细推荐理由]

---
```

**格式校验**：数据说明在标题列表前 | 标题行粗体+20字内 | 匹配指数一位小数8-10 | 参考爆款带链接+互动数 | 推荐理由详细 | 块间分隔线 | emoji一致（📈🔥👍） | 共10个标题

---

## 功能二：爆款标题评分

### 第一步：提取关键信息

识别两个核心要素：
1. **待评分标题**：用户想要评估的标题
2. **主题关键词**：用于查询爆款数据（用户未提供则从标题中提取）

### 第二步：查询数据

- **默认时间范围**：近30天（startDate = 今天 - 30天），获取更全面的爆款规律
- 执行数据查询命令（见全局规则）
- **必须向用户输出数据获取数量**：从脚本执行的 stderr 输出中读取各类别数据条数，向用户汇报（如"共获取到爆款数据 XX 条，其中低粉爆款 XX 条、点赞最多 XX 条、单日互动 XX 条、7日增长 XX 条"）

### 第三步：评分（必须向用户输出）

**先检查标题重合**：用户标题与爆款标题完全一致（或仅标点/空格差异）→ 直接S级（9.5+分）

**6维度加权评分**：主题匹配度(15%)、结构合规度(20%)、利益清晰度(25%)、情绪唤醒度(20%)、稀缺性感知(15%)、合规安全性(5%)

**等级**：S级(9.0+)/A级(7.0-8.9)/B级(5.0-6.9)/C级(<5.0)

**输出要求**：评分结果必须完整输出给用户，包括综合得分、等级、6维度评分明细表，不得省略或仅内部参考。

评分标准、计算公式和输出格式模板见 [references/guide.md](references/guide.md)

### 第四步：输出优化建议（必须向用户输出）

- **S级**：基于6维度爆款规律说明为什么好 + 3-5条同主题高赞标题及相似之处
- **A/B/C级**：核心问题清单 + 3-5条参考爆款标题（含可复用点）+ 2-3个修改版本（干货风/情绪风/猎奇风，标注适用场景和预期效果）

详细输出格式模板见 [references/guide.md](references/guide.md)

---

## 使用示例

### 功能一：爆款标题生成
- **场景/输入**：用户输入"防晒霜"
- **预期产出**：查询防晒霜爆款数据 → 汇报获取数量（如"共获取爆款数据 35 条，其中低粉爆款 10 条..."）→ 生成10个新爆款标题
- **关键要点**：只查询防晒霜，不包含防晒喷雾、防晒衣等；必须输出数据获取数量

### 功能二：标题评分
- **场景/输入**：用户输入"帮我评分'这款防晒霜真的绝了'，关键词防晒霜"
- **预期产出**：查询数据并汇报获取数量 → 评分报告（6维度加权得分+等级）→ 优化建议（核心问题+参考爆款+修改版本）
- **关键要点**：基于防晒霜相关爆款数据评分，必须输出数据获取数量，优化建议有针对性

---

## 资源索引
- 数据查询脚本：[scripts/fetch_xhs_trends.py](scripts/fetch_xhs_trends.py)（查询小红书爆款数据，参数：--keyword 关键词 --start-date 起始日期）
- 评分与关键词指南：[references/guide.md](references/guide.md)（执行功能二时读取评分标准与输出模板；判断关键词类型时读取泛化词/具体词详细定义与示例）

