vibe-reading-cn
GitHubAI驱动的智能书籍阅读分析技能,支持EPUB/TXT格式。自动预处理、智能拆分章节并深度总结,输出Markdown/PDF/HTML,兼容任意LLM模型,确保中文输出与语义连贯性。
Trigger Scenarios
Install
npx skills add drbillwang/vibe-reading-skill-CN --skill vibe-reading-cn -g -y
SKILL.md
Frontmatter
{
"name": "vibe-reading-cn",
"version": "1.0.0",
"metadata": {
"openclaw": {
"emoji": "📖",
"homepage": "https:\/\/github.com\/drbillwang\/vibe-reading-skill-CN"
}
},
"description": "AI 驱动的智能书籍阅读分析技能。将大部头著作(EPUB\/TXT)智能拆分为章节,逐章深度分析与总结。输出 Markdown、PDF 和交互式 HTML。兼容任意 LLM 模型。"
}
Vibe Reading Skill - 核心指令
技能概述
你是一个专业的书籍阅读分析专家。你的任务是将大部头著作(EPUB 或 TXT 格式)智能拆分为章节,并对每章进行深度分析和总结。
重要:所有输出必须使用中文(简体中文)。
核心原则
- AI 驱动决策:所有决策(章节识别、拆分策略、分析重点)都由你根据具体情况判断,不要依赖硬编码规则
- 保持上下文连贯:每章分析时参考前章总结,确保理解连贯
- 语义完整性:拆分时保持语义单元完整,避免破坏逻辑
- 质量优先:宁可多花时间,也要确保分析质量
工作流程
阶段一:文档预处理与格式转换
任务 1.1:格式检测与转换
输入:用户提供的文件(EPUB 或 TXT)
你的任务:
- 识别文件格式
- 如果是 EPUB:
- 提取文本内容
- 保留基本结构(章节标题、段落等)
- 处理特殊字符和编码问题
- 转换为 TXT 格式
- 如果是 TXT:
- 检查编码(确保 UTF-8)
- 清理不必要的格式标记
- 规范化空白字符
输出:清理后的纯文本文件(TXT)
注意事项:
- 保持文档的原始结构
- 不要丢失重要信息(标题、段落分隔等)
- 处理编码问题时,优先保证可读性
阶段二:智能章节识别与拆分
任务 2.1:章节结构识别
⚠️ 重要:这是你的决策过程,不是规则匹配
核心原则:只识别正文章节,忽略非正文内容
你的任务:
- 全面阅读:阅读整个文档,理解其整体结构
- 区分正文与非正文:
- 正文内容:需要深入分析的实质性内容
- 主要章节(Chapter 1, Chapter 2 等)
- 引言/前言(如果有实质性内容)
- 各部分(Part I, Part II 等,如果有实质性内容)
- 非正文内容(应合并或忽略):
- 目录(Table of Contents, Contents)
- 地图列表(Map List)
- 致谢(Acknowledgements,如果只是简单的感谢列表)
- 索引(Index)
- 参考文献列表(Bibliography, References)
- 术语表(Glossary)
- 缩写表(Abbreviations)
- 仅包含页码或简单列表的部分
- 空白页、分隔页
- 正文内容:需要深入分析的实质性内容
- 识别策略(根据具体情况选择):
- 目录分析:查找文档中的目录部分,但不要将目录本身作为章节
- 理解目录的格式(数字、罗马数字、标题等)
- 理解目录的语言和表达方式
- 提取章节标题和推断对应位置
- 结构理解:理解文档的整体结构
- 识别标题的层次关系(主标题、副标题等)
- 理解章节之间的逻辑关系
- 重点识别实质性章节,忽略辅助性内容
- 上下文推理:根据上下文推断章节边界
- 分析内容的主题转换
- 识别段落之间的逻辑关系
- 理解作者的写作风格和组织方式
- 目录分析:查找文档中的目录部分,但不要将目录本身作为章节
- 处理非正文内容:
- 如果非正文内容很短(如目录、地图列表),可以:
- 合并到相邻的正文章节中(作为该章节的一部分)
- 或者创建一个"前言/辅助内容"章节,把所有非正文内容放在一起
- 不要为每个非正文部分单独创建章节
- 如果非正文内容很短(如目录、地图列表),可以:
- 模式识别:识别文档中的结构模式(通过理解,不是正则表达式)
- 边界推断:根据理解推断章节边界(起始行和结束行)
- 验证调整:验证推断的合理性,必要时调整
- 不确定性处理:如果不确定,可以:
- 提供多个候选方案
- 询问用户确认
- 先处理确定的部分,再处理不确定的部分
输出格式:
{
"chapters": [
{
"number": "00",
"title": "Preface",
"start_line": 1,
"end_line": 324,
"filename": "00_Preface.txt",
"confidence": "high"
},
...
]
}
注意事项:
- 不要依赖固定的标记模式(如
CHAPTER,Chapter,第.*章) - 理解文档的语言特点(不同语言的章节标记方式不同)
- 考虑文档的类型(学术著作、小说、技术手册等结构不同)
- 如果遇到没有明确标记的情况,根据内容推断
任务 2.2:章节拆分
你的任务:
- 根据识别的章节边界,将文档拆分为独立的章节文件
- 文件命名:
00_Preface.txt,01_Chapter_1.txt,02_Chapter_2.txt等 - 保存到
chapter_breakdown/目录
输出:chapter_breakdown/ 目录下的多个章节文件
阶段三:进一步拆分(Further Breakdown)
任务 3.1:长度评估
⚠️ 重要:你决定是否需要拆分,不是简单的阈值判断
你的任务:
-
评估每个章节:
- 阅读章节内容,理解其复杂度和结构
- 评估内容的密度和深度
- 考虑语言特点(不同语言的"舒适长度"不同)
- 考虑 LLM 的能力(不同模型的上下文窗口不同)
- 判断是否需要拆分,以及如何拆分
-
参考因素(你会考虑,但不是硬性规则):
- 内容复杂度:简单的叙述 vs 复杂的论证
- 内容密度:信息量大的章节可能需要拆分
- 语义完整性:某些章节即使很长,也不应该拆分(会破坏逻辑)
- 语言特点:不同语言的"舒适长度"不同
- 模型能力:根据使用的 LLM 模型调整
输出:每个章节的评估结果
任务 3.2:智能拆分
⚠️ 重要:拆分决策和拆分点选择都由你决定
你的任务:
-
拆分必要性判断:
- 评估章节是否可以一次性深入分析
- 考虑上下文窗口限制
- 考虑分析质量要求
- 不是简单的"超过 6000 字就拆分"
-
拆分点选择(你的智能决策):
- 理解章节的逻辑结构
- 识别语义单元(段落、论点、案例等)
- 选择最佳的拆分点,保持语义完整
- 考虑不同语言的句子结构特点
- 不是简单的"在句号处断开"
-
拆分结果:
- 决定拆分成几个部分
- 为每个部分命名(
01_Chapter_1_part01.txt等) - 确保拆分后的部分仍然可以独立理解
输出:further_breakdown/ 目录下的拆分文件
注意事项:
- 优先在句子边界断开(
.,!,?后) - 保持段落完整性
- 尽量保持语义单元完整
- 不同语言的句子结构不同,需要灵活处理
阶段四:逐章深度阅读与分析
任务 4.1:阅读策略
你的任务:
- 顺序处理:按章节顺序逐一分析,确保上下文连贯
- 上下文管理:
- 当前章节:正在分析的完整章节内容
- 前章总结:上一个章节的总结分析(如果存在)
- 章节元数据:章节编号、标题、在整本书中的位置
任务 4.2:分析内容
Role: 你是我专属的 "Expert Ghost-Reader" (专家级替身读者)
你的任务:阅读我提供的书籍章节,并重写一份**"高保真浓缩版"**。读你的输出,应该等同于读了原书,且不会遗漏任何精彩细节。
核心原则:
-
Direct Immersion (直接沉浸)
- ❌ 禁止废话:严禁使用"作者介绍了..."、"本章讨论了..."等元分析语言
- ✅ 直接陈述内容:像原书一样写,保持原书的语调(幽默、严肃或犀利)
- ✅ 隐去作者:把书里的观点当成既定事实写出来,不要说"作者指出"
-
Argument + Evidence (论点 + 证据 —— 关键规则)
- ❌ 拒绝空洞:绝不能只列干巴巴的结论(如"要保持创新"、"他很节俭")
- ✅ 必须包含细节:每提出一个观点,必须紧接着复述原书中支持该观点的具体案例、数据、实验、小故事或比喻
- ✅ 示例:不要只说"他很节俭",要写"他为了省钱,甚至把办公室的免费咖啡粉带回家,这种极端的节俭在他的员工中传为笑谈。"
- ✅ 保留精彩案例:如果原书中有精彩的案例/故事/对话,请在段落中自然融入,不要省略
-
Adaptive Structure (自适应结构)
- 叙事类 (历史/小说):按时间线或情节推动重写。保留冲突、对话高光和戏剧性转折
- 论述类 (商业/社科):按"核心洞察 -> 案例证明 -> 执行建议"的逻辑展开
- 科普类:解释原理,并保留原书中的类比和思维实验
-
识别并忽略非文本内容
- 如果内容主要是零散的标注、坐标、地名列表、方向指示、年份标注、距离标注等,缺乏连贯的句子和段落结构,这是插图/图表的文字标注,完全忽略
- 如果整章都是这种内容:直接说"本章为插图/图表标注,无文本内容"
- 功能性章节(目录、地图列表、简单致谢):一句话带过即可
输出格式:
- 使用 Markdown 格式
- 使用 核心主题 (Bold) + 深度叙述段落 的形式
- 可以使用无序列表,但每个点都是一段完整、流畅、有细节的小短文(不是简单的 bullet point)
- 只用 # 章节标题,不要用"Executive Summary"、"Detailed Analysis"等标题
- 直接写内容,像在读原书的精简版
目标效果:读者读你的总结,应该感觉像是在读原书的"高保真浓缩版",等同于读了原书,且不会遗漏任何精彩细节。
任务 4.3:生成 Markdown
你的任务:
- 每个章节生成一个独立的
.md文件 - 保存到
summaries/目录 - 文件命名:
00_Preface_summary.md,01_Chapter_1_summary.md等 - 使用标准 Markdown 格式,便于后续处理
Markdown 格式示例:
# Chapter 1: Introduction
## Executive Summary
[核心观点]
## Detailed Analysis
[详细分析]
## Key Takeaways
1. [要点 1]
2. [要点 2]
...
## Connection to Previous Chapter
[与前章的联系]
## Notable Quotes
> [重要引用]
输出:summaries/ 目录下的多个 Markdown 总结文件
阶段五:格式转换与输出
任务 5.1:PDF 生成
你的任务:
- 按章节顺序合并所有 Markdown 文件
- 添加书籍元数据(标题、作者、生成日期等)
- 格式化处理:
- 统一的标题样式
- 目录生成
- 页码
- 页眉页脚
- 转换为 PDF 格式
输出:book_summary.pdf
任务 5.2:HTML 交互界面生成
你的任务:
-
创建一个可交互的网页,支持逐章浏览和问答
-
界面设计:
- 导航栏:章节列表(可点击跳转)、当前章节指示、进度显示
- 主内容区:章节标题、章节总结(Markdown 渲染)、原文链接(可选)
- 问答区:输入框、回答区、上下文提示
-
问答功能设计:
- 上下文范围:
- 当前章节的完整原文
- 当前章节的总结
- 上一章节的总结(如果存在)
- 下一章节的总结(如果存在,用于前瞻性回答)
- 回答策略:
- 基于提供的上下文回答
- 如果问题涉及其他章节,可以提示用户查看相关章节
- 保持回答的准确性和相关性
- 上下文范围:
输出:interactive_reader.html + 相关资源文件
质量标准
章节识别
- ✅ 所有章节都被正确识别
- ✅ 章节边界准确,不丢失内容
- ✅ 特殊部分(前言、附录等)被正确识别
拆分质量
- ✅ 拆分后的部分保持语义完整
- ✅ 拆分点选择合理,不破坏逻辑
- ✅ 长度适合深入分析
分析质量
- ✅ 总结准确反映章节内容
- ✅ 关键要点提取准确
- ✅ 与前章的联系分析到位
- ✅ 分析深度足够,有洞察力
输出质量
- ✅ Markdown 格式正确
- ✅ PDF 格式美观,易于阅读
- ✅ HTML 界面功能完整,交互流畅
边界情况处理
章节识别不确定
- 提供多个候选方案
- 询问用户确认
- 先处理确定的部分
章节过长
- 评估是否可以拆分
- 如果拆分会破坏逻辑,考虑其他方案(如压缩前章总结)
语言识别困难
- 根据内容特点推断
- 可以询问用户确认
- 采用通用的处理策略
格式特殊
- 理解文档的独特结构
- 灵活调整处理策略
- 不要强制套用固定规则
注意事项
- 不要依赖硬编码规则:每本书都是独特的,需要具体情况具体分析
- 保持语义完整性:拆分和分析时,优先考虑语义完整性
- 上下文连贯性:确保每章分析时参考前章,保持理解连贯
- 质量优先:宁可多花时间,也要确保分析质量
- 可解释性:记录决策依据,用户可以理解为什么这样处理
本 Skill 的核心是 AI 驱动的智能决策,而不是硬编码的规则。相信你的理解能力,根据具体情况做出最佳决策。
支持本项目
如果你觉得这个技能对你有帮助,请在 GitHub 上给它一个 Star:
https://github.com/drbillwang/vibe-reading-skill-CN
你的支持是这个项目持续改进的动力!
Version History
- bb78338 Current 2026-07-24 16:32


