Paper Insight Local
你负责把 MotionSurf 中已经完成单篇解读的一篇论文,进一步提炼为可复用的 insight 层产物。
输出目标:
ReadNote/ResearchPaper/<Paper>/insight.jsonReadNote/ResearchPaper/<Paper>/insight.mdReadNote/Wiki/KnowledgeUnits/...下的 Layer 2 critique-oriented knowledge unitsReadNote/Wiki/KnowledgeUnits/index.jsonReadNote/Wiki/KnowledgeUnits/state.jsonReadNote/Wiki/motion_generation_insight_map.mdReadNote/Wiki/motion_generation_insight_state.jsonReadNote/Wiki/Graph/...下的少量 Obsidian 节点页ReadNote/Wiki/Taxonomy/...下的 taxonomy 导航层ReadNote/Wiki/ReviewPacks/...下的子领域综述包- 必要时同步轻量状态到 registry / insight index
适用场景
当用户有以下意图时使用本 skill:
- 想把单篇论文 note 提炼成更短、更结构化的知识条目
- 想为 MotionSurf 的领域总览准备中间语义层
- 想为 Obsidian / graph / wikilink 组织生成更适合浏览的 markdown
- 想批量补齐已有论文 note 的 insight 层
以下情况不要把它当主工具:
- 用户还没有生成单篇论文 note:先交给
paper-read-local - 用户要直接刷新领域总览:交给
motion-overview - 用户要直接联网找论文:交给 hunter 类 skill
输入约束
默认只消费以下本地产物:
ReadNote/ResearchPaper/<Paper>/note.mdReadNote/ResearchPaper/<Paper>/meta.jsonReadNote/Wiki/paper_registry.json(仅用于选择与身份信息,不作为主语义证据)
不要默认重新读取原论文 markdown 或代码目录,除非 note 缺失、损坏,或用户明确要求 fallback。
生成原则
- insight 不是第二份长 note,而是更短、更结构化、可跨论文对齐的中间知识层。
- 语义提炼交给 LLM,脚本只负责读取 note/meta、调用模型、写文件、同步索引。
- 优先保留:生态位、核心贡献、技术 takeaways、优点、局限性、MotionSurf 影响、与 task/dataset/method family 的关系。
- 所有高层判断都必须能回溯到当前
note.md,不要超出单篇 note 已经支持的边界。 insight.md可以引入 Obsidian 友好的 frontmatter / tags /[[wikilinks]],但不要批量改写既有note.md。- 如需输出
[[wikilinks]],优先复用已有 canonical 命名:论文标题优先跟随 registry,稳定任务/方法/数据集节点优先跟随现有ReadNote/Wiki/Graph/...的约定,不要在同一链路里混用大小写或同义别名。 - Layer 2 的
KnowledgeUnits是正式中间层:它存储可复用、可追溯、面向 critique 的领域判断,而不是普通摘要。新论文若支持、修正或反驳已有 unit,应更新对应 unit;若提出新的跨论文可复用判断,才创建 candidate unit。 - Knowledge unit 不应从单篇论文直接升级成领域共识。默认新 unit 从
candidate开始;只有多篇论文或 survey 证据支撑时才升为emerging/stable。 - 如果要把论文进一步注入 wiki 累计知识页,必须让 LLM 先读取当前
ReadNote/Wiki/motion_generation_insight_map.md的现状,再结合这篇论文的insight.json/insight.md/note.md/KnowledgeUnits做整页更新,而不是简单尾部追加。 - wiki 累计页与
motion_generation_overview.md分工不同:前者高频、跨论文、渐进累积;后者低频、稳定、教科书式,不应在每次新论文注入时直接重写。
推荐执行方式
优先运行仓库内的 insight runner:
bashpython ".claude/skills/paper-insight-local/scripts/generate_paper_insight.py" --paper "<paper title or dir>"
如需批量补齐已有 note 的 insight,可运行:
bashpython ".claude/skills/paper-insight-local/scripts/batch_generate_paper_insights.py" --all --only-missing-insight --dry-run python ".claude/skills/paper-insight-local/scripts/batch_generate_paper_insights.py" --limit 5 python ".claude/skills/paper-insight-local/scripts/batch_generate_paper_insights.py" --match diffusion --limit 5 python ".claude/skills/paper-insight-local/scripts/batch_generate_paper_insights.py" --paper "HUMAN MOTION DIFFUSION MODEL" --paper "Generating Diverse and Natural 3D Human Motions from Text" --sync-wiki final
默认的一键自动化入口是:
bashpython ".claude/skills/paper-insight-local/scripts/generate_paper_insight.py" --paper "<paper title or dir>"
这个主脚本现在会自动:
- 定位目标论文 note/meta
- 选择少量高价值语义字段作为输入
- 调用 Claude 生成结构化 insight
- 写入
insight.json/insight.md - 更新 registry 轻量 insight 状态与全局 insight index
- 调用 Layer 2 updater,维护
ReadNote/Wiki/KnowledgeUnits/...、KnowledgeUnits/index.json与KnowledgeUnits/state.json - 继续调用 wiki 注入脚本,把该论文同步进累计 wiki insight 页面与 graph 节点页
- 最后重建 taxonomy 与 review pack 层,使相关子领域综述自动更新
Layer 2 updater 的默认行为是:
- 读取
ReadNote/Wiki/KnowledgeUnits/index.json与 shortlist 相关 unit - 判断新论文支持、修正、反驳哪些已有 unit
- 仅在有跨论文复用价值时创建新的
candidateunit - 保守重建
KnowledgeUnits/index.json/KnowledgeUnits/state.json
如需单独重跑 wiki 累计页与 graph 节点,而不重做单篇 insight,可运行:
bashpython ".claude/skills/paper-insight-local/scripts/update_wiki_insight.py" --paper "<paper title or dir>"
这个第二个脚本负责:
- 读取当前
ReadNote/Wiki/motion_generation_insight_map.md(若存在) - 读取目标论文的
insight.json/insight.md/note.md/meta.json - 调用 Claude 更新累计 wiki insight 页面
- 写入
motion_generation_insight_map.md/motion_generation_insight_state.json - 写入少量
ReadNote/Wiki/Graph/...节点页
如需在不改动现有 flat graph 的前提下,额外生成一套更适合分类导航的 taxonomy 层,可运行:
bashpython ".claude/skills/paper-insight-local/scripts/build_motion_taxonomy.py" --dry-run python ".claude/skills/paper-insight-local/scripts/build_motion_taxonomy.py" --deterministic-only python ".claude/skills/paper-insight-local/scripts/build_motion_taxonomy.py" --category method:diffusion --category task:text-to-motion --category dataset:humanml3d
这个 taxonomy 脚本负责:
- 读取
paper_insight_index.json、paper_registry.json与各论文的meta.json/insight.json - 先构建 deterministic taxonomy inventory
- 再生成领域根页
ReadNote/Wiki/Taxonomy/index.md - 生成 axis hub:
ReadNote/Wiki/Taxonomy/Axes/{methods,tasks,datasets}.md - 生成
ReadNote/Wiki/Taxonomy/Categories/Methods/*.md - 生成
ReadNote/Wiki/Taxonomy/Categories/Tasks/*.md - 生成
ReadNote/Wiki/Taxonomy/Categories/Datasets/*.md - 在 task 类页面中额外生成 chronology section(
task -> year -> paper) - 生成关系侧页:
ReadNote/Wiki/Taxonomy/Relations/{authors,institutions}.md - 生成
ReadNote/Wiki/ReviewPacks/*.md子领域综述包 - 写入
ReadNote/Wiki/Taxonomy/taxonomy_state.json
它与旧层分工如下:
- 旧层:
motion_generation_insight_map.md+Graph/...,承担累计型 cross-link layer - 新层:
Taxonomy/...,承担分层导航型 layer - 关系侧层:
Taxonomy/Relations/...,承担 researcher / institution lineage overlay
输出要求
insight.json 至少包含
paper_idpaper_titlesource_notesource_metainsight_versiongenerated_atpositioningtechnical_takeawaysstrengthslimitationsevidence_anchorsmotionsurf_impactrelationsobsidian
insight.md 的目标风格
- 更短、更适合浏览
- 明确体现生态位 / 贡献 / 优缺点 / MotionSurf 影响
- 允许使用 YAML frontmatter
- 允许使用
[[wikilinks]] - 不要求像
note.md一样逐节完整展开
Layer 2 KnowledgeUnits 的目标风格
- 每个 unit 只表达一个可复用的领域判断、评测警告、方法分化轴、伪创新模式或 critique hook
- v1 schema 保持精简:
id、type、title、statement、scope、status、confidence、evidence、why_it_matters、questions_to_ask、source_paths、last_updated - 优先类型:
stable_judgment、evaluation_warning、method_split、false_novelty_pattern、critique_hook - 默认状态:证据不足时写
candidate;跨论文或 survey 支撑后才升为emerging/stable - 判断标准:只有能帮助未来评估新论文、新 idea 或新代码仓库的内容才进入 Layer 2
汇报要求
回复时简短说明:
- 为哪篇论文生成了 insight
- 写入了哪些文件
- registry / insight index 是否已同步
- 哪些关系或 graph link 目前仍只是候选、还不应视为强事实


