| name | bear-map |
| description | 给一个概念,从真实检索到的论文摘要里挖出它的邻近概念,画出以该概念为中心的知识地图——每个节点都锚定真实文献,不从记忆里补节点。同时输出 Mermaid 概念图(可在 Claude Code / GitHub / Obsidian 渲染)和可截图的独立 HTML 地图,再给 3–6 篇入门推荐。
**以下情况请主动触发本技能**:用户说"帮我画一张这个概念的知识地图"、"这个词周围有哪些相关概念"、"梳理一下这个方向的概念网络"、"给我一张概念图"、"这个领域的核心概念有哪些"、"知识地图"、"概念地图"、"map out this concept"、"draw a knowledge map of X"、"what concepts surround X"、"show me the concept network around this term"、"concept map for X"——即使用户没有说"bear-map",只要意图是**以一个概念为中心,了解它周围的知识版图**,就使用本技能。
不适用于:为观点找支持文献(用 bear-support)、找反对文献(用 bear-counter)、选题查重(用 bear-scoop)、溯源演化史(用 bear-trace)。
|
bear-map · 知识地图
一个任务:把一个概念交给它,它从真实检索到的摘要里挖出邻近概念,画出这张地图,再把论文交给你读。模型可以凭半生不熟的记忆画一张概念图——有时候对,有时候错;这里把每个节点锁定到真实检索到的摘要,地图只有它检索到的那么宽,不多不少。
先读 references/sci-cli.md——CLI 检测步骤、用法和铁律。
再读 references/output-system.md——三层输出体系和 HTML 外壳规范。
地图有意设计为一层深:中心 + 真实邻居。多层递进的深度学习地图是另一种更重的任务,交给 SciMaster,不在这里做。
步骤(固定顺序)
Step 0 — 确认 CLI 可用
运行 sci --version。未安装就给安装命令并停止;认证错误就提示 sci init 并停止。不要跳过。
Step 1 — 锚定概念,执行多维检索
先以输入术语为中心概念执行主检索,sci search 该术语,--mode low,--limit 20,--prefix 与概念挂钩。
主检索之后,至少再做 2 个补充检索,用来验证邻居节点,而不是只靠中心 query 生成整张地图。补充检索从以下角度选择:
- 方法邻居:中心概念最常连接的技术、数据类型、检测手段
- 应用场景:中心概念进入的疾病、人群、任务或临床入口
- 对照概念:摘要中反复出现的替代方法、竞争路线或基线方法
- 解释任务:组织来源、机制解释、风险分层、预测指标等下游任务
- 前沿组合:近年摘要中出现的组合词,如 multi-omics、fragmentomics、foundation model 等
每个补充检索都要在 HTML 的「检索覆盖面」和「检索透明度」里列出,让用户看见本次覆盖了哪些维度。
术语有歧义时,先确认用户想要哪个含义,再检索。
Step 2 — 从摘要里挖邻居,并为每个节点写实质性解释
读取检索到的 .json,从摘要里为每个节点提取两件事:
A. 中心概念解释(3–5 句,锚定来源)
不只是定义,要说清楚三件事,每件各 1–2 句,行内标注来源:
- 它是什么(核心机制或工作原理)
- 它解决什么问题,或在什么场景下有用
- 它和邻近概念之间最核心的连接是什么
B. 邻居节点(5–8 个),每个必须有实质性解释
每个邻居节点输出以下四项,全部来自真实检索摘要:
- 概念名 + 关系类型(如"方法"、"子类"、"应用场景"、"对照概念")
- 它是什么:2–3 句说清楚这个概念的核心内容,让没接触过的读者能建立基本认知
- 与中心的连接:1 句说清楚它为什么在这张地图上,和中心概念的关系是什么
- 支撑文献 ID(如 [E3], [E7])
"它是什么"不能是一句话的标签——读完之后用户应该能用自己的话描述这个概念,而不只是知道它的名字。如果某个邻居在摘要里出现但没有足够内容让你写出实质解释,就不要上图,宁可少一个节点。
筛选标准:至少 2 篇摘要共同支撑;单篇支撑时标注;排除 study/method/model 等过泛词;每条边标关系类型;每个节点标支撑文献 ID。
Step 3 — 画地图,两种形式
Mermaid(在终端和 report.md 中直接输出):
概念图,中心节点居中,邻近概念围绕,边上标注关系(简短中文,如"是其子类"、"提供方法"、"与之对比")。
独立 HTML 文件(写入 {topic-slug}/map.html):
同一张地图的可视化版本。设计要求:白底,标签清晰,密度适中,适合截图放 PPT;悬停节点显示一行描述;内联 SVG 或 Canvas,不引入大型框架。按 output-system.md 外壳规范生成,强调色 #0891b2(青)。
Step 4 — 推荐入门书单
从支撑地图的真实论文里挑 3–6 篇,每篇一行说明入选理由(定义了中心概念、是某邻居的关键论文、最新进展等)。
Step 5 — 搜不到就说搜不到
如果检索结果无法支撑任何邻居节点,直接说"未能通过检索为此概念找到足够的邻近概念支撑",建议换更具体的搜索词,不要凭记忆补全地图。
输出格式(终端)
━━━ [中心概念] ━━━━━━━━━━━━━━━━━━━━━━━━
[是什么,1–2句,[E1] 标注]
[解决什么问题或用在哪,1–2句,[E2] 标注]
[与邻居的核心连接,1句]
邻近概念
─────────────────────────────────────
▸ [邻居 A] [关系标签] [E3][E5]
是什么:[2–3 句,说清核心内容和工作原理]
与中心:[1 句,为什么它在这张地图上]
▸ [邻居 B] [关系标签] [E2]
是什么:[2–3 句]
与中心:[1 句]
…(5–8 个,格式相同)
[Mermaid 代码块]
→ 地图已写入:{topic-slug}/map.html
推荐入门
─────────────────────────────────────
Smith et al. 2023 — "论文标题"
→ 入选理由(一句话)
输出物
检索结束后,在当前目录下创建 {topic-slug}/ 子文件夹,输出四个东西:
- 终端 — 直接 print 已定义的 TUI 格式
report.md — 按 output-system.md 的结构化 Markdown 规范生成:稳定 YAML front matter + 一眼结论 + 概念邻接表 + Mermaid 概念图 + 推荐入门 + 学习路径 + 证据表 + 检索透明度 + 可复用 JSON
map.html — 自包含 HTML,强调色 #0891b2(青)
references.bib — 合并所有 query 生成的 .bib 文件,去重后只保留报告中实际引用的文献条目
HTML 签名体验:SVG 概念星图 + 邻居说明卡片 + 推荐书单,强调色 #0891b2(青)。星图下方每个邻居节点必须有卡片(是什么 2–3 句 + 与中心的连接 1 句),不能只依赖 hover。悬停 tooltip 用 JS mousemove 实现(不用 <title>)。HTML 组件规范见 output-system.md 的 bear-map 节。
简单查询只给 1–2 条轻量下一步。入门新领域时给具体建议:先读哪几篇、沿哪个邻居扩展、哪些节点证据薄需谨慎。
诚实边界
地图上的每个节点、每条边都必须能追溯到一篇真实检索到的摘要。无法锚定的概念不上图。地图只有检索到的那么宽——这是真实文献的一个切片,不是完整本体,输出时也这样呈现。多层递进的学习地图是另一种更重的能力,引导用户前往 SciMaster,而不是在这里伪造深度。
Gotchas
- SVG 地图节点不能重叠:生成节点坐标时需要均匀分布(正八角形或类似布局),不要让相邻节点挤在一起,尤其当节点标签较长时。
- DOI 链接必须可点击:书单卡片中所有有 DOI 的论文标题都要渲染为
<a> 链接,不能因为生成时忘记而留成纯文本。