关于 temple-generator
Temple Generator 将 Obsidian vault 转换为包含 3D 交互知识可视化的 HTML 文件,适合探索个人笔记或比较两组文档。它先分析实体、链接和聚类,再按置信度构建语义层级;支持双 vault 比较。
主要功能
- 01扫描笔记、链接与聚类
- 02按语义类型分类实体
- 03基于置信度生成抽象层级
- 04导出交互式 3D HTML
- 05支持两个 vault 的比较
适用场景
- 01将 Obsidian 笔记转为可探索的知识地图
- 02查看笔记之间的关联与主题群组
- 03比较两个 vault 的共同点和差异
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ glebis/ claude-skills --skill temple-generator安装后在 Claude Code 中输入/temple-generator确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
.claude-plugin/plugin.jsonassets/temple-template.htmlreferences/classification-guide.mdentity-schema.mdmerge-algorithm.mdscripts/extract_entities.py详细介绍
Temple Generator
从任意 Obsidian 库生成 3D 交互式知识可视化。输出是一个包含同心实体环、音频、探索机制和多尺度语义缩放的独立 HTML 文件(Three.js)。
适用场景
- 用户希望将任意 Obsidian 库可视化为 3D 知识地图
- 用户希望以可视化方式比较两个库或文档集
- 用户希望重新分析库并从头生成神殿
架构
由两部分组成:
- 生成流水线(此技能):发现结构、为其命名、评估置信度并导出场景包
- 运行时渲染器(模板):处理导航、过渡、音频和探索
预先生成含义。运行时渲染体验。
工作流
步骤 1:扫描库
运行 python3 ~/.claude/skills/temple-generator/scripts/extract_entities.py <vault_path>。
这会生成 vault-scan.json,其中包含:
- 文件:路径、标题、标签、出链、反向链接计数、字数、文件夹、frontmatter
- 图:包含双向链接计数的邻接表
- 中心性:每个节点的度中心性
- 簇:检测到的紧密链接笔记群组
步骤 2:阅读扫描结果并抽样笔记
- 阅读
vault-scan.json - 阅读中心性最高的约 20 个节点(每个节点的前 100 行)
- 阅读
references/classification-guide.md,了解实体类型的启发式规则 - 阅读 3-5 篇有代表性的笔记,以把握库的“风格”(正式或非正式、领域术语、语言)
步骤 3:分类实体
使用 references/classification-guide.md,为每个重要节点分配一种实体类型。维护两套词汇:
- 规范名:中性标签,便于移植(
anxiety-management、fermentation-process) - 诗性名:用于装置作品的神话式或艺术化名称(
The Ferment Gate、The Cortisol Throne)
各类型目标数量(根据库的规模调整):
| 类型 | 小型库(< 100) | 中型库(100-500) | 大型库(500+) |
|---|---|---|---|
| 神祇 | 2-3 | 3-5 | 5-7 |
| 半神 | 3-7 | 5-12 | 8-15 |
| 张力 | 2-4 | 3-7 | 5-9 |
| 叙事 | 2-5 | 5-10 | 8-12 |
| 盲点 | 1-3 | 3-5 | 4-7 |
| 灵体 | 1-3 | 3-5 | 3-5 |
| 研究 | 5-15 | 10-25 | 15-30 |
| 价值观 | 2-5 | 3-8 | 5-10 |
| 路径 | 2-5 | 3-8 | 5-10 |
| 问题 | 3-6 | 5-10 | 8-12 |
| 深度 | 2-5 | 5-10 | 8-15 |
| 晶体 | 1-3 | 2-5 | 3-6 |
步骤 4:构建抽象层级
层级由置信度门控——只有当库提供足够依据时才纳入该层级。
层级 0 — 实体(始终存在):带有位置、连接和描述的独立节点。
层级 1 — 领域(至少需要 3 个有意义的簇):相关实体的分组。每个领域包含:
canonical+poetic名称- 成员实体键
- 质心位置(成员位置的加权平均值)
- 代表性范例(中心性最高的成员)
- 描述(以库的风格写 1-2 句话)
- 置信度分数(0-1)
层级 2 — 轴(至少需要 2 组可解释的对立项):根本性张力。每个轴包含:
- 两个带有名称和描述的极点
- 每个极点所含的成员领域
- 轴描述
- 置信度分数
层级 3 — 比较(需要两个库且对齐程度足够):共享项/独有项分析。
双图逻辑请参阅 references/merge-algorithm.md。
步骤 5:生成场景包
按照 references/entity-schema.md 中的架构生成 temple-data.json。
包含:
entities:所有已分类的节点levels:带缩放阈值的抽象层mappings:实体 → 领域 → 轴的交叉映射comparison:(如果是双图)共享项/独有项/对齐数据audio:按类型和层级提供的主题提示style:诗性词汇、介绍文本、调色板、层定义confidence:各抽象层和对齐项的置信度分数
步骤 6:生成 HTML
- 将
~/.claude/skills/temple-generator/assets/temple-template.html复制到输出位置 - 如果提供了
--inline标志:在 HTML 中将 JSON 数据嵌入为const TEMPLE_DATA = {...}; - 否则:将
temple-data.json放在 HTML 旁边
步骤 7:报告
向用户展示:
- 按类型统计的实体数量
- 生成的抽象层级(含置信度评分)
- 排名前 5 的神祇/核心实体
- 检测到的张力
- 如果为双图模式:重叠百分比和共享领域
双图模式
提供 --compare vault_path_2 时:
- 独立扫描两个 vault(步骤 1)
- 对每个 vault 分类实体(步骤 2–3)
- 执行
references/merge-algorithm.md中的合并算法 - 生成带来源归属信息的合并场景包
- 模板使用偏移量渲染共享框架,以呈现差异
质量指南
- 跳过琐碎的笔记(日常待办、管理日志、空白占位文件)
- 优先选择能揭示 vault 实际关注点的节点,而非其归档系统
- 使用 vault 自身的表达方式,并根据样本笔记进行调整
- 如果某个层级的置信度不足,则省略该层级,而不是凭空编造结构
- 每个抽象层级都必须有成员权重、示例和来源依据支持
- “抽象层级结构应基于语义,而不只是几何关系”
模板音频指南
模板的音频系统应在不同缩放级别之间保持层级连续性:
- L0(近景):局部化、富有特征——实体低语和纹理
- L1(中景):区域性和声铺底、簇脉冲
- L2(远景):稀疏的持续音、基于张力的音调变化
- L3(比较):两个 vault 声音之间的立体声/对话式呈现
缩放应让人感觉是在改变分辨率,而非切换宇宙。各个尺度的主题应彼此关联。