/hit-script-retrieval-skill
爆款剧本检索技能。使用混合搜索(语义+关键词)检索最相关的爆款剧本,为生成提供参考。
$ npx -y skills add supreme-ultimate/novel-to-script-team --skill hit-script-retrieval-skill --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
/hit-script-retrieval-skill
Context preview
The summary Claude sees to decide when to auto-load this skill.
爆款剧本检索技能。使用混合搜索(语义+关键词)检索最相关的爆款剧本,为生成提供参考。
SKILL.md
hit-script-retrieval-skill.SKILL.mdname: hit-script-retrieval-skill
description: 爆款剧本检索技能。使用混合搜索(语义+关键词)检索最相关的爆款剧本,为生成提供参考。
爆款剧本检索技能
必读
1. `../../references/00-first-principles.md` — 第一性原则(可拍性、留存性、一致性) 2. `../../references/03-script-writing-standard.md` — 剧本写作标准(对话比、视觉标记、网文感) 3. `../../references/12-genre-specific-techniques.md` — 类型化技巧(男频/女频特征)
功能
从117部爆款短剧剧本中检索最相关的剧本,为剧本生成提供参考。
检索方法
使用**混合搜索**(Chroma语义搜索 + TF-IDF关键词搜索):
- 语义搜索权重:60%(理解深层含义)
- 关键词搜索权重:40%(精确匹配)
使用场景
1. 剧本生成前检索
在生成剧本前,根据以下信息检索相关剧本:
- 剧本类型(复仇/逆袭/穿越/重生等)
- 情绪基调(愤怒/悲伤/爽感/紧张等)
- 主要情节(打脸/揭秘/对抗/和解等)
- 人物关系(主角vs反派/主角vs配角等)
- 场景类型(豪门/古代/现代/职场等)
**示例查询**:
"复仇女主霸总豪门打脸"
"穿越古代逆袭当皇后"
"重生复仇虐恋"
2. 检索结果使用
检索返回Top 5最相关的剧本,包含:
- 剧本文件名
- 相似度得分
- 内容预览(前200字符)
- 完整文件路径
**注入到context**:
参考以下爆款剧本的风格和节奏:
【参考剧本1】《封总的复仇娇妻》
- 相似度:0.892
- 特点:复仇女主、霸总、豪门恩怨、打脸爽剧
- 节奏:快节奏、高冲突密度、强情绪冲击
- 对话风格:短句、高对话比、视觉标记丰富
【参考剧本2】...
执行步骤
Step 1: 构建检索查询
从当前剧本需求中提取关键信息:
# 示例:从分集规划中提取
query_parts = []
if "类型" in episode_plan:
query_parts.append(episode_plan["类型"])
if "情绪" in episode_plan:
query_parts.append(episode_plan["情绪"])
if "主要情节" in episode_plan:
query_parts.append(episode_plan["主要情节"])
query = " ".join(query_parts)
# 结果:query = "复仇 愤怒 打脸揭秘"Step 2: 执行检索
使用混合搜索引擎:
from hybrid_search import HybridSearchEngine
# 初始化(只需一次)
engine = HybridSearchEngine("../../knowledge/hit-scripts-md")
# 检索Top 5
results = engine.hybrid_search(
query=query,
n_results=5,
semantic_weight=0.6,
keyword_weight=0.4
)Step 3: 读取完整内容
reference_scripts = []
for result in results:
with open(result['path'], 'r', encoding='utf-8') as f:
content = f.read()
reference_scripts.append({
'filename': result['filename'],
'score': result['score'],
'content': content[:5000] # 取前5000字符
})Step 4: 注入到生成提示词
你是一名短剧编剧,现在需要创作第N集剧本。
【参考爆款剧本】
以下是5个最相关的爆款剧本,请参考它们的:
- 节奏:场景数、冲突密度、时长分布
- 对话:句长、对话比、视觉标记
- 情绪:情绪强度、情感极性摆动
- 框架:开局-发展-高潮-反转-结局
1. 《封总的复仇娇妻》(相似度:0.892)
[内容节选...]
2. 《...》(相似度:0.856)
[内容节选...]
...
【当前任务】
根据以上参考,创作第N集剧本...
对比分析
生成剧本后,使用相同的5个参考剧本进行对比分析:
1. 节奏对比
# 统计生成剧本的节奏指标
generated_metrics = {
'scene_count': 6,
'conflict_density': 0.015,
'avg_scene_duration': 10,
'emotion_intensity': 0.012
}
# 统计参考剧本的平均指标
reference_metrics = {
'scene_count': 8.5,
'conflict_density': 0.035,
'avg_scene_duration': 7.5,
'emotion_intensity': 0.025
}
# 对比分析
if generated_metrics['scene_count'] < reference_metrics['scene_count']:
feedback.append("场景数偏少,建议增加2个过渡场景")2. 对话风格对比
# 统计对话指标
generated_style = {
'avg_sentence_length': 18,
'dialogue_ratio': 0.45,
'visual_markers_per_100': 1
}
reference_style = {
'avg_sentence_length': 12,
'dialogue_ratio': 0.72,
'visual_markers_per_100': 4
}
# 对比分析
if generated_style['dialogue_ratio'] < reference_style['dialogue_ratio']:
feedback.append("对话比偏低,建议增加对话,减少叙述")3. 情绪冲击力对比
# 分析情绪词汇密度
generated_emotion_density = 0.5 # 每100字0.5个情绪词
reference_emotion_density = 2.0 # 每100字2个情绪词
if generated_emotion_density < reference_emotion_density:
feedback.append("情绪词汇偏少,建议增加情绪化表达")复审流程
导演复审(review-director)
使用 `comparative-review-skill` 进行综合对比: 1. 加载生成剧本和5个参考剧本 2. 对比节奏、对话、情绪、框架 3. 给出PASS/FAIL判断 4. 提供具体改进建议(引用具体的参考剧本)
**输出示例**:
【综合审核】FAIL
节奏问题:
- 场景数:生成6场景,参考平均8.5场景 → 建议增加2个过渡场景
- 冲突密度:生成0.015,参考平均0.035 → 建议在第3、5场景增加对抗
对话风格问题:
- 句长:生成18字符,参考平均12字符 → 建议拆分长句
- 对话比:生成45%,参考平均72% → 建议增加对话,减少叙述
参考示例:
请参考《封总的复仇娇妻》第15集的对抗场景结构
请参考《霸总的替身新娘》第8集的对话节奏
编剧复审(script-writer)
使用 `style-analysis-skill` 分析风格: 1. 统计生成剧本的语言风格指标 2. 统计5个参考剧本的平均指标 3. 对比分析差异 4. 提供改进建议
**输出示例**:
【风格分析】
句长分布:
- 生成剧本:平均18字符
- 参考剧本:平均12字符
- 建议:拆分长句,增加短句比例
对话比:
- 生成剧本:45%
- 参考剧本:72%
- 建议:增加对话,减少叙述性文字
视觉标记:
- 生成剧本:1个/100字
- 参考剧本:4个/100字
- 建议:增加视觉标记(如:冷笑、嗤笑、冷哼等)
成功标准
1. **检索准确性**:检索到的5个剧本相似度 > 0.5 2. **参考有效性**:生成剧本的指标接近参考剧本(±20%) 3. **风格一致性**:网文感、节奏感、情绪冲击力达标 4. **复审通过**:导演和编剧复审均PASS
注意事项
1. **开源版语料**:默认不包含 `knowledge/hit-scripts-md/`,请自行放入有权使用的 `.md` 剧本语料 2. **首次使用**:首次运行需要构建索引(约60秒),索引会持久化保存到本地 `.search_index/` 3. **后续使用**:索引已保存,加载速度快(1-2秒) 4. **男女频分类**:支持按男频/女频/全部进行过滤,提高检索精准度 5. **权重调整**:可根据实际效果调整语义/关键词权重 6. **参考数量**:默认检索Top 5,可根据需要调整(3-10个) 7. **内容长度**:注入context时建议每个参考剧本取前5000字符,避免超出上下文限制
文件位置
- 检索引擎:`../../scripts/improved_hybrid_search.py`(推荐)或 `../../scripts/hybrid_search.py`(备选)
- 爆款剧本:`../../knowledge/hit-scripts-md/*.md`(本地自备语料,开源版默认不包含)
- 对比分析:`comparative-review-skill`
- 风格分析:`style-analysis-skill`
---
使用指南(Agent 集成)
在 script-writer 中使用
**Step 0:判断原小说类型(男频/女频/中性)**
根据原小说特征判断(核心判断标准:主角性别):
男频特征:
- 【核心】主角:男性主角为中心,男主视角
- 类型:复仇、逆袭、霸道、战神、龙王、赘婿、神医
- 情节:打脸、装逼、碾压、称霸
- 示例:《赘婿之王》《战神归来》《神医下山》
女频特征:
- 【核心】主角:女性主角为中心,女主视角
- 类型:虐恋、甜宠、豪门、替身、真假千金、重生复仇
- 情节:误会、虐心、和解、宠溺、逆袭
- 示例:《豪门替身妻》《真假千金》《霸总的替身新娘》
中性/不确定:
- 双主角、群像剧、或类型不明显
- 使用 `all` 参数不限类型
判断流程:
1. 首先看主角性别:男主 → 男频,女主 → 女频
2. 其次看类型关键词:复仇/战神/赘婿 → 男频,虐恋/甜宠/替身 → 女频
3. 最后看情节特征:打脸/碾压 → 男频,误会/虐心 → 女频
判断结果:
- 男频 → 使用 `male` 参数
- 女频 → 使用 `female` 参数
- 中性 → 使用 `all` 参数
**Step 1:构建查询关键词**
根据剧本特征选择关键词:
- 核心类型:重生、穿越、复仇、逆袭、虐恋、甜宠
- 场景类型:豪门、古代、现代、职场、校园、宫廷
- 特殊元素:道门、玄幻、霸总、白莲花、打脸(可选)
示例:query = "重生 复仇 豪门"
**Step 2:执行检索**
# 推荐:使用改进版混合搜索(持久化索引 + 男女频分类)
python3 scripts/improved_hybrid_search.py "重生 复仇 豪门" male
# 或指定女频:python3 scripts/improved_hybrid_search.py "重生 复仇 豪门" female
# 或不限类型:python3 scripts/improved_hybrid_search.py "重生 复仇 豪门" all
# 备选:使用快速搜索(如环境不支持)
python3 scripts/quick_search.py "重生 复仇 豪门"
**Step 3:读取参考剧本**
读取检索结果的前5000字作为参考
**Step 4:注入到 Context**
将参考剧本内容注入到生成 prompt 中,参考其:
1. 对话比(约70%)
2. 视觉标记密度(3.5-4.5个/100字)
3. 网文感关键词(1.8-3.0个/100字)
4. 句长控制(10-14字符)
5. 节奏感(起承转合)
关键词选择建议
**优先级1:核心类型(必选)**
- 重生、穿越、复仇、逆袭、虐恋、甜宠
**优先级2:场景类型(必选)**
- 豪门、古代、现代、职场、校园、宫廷
**优先级3:特殊元素(可选)**
- 道门、玄幻、霸总、白莲花、打脸
**示例**:
✅ 好的查询:"重生 复仇 豪门"(3个核心关键词)
❌ 不好的查询:"重生复仇道门天师豪门虐待"(太多关键词)
###
Read more
name: hit-script-retrieval-skill description: 爆款剧本检索技能。使用混合搜索(语义+关键词)检索最相关的爆款剧本,为生成提供参考。
爆款剧本检索技能
必读
1. `../../references/00-first-principles.md` — 第一性原则(可拍性、留存性、一致性) 2. `../../references/03-script-writing-standard.md` — 剧本写作标准(对话比、视觉标记、网文感) 3. `../../references/12-genre-specific-techniques.md` — 类型化技巧(男频/女频特征)
功能
从117部爆款短剧剧本中检索最相关的剧本,为剧本生成提供参考。
检索方法
使用**混合搜索**(Chroma语义搜索 + TF-IDF关键词搜索):
- 语义搜索权重:60%(理解深层含义)
- 关键词搜索权重:40%(精确匹配)
使用场景
1. 剧本生成前检索
在生成剧本前,根据以下信息检索相关剧本:
- 剧本类型(复仇/逆袭/穿越/重生等)
- 情绪基调(愤怒/悲伤/爽感/紧张等)
- 主要情节(打脸/揭秘/对抗/和解等)
- 人物关系(主角vs反派/主角vs配角等)
- 场景类型(豪门/古代/现代/职场等)
**示例查询**:
"复仇女主霸总豪门打脸" "穿越古代逆袭当皇后" "重生复仇虐恋"
2. 检索结果使用
检索返回Top 5最相关的剧本,包含:
- 剧本文件名
- 相似度得分
- 内容预览(前200字符)
- 完整文件路径
**注入到context**:
参考以下爆款剧本的风格和节奏: 【参考剧本1】《封总的复仇娇妻》 - 相似度:0.892 - 特点:复仇女主、霸总、豪门恩怨、打脸爽剧 - 节奏:快节奏、高冲突密度、强情绪冲击 - 对话风格:短句、高对话比、视觉标记丰富 【参考剧本2】...
执行步骤
Step 1: 构建检索查询
从当前剧本需求中提取关键信息:
# 示例:从分集规划中提取
query_parts = []
if "类型" in episode_plan:
query_parts.append(episode_plan["类型"])
if "情绪" in episode_plan:
query_parts.append(episode_plan["情绪"])
if "主要情节" in episode_plan:
query_parts.append(episode_plan["主要情节"])
query = " ".join(query_parts)
# 结果:query = "复仇 愤怒 打脸揭秘"Step 2: 执行检索
使用混合搜索引擎:
from hybrid_search import HybridSearchEngine
# 初始化(只需一次)
engine = HybridSearchEngine("../../knowledge/hit-scripts-md")
# 检索Top 5
results = engine.hybrid_search(
query=query,
n_results=5,
semantic_weight=0.6,
keyword_weight=0.4
)Step 3: 读取完整内容
reference_scripts = []
for result in results:
with open(result['path'], 'r', encoding='utf-8') as f:
content = f.read()
reference_scripts.append({
'filename': result['filename'],
'score': result['score'],
'content': content[:5000] # 取前5000字符
})Step 4: 注入到生成提示词
你是一名短剧编剧,现在需要创作第N集剧本。 【参考爆款剧本】 以下是5个最相关的爆款剧本,请参考它们的: - 节奏:场景数、冲突密度、时长分布 - 对话:句长、对话比、视觉标记 - 情绪:情绪强度、情感极性摆动 - 框架:开局-发展-高潮-反转-结局 1. 《封总的复仇娇妻》(相似度:0.892) [内容节选...] 2. 《...》(相似度:0.856) [内容节选...] ... 【当前任务】 根据以上参考,创作第N集剧本...
对比分析
生成剧本后,使用相同的5个参考剧本进行对比分析:
1. 节奏对比
# 统计生成剧本的节奏指标
generated_metrics = {
'scene_count': 6,
'conflict_density': 0.015,
'avg_scene_duration': 10,
'emotion_intensity': 0.012
}
# 统计参考剧本的平均指标
reference_metrics = {
'scene_count': 8.5,
'conflict_density': 0.035,
'avg_scene_duration': 7.5,
'emotion_intensity': 0.025
}
# 对比分析
if generated_metrics['scene_count'] < reference_metrics['scene_count']:
feedback.append("场景数偏少,建议增加2个过渡场景")2. 对话风格对比
# 统计对话指标
generated_style = {
'avg_sentence_length': 18,
'dialogue_ratio': 0.45,
'visual_markers_per_100': 1
}
reference_style = {
'avg_sentence_length': 12,
'dialogue_ratio': 0.72,
'visual_markers_per_100': 4
}
# 对比分析
if generated_style['dialogue_ratio'] < reference_style['dialogue_ratio']:
feedback.append("对话比偏低,建议增加对话,减少叙述")3. 情绪冲击力对比
# 分析情绪词汇密度
generated_emotion_density = 0.5 # 每100字0.5个情绪词
reference_emotion_density = 2.0 # 每100字2个情绪词
if generated_emotion_density < reference_emotion_density:
feedback.append("情绪词汇偏少,建议增加情绪化表达")复审流程
导演复审(review-director)
使用 `comparative-review-skill` 进行综合对比: 1. 加载生成剧本和5个参考剧本 2. 对比节奏、对话、情绪、框架 3. 给出PASS/FAIL判断 4. 提供具体改进建议(引用具体的参考剧本)
**输出示例**:
【综合审核】FAIL 节奏问题: - 场景数:生成6场景,参考平均8.5场景 → 建议增加2个过渡场景 - 冲突密度:生成0.015,参考平均0.035 → 建议在第3、5场景增加对抗 对话风格问题: - 句长:生成18字符,参考平均12字符 → 建议拆分长句 - 对话比:生成45%,参考平均72% → 建议增加对话,减少叙述 参考示例: 请参考《封总的复仇娇妻》第15集的对抗场景结构 请参考《霸总的替身新娘》第8集的对话节奏
编剧复审(script-writer)
使用 `style-analysis-skill` 分析风格: 1. 统计生成剧本的语言风格指标 2. 统计5个参考剧本的平均指标 3. 对比分析差异 4. 提供改进建议
**输出示例**:
【风格分析】 句长分布: - 生成剧本:平均18字符 - 参考剧本:平均12字符 - 建议:拆分长句,增加短句比例 对话比: - 生成剧本:45% - 参考剧本:72% - 建议:增加对话,减少叙述性文字 视觉标记: - 生成剧本:1个/100字 - 参考剧本:4个/100字 - 建议:增加视觉标记(如:冷笑、嗤笑、冷哼等)
成功标准
1. **检索准确性**:检索到的5个剧本相似度 > 0.5 2. **参考有效性**:生成剧本的指标接近参考剧本(±20%) 3. **风格一致性**:网文感、节奏感、情绪冲击力达标 4. **复审通过**:导演和编剧复审均PASS
注意事项
1. **开源版语料**:默认不包含 `knowledge/hit-scripts-md/`,请自行放入有权使用的 `.md` 剧本语料 2. **首次使用**:首次运行需要构建索引(约60秒),索引会持久化保存到本地 `.search_index/` 3. **后续使用**:索引已保存,加载速度快(1-2秒) 4. **男女频分类**:支持按男频/女频/全部进行过滤,提高检索精准度 5. **权重调整**:可根据实际效果调整语义/关键词权重 6. **参考数量**:默认检索Top 5,可根据需要调整(3-10个) 7. **内容长度**:注入context时建议每个参考剧本取前5000字符,避免超出上下文限制
文件位置
- 检索引擎:`../../scripts/improved_hybrid_search.py`(推荐)或 `../../scripts/hybrid_search.py`(备选)
- 爆款剧本:`../../knowledge/hit-scripts-md/*.md`(本地自备语料,开源版默认不包含)
- 对比分析:`comparative-review-skill`
- 风格分析:`style-analysis-skill`
---
使用指南(Agent 集成)
在 script-writer 中使用
**Step 0:判断原小说类型(男频/女频/中性)**
根据原小说特征判断(核心判断标准:主角性别): 男频特征: - 【核心】主角:男性主角为中心,男主视角 - 类型:复仇、逆袭、霸道、战神、龙王、赘婿、神医 - 情节:打脸、装逼、碾压、称霸 - 示例:《赘婿之王》《战神归来》《神医下山》 女频特征: - 【核心】主角:女性主角为中心,女主视角 - 类型:虐恋、甜宠、豪门、替身、真假千金、重生复仇 - 情节:误会、虐心、和解、宠溺、逆袭 - 示例:《豪门替身妻》《真假千金》《霸总的替身新娘》 中性/不确定: - 双主角、群像剧、或类型不明显 - 使用 `all` 参数不限类型 判断流程: 1. 首先看主角性别:男主 → 男频,女主 → 女频 2. 其次看类型关键词:复仇/战神/赘婿 → 男频,虐恋/甜宠/替身 → 女频 3. 最后看情节特征:打脸/碾压 → 男频,误会/虐心 → 女频 判断结果: - 男频 → 使用 `male` 参数 - 女频 → 使用 `female` 参数 - 中性 → 使用 `all` 参数
**Step 1:构建查询关键词**
根据剧本特征选择关键词: - 核心类型:重生、穿越、复仇、逆袭、虐恋、甜宠 - 场景类型:豪门、古代、现代、职场、校园、宫廷 - 特殊元素:道门、玄幻、霸总、白莲花、打脸(可选) 示例:query = "重生 复仇 豪门"
**Step 2:执行检索**
# 推荐:使用改进版混合搜索(持久化索引 + 男女频分类) python3 scripts/improved_hybrid_search.py "重生 复仇 豪门" male # 或指定女频:python3 scripts/improved_hybrid_search.py "重生 复仇 豪门" female # 或不限类型:python3 scripts/improved_hybrid_search.py "重生 复仇 豪门" all # 备选:使用快速搜索(如环境不支持) python3 scripts/quick_search.py "重生 复仇 豪门"
**Step 3:读取参考剧本**
读取检索结果的前5000字作为参考
**Step 4:注入到 Context**
将参考剧本内容注入到生成 prompt 中,参考其: 1. 对话比(约70%) 2. 视觉标记密度(3.5-4.5个/100字) 3. 网文感关键词(1.8-3.0个/100字) 4. 句长控制(10-14字符) 5. 节奏感(起承转合)
关键词选择建议
**优先级1:核心类型(必选)**
- 重生、穿越、复仇、逆袭、虐恋、甜宠
**优先级2:场景类型(必选)**
- 豪门、古代、现代、职场、校园、宫廷
**优先级3:特殊元素(可选)**
- 道门、玄幻、霸总、白莲花、打脸
**示例**:
✅ 好的查询:"重生 复仇 豪门"(3个核心关键词) ❌ 不好的查询:"重生复仇道门天师豪门虐待"(太多关键词)
###
多 Agent、多 Skill 的小说改编影视流水线:把长篇小说、故事梗概或短剧素材,系统化转成改编分析、分集规划、剧本、审核报告、分镜方案、图片/视频提示词。
Other skills on novel-to-script-team.
art-direction-review-s…
服化道审核技能。用于审核阶段二服化道设计产出(人物设定提示词、场景环境提示词),通过逐项比对、脑内预演和评分制确保造型准确、风格一致、提示词可执行。
comparative-review-ski…
对比审核技能。对比生成剧本与爆款剧本的节奏、对话、情绪、框架,给出PASS/FAIL判断和改进建议。

