下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/user_f842e6fc--jiutian-knowledge-graph-puls.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f842e6fc/jiutian-knowledge-graph-puls。将用户提供的主题、概念或内容,检索、整合并生成一张精美的 HTML 知识卡片或知识图谱。支持 17 种版面模板(8种卡片+9种图谱),两种画面尺寸(📱手机一屏紧凑版 / 🖥️桌面默认版),具备自动关系抽取和节点建模能力,支持浏览器打开、截图分享或 PNG 导出。触发方式:不限于说"知识图谱",以下表达均能触发—— 直接说:"知识图谱"、"做成图谱"、"知识图"、"知识卡片"、"做成卡片" 口语化:"做张图"、"来张图"、"帮我浓缩"、"来个速览"、"一页纸总结"、"概念图谱"、"做张小卡片"、"浓缩一下"、"关系图" 意图触发:你想把某个概念"总结/整理/浓缩/提炼"+"做成图/卡片/图谱/一页纸/可视化/关系图"——只要表达了这个意图,就能触发
阅读全文 (展开查看完整说明)
概述
知识图谱
概述
将用户提供的主题、概念或内容,检索、整合并生成一张精美的 HTML 知识卡片或知识图谱。支持 17 种版面模板(8种卡片+9种图谱),两种画面尺寸(📱手机一屏紧凑版 / 🖥️桌面默认版),具备自动关系抽取和节点建模能力,支持浏览器打开、截图分享或 PNG 导出。
触发方式:不限于说"知识图谱",以下表达均能触发——
- 直接说:"知识图谱"、"做成图谱"、"知识图"、"知识卡片"、"做成卡片"
- 口语化:"做张图"、"来张图"、"帮我浓缩"、"来个速览"、"一页纸总结"、"概念图谱"、"做张小卡片"、"浓缩一下"、"关系图"
- 意图触发:你想把某个概念"总结/整理/浓缩/提炼"+"做成图/卡片/图谱/一页纸/可视化/关系图"——只要表达了这个意图,就能触发
版面模板选择指南
生成卡片前,先根据内容类型和关系复杂度选择最合适的一个版面:
| # | 模板类型 | 模板名称 | 适用内容 | 结构特征 | 参考案例 |
|---|---|---|---|---|---|
| 卡片模板 | 1 | 经典卡片 | 概念类(哲学/思维模型) | 单栏垂直:标题+要点列表+原理+应用+标签 | card-template.html |
| 2 | 列表清单 | 清单类(方法论/工具/步骤) | 垂直堆叠卡片:编号+色条+标签 | QC单栏版 | |
| 3 | 左右双栏 | 多元素(A vs B/7大手法) | Grid 2 栏:每项小卡片,最后项跨行 | QC七手法_v2_左右结构.html | |
| 4 | 信息图 | 数据类(事实/统计) | 大字报+指标色块+底部总结 | — | |
| 5 | 时间线 | 历史类/演进类 | 垂直轴:左侧时间线+右侧卡片交替 | — | |
| 6 | 对比表 | 对比类(优劣/方案比较) | 2-3 列:每项表头+对比维度行 | — | |
| 16 | 多分类网格卡片 | 多分类并列主题(每类含多条要点) | 顶栏+2~4列网格+每格:图标+分类名+N条编号要点+底栏金句 | example-grid-card.html | |
| 17 | 综合知识海报 | 综合性书籍/主题深度解读(5-8个分区) | Hero顶栏+双栏+原则卡片行+三栏详情+应用场景+金句+底栏 | example-book-poster.html | |
| 图谱模板 | 7 | 中心辐射 | 核心概念拆解 | 主题居中,子概念环形展开,连线辐射 | example-graph-radial.html |
| 8 | 层级树 | 有明确从属/包含关系的体系 | 自上而下,根→枝→叶,逐层展开 | example-graph-tree.html | |
| 9 | 环形轨道 | 多维度分类体系 | 同类概念排成同心环,环间连线 | example-graph-orbital.html | |
| 10 | 流程链 | 因果关系/流程链/演进路径 | 概念沿路径串接,箭头表示因果/顺序 | example-graph-flow.html | |
| 11 | 左右汇聚 | 对比类+融合点 | 两方概念从左右向中间汇聚,对比+关联 | example-graph-converge.html | |
| 12 | 网状矩阵 | 复杂互相关联的知识网络 | 概念散布,多对多交叉连线 | example-graph-matrix.html | |
| 图谱模板 | 13 | 思维导图 | 逐级发散的知识体系 | 中心主题→一级分支→二级分支,曲线弯曲自由,深度不限 | example-graph-mindmap.html |
| 14 | 混合/组合图 | 需要分层呈现的复杂主题(指标+流程+场景) | 上层仪表盘/卡片 + 下层流程链,信息分层复合呈现 | example-graph-hybrid.html | |
| 15 | 地铁图 | 跨维度交叉分类的知识体系 | 多线路(颜色区分) + 换乘站(同时属多条线路的节点) | example-graph-metro.html |
选择规则:
- 未指定→推荐最合适的一个并告知用户
- 模板确认后,必须额外询问画面尺寸(📱手机一屏 vs 🖥️默认版)——参见 Phase 1「画面尺寸选择」
- 4+ 并列项→列表清单或双栏
- 多分类、每类含多条要点的并列主题→多分类网格卡片
- 综合性主题/书籍解读/需要多区域混合呈现(5+分区、含作者+定义+原则+方法+误区+金句等)→综合知识海报
- A vs B→对比表
- 含时间节点→时间线
- 有核心概念+子概念→中心辐射
- 有层级关系→层级树
- 多维度分类→环形轨道
- 流程/因果关系→流程链
- 对比+融合→左右汇聚
- 复杂关联网络→网状矩阵
- 逐级扩展的知识体系→思维导图
- 需要分层呈现(指标+流程+场景)→混合/组合图
- 跨维度交叉分类→地铁图
- 其余→经典卡片
效果速览
生成前先看效果。以下是 17 种模板的视觉特征和参考示例:
| # | 模板类型 | 模板名称 | 视觉关键词 | 适合场景 | 示例文件 |
|---|---|---|---|---|---|
| 卡片模板 | 1 | 经典卡片 | 渐变顶栏 + 白底圆角 + 分区标题 + 标签行 | 概念/思维模型 | assets/examples/example-classic.html |
| 2 | 列表清单 | 纵向卡片堆叠 + 编号色块 + 标签行 | 方法论/步骤/清单 | assets/examples/example-list.html | |
| 3 | 左右双栏 | 2列网格 + 小卡片 + 奇数末项居中 | 并列多元素 | assets/examples/example-two-col.html | |
| 4 | 信息图 | 大字报 + 指标色块 + 底部总结 | 数据/统计/事实 | assets/examples/example-infographic.html | |
| 5 | 时间线 | 垂直轴 + 左右交替卡片 + 时间节点 | 历史/演进 | assets/examples/example-timeline.html | |
| 6 | 对比表 | 2-3列表头 + 维度对比行 + 结论段 | A vs B 比较 | assets/examples/example-compare.html | |
| 16 | 多分类网格卡片 | 顶栏+多列网格+分类图标+编号要点+底栏金句 | 多分类并列知识主题 | assets/examples/example-grid-card.html | |
| 17 | 综合知识海报 | Hero顶栏+双栏夹图+引文+原则卡片行+三栏详情+应用场景卡+金句+底栏总结 | 综合性书籍/主题深度解读 | assets/examples/example-book-poster.html | |
| 图谱模板 | 7 | 中心辐射 | 中心节点+环形分布+辐射连线 | 核心概念拆解 | assets/examples/example-graph-radial.html |
| 8 | 层级树 | 自上而下树状+逐层分支 | 层级从属关系 | assets/examples/example-graph-tree.html | |
| 9 | 环形轨道 | 同心环+跨环连线 | 多维度分类体系 | assets/examples/example-graph-orbital.html | |
| 10 | 流程链 | 水平路径+箭头连线 | 因果/流程关系 | assets/examples/example-graph-flow.html | |
| 11 | 左右汇聚 | 左右概念→中间融合点 | 对比+融合场景 | assets/examples/example-graph-converge.html | |
| 12 | 网状矩阵 | 散布节点+多对多连线 | 复杂关联网络 | assets/examples/example-graph-matrix.html | |
| 图谱模板 | 13 | 思维导图 | 中心发散+自由弯曲分支+逐级展开 | 逐级扩展的知识体系 | assets/examples/example-graph-mindmap.html |
| 14 | 混合/组合图 | 上层仪表盘+下层流程链+多图层 | 分层呈现复杂主题 | assets/examples/example-graph-hybrid.html | |
| 15 | 地铁图 | 多线路颜色区分+换乘站双重环 | 跨维度交叉分类 | assets/examples/example-graph-metro.html |
统一视觉特征:
- 卡片模板:暖白底(
#f5f3ed),白底卡片 + SVG 噪点纹理(纸张质感),渐变配色顶栏/编号色块,悬浮微动效,适配手机屏宽(375px) - 网格卡片模板:同卡片模板配色体系,多列网格布局(默认3列),每格含分类图标+编号要点,各分类独立配色,底部金句横幅
- 综合知识海报:多区域垂直混排(Hero头图→双栏→引文→原则卡片行→三栏详情→应用场景→金句→底栏总结),每个区域独立视觉处理,深蓝色系为主调,适合600-800字内容量
- 图谱模板:深色背景(
#1a1a2e),SVG 节点和连线,彩色节点分类(概念蓝、技能绿、数据橙、品质蓝),关系标签,hover交互效果,适配手机屏宽(375px)
如何查看示例:用浏览器打开 assets/examples/ 下对应的 HTML 文件,即可看到实际渲染效果。如果示例文件不存在,用 preview_url 工具直接预览工作流中生成的任意卡片。
Phase 1:内容理解与图谱判断
收到触发后,判断用户意图和图谱需求:
- 明确主题(如"知识图谱:精益生产")→ 直接进入 Phase 2
- 大段内容(如粘贴文章/笔记)→ 提取核心概念,判断是否需要图谱,确认主题和版面
- 没给内容(如只说"知识图谱")→ 询问主题;同时根据主题自动推荐版面
- 多元素/并列项(如"5大原则""7种手法")→ 自动选列表清单或双栏版面
- 多分类/每类含多条要点(如"24条习惯分6大类""8大能力×3方法")→ 自动选多分类网格卡片
- 综合性主题/书籍解读(如"《钝感力》知识图谱""终身学习一页纸",含作者+定义+原则+方法+误区+金句等多区域)→ 自动选综合知识海报
- 关系复杂(如包含多个子概念和关联)→ 推荐图谱模板
图谱需求判断:
- 如果内容包含多个相关概念、层级关系、因果关系、对比关系等复杂关联 → 推荐图谱模板
- 如果内容相对独立、简单 → 推荐卡片模板
- 用户明确要求"关系图"、"节点图"、"图谱"等 → 强制使用图谱模板
画面尺寸选择(每次生成前必问):
确认模板后,必须额外询问用户选择画面尺寸:
"画面尺寸选哪个?📱手机一屏(紧凑版,375px宽、一屏刚好、不留白)还是 🖥️默认版(正常间距、桌面适读)?"
两种模式的具体区别:
| 维度 | 📱 手机一屏 | 🖥️ 默认版 |
|---|---|---|
| 容器宽度 | max-width: 480px | 卡片 375px / 图谱 100% |
| 容器高度 | height: 100dvh(占满一屏) | min-height: auto(内容撑开) |
| 间距策略 | 紧凑:padding/gap 最小化,不留白 | 正常:padding 10-16px,gap 4-6px |
| 网格/区域 | 内容居中分布、撑满空间、无留白 | 自然排列,允许留白 |
| 字体 | 空间自适应(空间够则放大) | 固定基准字号 |
| 适用场景 | 手机端分享、微信/小红书 | 桌面浏览、打印、多屏内容 |
- 用户说"手机版""紧凑""一屏"→ 自动选手机一屏
- 用户没说 → 必须问,不能默认假设
- 卡片模板(1-6):手机一屏时按内容量决定是否用
100dvh;内容少的卡片不需要强制一屏 - 图谱模板(7-15):手机一屏时 SVG 画布不变,仅外围容器紧凑
确认门: 如果主题不够明确(如过于宽泛或模糊),用一句话向用户确认:
"我理解你想制作关于 [X] 的知识图谱/卡片,重点是 [Y],使用 [图谱/卡片] 模板,📱手机一屏 / 🖥️默认版,对吗?"
失败模式:
| 触发条件 | 一线修复 | 仍失败兜底 |
|---|---|---|
| 用户连续 2 次回答仍模糊 | 给 3 个具体示例引导:"比如精益生产、PDCA循环、质量工具体系,你想做哪个?" | 终止,回复"需要更具体的主题才能制作图谱/卡片" |
| 用户给的内容过长(>2000字) | 主动摘要后提取核心概念,再确认 | 回复"内容太长,请告诉我你最想突出哪一点" |
| 无法判断图谱vs卡片需求 | 询问:"你希望做成静态卡片还是动态关系图?" | 默认推荐卡片模板 |
🔴 CHECKPOINT · 🛑 STOP:主题和模板确认后,必须等用户说"对"或"就这样"才能进入 Phase 2。
Phase 2:信息增强与关系抽取
根据主题内容,主动补充深度信息并进行关系建模:
- 优先WebSearch — 使用
WebSearch(query="主题", topic="general", topic="documentation")获取该主题的最新解释、权威定义(最多3个结果) - 知识库检索 — 如果用户有相关知识库,使用
mcp__tencent-docs__smartcanvas.read或对应的知识库MCP工具查找已有笔记 - 交叉验证 — 至少从 2 个来源获取信息,确保内容准确
- 关系抽取(图谱模板特有):
- 识别核心概念和子概念
- 抽取概念间关系:包含、依赖、对立、衍生、因果等
- 建立节点连接和关系标签
- 确定最适合的图谱布局类型
- 内部知识兜底 — 如果搜索工具不可用,直接使用内部知识生成,并在文末标注"基于通用知识,未经实时验证"
失败模式:
| 触发条件 | 一线修复 | 仍失败兜底 |
|---|---|---|
WebSearch 不可用/超时 | 退回内部知识,标注"基于通用知识,未经实时验证" | 跳过 Phase 2,用已有知识生成图谱/卡片并在文末注明 |
| 知识库无结果 | 跳过 kb 搜索,只做 web 搜索 | 同上 |
| 单来源信息无法交叉验证 | 标注"单一来源,建议交叉核实" | 仍使用但降级标注 |
| 无法抽取有效关系 | 降级为卡片模板,删除关系建模 | 使用经典卡片模板 |
| 所有搜索工具都不可用 | 直接用内部知识生成,标注来源降级 | 同上,但更明确说明 |
🔴 CHECKPOINT · 🛑 STOP:Phase 2 信息增强和关系抽取完成,核心定义和要点整理完毕后,向用户展示并确认再进入 Phase 3。
信息提取原则:
- 核心定义:一句话本质解释(第一性原理视角)
- 关键要点:3-5 条最具洞察力的要点
- 底层逻辑:为什么重要、底层机制是什么
- 应用场景:1-2 个具体可落地的场景
- 关联概念:2-3 个相关/对立概念
- 图谱特有——节点建模规范:
- 节点列表:
[{id, label, type, description}],type 取值:概念/技能/工具/数据/品质/流程 - 连线列表:
[{from, to, label, strength}],label 用动词短语("包含""依赖""对立""衍生""因果"),strength:强/中/弱 - 中心节点:只能有 1 个(最核心的主题节点)
- 子节点:3-12 个(过少降级为卡片,过多拆分子图谱)
- 关系完整性:每个子节点至少有 1 条连线指向其他节点,孤立节点无效
- 节点列表:
Phase 3:结构编排与图谱设计
画面尺寸参数(screen-mode)
生成前根据用户在 Phase 1 的选择设置 screen-mode:
| screen-mode | CSS 核心参数 | 参考示例 |
|---|---|---|
"mobile"(📱一屏) | max-width:480px; height:100dvh; justify-content:flex-start; 内容居中、无留白、字体自适应 | example-grid-card.html / example-book-poster.html |
"default"(🖥️默认) | max-width:760px; min-height:auto; padding:16px; 正常间距、桌面适读 | 各模板经典示例 |
手机一屏模式的通用规则(所有模板适用):
- 容器固定
height:100dvh,overflow:hidden - 顶栏/底栏
flex-shrink:0(不压扁),中间内容区flex:1(撑满) - 区域间不用
space-evenly(会导致留白),改用紧凑排列 - 内容区内部用
justify-content:space-evenly均匀分布 - 字号基准上调 1-2px(空间够就放大),加
@media(max-height:680px)和@media(min-height:850px)自适应 - 网格/卡片最大宽度
480px
卡片模板结构
模板 1(经典卡片):核心概念标题 → 关键要点 3-5条 → 底层原理段落 → 应用场景 1-3个 → 关联概念标签
模板 2(列表清单):标题+一句话定义 → ① 名+别名+一句话概括+说明+标签 → ② ③ … → 关联概念+记忆口诀
模板 3(左右双栏):结构同列表清单,.content { display:grid; grid-template-columns:1fr 1fr; gap:8px; };奇数项最后一个 grid-column:1/-1 跨行居中
模板 6(对比表):标题+副标题 → 对比维度列表(3-8行,每行:维度+A方+B方) → 结论段 → 关联标签
模板 16(多分类网格卡片):
- 适用场景:N 个并列分类主题,每个分类下含多条要点(如 24 条习惯分 6 大类、8 大能力×3 方法等)
- 核心布局原则(去留白+居中版):容器
height:100dvh+flex column(不用space-evenly,避免大面积留白);顶栏/底栏flex-shrink:0(内容自适应高度);网格主体区域.card-body用display:flex;align-items:center让网格整体垂直居中;网格.grid用flex:1填满剩余空间,CSS Grid 3列 gap: 6px - 网格内居中分布(强制):每个
.cat分类块用display:flex;flex-direction:column;justify-content:space-evenly;align-items:center——head 和 items 在块内垂直均匀分布,水平居中;.cat-head也用justify-content:center居中分类名和图标;.cat-items用justify-content:space-evenly让要点列表均匀散布、不留底白 - 字体动态响应(空间自适应):基准字号 body=10px;
@media(min-height:850px)空间充裕时全部放大 1-2px;@media(max-height:680px)空间紧张时缩小 1-2px,宁可看清也不压碎 - 结构:
顶栏(主标题+副标题+封面emoji)→N列网格(默认3列,可调2~4列)→每格=分类图标+分类名+N条编号要点→底栏金句/总结 - 顶栏设计:深色渐变背景(
#1a1a2e→#2d4a7a→#3d6fb5),左侧封面emoji(56×78px),右侧标题(20px 粗体)+副标题横幅(圆角胶囊形,金色渐变),padding: 12px 16px 10px - 网格布局:CSS Grid
grid-template-columns: repeat(3, 1fr),gap: 6px;.card-body包裹网格display:flex;align-items:center使网格整体垂直居中;响应式:≤600px 降为 2 列,≤400px 降为 1 列 - 分类块:浅底圆角卡片(
#faf8f3,border-radius: 10px),padding: 8px 6px 8px;分类头部含 26px 圆形图标 + 分类名(10.5px 粗体),底部 1.5px 分割线,head 用justify-content:center居中 - 编号要点:每条=编号圆圈(17px, 分类主题色浅底)+ 粗体标题(9.5px)+ 灰色描述(8.5px),条目间 gap: 3px,
.it用align-items:center垂直居中 - 配色体系:每个分类拥有独立的主题色(图标渐变+编号圆圈底+分类名),6 大推荐色:暖橙
#e8754c、天空蓝#4c8ce8、紫罗兰#8c5cf0、品红#e84ca0、金黄#e8c74c、翠绿#4cd87c - 底栏:深色渐变背景 + 居中金句引文(11.5px,可含金色高亮
<em>),左侧大引号装饰(44px 半透明) - 限制:分类块 2-8 个(<2 降级为列表清单,>8 拆行或降列),每块要点 2-6 条,最多 48 条总要点
- 卡片最大宽度:480px(移动端 1 屏),居中显示
- 响应式断点:
max-height:680px压缩字号、min-height:850px放大字号
模板 17(综合知识海报):
- 适用场景:综合性书籍解读、主题深度拆解,内容包含 5-8 个语义分区(作者/定义/原则/方法/误区/场景/金句等)
- 核心布局原则(Excel式):容器
height:100dvh+flex column+space-evenly;所有 sectionflex:0 1 auto(内容自适应高度,内容多的自然占更多空间);剩余空间通过space-evenly均匀分散到所有间隙;禁止使用固定 flex 比例或flex-shrink:0导致留白/头重脚轻 - 总结构(从上到下,每个区域内容自适应):
- Hero 顶栏:深蓝渐变背景(
#1a2744→#2d4a7a),padding: 10px 14px 8px;半透明标签+大标题(19px 粗体)+副标题(10px) - 双栏夹图区:
grid-template-columns: 1fr 68px 1fr,gap: 6px;左栏=作者信息,中栏=书封(56×78px)+小引文,右栏=核心定义要点(18px 彩色圆标+粗体9px+描述8px) - 引文横幅:暖色底(
#f7f3eb→#faf8f3),margin: 0 8px,padding: 5px 12px 5px 24px;左大引号装饰(18px opacity.3),引文(10px 斜体)+署名 - 原则卡片行:水平排列 N 张(默认 5 张),CSS Grid 5列 gap: 4px;每张=编号圆徽章(17px)+emoji(16px)+标题(8px)+要点列表(8px,3条)
- 三栏详情区:等宽三列 gap: 5px;每列=渐变标题栏(9px)+N 条图标列表项(icon 14px + 文字 9px)。误区用红×/绿✓对照
- 应用场景卡片行:水平排列迷你卡片(默认 4 张),gap: 4px;每张=emoji(18px)+场景名(9px)+描述(8px)
- 金句区:深蓝渐变背景+羽毛笔装饰(18px opacity.15)+斜体引文(10px)+署名;padding: 6px 10px,border-radius: 5px
- 底栏总结:深蓝背景 padding: 6px 12px,字体 9px,装饰图标 13px
- Hero 顶栏:深蓝渐变背景(
- 配色体系:深蓝
#1a2744/#2d4a7a为主调,米白#f7f3eb为暖色区底,白卡片#fdfbf7为内容区底色,金色点缀#c49a2c,区域独立色系同上 - 卡片最大宽度:480px,
height:100dvh(占满全屏 1 屏) - 响应式:≤700px 5列原则→3列(隐藏第4-5张)、三栏→双栏(第3栏跨两列)、4列场景→2列;≤420px 原则→2列、全部→单栏
- 内容量:适合 400-800 字总内容,分区 5-8 个(<4 降级为经典卡片或网格卡片,>8 合并分区)
图谱模板结构
模板 7(中心辐射):
- 布局:中心节点放中下部 (cx=200, cy=350),子节点环形分布在上方半圆 (半径 120-180px)
- 节点尺寸:中心节点 90×40,子节点 70×32
- 连线:从中心向每个子节点发出一条实线 (stroke-width=2)
- 关系标签:每条连线的中点标注关系类型("包含"/"衍生"/"应用")
- CSS 类:
.node-center(中心节点),.node-sub(子节点),.edge-radial(辐射连线) - 节点定位算法:中心 (200, 350),子节点 i 的角度 θ = 180° – (360° / n) × i,坐标 (200 + 150×cos(θ), 350 – 150×sin(θ))
模板 8(层级树):
- 布局:根节点顶部居中 (x=200, y=60),逐层向下展开,每层 y 间隔 120px
- 节点尺寸:根节点 100×40,一级子节点 80×36,二级及以下 70×32
- 连线:从父节点底部中心到子节点顶部中心的直线 (stroke-width=2, solid)
- 层级颜色:根节点深蓝边框,子节点按类型着色
- CSS 类:
.node-root(根节点),.node-level-N(各级子节点),.edge-tree(层级连线) - 间距规则:同级节点最小间距 60px,父子节点水平偏移 ≤ 80px
模板 9(环形轨道):
- 布局:同心圆排列,中心 (200, 300),内环半径 60px,中环半径 140px,外环半径 220px
- 节点数量:内环 1 个,中环 3-5 个,外环 6-12 个
- 连线:环内连线(同环相邻节点,虚线)、跨环连线(外层子节点指向内层父节点,实线)
- CSS 类:
.ring-inner,.ring-middle,.ring-outer,.edge-ring(环内),.edge-cross(跨环) - 定位算法:节点 i 在第环 ring 上,角度 θ = 2π × i / n,坐标 (cx + R_ring × cos(θ), cy + R_ring × sin(θ))
模板 10(流程链):
- 布局:水平排列,从左到右等间距,总宽度 560px,中心 y=150
- 节点尺寸:流程步骤 90×36(圆角矩形,rx=18 胶囊形),判断节点 80×36(菱形)
- 连线:从左到右的实线箭头 (stroke-width=2, marker-end: arrowhead)
- 关系标签:连线上标注条件/概率/时间间隔
- CSS 类:
.node-step(步骤节点),.node-decision(判断节点),.edge-flow(流程连线) - 间距规则:节点间最小间距 40px,垂直方向允许一行最多 6 个节点,超出则折行
模板 11(左右汇聚):
- 布局:左侧概念左对齐 (x=40-120),右侧概念右对齐 (x=280-360),融合点居中 (x=200)
- 节点尺寸:左/右概念 70×32,融合点 90×40(更大,高亮)
- 连线:左侧概念 → 融合点(实线,蓝色),右侧概念 → 融合点(实线,红色),表示对立/互补
- CSS 类:
.node-left,.node-right,.node-fusion,.edge-left,.edge-right - 特殊场景:如果是一致而非对立,两侧连线都用蓝色;如果是互补,一侧蓝一侧绿
模板 12(网状矩阵):
- 布局:节点散布在 500×500 区域内,使用力导向布局算法或手动指定坐标
- 节点尺寸:按重要性差异化(核心 80×40,次要 60×28)
- 连线:实线(强关联,stroke-width=2.5, 对应颜色)、虚线(弱关联,stroke-width=1.5, stroke-dasharray="4,4")
- 连线标签:关系强度(高/中/低)或关系类型
- CSS 类:
.node-strong,.node-weak,.edge-strong,.edge-weak - 限制:节点总数 ≤ 12,连线总数 ≤ 30,否则拆分子图谱
模板 13(思维导图):
- 布局:中心主题位于左侧偏中 (x=120-180, y=250-300),一级分支向右展开,二级分支在右侧继续发散,可使用曲线(Bezier Q 命令)模拟自由弯曲
- 节点尺寸:中心节点 62×30(椭圆形或大圆角),一级分支 100×28(胶囊形),二级分支 100×28(白色填充+彩色边框小圆角)
- 连线:中心→一级用粗实线 (stroke-width=2) 带箭头,一级→二级用细实线 (stroke-width=1.5) 带箭头,使用 Q 二次贝塞尔曲线实现自然弯曲
- 分支颜色按主题分类:每一条主分支及其子分支共享同一颜色体系
- CSS 类:
.node-root(中心根节点),.node-level-1(一级分支),.node-level-2(二级分支),.edge-mind-level1,.edge-mind-level2 - 深度限制:max 3 层(中心→一级→二级),超出则拆分子思维导图
- 节点定位算法:中心 (140, 270);一级分支 i 的坐标 y = 270 + (i – (n-1)/2) × 80,x = 中心_x + 150;二级分支从一级分支右侧继续展开,x = 一级_x + 90,y 在±30px 内偏移
- viewBox:750×540 或 800×600(左侧为根节点,右侧分支发散)
模板 14(混合/组合图):
- 布局:双层或多层结构——下层为流程链/层级树(底层基础结构),上层为仪表盘/数据卡片/指标色块(展示数据/指标/评分)
- viewBox:780×580,上下分区
- 上层结构(仪表盘层,占据页面上部 40%):
- 指标卡片:4-6 个白底圆角卡片,横向排列,每个卡片包含【数字/指标名称/子说明】
- 卡片之间用虚线箭头表示关联
- 可在卡片下方附加小型趋势线(polyline)
- 下层结构(流程/层级层,占据页面下部 60%):
- 按流程链或层级树规范布局
- 流程节点间用粗实线箭头连接
- 节点下方可附加细节卡片(圆角矩形,带说明文本)
- CSS 类:
.metric-card(上层指标卡片),.metric-trend(趋势线),.layer-bottom(下层容器),.detail-card(细节卡片) - 分区视觉:用半透明背景色块 + 分区名标签区分上下层
- 适用场景:需要同时展示"数据指标"和"结构关系"的复合型知识主题
- 限制:节点总数 ≤ 20,同时展示两层不混淆的前提是内容分界清晰
模板 15(地铁图):
- 布局:多条"线路"(水平/斜向/垂直)在不同角度交叉,"换乘站"位于线路线交叉点
- viewBox:780×580
- 线路定义:每条线路独立命名,用不同颜色区分(至少 3 条线,最多 6 条),线路用粗实线 (stroke-width=6, stroke-linecap=round)
- 站点节点:圆形(r=13-16px),深色填充 + 线路颜色边框
- 换乘站:使用多重环——内圈圆+外圈虚线环 + 金色"🔄 换乘"标注
- 线路类型:水平线、45°斜线、垂直线(模仿真实地铁图风格)
- 终点标记:线路末端用小圆+线路名称标注
- CSS 类:
.node-station(普通站点),.node-transfer(换乘站),.edge-line-blue/green/orange/purple/red(各线路) - 换乘站数量:占总节点 20-30%(过多的换乘站会让图混乱)
- 节点标注:换乘站下方标注"X线换乘"提示
- 下方面板:放置图例说明和"换乘站"概念解释
- 适用场景:一个概念同时属于多个分类体系的知识主题(如"看板"同时属于工具线、流程线、管理线)
失败模式:
| 触发条件 | 一线修复 | 仍失败兜底 |
|---|---|---|
| 内容无法填满 5 个模块(经典卡片) | 自动精简为 3 模块:核心概念 + 关键要点 + 应用场景 | 用已有模块,留空不填,不做填充性废话 |
| 关键要点少于 3 条或多于 5 条 | 合并/拆分,强制落在 3-5 条范围内 | 最多 7 条(底线) |
| 找不到应用场景 | 删除该模块,不编造 | 用"学习建议"替代"应用场景" |
| 并列项为奇数(如 3/5/7) | 最后一项 grid-column:1/-1 跨行居中,不强制凑偶数 | 降级为单栏列表清单 |
| 并列项少于 3 个 | 回退为经典卡片,不做列表/双栏 | 用经典卡片内嵌列表代替 |
| 图谱节点少于 3 个 | 降级为卡片模板 | 使用经典卡片模板 |
| 网格分类块少于 2 个 | 降级为列表清单或经典卡片 | 使用列表清单模板 |
| 网格分类块超过 8 个 | 拆行(加行)或降列(从3列降到2列) | 提示用户缩减分类数量 |
| 综合海报分区少于 4 个 | 降级为经典卡片或多分类网格卡片 | 使用经典卡片或网格卡片模板 |
| 综合海报分区超过 8 个 | 合并语义相近的分区(如"相关概念"和"延伸阅读") | 提示用户缩减主题范围 |
🔴 CHECKPOINT · 🛑 STOP:图谱/卡片 HTML 生成完毕,展示摘要后必须等用户确认再进入交付阶段。
内容质量标准:
- 每条要点必须独立、具体、有信息量
- 避免空泛描述(如"很重要"、"值得关注")
- 优先使用类比、隐喻帮助理解
- 标注结论可信度(当前最佳解释 / 有争议 / 待验证)
- 图谱特有:节点关系必须明确,连线标签准确,布局合理
- 清单类每项包含:编号+名称+别名+一句话概括+详细说明+3个关键词标签
- 图谱关系密度:子节点数 / 核心节点数 ≥ 3(即至少 3 个关联),否则降级为卡片
- 节点标签完整性(Graphify 最佳实践):每个节点必须有标签文字,连线必须有关系标签——无标签的节点/连线视为无效
- hover 交互可用性(Graphify 最佳实践):hover 时必须同时高亮该节点及其关联连线,其他元素 dim 到 0.3 opacity
- 节点尺寸差异:核心节点 ≥ 子节点 × 1.2 倍面积,体现重要性层级
- 颜色一致性:同类概念必须用同色边框(概念=深蓝、技能=翠绿、数据=暖橙、品质=品质蓝)
- 网格卡片特有:每个分类块必须独立配色(图标渐变+编号圆圈底色+分类名),相邻块颜色不同;每个编号要点标题不超过 12 字,描述不超过 18 字
- 综合知识海报特有:紧凑优先(手机1屏可读完);每个分区内容有独立信息价值(不重复);原则卡片每个 2 条要点(极简);误区澄清至少 3 组(红×/绿✓成对出现);金句必须标注来源;总分区 4-8 个,字数 400-800
Phase 4:HTML 生成与PNG导出
| 内容类型 | 主题色 |
|---|---|
| 概念类 | #1e3a5f 深蓝 |
| 技能/清单类 | #2d6a4f 翠绿 |
| 数据类 | #c44e1c 暖橙 |
| 质量类(QC/IE/精益) | #0f6cbd 品质蓝 |
| 历史类/时间线 | #722ed1 紫色 |
| 默认 | #5b2c6f 紫色 |
生成步骤
- 判断模板类型和尺寸模式:卡片模板 vs 图谱模板 vs 网格卡片 vs 综合知识海报;
screen-mode="mobile"或"default" - 选择模板文件:
- 卡片模板:检查
assets/card-template.html是否存在 - 网格卡片:检查
assets/examples/example-grid-card.html作为参考结构 - 综合知识海报:检查
assets/examples/example-book-poster.html作为参考结构 - 图谱模板:检查
assets/examples/example-graph-*.html是否存在
- 卡片模板:检查
- 模板注入:如果存在模板 → 注入占位符;如果不存在 → 回退:内联生成完整 HTML
- 按内容类型选配色主题
- 按版面选择指南选布局结构
- 写入文件并检测命名
- PNG导出(图谱模板特有):使用浏览器截图工具生成PNG图片
占位符(模板注入):
- 卡片模板:
{{TITLE}}/{{SUBTITLE}}/{{KEY_POINTS}}/{{PRINCIPLE}}/{{APPLICATIONS}}/{{RELATED_TAGS}} - 图谱模板:
{{TITLE}}/{{NODES}}/{{EDGES}}/{{RELATIONSHIPS}}/{{LAYOUT_TYPE}}
卡片内联生成骨架(模板不存在时兜底)
当 assets/card-template.html 不存在时,必须内联生成如下结构的完整 HTML:
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>{{TITLE}}</title>
<style>
*{margin:0;padding:0;box-sizing:border-box}
body{background:#f5f3ed;font-family:Noto Sans SC,sans-serif;line-height:1.6;padding:16px;color:#1a1a2e}
.card{max-width:375px;margin:0 auto;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.card-header{padding:20px 16px 12px;color:#fff;background:linear-gradient(135deg,var(--theme,#1e3a5f),var(--theme-light,#0f6cbd))}
.card-title{font-size:20px;font-weight:bold;margin-bottom:4px}.card-subtitle{font-size:13px;opacity:.9}
.card-body{padding:16px}.section{margin-bottom:16px}.section-title{font-size:14px;font-weight:bold;color:var(--theme,#1e3a5f);margin-bottom:8px;padding-bottom:4px;border-bottom:2px solid var(--theme,#1e3a5f)}
.point{margin-bottom:10px;padding-left:24px;position:relative;font-size:14px}.point::before{content:attr(data-num);position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:var(--theme,#1e3a5f);color:#fff;font-size:11px;text-align:center;line-height:18px;font-weight:bold}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.tag{background:#eef2f7;color:var(--theme,#1e3a5f);padding:3px 10px;border-radius:12px;font-size:12px}
.footer{text-align:center;padding:12px;font-size:11px;color:#888}
</style></head>
<body><div class="card"><div class="card-header" style="--theme:#1e3a5f"><div class="card-title">{{TITLE}}</div><div class="card-subtitle">{{SUBTITLE}}</div></div>
<div class="card-body">
{{CONTENT}}
</div><div class="footer">Generated by knowledge-graph skill</div></div></body></html>卡片HTML规范
- 暖白底(
#f5f3ed),白底卡片 + SVG 噪点纹理(纸张质感) - 渐变配色顶栏,悬浮微动效(
transform: translateY(-2px)on hover) - 适配手机屏宽(max-width: 375px),居中显示
- 字体:Noto Sans SC(无衬线体),首行缩进 0,行间距 1.6
- 标签:
#eef2f7浅蓝底 +#1e3a5f深蓝字
网格卡片内联生成(模板 16 兜底方案)
当 assets/examples/example-grid-card.html 不可用时,内联生成。核心结构:
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>{{TITLE}}</title>
<style>
/* 同示例文件 example-grid-card.html 中的完整 CSS */
</style></head>
<body>
<div class="card">
<div class="card-header">{{HEADER}}</div>
<div class="card-body"><div class="grid">{{GRID_BLOCKS}}</div></div>
<div class="card-footer">{{FOOTER}}</div>
</div>
</body></html>关键占位符:
{{HEADER}}:封面图+作者+标题+副标题横幅(深蓝渐变底){{GRID_BLOCKS}}:N个分类块,每块.cat-block内含.cat-header(图标+类名)+.cat-items(N条编号要点){{FOOTER}}:金句引文+署名- 分类块配色按顺序取 6 大推荐色:暖橙/天空蓝/紫罗兰/品红/金黄/翠绿,超过 6 类则循环
- 响应式断点:≤600px 2列,≤400px 1列
综合知识海报内联生成(模板 17 兜底方案)
当 assets/examples/example-book-poster.html 不可用时,内联生成。核心结构:
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>{{TITLE}}</title>
<style>
/* 同示例文件 example-book-poster.html 中的完整 CSS,至少包含:
- .hero 深蓝渐变顶栏
- .split-section 三栏(左中右)布局
- .principle-row 水平原则卡片网格
- .three-col-row 三栏详情
- .app-row 应用场景网格
- .golden-box 金句区
- .footer-bar 底栏
- 完整响应式@media断点
*/
</style></head>
<body>
<div class="poster">
<!-- 1. Hero Header -->
<!-- 2. Split Section (left: author/background | center: book cover | right: definition) -->
<!-- 3. Quote Block -->
<!-- 4. Principle Cards Row -->
<!-- 5. Three-Column Details -->
<!-- 6. Application Scenario Cards -->
<!-- 7. Golden Quote Section -->
<!-- 8. Footer Bar -->
</div>
</body></html>关键约束:
- 分区 4-8 个,每个分区独立视觉处理
- 深蓝主调
#1a2744→#2d4a7a,米白底#f7f4ed,内容卡片#f9f6f0 - 原则卡片色系不重复,编号徽章 6 大推荐色循环
- 误区用红×(
#e84c3e底色)+ 绿✓(#4cd87c底色)对比 - 响应式:≤700px 双栏→单栏、≤420px 网格→1列
- 卡片最大宽度 780px
图谱内联生成骨架(模板不存在时兜底)
当 assets/examples/example-graph-*.html 不存在时,按以下通用骨架内联生成(根据模板类型调整 viewBox 和节点位置):
<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title>{{TITLE}}</title>
<style>
*{margin:0;padding:0;box-sizing:border-box}
body{background:#1a1a2e;font-family:Noto Sans SC,sans-serif;display:flex;flex-direction:column;align-items:center;min-height:100vh;padding:16px}
.graph-title{color:#fff;font-size:18px;font-weight:bold;text-align:center;margin-bottom:16px;padding:8px 16px;background:#1e3a5f;border-radius:8px}
.graph-wrap{width:375px;height:600px}
svg{width:100%;height:100%}
.node rect{transition:all .3s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}
.node:hover rect{transform:scale(1.05);filter:brightness(1.2)}
.node text{font-family:Noto Sans SC,sans-serif;pointer-events:none}
.edge{stroke:#4a90d9;stroke-width:1.5;fill:none;transition:opacity .3s}
.edge-label{fill:#aab;font-size:10px;text-anchor:middle}
.footer{color:#666;font-size:11px;margin-top:12px}
/* hover 高亮逻辑由 JS 控制,非 hover 状态 dim 到 opacity 0.3 */
.dimmed{opacity:.3}
</style></head>
<body>
<div class="graph-title">{{TITLE}}</div>
<div class="graph-wrap">
<svg viewBox="0 0 400 600" xmlns="http://www.w3.org/2000/svg">
<defs>
<marker id="arrow" markerWidth="8" markerHeight="8" refX="6" refY="3" orient="auto">
<path d="M0,0 L0,6 L8,3 z" fill="#4a90d9"/>
</marker>
</defs>
<!-- 连线层(先于节点绘制) -->
<g class="edges">
<!-- <line class="edge" x1="200" y1="340" x2="130" y2="210"/> -->
<!-- <text class="edge-label" x="165" y="280">包含</text> -->
</g>
<!-- 节点层 -->
<g class="nodes">
<!-- 中心节点示例 -->
<!-- <g class="node" data-id="center">
<rect x="155" y="320" width="90" height="40" rx="8" fill="#fff" stroke="#1e3a5f" stroke-width="2.5"/>
<text x="200" y="344" text-anchor="middle" font-size="13" fill="#1a1a2e">核心概念</text>
</g> -->
</g>
</svg>
</div>
<div class="footer">Generated by knowledge-graph skill</div>
<script>
// hover 交互:高亮当前节点及关联连线,其他元素 dim
document.querySelectorAll('.node').forEach(node => {
node.addEventListener('mouseenter', () => {
const id = node.dataset.id;
document.querySelectorAll('.node,.edge').forEach(el => el.classList.add('dimmed'));
node.classList.remove('dimmed');
document.querySelectorAll(`.edge[data-from="${id}"],.edge[data-to="${id}"]`).forEach(e => e.classList.remove('dimmed'));
});
node.addEventListener('mouseleave', () => {
document.querySelectorAll('.node,.edge').forEach(el => el.classList.remove('dimmed'));
});
});
</script>
</body></html>使用此骨架时:将注释掉的示例节点/连线替换为真实内容,根据模板类型调整坐标位置(参见 Phase 3 各模板布局规范)。
图谱HTML规范
- 使用 SVG 渲染节点和连线
- 背景色:
#1a1a2e(深色) - 字体:Noto Sans SC,节点文字12-14px,连线标签10px
- 节点样式:圆角矩形,白色填充+彩色边框,微阴影(
filter: drop-shadow(0 2px 4px rgba(0,0,0,0.1))) - 连线样式:stroke-width 1.5-2px,关联类型用不同颜色/虚实线区分
- hover交互:hover节点时高亮该节点及其所有连线,其他节点和连线变暗,使用
transform: scale(1.05)+transition: all 0.3s ease实现平滑动画 - SVG viewBox 适配:根据布局选择 viewBox,卡片式图谱用 400×600,流程链用 600×300,网状矩阵用 500×500,思维导图用 750×540,混合/组合图用 780×580,地铁图用 780×580
- 导出注释:生成的 HTML 文件头部和尾部 footer 区域都必须添加
Generated by knowledge-graph skill注释
PNG导出流程(可选,非必需):
- 生成HTML后使用
preview_url展示给用户 - 如果用户使用浏览器手动截图:告诉用户"右键页面截图或使用Ctrl+P导出PDF"
- 不要假设存在自动PNG导出工具——PNG导出是可选功能,失败不影响核心交付
图谱PNG导出限制说明:
- ⚠️ 当前环境没有标准的自动截图PNG工具
- 用户需要通过浏览器手动保存(截图/打印PDF)
- 如果用户需要PNG,必须在交付确认时明确说明
失败模式:
| 触发条件 | 一线修复 | 仍失败兜底 |
|---|---|---|
| 模板文件不存在 | 内联生成完整 HTML,不依赖外部模板 | 使用基础样式结构 |
| PNG导出失败 | 提供HTML文件,用户自行截图 | 只提供HTML文件,说明可自行截图保存 |
| 浏览器预览失败 | 提供HTML文件路径,用本地浏览器打开 | 降级为纯文本描述,无法生成可视化 |
🔴 CHECKPOINT · 🛑 STOP:HTML 生成完成,展示摘要和预览链接后必须等用户确认再进入最终交付。
工作流示例
示例 1(端到端卡片):用户说"知识卡片:第一性原理"→ Phase 1:确认主题→ Phase 2:WebSearch获取权威定义+交叉验证→ Phase 3:选经典卡片模板→ Phase 4:生成HTML(深蓝主题)→ Phase 5:preview_url展示→ 用户满意交付
示例 2(端到端图谱):用户说"帮我做个精益生产的知识图谱"→ Phase 1:确认主题→ Phase 2:WebSearch+关系抽取→ Phase 3:选中心辐射图谱→ Phase 4:内联生成SVG图谱(中心节点+环形子节点)→ Phase 5:preview_url展示→ 用户满意交付+提示截图方法
示例 4(端到端网格卡片):用户说"把24条富有习惯做成分类卡片"→ Phase 1:确认主题和分类→ Phase 2:整理各分类条目→ Phase 3:选多分类网格卡片→ Phase 4:参考 example-grid-card.html 结构内联生成(3列×2行网格)→ Phase 5:preview_url展示→ 用户满意交付
示例 5(端到端综合海报):用户说"做一张《钝感力》知识图谱"→ Phase 1:确认主题和分区→ Phase 2:WebSearch获取作者/核心内容/原则→ Phase 3:选综合知识海报(8个分区)→ Phase 4:参考 example-book-poster.html 结构内联生成→ Phase 5:preview_url展示→ 用户满意交付
示例 3(降级场景):用户说"知识卡片:量子计算"→ Phase 2:所有搜索工具超时→ 回退内部知识,标注"基于通用知识,未经实时验证"→ Phase 4:模板文件不存在→ 内联生成→ Phase 5:preview_url成功→ 交付
Phase 5:交付确认
HTML生成完成后:
- 强制预览:立即调用
preview_url工具在浏览器中展示渲染效果——用户必须先看到实际效果 - 展示内容摘要(文本形式辅助预览):
🎯 已生成 [模板名称] 格式的 [主题] 知识图谱/卡片
📊 内容摘要:[简要描述生成的主要内容]
🎨 模板特征:[模板的主要视觉和结构特点]
🔗 预览链接:[preview_url 生成的链接]
📁 文件路径:[生成的HTML文件路径]
📌 PNG导出:[如适用,说明浏览器手动截图方法]
- 询问调整:"这个结果符合你的预期吗?如需调整请告诉我。"
调整规则
| 调整类型 | 操作 |
|---|---|
| 小修改(改文字/换颜色) | 直接编辑 HTML 文件 |
| 大修改(换结构/加模块/换版面) | 重新生成 |
调整失败兜底
| 触发条件 | 一线修复 | 仍失败兜底 |
|---|---|---|
| 用户要求"调整"但描述模糊(如"好看点") | 给出 3 个具体选项:"①换配色 ②换版面(双栏/列表/经典)③调整字号" | 按当前主题微调(仅改行间距和边距) |
| 用户连续 3 次不满意 | 主动提供 2 个替代方案(换版面模板) | 终止:"已尝试多次,建议重新构思卡片方向" |
| 用户无后续指令 | 回复"卡片/图谱已生成,如需调整随时说" | — |
HTML生成失败的兜底
| 触发条件 | 一线修复 | 仍失败兜底 |
|---|---|---|
| 模板文件不存在 | 内联生成完整 HTML,不依赖外部模板 | 使用基础样式结构 |
| preview_url 预览失败 | 提供HTML文件路径,用本地浏览器打开 | 降级为纯文本描述,无法生成可视化 |
反例黑名单
以下行为会导致质量下降,严格禁止:
| # | 反模式 | 为什么不要做 | 替代做法 |
|---|---|---|---|
| 1 | 编造应用场景 | 没有真实场景的卡片等于空谈 | 找不到就用"学习建议"替代,宁可删模块也不编 |
| 2 | 用模糊词充数 | "非常重要""值得学习"等于没说 | 用具体数字或案例替代,不填空 |
| 3 | 忽略确认环节 | 用户说"知识卡片"但没给主题,直接猜 | 必须先问清楚,宁可多花 10 秒确认 |
| 4 | 模板不可用时静默失败 | 用户收到空白文件或报错 | 主动降级:内联生成完整 HTML |
| 5 | 输出超过 5 条关键要点 | 信息过载,用户记不住 | 强制控制在 3-5 条,最多不超过 7 条 |
| 6 | 单来源搜索就发布 | 错误信息会被当作权威传播 | 至少 2 个来源交叉验证 |
| 7 | 内容含 7 项却只用经典卡片 | 单栏信息瀑布流,阅读体验差 | 自动切换列表清单或左右双栏 |
| 8 | 并列项编号色值重复 | 视觉上混乱,无法区分 | 使用编号色盘,超过 8 项时循环或降级为灰色 |
| 9 | 把图谱做成卡片 | 用户明确要求关系图,却生成静态卡片 | 坚持图谱模板,节点+连线+关系标签必须完整 |
| 10 | 图谱节点超过15个不拆分 | 信息过载,阅读困难 | 拆分为子图谱或用折叠/分页 |
| 11 | 关系标签空白或模糊 | 用户不知道节点间什么关系 | 每个连线必须有明确的标签(包含/依赖/对立/因果) |
| 12 | 深色背景文字对比度不足 | 用户看不清内容 | 节点文字用 #1a1a2e 深色,确保在白色节点上对比度 ≥ 7:1 |
| 13 | 简单概念过度图谱化 | 一个概念没必要画网,显得卖弄 | 3个以下概念用经典卡片,不用图谱 |
| 14 | 思维导图强行用直线 | 思维导图的精髓在于自由弯曲的分支,用直线显得死板 | 使用 Q 二次贝塞尔曲线实现自然弯曲 |
| 15 | 混合图两层内容无关联 | 上层仪表盘和下层流程链之间必须有语义关联,否则只是拼凑 | 确保上层的"指标"对应下层流程中的关键节点 |
| 16 | 地铁图换乘站过多 | 超过 30% 节点是换乘站,线路交叉点过多导致视觉混乱 | 换乘站控制在 20-30%,多余的概念降级为普通站加标注 |
| 17 | 网格卡片所有分类同色 | 每个分类共享同一配色,用户无法快速区分区块 | 每分类独立主题色(图标渐变+编号圆圈底色+分类名色),按 6 大推荐色循环 |
| 18 | 网格卡片单格条目 < 2 或 > 6 | 条目太少浪费空间,太多让格子拥挤 | 每格控制在 2-6 条,不足合并分类,超出拆为2格 |
| 19 | 海报分区少于4个却用全幅布局 | 2-3个分区用综合海报会显得空旷、头重脚轻 | 降级为经典卡片或多分类网格卡片 |
| 20 | 海报所有区域同色无区分 | 7-8个区域如果颜色雷同,用户无法快速定位 | 每区域独立视觉标识——深蓝Hero、暖色引文、彩色原则徽章、渐变三栏标题 |
| 21 | 海报误区澄清只用文字罗列 | 纯文字没有对比效果,读者无法一眼区分误区vs正确 | 用红×圆形标记误区、绿✓圆形标记澄清,形成视觉对比 |
质量自查
生成卡片/图谱后快速检查(交付前必做):
通用检查:
- [ ] 核心定义是否一句话能说清本质
- [ ] 关键要点是否 3-5 条且各有信息量
- [ ] HTML 文件是否能正常打开
- [ ] 是否已用
preview_url展示渲染效果(强制) - [ ] 是否有反例黑名单中的行为
- [ ] 版面模板是否与内容类型匹配
卡片特有检查:
- [ ] 底层原理是否解释了"为什么"
- [ ] 应用场景是否具体可落地
- [ ] 下载链接是否有效
网格卡片特有检查:
- [ ] 每个分类块是否有独立主题色(同色图标+编号圆圈底)
- [ ] 分类块数量是否在 2-8 个合理范围
- [ ] 每块条目是否 2-6 条
- [ ] 顶栏和底栏颜色是否协调(深色渐变搭配金色点缀)
- [ ] 响应式布局是否适配手机(≤600px 2列,≤400px 1列)
综合知识海报特有检查:
- [ ] 分区数量是否在 4-8 个合理范围
- [ ] 紧凑优先:手机375px宽1屏可读完(所有padding/margin极小,字体≤11px)
- [ ] Hero 顶栏是否紧凑(无大封面图,标题区≤8px padding)
- [ ] 双栏区的左(作者/背景)右(定义要点)内容是否平衡
- [ ] 原则卡片行编号颜色是否各不相同
- [ ] 三栏详情区每列标题是否不同渐变背景色
- [ ] 误区澄清区是否用红×/绿✓明确标记
- [ ] 金句区是否深蓝底+装饰图标+flex横排
- [ ] 底栏是否一句简短总结+装饰图标
- [ ] 响应式≤700px 各区域是否合理降级(双栏→单栏、多列→2列→1列)
图谱特有检查:
- [ ] 每个节点是否有文字标签(不为空)
- [ ] 每条连线是否有关系标签(包含/依赖/对立/因果/衍生)
- [ ] hover 交互是否生效(节点高亮+其他 dim 到 0.3 opacity)
- [ ] 节点总数是否 ≤ 15(超出则拆分)
- [ ] 核心节点是否明显大于子节点(≥ 1.2 倍面积)
- [ ] 同类概念是否使用相同颜色边框
资源文件
| 路径 | 用途 |
|---|---|
assets/card-template.html | 经典卡片 HTML 模板(占位符注入) |
assets/examples/example-classic.html | 经典卡片效果示例 |
assets/examples/example-list.html | 列表清单效果示例 |
assets/examples/example-two-col.html | 左右双栏效果示例 |
assets/examples/example-infographic.html | 信息图效果示例 |
assets/examples/example-timeline.html | 时间线效果示例 |
assets/examples/example-compare.html | 对比表效果示例 |
assets/examples/example-grid-card.html | 多分类网格卡片效果示例 |
assets/examples/example-book-poster.html | 综合知识海报效果示例 |
assets/examples/example-graph-radial.html | 中心辐射图谱效果示例 |
assets/examples/example-graph-tree.html | 层级树图谱效果示例 |
assets/examples/example-graph-orbital.html | 环形轨道图谱效果示例 |
assets/examples/example-graph-flow.html | 流程链图谱效果示例 |
assets/examples/example-graph-converge.html | 左右汇聚图谱效果示例 |
assets/examples/example-graph-matrix.html | 网状矩阵图谱效果示例 |
assets/examples/example-graph-mindmap.html | 思维导图谱效果示例 |
assets/examples/example-graph-hybrid.html | 混合/组合图谱效果示例 |
assets/examples/example-graph-metro.html | 地铁图谱效果示例 |
重要:Phase 4 模板不存在时走回退流程(内联生成),不能假设模板一定存在。