知识库写书
基于用户知识库中的素材,规划书籍结构、逐章撰写,最终输出出版社级排版的 Word 书稿。
你的工作方式
- 读取知识库 — 扫描用户知识库,理解素材全貌
- 规划目录 — 基于素材设计书籍大纲,请用户确认
- 逐章撰写 — 按确认后的目录,一章一章地写
- 整合交付 — 将所有章节拼成 16 开本出版标准排版的 Word 文档,交付给用户
⚠️ 硬性要求
全书正文字数不得少于 10 万字(中文字符)。 规划目录时必须根据此底线计算章节数和每章篇幅。如果素材量不足以支撑 10 万字,需通过补充网络搜索、扩展案例、增加实操章节等方式补足。
Phase 1:读取知识库
这是整本书的素材基础,必须充分理解后再动手规划。
- 确认知识库:询问用户要基于哪个知识库写书。如果用户上下文中已明确知识库名称,直接使用,无需再问。
- 搜索素材:用
search(source="kb", kb_id=<目标知识库id>)搜索知识库内容。先用宽泛关键词了解知识库整体覆盖范围,再根据初步结果细化搜索,确保覆盖所有主题。 - 精读关键素材:用
fetch(type="media_id")读取搜索结果中最核心的文档,提取关键观点、数据、案例。 - 落盘素材摘要:将素材的关键信息写入
/sandbox/workspace/outputs/book-materials.md,作为后续写作的参考。摘要应包含每篇素材的核心论点、关键数据和可直接引用的段落。
为什么要做这一步:知识库是书的原材料,不充分了解素材就规划目录,容易导致章节空洞或遗漏重要内容。
Phase 2:规划目录
目录决定书的骨架,必须和用户确认后再动笔。
- 设计大纲:基于素材摘要,规划书籍结构,包括:
- 书名(给出 2-3 个候选)
- 各章节标题
- 每章的核心内容和预计篇幅
- 总字数规划:确保全书 ≥ 10 万字
- 字数分配参考:
- 每章建议 5000-8000 字
- 按 10 万字底线,全书至少需要 13-20 章
- 如章节数不够,可增加"实战案例"、"操作手册"、"附录"等补充章节
- 呈现给用户:将大纲写入
/sandbox/workspace/outputs/book-outline.md并展示给用户。 - 等待确认:用户确认目录后进入下一阶段。如果用户要求调整,修改后重新确认。
确认门:必须等用户明确说"可以"、"没问题"、"就这样"等确认语后才能进入 Phase 3。
Phase 3:逐章撰写
按确认后的目录,一章一章地写。每章独立,但需注意前后衔接。
对每一章:
- 回顾素材:从
book-materials.md中提取本章相关的素材要点。 - 补充搜索:如果现有素材不足以支撑本章内容,用
search(source="kb")补充搜索,或用search(source="web")查找补充信息。 - 撰写初稿:按以下结构写每章:
- 开头引言(吸引读者,点明本章主旨)
- 正文论述(逻辑清晰,善用案例和数据支撑)
- 小结(提炼本章核心观点)
- 保存章节:每章写完后保存到
/sandbox/workspace/outputs/chapters/chapter-XX.md(XX 为章节编号,两位数补零)。
写作要求:
- 语言流畅自然,避免生硬的"第一、第二、第三"式的罗列
- 观点要有素材支撑,不凭空发挥
- 章节间有逻辑递进,不要写成独立的文章堆砌
- 每章 5000-8000 字为宜,根据内容灵活调整
- 多写案例、故事、实操步骤,这是充实字数和提升可读性的关键
进度汇报:每完成一章,简要告知用户进度(如"第3章完成,共15章")。用户可随时要求修改已完成的章节。
Phase 4:整合交付
所有章节完成后,生成 16 开本出版标准排版的 Word 书稿。
-
生成 Word 文档:运行合并脚本:
python3 /sandbox/workspace/skills/kb-book-writer/scripts/merge_chapters.py --title "书名" [--author "作者"] --output /sandbox/workspace/outputs/full-book.docx -
16 开本出版排版规范(脚本自动处理):
| 项目 | 规范 | |------|------| | 开本 | 16 开(185mm × 260mm) | | 版心 | 140mm × 206mm | | 页边距 | 天头 27mm,地脚 27mm,订口 30mm,切口 15mm | | 正文字体 | 宋体,五号(10.5pt) | | 正文行距 | 20pt 固定值 | | 正文对齐 | 两端对齐,首行缩进 2 字符 | | 一级标题 | 黑体,三号(16pt),居中 | | 二级标题 | 黑体,四号(14pt),居左 | | 三级标题 | 黑体,小四号(12pt),居左 | | 书眉 | 六号字(7.5pt),居中,下文武线 | | 页码 | 小五号(9pt),底部居中 | | 封面 | 书名黑体 36pt 居中 + 作者信息 | | 目录 | 章号黑体小四号 + 章标题宋体小四号 | | 代码块 | Courier New 小五号(9pt),浅灰底色 | | 引用块 | 楷体五号,左缩进 1cm | | 表格 | Table Grid 样式,表头黑体小五号加粗 | | 段落间距 | 段前段后 0pt(不留空行) |
-
交付:用
provide_file将full-book.docx交付给用户。
多轮修改
书籍写作是迭代过程,用户可能在任何阶段提出修改:
- 目录调整:回到 Phase 2,修改大纲后重新确认
- 章节修改:直接编辑对应章节文件,无需重写全书
- 整体风格调整:更新后续章节的写作风格,已完成的章节按需返工
修改完成后,重新运行合并脚本生成新的 Word 文档并交付。
工作流示例
示例 1:用户指定知识库写书
用户:"帮我把'创业笔记'知识库写成一本书"
- 用 ima-knowledge 获取"创业笔记"的 kb_id
- 搜索该知识库,了解内容覆盖:商业模式、融资、团队管理、失败案例等
- 精读核心文档,落盘素材摘要
- 设计大纲:《从0到1:创业实战手册》,15章,预计 12 万字
- 用户确认目录
- 逐章撰写(每章 5000-8000 字),保存到 chapters/ 目录
- 运行合并脚本生成 16 开本出版标准 full-book.docx 并交付
示例 2:用户未指定知识库
用户:"帮我把知识库写成书"
- 询问用户要基于哪个知识库
- 获取知识库列表供用户选择
- 后续流程同示例 1
微信扫一扫