mcpField
T
temple-generator

temple-generator

github.com/glebis生产力401195 次安装1 天前更新
代码仓库

关于 temple-generator

Temple Generator 将 Obsidian vault 转换为包含 3D 交互知识可视化的 HTML 文件,适合探索个人笔记或比较两组文档。它先分析实体、链接和聚类,再按置信度构建语义层级;支持双 vault 比较。

主要功能

  1. 01扫描笔记、链接与聚类
  2. 02按语义类型分类实体
  3. 03基于置信度生成抽象层级
  4. 04导出交互式 3D HTML
  5. 05支持两个 vault 的比较

适用场景

  1. 01将 Obsidian 笔记转为可探索的知识地图
  2. 02查看笔记之间的关联与主题群组
  3. 03比较两个 vault 的共同点和差异

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/glebis/claude-skills --skill temple-generator

安装后在 Claude Code 中输入/temple-generator确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.claude-plugin/
plugin.json
assets/
temple-template.html
references/
classification-guide.md
entity-schema.md
merge-algorithm.md
scripts/
extract_entities.py

详细介绍

Temple Generator

从任意 Obsidian 库生成 3D 交互式知识可视化。输出是一个包含同心实体环、音频、探索机制和多尺度语义缩放的独立 HTML 文件(Three.js)。

适用场景

  • 用户希望将任意 Obsidian 库可视化为 3D 知识地图
  • 用户希望以可视化方式比较两个库或文档集
  • 用户希望重新分析库并从头生成神殿

架构

由两部分组成:

  1. 生成流水线(此技能):发现结构、为其命名、评估置信度并导出场景包
  2. 运行时渲染器(模板):处理导航、过渡、音频和探索

预先生成含义。运行时渲染体验。

工作流

步骤 1:扫描库

运行 python3 ~/.claude/skills/temple-generator/scripts/extract_entities.py <vault_path>。

这会生成 vault-scan.json,其中包含:

  • 文件:路径、标题、标签、出链、反向链接计数、字数、文件夹、frontmatter
  • 图:包含双向链接计数的邻接表
  • 中心性:每个节点的度中心性
  • 簇:检测到的紧密链接笔记群组
步骤 2:阅读扫描结果并抽样笔记
  1. 阅读 vault-scan.json
  2. 阅读中心性最高的约 20 个节点(每个节点的前 100 行)
  3. 阅读 references/classification-guide.md,了解实体类型的启发式规则
  4. 阅读 3-5 篇有代表性的笔记,以把握库的“风格”(正式或非正式、领域术语、语言)
步骤 3:分类实体

使用 references/classification-guide.md,为每个重要节点分配一种实体类型。维护两套词汇:

  • 规范名:中性标签,便于移植(anxiety-management、fermentation-process)
  • 诗性名:用于装置作品的神话式或艺术化名称(The Ferment Gate、The Cortisol Throne)

各类型目标数量(根据库的规模调整):

类型小型库(< 100)中型库(100-500)大型库(500+)
神祇2-33-55-7
半神3-75-128-15
张力2-43-75-9
叙事2-55-108-12
盲点1-33-54-7
灵体1-33-53-5
研究5-1510-2515-30
价值观2-53-85-10
路径2-53-85-10
问题3-65-108-12
深度2-55-108-15
晶体1-32-53-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
  1. 将 ~/.claude/skills/temple-generator/assets/temple-template.html 复制到输出位置
  2. 如果提供了 --inline 标志:在 HTML 中将 JSON 数据嵌入为 const TEMPLE_DATA = {...};
  3. 否则:将 temple-data.json 放在 HTML 旁边
步骤 7:报告

向用户展示:

  • 按类型统计的实体数量
  • 生成的抽象层级(含置信度评分)
  • 排名前 5 的神祇/核心实体
  • 检测到的张力
  • 如果为双图模式:重叠百分比和共享领域

双图模式

提供 --compare vault_path_2 时:

  1. 独立扫描两个 vault(步骤 1)
  2. 对每个 vault 分类实体(步骤 2–3)
  3. 执行 references/merge-algorithm.md 中的合并算法
  4. 生成带来源归属信息的合并场景包
  5. 模板使用偏移量渲染共享框架,以呈现差异

质量指南

  • 跳过琐碎的笔记(日常待办、管理日志、空白占位文件)
  • 优先选择能揭示 vault 实际关注点的节点,而非其归档系统
  • 使用 vault 自身的表达方式,并根据样本笔记进行调整
  • 如果某个层级的置信度不足,则省略该层级,而不是凭空编造结构
  • 每个抽象层级都必须有成员权重、示例和来源依据支持
  • “抽象层级结构应基于语义,而不只是几何关系”

模板音频指南

模板的音频系统应在不同缩放级别之间保持层级连续性:

  • L0(近景):局部化、富有特征——实体低语和纹理
  • L1(中景):区域性和声铺底、簇脉冲
  • L2(远景):稀疏的持续音、基于张力的音调变化
  • L3(比较):两个 vault 声音之间的立体声/对话式呈现

缩放应让人感觉是在改变分辨率,而非切换宇宙。各个尺度的主题应彼此关联。

评论

支持 Markdown