学者问道 · Scholar-Wendao
问道于古今学者 · Ask the way of scholars across time
核心理念
学者问道不造人,构建分析镜片。
人文社科研究者真正需要的不是"和福柯聊天",而是把福柯的分析镜片装到自己的研究流程里——读到一段材料,能立刻问"用这个学者的概念框架看,会怎么解读"。
一个好的学者 perspective skill 是一套可运行的学术分析工具箱:
- 他用什么概念地图理解问题?(核心理论术语网络)
- 他的方法论进路是什么?(碰到一个现象先问什么、怎么组织证据、如何论证)
- 他的学派定位与智识谱系?(受谁影响、影响了谁、与同代人的差异化)
- 他的论战与立场转变?(公开争论暴露的真实判断)
- 他的行文风格与概念语言?(学术写作中的概念使用方式,不是"语气")
- 他的人格与处世?(性格、家庭、形成性事件——影响思想但常被忽略)
- 他做不到什么?(默会知识、化石化、传记修辞污染——诚实边界)
关键区分:捕捉的是 HOW they analyze,不是 WHAT they wrote。
与人格 skill 通用工具的根本差异:
- 默认输出第三人称分析("从 Stiegler 的 organology 视角看,这个现象的技术外在化逻辑是……"),而非第一人称扮演
- 对话/角色扮演为 opt-in,必须用户主动激活
- 信息源严格分级(一手 / 二手 / 传记类 / 学生回忆,每条标注)
- 直面六大学术批评(默会知识、思想化石化、公开 vs 私下、传记修辞、漫画化、死亡-尊重边界)
双工作流架构(v0.4.2)
scholar-wendao 的执行被显式分为两个独立可触发的子工作流,加一个共享数据层。
┌─ _library_config.md (配置)
共享数据层 ──────────────┼─ _acquisition_manifest.{md,json} (资料状态 + 4 tier 标注)
├─ {Vault}/Library/{_files,Cards}/ (Vault 内的真源)
└─ examples/{slug}-perspective/_pdf_evidence/ (蒸馏证据)
┌─ Workflow A · 图书馆建设(Library Building)─────────────────────┐
│ 触发: "搜集 X 的资料" / "为 X 建库" / "build-library X" │
│ A.0 配置(_library_config.md) │
│ A.1 Metadata 全收集(无漏 manifest) │
│ A.2 Tier 1+2 自动下载(OA / yt-dlp / scrape) │
│ A.3 Tier 3+4 manifest 输出(待手动 / 浏览器助手项) │
│ A.4 用户主动导入 ← intake_manual_pdf.py(可重复跑) │
│ A.5 generate_library_cards(Library → Cards) │
│ 退出: Library 增长 + acquisition_manifest 标记当前覆盖率 │
└──────────────────────────────────────────────────────────────────┘
│ (可独立运行多轮)
│
┌─ Workflow B · 学者蒸馏(Scholar Distillation)────────────────────┐
│ 触发: "蒸馏 X" / "做 X 的分析镜片" / "distill X" │
│ 前置: Workflow A 至少跑过一次(Library 有 ≥ 5 部 PDF 推荐) │
│ B.1 extract_pdf_evidence(基于 Library 当前状态) │
│ B.2 7 agent 调研(research / biography) │
│ B.3 框架提炼(concepts / heuristics / genealogy / etc.) │
│ B.4 SKILL.md 构建 │
│ B.5 质量验证 │
│ B.6 Vault 同步(回灌 wikilinks) │
│ 退出: Perspective Skill 产出 + Vault wikilinks 更新 │
└──────────────────────────────────────────────────────────────────┘
默认入口 "学者问道 X" = A → B 串行(向后兼容 v0.4.1 端到端流程)
增量入口:
- "更新 X 库" / "为 X 补料" → 仅跑 A(含 A.4 主动导入)
- "重蒸 X" / "用新资料重做 X 镜片" → 仅跑 B(基于扩充后 Library 整体重做)
- "更新 X 的 skill" → 轻量 update(v0.4.1 既有逻辑,仅增补不重写)
关键设计原则
- A 与 B 通过
_acquisition_manifest.json解耦 —— B 不假设 A 已完成,只读 manifest 中已下载的部分作为 evidence 源。 - A.4 主动导入是一等公民,不是 fallback。用户随时可"我有一本 PDF,加到 X 的库",工具自动重命名 + 移到 Library + 生成 Card。
- 资料采集的"无漏"原则 = metadata 无漏,不是 PDF 全到手 —— 反爬严格的源(annas / Sci-Hub / 部分 paywall)只能输出 Tier 3+4 manifest 让用户决策。
- B 不阻塞 A 未完成项 —— 蒸馏总能跑(基于已有素材),SKILL.md 质量随 Library 增长而上。
- "重蒸 B"是激进重做 —— Library 大幅扩充后整体重做 Phase 2.x,旧 SKILL.md 进
_archive/;与"轻量 update"不同。
4 层资料采集架构
| Tier | 自动化程度 | 适用源 | 工具 |
|---|---|---|---|
| 1 · 完全 API | 100% 自动 | OpenAlex / Crossref / Semantic Scholar / arXiv / OAPEN / DOAB / unpaywall | harvest_works.py |
| 2 · 友好 scrape | 90% 自动 | YouTube 元数据 / Vimeo / 学者主页 / ARS Industrialis / Internation / 出版社 OA 落地页 | 4 个新 harvester(v0.4.3) |
| 3 · 浏览器助手 | 50% 自动 | annas / paywall(机构 access) / Cairn 锁定文章 | 用户浏览器解 captcha → 导出 cookies → 工具用 cookies 调 API |
| 4 · 完全手动 | 0% 自动,工具辅助归档 | annas 严格反爬 / Sci-Hub / 闭源专著 / 罕见档案 | intake_manual_pdf.py(用户拖入 PDF → 自动改名 + 移到 Library + 生成 Card) |
每条资料在 _acquisition_manifest.json 中标注 acquisition_tier: 1/2/3/4 + priority: P0/P1/P2。Phase A.3 输出 Tier 3+4 列表给用户决策;Phase A.4 把用户手动下的 PDF 标记为 intake_completed。
v0.5 学者类型 + Workflow B 分支
v0.4.x 默认 framework 为当代单一作者优化(Stiegler 验证)。v0.5 加传统学者支持,Workflow B 内部按 scholar_type 分流:
Workflow B(蒸馏)
├── B.0 学者类型判定(Phase 0A 第 6 项 scholar_type)
│
├── [contemporary] → B.3a 现代单一作者蒸馏(向后兼容 v0.4.x)
│ Phase 2.1-2.8 现有流程不变
│ 默认输出:单一第三人称分析镜片
│
├── [traditional] → B.3b 传统学者蒸馏(v0.5 新增)
│ 新增 Phase 2.0' Lineages 提炼(4-6 派代表学者 + reading strategy)
│ Phase 2.1' 概念地图扩展为「概念 × 派」二维矩阵
│ Phase 2.5' biography 降级 + intellectual genealogy 升级
│ Phase 2.7' 古典引文系统(Bekker / Stephanus / 中典页码)
│ 默认输出:multi-perspective(本人 + N 派各自看)
│
└── [topic] → B.3c 主题/流派蒸馏(已有的 v0.4 主题模式)
学者类型 → 三个核心差异
| 维度 | contemporary | traditional(v0.5 新增) | topic |
|---|---|---|---|
| 概念地图 size | 3-7 | 5-15(允许大概念集) | 5-10 |
| 默认输出 mode | 单一第三人称 | multi-perspective(本人+N 派) | 领域共识+各家分歧 |
| Lineages 一等公民 | 否 | 是(必填 4-6 派) | 否(流派 = 主题本身) |
| 概念结构 | 概念→单一定义 | 概念→本人+N 派 reading 差异 | 共识概念+争议概念 |
| 引文系统 | PDF page anchor | Bekker/Stephanus 编号 + 译本页码并存 | 引代表论文 page anchor |
| biography 重要性 | 高(强 BRACKETING) | 低(生平稀少不可靠,重 genealogy) | 不需要 |
| 一手分级 | A+ → C(8 级) | + 派学者「子一手」 A^(Aquinas/Avicenna 自己写的"是 X 这样想"著作) | 不适用 |
Lineage 一等公民结构(traditional 必填)
每个 traditional 学者的 SKILL.md 必须含 lineages 章节(4-6 派):
lineages:
- name: "经院派 / Thomism"
representative: "Thomas Aquinas"
period: "13世纪"
key_works:
- "Summa Theologiae"
- "Commentary on Nicomachean Ethics"
reading_strategy: "把 Aristotle 形质论 / 四因说整合进基督教神学"
distinctive_claims:
- "首要 ousia = essence + esse(存在)"
- "灵魂作为实体形式"
representative_concept_reading:
ousia: "essence + esse"
virtue: "infused virtue 高于 acquired virtue"
- name: "阿拉伯派"
representative: "Avicenna (Ibn Sina)"
...
Multi-perspective 默认输出格式(traditional)
## [Aristotle 本人]
基于 *EN* 1097b22-1098a20,Aristotle 会说……
[此段引文用 Bekker 编号 + 现代译本页码并标]
## [经院派 / Aquinas]
他会重读这段为……,因为对他而言 *eudaimonia* 不只是地上活动 (operatio),
而是指向至福直观 (visio beatifica)。
[引 *Summa Theologiae* I-II Q.3]
## [Heidegger 派]
他会跳过命题层,看到 *eudaimonia* 的存在论意义被遮蔽为"幸福感"。
他会回到 *physis* 与 *aletheia* 的发生……
[引 *Sein und Zeit* §40 + *Brief über den Humanismus*]
## [Anglo-American analytic / MacIntyre]
他会形式化为:德性是 practice 内部 goods 的获取条件……
[引 *After Virtue* ch.14]
用户在调用时若说"用 X 派看这个材料"或"X 派会怎么想 Y" → 工具直接走该派的 reading strategy 输出。
向后兼容
- Stiegler 等已有 contemporary 案例不受影响(_library_config 默认
scholar_type: contemporary时走 v0.4.x 流程) - v0.5.2 计划:用 traditional 框架升级 Stiegler(加 lineages: 海德格尔派 / 西蒙东派 / Derrida 派 / 中国 Stiegler 派——许煜/陆兴华),让 Stiegler 输出 mode 也支持 multi-perspective
执行流程
Phase 0: 入口分流(v0.4.2 加双工作流分支)
收到用户请求后,先判断触发哪个 workflow + 哪条路径:
| 用户输入意图 | Workflow | 后续路径 |
|---|---|---|
| "搜集 X 的资料" / "为 X 建图书馆" / "build-library X" | A 单跑 | A.0 → A.5 |
| "蒸馏 X" / "做 X 的分析镜片" / "distill X" | B 单跑 | 检查 Library 覆盖率 → B.1 → B.6 |
| "学者问道 X" / "为 X 建一个 skill"(默认端到端) | A → B | 完整流程 |
| "重蒸 X" / "用新资料重做 X 镜片" | B 重做模式 | 旧 SKILL.md 进 _archive/ → B.1-B.6 重做 |
| "更新 X 的 skill" | B 轻量 update | 仅增补不重写(v0.4.1 既有逻辑) |
| "我有一份 PDF 想加到 X 的库" / "import PDF for X" | A.4 单步 | 直接跑 intake_manual_pdf.py |
学者识别(直接路径 / 主题 / 诊断)的判断与 v0.4.1 一致:
| 用户输入 | 路径 | 示例 |
|---|---|---|
| 明确的学者名 | 直接路径 → Phase 0A | "蒸馏 Bernard Stiegler"、"为福柯建一个 skill" |
| 明确的方法论主题 | 主题路径 → Phase 0A(主题模式) | "构建批判理论分析工具"、"民族志方法 perspective" |
| 模糊的研究需求 | 诊断路径 → Phase 0B | "我研究农村教育,想要一种能看穿权力关系的视角" |
Phase 0A: 需求澄清(直接路径)
收到明确学者名后,确认六件事(v0.5 加第 6 项「学者类型」):
- 学者身份精确锁定:避免重名混淆("Foucault" 是 Michel 还是 Léon?"Charles Taylor" 哪一位?)
- 聚焦方向(可选):全面镜片 vs 聚焦某个维度(如只蒸馏 Stiegler 关于"技术外在化"的部分)
- 使用场景:用于分析某类特定材料?给写作提供概念资源?还是做思想史研究?
- 是否更新:检查
~/.claude/skills/[scholar]-perspective/是否已存在 - 本地一手语料:「你手上有这个学者的一手语料吗?比如电子版专著、访谈 transcript、本人手稿、学生整理的讲座稿。有的话直接给路径,比网络搜索质量高得多」
- 学者类型(v0.5 新增 · 决定 Workflow B 走哪条分支):
contemporary—— 当代单一作者(20-21 世纪在世或近 50 年内去世)。例:Stiegler / Yuk Hui / Latour / Haraway。默认 mode:单一第三人称分析镜片,向后兼容 v