返回 Skill 列表
extension
分类: 其它无需 API Key

写书skill

基于知识库内容自动撰写书籍。当用户说"写书"、"把知识库写成书"、"帮我出书"、"基于知识库写一本书",或希望将知识库内容组织成完整书籍时触发。不适用于单篇文章写作、简单摘要或翻译。

person作者: user_92a031c4hubcommunity

知识库写书

基于用户知识库中的素材,规划书籍结构、逐章撰写,最终输出出版社级排版的 Word 书稿。

你的工作方式

  1. 读取知识库 — 扫描用户知识库,理解素材全貌
  2. 规划目录 — 基于素材设计书籍大纲,请用户确认
  3. 逐章撰写 — 按确认后的目录,一章一章地写
  4. 整合交付 — 将所有章节拼成 16 开本出版标准排版的 Word 文档,交付给用户

⚠️ 硬性要求

全书正文字数不得少于 10 万字(中文字符)。 规划目录时必须根据此底线计算章节数和每章篇幅。如果素材量不足以支撑 10 万字,需通过补充网络搜索、扩展案例、增加实操章节等方式补足。


Phase 1:读取知识库

这是整本书的素材基础,必须充分理解后再动手规划。

  1. 确认知识库:询问用户要基于哪个知识库写书。如果用户上下文中已明确知识库名称,直接使用,无需再问。
  2. 搜索素材:用 search(source="kb", kb_id=<目标知识库id>) 搜索知识库内容。先用宽泛关键词了解知识库整体覆盖范围,再根据初步结果细化搜索,确保覆盖所有主题。
  3. 精读关键素材:用 fetch(type="media_id") 读取搜索结果中最核心的文档,提取关键观点、数据、案例。
  4. 落盘素材摘要:将素材的关键信息写入 /sandbox/workspace/outputs/book-materials.md,作为后续写作的参考。摘要应包含每篇素材的核心论点、关键数据和可直接引用的段落。

为什么要做这一步:知识库是书的原材料,不充分了解素材就规划目录,容易导致章节空洞或遗漏重要内容。

Phase 2:规划目录

目录决定书的骨架,必须和用户确认后再动笔。

  1. 设计大纲:基于素材摘要,规划书籍结构,包括:
    • 书名(给出 2-3 个候选)
    • 各章节标题
    • 每章的核心内容和预计篇幅
    • 总字数规划:确保全书 ≥ 10 万字
  2. 字数分配参考
    • 每章建议 5000-8000 字
    • 按 10 万字底线,全书至少需要 13-20 章
    • 如章节数不够,可增加"实战案例"、"操作手册"、"附录"等补充章节
  3. 呈现给用户:将大纲写入 /sandbox/workspace/outputs/book-outline.md 并展示给用户。
  4. 等待确认:用户确认目录后进入下一阶段。如果用户要求调整,修改后重新确认。

确认门:必须等用户明确说"可以"、"没问题"、"就这样"等确认语后才能进入 Phase 3。

Phase 3:逐章撰写

按确认后的目录,一章一章地写。每章独立,但需注意前后衔接。

对每一章:

  1. 回顾素材:从 book-materials.md 中提取本章相关的素材要点。
  2. 补充搜索:如果现有素材不足以支撑本章内容,用 search(source="kb") 补充搜索,或用 search(source="web") 查找补充信息。
  3. 撰写初稿:按以下结构写每章:
    • 开头引言(吸引读者,点明本章主旨)
    • 正文论述(逻辑清晰,善用案例和数据支撑)
    • 小结(提炼本章核心观点)
  4. 保存章节:每章写完后保存到 /sandbox/workspace/outputs/chapters/chapter-XX.md(XX 为章节编号,两位数补零)。

写作要求

  • 语言流畅自然,避免生硬的"第一、第二、第三"式的罗列
  • 观点要有素材支撑,不凭空发挥
  • 章节间有逻辑递进,不要写成独立的文章堆砌
  • 每章 5000-8000 字为宜,根据内容灵活调整
  • 多写案例、故事、实操步骤,这是充实字数和提升可读性的关键

进度汇报:每完成一章,简要告知用户进度(如"第3章完成,共15章")。用户可随时要求修改已完成的章节。

Phase 4:整合交付

所有章节完成后,生成 16 开本出版标准排版的 Word 书稿。

  1. 生成 Word 文档:运行合并脚本:

    python3 /sandbox/workspace/skills/kb-book-writer/scripts/merge_chapters.py --title "书名" [--author "作者"] --output /sandbox/workspace/outputs/full-book.docx
    
  2. 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(不留空行) |

  3. 交付:用 provide_filefull-book.docx 交付给用户。


多轮修改

书籍写作是迭代过程,用户可能在任何阶段提出修改:

  • 目录调整:回到 Phase 2,修改大纲后重新确认
  • 章节修改:直接编辑对应章节文件,无需重写全书
  • 整体风格调整:更新后续章节的写作风格,已完成的章节按需返工

修改完成后,重新运行合并脚本生成新的 Word 文档并交付。


工作流示例

示例 1:用户指定知识库写书

用户:"帮我把'创业笔记'知识库写成一本书"

  1. 用 ima-knowledge 获取"创业笔记"的 kb_id
  2. 搜索该知识库,了解内容覆盖:商业模式、融资、团队管理、失败案例等
  3. 精读核心文档,落盘素材摘要
  4. 设计大纲:《从0到1:创业实战手册》,15章,预计 12 万字
  5. 用户确认目录
  6. 逐章撰写(每章 5000-8000 字),保存到 chapters/ 目录
  7. 运行合并脚本生成 16 开本出版标准 full-book.docx 并交付

示例 2:用户未指定知识库

用户:"帮我把知识库写成书"

  1. 询问用户要基于哪个知识库
  2. 获取知识库列表供用户选择
  3. 后续流程同示例 1