Yq Knowledge Digest

Other

将学习资料(PDF/教材/话题)转换为个性化、多模态的学习材料:手写笔记PDF、极简交互测验HTML、幻灯片PDF+PPTX、思维导图、音频课程。触发词:知识消化、学习材料、笔记生成、测验、幻灯片、思维导图、音频课程、课件、教材转换

Install

openclaw skills install yq-knowledge-digest

知识消化助手

Overview

将用户提供的教材、PDF或话题转换为个性化、多模态的学习体验。支持输出格式包括:手写风格笔记(PDF)、极简交互测验(HTML)、幻灯片(PDF+PPTX)、思维导图(图像+Mermaid)、音频课程(mp3)。根据年级水平(小学/初中/高中/大学/专业)自动调整内容深度和表达方式。

支持的输出格式

格式关键词输出文件说明
notes笔记/手写笔记{topic}_notes.pdf手写风格笔记PDF,在原文上标注或从零生成
quiz测验/测试{topic}_quiz.html极简HTML,可交互,即时反馈
slides幻灯片/PPT{topic}_slides.pdf + {topic}_slides.pptx视觉信息图表风格幻灯片
mindmap思维导图{topic}_mindmap.png + Mermaid文本清晰视觉层级的知识结构图
audio音频课程{topic}_audio.mp3师生对话形式,约15分钟
all全部以上全部生成所有格式

默认行为:如果用户未指定格式,默认生成 mindmap + slides(仅PDF) + quiz

Workflow

阶段1:获取用户输入

  1. 获取以下信息:

    • 用户上传的PDF/教材文件(可选)
    • 或:话题/方向描述
    • 年级水平(小学/初中/高中/大学/专业)
    • 期望的输出格式(可多选)
  2. 判断是否有学习资料:

    • 如果用户没有上传PDF/教材,也没有指定可获取资料的来源,只提供了话题/方向:
      • 询问用户:
        • 选项A:"我有资料,现在上传"
        • 选项B:"没有资料,请帮我搜索并生成关于[话题]的课件"
    • 如果用户选择B:
      • 使用搜索工具收集该话题的权威资料
      • 整理为结构化内容,生成一份基础课件PDF
      • 将PDF发送给用户确认:"这是我为[话题]整理的基础资料,请确认是否可用?"
      • 用户确认后继续标准流程

阶段2:内容解析

对PDF或结构化内容进行解析,提取结构化信息。

文档解析

  • 识别文档的章节结构(章、节、小节)
  • 提取标题层级和目录结构
  • 识别正文、图片、表格、公式等元素

核心概念提取

  • 识别每个章节的核心概念和关键术语
  • 提取定义、定理、公式等重要内容
  • 标记难点和重点知识

学习目标分析

  • 根据内容推断每章节的学习目标
  • 识别前置知识要求
  • 分析知识点之间的依赖关系

输出格式

{
  "document_info": {
    "title": "文档标题",
    "total_pages": 100,
    "language": "zh/en",
    "subject": "学科领域"
  },
  "chapters": [
    {
      "chapter_id": "1",
      "title": "章节标题",
      "page_range": [1, 20],
      "sections": [
        {
          "section_id": "1.1",
          "title": "小节标题",
          "core_concepts": ["概念1", "概念2"],
          "key_terms": [
            {"term": "术语", "definition": "定义"}
          ],
          "learning_objectives": ["目标1", "目标2"],
          "difficulty": "easy/medium/hard",
          "prerequisites": ["前置知识"]
        }
      ]
    }
  ],
  "knowledge_graph": {
    "nodes": ["概念节点列表"],
    "edges": [{"from": "概念A", "to": "概念B", "relation": "依赖/包含/相关"}]
  }
}

解析规则

  • 章节识别:根据字体大小、加粗、编号等识别层级;处理没有明确章节标记的文档(按逻辑分段)
  • 概念提取:识别加粗、高亮、框注的重要内容;提取专有名词和术语定义;识别公式和定理
  • 难度评估:根据概念抽象程度评估难度;考虑前置知识要求;考虑内容复杂度
  • 质量保证:确保所有章节都被识别;验证知识点覆盖完整性;检查概念定义的准确性

阶段3:根据用户选择的格式,按顺序执行生成任务

依次完成用户所选的每种格式的生成(详见下方各格式的专项指南)。

阶段4:统一交付

所有格式生成完毕后,统一向用户展示所有生成文件:

<deliver_assets>
<item>
<path>文件路径</path>
</item>
</deliver_assets>

输出规则(适用于所有格式)

  • 只返回文件路径,禁止输出预览
  • 禁止在对话中内嵌展示图片/PDF/音频/视频
  • 音频/视频类文件禁止自动播放
  • 不输出中间文件、制作备注——只交付文件路径

个性化适配规则(全局)

以下规则适用于所有生成格式,各格式可在此基础上进一步细化。

年级适配

年级语言风格内容深度视觉风格
小学活泼语气、简单词汇、鼓励性语言、故事化讲解简单、生活化更多图片、趣味元素、鲜艳色彩、简短文字、大字体
初中引导式提问、基础术语、青春化表达基础术语、日常场景、适中难度图文结合、适中信息量、清晰标注
高中深度讨论、逻辑推理、适当学术性专业术语、逻辑推理、较高难度逻辑图表、数据可视化、专业感
大学/专业研讨式对话、批判性思维、专业术语学术语言、综合应用、专业深度专业图表、复杂结构、学术风格

兴趣适配

  • 对话/题目中的例子和比喻使用用户兴趣领域
  • 选项内容融入用户熟悉的元素
  • 视觉风格和示例场景匹配用户兴趣
  • 图表类比使用用户熟悉的领域

格式1:手写风格笔记(notes)

输入类型判断

类型A - 现成论文/课件(在原页面上叠加手写笔记):

  • PDF格式的学术论文
  • PDF格式的课件/PPT导出
  • 已有排版的教材扫描件
  • 特征:有固定版式、有页码、有章节编号、有公式/图表

类型B - 非现成内容(从零生成笔记PDF):

  • 纯文本笔记
  • 知识点列表
  • 口述内容整理
  • 网页内容摘录
  • 特征:无固定版式、需要重新组织结构

类型A工作流:在原文基础上添加笔记

步骤1:分析原文结构

逐页分析PDF内容:

  • 识别章节标题及其位置
  • 识别核心概念/术语
  • 识别公式及其含义
  • 识别问题/挑战的陈述
  • 识别解决方案/方法
  • 识别关键结论

步骤2:规划笔记内容

为每页规划需要添加的手写标注:

标注类型:

  1. 章节标题翻译/解释(如原文"3.1 Preliminaries" → 标注"背景知识")
  2. 重点提问(如"重点:如何降低复杂度?")
  3. 概念解释(如公式旁标注"核技巧(kernel trick)")
  4. 问题标注(如"问题:记忆溢出")
  5. 解决方案(如"解决方案:遗忘门")
  6. 公式批注(如"递归形式"、"写操作 & 读操作")
  7. 结构标注(如用大括号标注一组公式,旁边写"→ O(N²)复杂度")

标注规划原则:

  • 每页3-8处标注,不过密
  • 标注位置避开正文关键内容
  • 利用页边距和段落间空白
  • 相关内容用连线或箭头关联

步骤3:生成带标注的图像

将原PDF每页转为图像,然后使用图像生成工具在其上添加手写风格标注:

生图工具输入:

  • 基础图像:原PDF页面的截图
  • 叠加内容:手写风格的中文标注

手写标注风格要求:

  • 字体:手写风格,略带倾斜
  • 颜色:全PDF统一用色,不超过2种
    • 默认使用蓝色和粉色,除非用户另有要求
    • 后续所有页面只能从这2种颜色中选择
    • 颜色分配规则:
      • 颜色1(蓝色/主色):章节标题、结构标注、概念解释、公式批注
      • 颜色2(粉色/强调色):重点提问、问题标注、解决方案
  • 大小:比正文略大,醒目但不喧宾夺主
  • 位置:页边距、段落间、公式旁的空白处

步骤4:编译PDF

将所有带标注的页面图像编译为PDF:

  • 保持原始页面顺序
  • 图像质量:150 DPI
  • 压缩质量:90%

类型B工作流:从零生成笔记PDF

步骤1:组织内容结构

将输入内容整理为层级结构:

  • 主标题
  • 章节/模块
  • 核心概念
  • 要点/细节
  • 示例/应用

步骤2:设计笔记版式

版式元素:

  • 标题区:大号手写标题
  • 正文区:手写风格的要点列表
  • 图解区:概念图、流程图、关系图(手绘风格)
  • 标注区:重点标记、问号、感叹号
  • 空白区:预留用户自己添加笔记的空间

步骤3:生成笔记页面图像

使用图像生成工具,逐页生成手写风格的笔记:

每页包含:

  • 页面标题(手写大字)
  • 核心内容(手写要点)
  • 图解(手绘风格的概念图/流程图)
  • 重点标注(框、箭头、下划线)
  • 批注(如"重要!"、"易错点"、"记住这个")

风格要求:

  • 整体:像学生用心做的笔记,不是打印文档
  • 字体:手写体,大小有变化(标题大、正文中、批注小)
  • 颜色:全PDF统一用色,不超过2种
    • 默认使用蓝色和粉色,除非用户另有要求
    • 后续所有页面只能从这2种颜色中选择
    • 颜色分配:蓝色(标题、框架、批注)、粉色(重点)
  • 布局:有组织但不死板,允许适度倾斜和错落
  • 元素:箭头、下划线、方框、云朵框、星号等手绘装饰,仅在必要时使用相应元素

步骤4:编译PDF

将所有笔记页面图像编译为PDF:

  • 按内容逻辑顺序排列
  • 图像质量:150 DPI
  • 压缩质量:90%

笔记质量标准

  1. 内容准确性:标注/笔记内容基于原文;翻译/解释准确;不添加原文没有的信息
  2. 标注价值:标注帮助理解,不是简单重复;重点突出关键概念;问题和解决方案对应清晰
  3. 视觉效果:手写风格自然,不像机打;颜色搭配协调;标注位置合理,不遮挡原文
  4. 可用性:PDF可直接打印;适合屏幕阅读;文件大小合理

输出{topic}_notes.pdf


格式2:交互测验(quiz)

题目设计

每节至少5道题,题型分布:

  • 选择题(multiple_choice):2-3道
  • 判断题(true_false):1-2道
  • 填空题(fill_blank):1-2道

难度分布:

  • 40% 简单(记忆、理解)
  • 40% 中等(应用)
  • 20% 困难(分析、综合)

每道题必须包含:

  • 题目内容(使用个性化场景)
  • 正确答案
  • 答案解析(有教学价值,不只是"答案是X")
  • 关联的核心概念

HTML生成规范

生成单个HTML文件,包含所有题目和交互逻辑。

设计原则:极简

视觉风格:

  • 纯白背景
  • 黑色文字
  • 无装饰元素、无图标、无渐变、无阴影
  • 无边框或仅使用1px灰色细线
  • 字体:系统默认字体
  • 最小化CSS,不使用任何UI框架

交互设计:

  • 点击选项即选中,选中状态仅用轻微背景色区分
  • 提交后立即显示对错和解析
  • 对:绿色文字"✓ 正确"
  • 错:红色文字"✗ 错误"+ 正确答案 + 解析
  • 最后显示总分

HTML模板参考

<!DOCTYPE html>
<html lang="zh">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>章节测验</title>
  <style>
    body {
      font-family: system-ui, sans-serif;
      max-width: 600px;
      margin: 40px auto;
      padding: 20px;
      line-height: 1.6;
    }
    h1 { font-size: 1.5em; font-weight: normal; }
    .question { margin: 30px 0; }
    .question-text { margin-bottom: 15px; }
    .option {
      display: block;
      padding: 10px;
      margin: 5px 0;
      cursor: pointer;
    }
    .option:hover { background: #f5f5f5; }
    .option.selected { background: #e8e8e8; }
    .feedback { margin-top: 10px; font-size: 0.9em; }
    .correct { color: #2e7d32; }
    .incorrect { color: #c62828; }
    .explanation { color: #666; margin-top: 5px; }
    button {
      padding: 10px 20px;
      background: #333;
      color: white;
      border: none;
      cursor: pointer;
      margin-top: 20px;
    }
    .score { font-size: 1.2em; margin-top: 30px; }
  </style>
</head>
<body>
  <h1>章节标题 - 测验</h1>

  <div class="question" data-answer="A">
    <div class="question-text">1. 题目内容</div>
    <label class="option"><input type="radio" name="q1" value="A"> A. 选项</label>
    <label class="option"><input type="radio" name="q1" value="B"> B. 选项</label>
    <label class="option"><input type="radio" name="q1" value="C"> C. 选项</label>
    <label class="option"><input type="radio" name="q1" value="D"> D. 选项</label>
    <div class="feedback"></div>
  </div>

  <!-- 更多题目... -->

  <button onclick="submit()">提交</button>
  <div class="score"></div>

  <script>
    const explanations = {
      q1: "解析内容...",
      // ...
    };

    function submit() {
      let correct = 0;
      document.querySelectorAll('.question').forEach((q, i) => {
        const answer = q.dataset.answer;
        const selected = q.querySelector('input:checked');
        const feedback = q.querySelector('.feedback');
        const qName = 'q' + (i + 1);

        if (selected && selected.value === answer) {
          feedback.innerHTML = '<span class="correct">✓ 正确</span>';
          correct++;
        } else {
          feedback.innerHTML = '<span class="incorrect">✗ 错误</span> 正确答案:' + answer +
            '<div class="explanation">' + explanations[qName] + '</div>';
        }
      });

      document.querySelector('.score').textContent =
        '得分:' + correct + '/' + document.querySelectorAll('.question').length;
    }
  </script>
</body>
</html>

测验质量标准

  1. 内容准确性:所有知识点基于原教材;答案和解析正确无误;题目表述清晰无歧义
  2. 个性化程度:题目场景匹配用户兴趣;难度匹配年级水平;语言风格适合目标人群
  3. 交互体验:点击响应即时;反馈信息清晰;解析有教学价值
  4. 视觉极简:无任何装饰元素;无框架依赖;文件大小最小化

输出{topic}_quiz.html


格式3:幻灯片(slides)

设计考量

将以下考量作为菜单而非强制表单。根据用户提供的信息灵活使用,为创意探索留出空间:

  1. 主题、目的与受众:这是关于什么的?为什么要制作它?谁需要理解这些内容?
  2. 内容基础与来源:需要呈现哪些材料或数据?内容来自哪里?
  3. 视觉方法(CRITICAL)
    • 默认使用解释性视觉:剖面图、标注结构图、分解图、原理示意图,用以展示机制、结构、过程、关系
    • 视觉元素是信息的主要载体,不是文字列表的装饰背景
    • 默认信息密度匹配专业信息图和技术插图
    • CRITICAL:图表/插图必须通过其结构传递信息,而非仅提供氛围。文字应是标签/注释,而非主要内容。拒绝视觉元素纯装饰、核心信息依赖文字列表的模式
    • 拒绝"大面积留白 + 居中单行文字"的低效模式
  4. 叙事流与章节:观看者应如何在内容中移动?逻辑进程是什么?
  5. 文字风格与密度
    • 语言:解释性和叙事性文字使用用户明确要求的语言,否则匹配用户对话语言
    • 排版:中英文标题优先使用衬线字体(中文用宋体系列)以传达专业感和权威性
  6. 视觉风格、颜色与情绪
    • 图鉴和百科全书的视觉语言:解释性图表、剖面插图、标注结构、图文一体的页面构图
    • 高端时尚、美容、科学和学术期刊的精致空间构图和排版精度
    • 当代设计出版物的有意不对称性和层次化信息设计
    • 运用不对称网格、有意的呼吸空间、层次化信息组织、对角线构图、动态排版
    • 颜色限制:除非用户明确指定,不使用蓝色或紫色作为主题色或背景色

幻灯片生成工作流

步骤1:设计策略 - 创建内容脚本

信息架构优先:将内容结构化为层级化的幻灯片,每张幻灯片是一个信息单元。页数不是设计目标,信息传递效率才是;让内容体量自然决定幻灯片数量。

输出 content_script.md,格式如下:

# 幻灯片内容脚本

## Slide 1: [标题]
**子主题A**: [标签]
[50-80字叙述段落,描述需要可视化的信息内容]

**子主题B**: [标签]
[50-80字叙述段落]

## Slide 2: [标题]
...

内容脚本规范:

  • 只描述"什么信息需要呈现",不描述"如何呈现"
  • 不要包含"Visual Description"/"视觉描述"/"视觉说明"等章节
  • 不要描述颜色、背景、装饰元素、氛围效果、情绪或布局细节
  • 专注于纯粹的信息架构,信任后续的视觉判断
  • 每张幻灯片2-3个聚焦的子主题
  • 页数由内容需要自然决定

步骤2:顺序生成图像

使用图像生成工具,逐张生成幻灯片:

  • 第一张:使用 gen_images(从零创建)
  • 后续张:使用 edit_images,base_image_file 指向上一张幻灯片

格式要求:

  • 默认 16:9 横向比例
  • 保存每张幻灯片图像到本地

提示词构建思维过程

读取 content_script.md,基于以下思考构建每张幻灯片的提示词:

A. 根据内容关系决定布局、排版层级、视觉元素;信任你的视觉推理,避免过度指定

B. 评估信息组织:相关主题优先单页视觉层级而非多页分散。基于信息的内在逻辑关系做决定,而非基于文字体量;同页呈现时,通过视觉层级区分信息层次,而非物理分离

C. 判断一致性:对于前一张base_image,遵循最小必要继承原则,确保并平衡视觉多样性和一致性(例如:平行章节要求主标题在位置、大小、字体、字重上完全一致)。避免僵硬统一,判断什么程度的一致性服务于叙事

D. 语言:整个提示词使用用户对话语言书写,但图像中渲染的文字使用内容实际语言

E. 提示词是设计指令,不是内容复述

每张幻灯片的提示词必须包含以下6点:

  1. 可视化类型:优先图表形式而非文字主导的乏味呈现(剖面图、流程图、标注结构图、关系图、时间线叠加等);将多个子主题整合为一个整体视觉结构;避免"平行卡片/网格展示/多栏布局"和文字密集的传统排版
  2. 信息层级:主次信息通过视觉层级(大小、位置、对比度)区分,不是平面列表
  3. 构图指令:不对称布局、对角线动势等打破僵硬对称的方法
  4. 密度要求:信息层级清晰优先于信息数量;适当留白服务可读性,不追求填满画布,但也不空洞稀疏
  5. 布局独立性:明确声明本张幻灯片的可视化类型基于其内容选择,不是复制上一张;不要默认使用上一张的布局
  6. 风格一致性:如果用户提供了视觉风格或参考图像,每个提示词必须详细描述该风格的特征

步骤3:编译输出

生成完所有幻灯片图像后:

  • 自动编译为 PDF 文档(150 DPI,95%质量,文件大小可控)
  • 自动编译为 PPTX 演示文稿

输出{topic}_slides.pdf + {topic}_slides.pptx

幻灯片质量标准

  1. 视觉信息传递:图表通过结构传递信息,而非仅提供氛围;视觉元素是信息载体,不是文字列表的装饰背景
  2. 逻辑连贯性:幻灯片有清晰的起承转合
  3. 个性化程度:视觉风格匹配目标年级;示例使用用户熟悉的场景
  4. 输出质量:图像清晰,文字可读;PDF/PPTX可直接使用

格式4:思维导图(mindmap)

思维导图生成工作流

步骤1:设计内容结构

确定思维导图的节点层级和关系:

  • 根节点:章节主题
  • 一级节点:核心概念
  • 二级节点:细节要点
  • 层级不超过4层
  • 每个节点文字简洁(不超过10字)
  • 标注概念间关系(并列/递进/因果/对比)

步骤2:生成图像

使用 gen_images 生成思维导图图像:

  • 格式:16:9 或正方形(根据内容选择)
  • 风格:清晰的视觉层级,专业的信息图表风格

步骤3:输出

  • 思维导图图像文件:{topic}_mindmap.png
  • 附带Mermaid格式文本(可选,供需要编辑的用户使用)

格式5:音频课程(audio)

角色设定

老师角色

  • 专业但亲和
  • 善于用比喻解释复杂概念
  • 耐心回答问题
  • 适时鼓励和肯定

学生角色

  • 好奇心强,主动提问
  • 代表目标用户的视角
  • 会犯常见错误,提出典型疑惑
  • 有自己的兴趣背景(与用户设定一致)

音频生成工作流

步骤1:编写对话脚本

编写师生对话脚本,结构如下:

开场(约1分钟)
- 老师问候,引入今天主题
- 学生回应,表达已有认知或疑问
- 老师用用户兴趣领域建立连接

第一部分:概念引入(约4分钟)
- 老师从用户兴趣场景提问
- 学生观察/回答
- 老师引出核心概念,用口语化方式定义
- 学生请求举例
- 老师用个性化例子详细讲解
- 学生用自己的话复述确认理解

第二部分:深入理解(约5分钟)
- 老师讲解概念的重要特点
- 学生提出常见疑惑/误区
- 老师澄清误区
- 学生提出假设性问题
- 老师回答并拓展

第三部分:应用练习(约3分钟)
- 老师出题
- 学生思考并回答
- 老师反馈(肯定或引导)

总结(约2分钟)
- 学生尝试总结学到的内容
- 老师补充和肯定
- 学生表达收获,联系实际应用
- 互道再见

脚本要求:

  • 对话自然,符合真实师生对话节奏
  • 避免书面化表达
  • 包含语气词("嗯"、"那个"、"对了")
  • 允许学生"打断"提问
  • 所有例子从用户兴趣领域取材
  • 每分钟约150-180字

步骤2:生成音频

使用音频生成工具,将脚本转换为音频:

  • 老师声音:温和、专业、有耐心
  • 学生声音:好奇、活泼、真诚
  • 语速:概念讲解中速,对话互动自然节奏,总结稍快

步骤3:输出

输出{topic}_audio.mp3

音频质量标准

  1. 听感体验:听起来像真实对话,不像念稿;节奏有变化,不单调;重点内容有强调
  2. 学习效果:概念讲解清晰易懂;学生的问题代表真实困惑;练习环节有实际检验效果
  3. 个性化程度:例子100%来自用户兴趣领域;学生角色让用户有代入感;语言风格匹配目标年级
  4. 音频质量:声音清晰;时长约15分钟;可直接播放

通用约束

  • 所有内容必须基于原教材,不添加未经验证的信息
  • 每个格式只负责特定输出,确保专业质量
  • 根据年级水平调整内容深度和表达方式
  • 所有生成完成后统一交付,使用 <deliver_assets> 格式
  • 禁止在对话中内嵌展示任何生成的文件(图片/PDF/音频/视频)
  • 中间产物(单独图像、脚本等)不交付给用户

Common Mistakes to Avoid

  1. 内容偏离原教材:不要添加原文没有的信息或自行发挥
  2. 忽略年级适配:不要用大学水平的语言给小学生出题
  3. 笔记颜色过多:全PDF严格限制不超过2种颜色
  4. 测验HTML过度设计:保持极简,不使用UI框架、渐变、阴影等装饰
  5. 幻灯片文字主导:视觉元素必须是信息载体,不是文字列表的装饰背景
  6. 幻灯片使用蓝色/紫色:除非用户明确指定,不使用蓝色或紫色作为主题色或背景色
  7. 预览/内嵌展示:生成完成后只返回文件路径,禁止在对话中预览
  8. 音频自动播放:音频文件禁止自动播放
  9. 思维导图层级过深:不超过4层,每节点不超过10字
  10. 幻灯片布局复制:每张幻灯片应基于其内容独立选择可视化类型,而非复制上一张布局

File & Output Conventions

文件命名规则

格式文件名
笔记{topic}_notes.pdf
测验{topic}_quiz.html
幻灯片{topic}_slides.pdf + {topic}_slides.pptx
思维导图{topic}_mindmap.png
音频{topic}_audio.mp3

图像规格

  • 幻灯片:16:9 横向比例
  • 思维导图:16:9 或正方形
  • PDF编译:150 DPI,压缩质量 90-95%

交付格式

<deliver_assets>
<item>
<path>文件路径1</path>
</item>
<item>
<path>文件路径2</path>
</item>
</deliver_assets>