Community生產力與協作github.com

luciliang/domain-knowledge-builder

元技能:將 N 篇論文 + 領域名稱轉換為一個可查詢的 A 級領域知識庫(DAG + 心智模型)。

domain-knowledge-builder 是什麼?

這個元技能(meta-skill)的核心功能是將用戶提供的多篇論文與領域名稱,自動生成一個結構嚴謹、可查詢的領域知識庫。它不僅僅是提取定義和定理,而是深入提煉該領域的「心智模型」(mental models),幫助 AI 代理理解領域的思維框架與立場。生成的知識庫採用有向無環圖(DAG)結構,包含5種節點類型與10種關係(如保證、矛盾、依賴),並結合Karpathy的生命週期管理(raw→wiki→SCHEMA),確保知識庫能持續成長與維護。此技能支援Claude Code、Cursor、Codex等平台,透過7步驟的Ingest管線(S1-S7)與darwin 2.0的9維品質閘門(需≥B+分數)確保輸出品質,並強調可回滾、可審計、確定性與預檢等四支柱,讓生成過程高度可控。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add luciliang/domain-knowledge-builder

Installed? Explore more 生產力與協作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Domain Knowledge Builder — 領域知識庫生成器

給我 N 篇論文 + 領域名 → 產出一個可查詢的 A 級領域知識庫 skill。 知識庫結構:DAG(5 類型節點 + 10 關係)+ 心智模型 + Query 協議 + 誠實邊界。 品質門:darwin 2.0 的 9 維評分,≥B+ (80) 才算生成成功。


核心心智模型

1. 知識 ≠ 定義堆砌

一個能用的領域知識庫不是把定義/定理逐條搬進來,而是提煉這個領域用什麼鏡片看世界(心智模型),再用知識節點支撐鏡片。問"我的數據流非交換,CP 會怎麼幫我"——純定義堆砌答不出,心智模型驅動的知識庫能推斷立場。所以 ingest 流程必須有心智模型提煉步驟(S5),不是只提取節點。

2. Karpathy 生命週期 × DAG 結構

  • Karpathy LLM Wiki 提供「生命週期」:raw(不可變源)→ wiki(LLM 維護)→ SCHEMA(規範)三層 + Ingest/Query/Lint 三工作流。知識庫是會成長的有機體,不是一次提取的快照。
  • DAG 提供「結構」:節點間不只是分類,是關係——guarantees/generalizes/contradicts/depends_on。定理 A 推出定理 B、方法 C 與方法 D 矛盾,這些關係是領域知識的核心,扁平目錄承載不了。
  • 融合:Karpathy 管"知識怎麼長"(生命週期),DAG 管"知識怎麼連"(結構)。

3. 生成器必須可控(D7)

meta-skill ≠ 普通 skill 的本質是生成其他 skill——大量 FS 寫、subagent spawn、網路。這必須可控:每次 ingest 可 checkpoint 恢復、darwin 不過門可 git revert、每個節點可追溯(provenance)、同論文重跑產生同 node ID(determinism)。否則 6 個月後不可維護。這四支柱(可回滾/可審計/確定性/預檢)是 generator-skill 合規的標準(darwin 第 9 維 generator 子類)。


何時用 / 何時不用

用:

  • "給某專家建一個能回答『專家怎麼看X』+『為什麼(依據)』的顧問 skill"
  • "把專家的論文/訪談/部落格變成心智+知識雙引擎"
  • "把這幾篇論文變成可查詢的知識庫"
  • "給 X 領域建一個 DAG 知識庫"
  • "我有 N 篇 PDF,想要一個能推斷立場的領域助手"

路由區分:

  • 純領域知識庫(不要專家視角)→ DKB 原模式(examples/conformal-prediction)
  • 專家視角(要專家判斷+依據)→ 本擴展(expert-advisor 模式)

不用(路由到其他 skill):

  • "什麼是 Split CP?" → 查詢已存在的 CP 知識庫(examples/conformal-prediction)
  • "總結這本書" → 用 book-to-skill 直接生成單本書 skill
  • "蒸餾一個人怎麼想(不要領域知識)" → 用 nuwa-skill

架構(5 層)

domain-knowledge-skill/
├── SKILL.md                       # 本文件(meta-skill 入口)
├── schema/schema.md               # 知識規範(5 類型 + 10 關係 + D7 可控性)
├── pipeline/                      # Ingest/Query/Lint 工作流
│   ├── ingest.md                  # 7 步流水線契約(S1-S7)
│   ├── query.md                   # 5 步 DAG 遍歷查詢
│   ├── lint.md                    # 結構 + Generator 合規檢查
│   ├── run-dag-pipeline.js        # workflow 編排腳本
│   └── state/                     # D7 執行時
│       ├── init_run.py            # UUID + git + run-manifest + preflight
│       └── lint_d7.py             # 四支柱 Lint
├── engines/                       # 復用的引擎
│   ├── book_to_skill/             # virgiliojr94 提取引擎(technical 模式)
│   ├── darwin-rubric.md           # 9 維品質評分(第 9 維雙子類)
│   └── nuwa-validation.md         # 領域化三重驗證
├── references/                    # 模板(規劃中)
└── examples/
    └── conformal-prediction/      # 黃金參照(88 分 A-,懶載入)

7 步 Ingest 流水線(D3 階段性質拆分)

確定性(workflow fan-out)         互動/判斷(subagent chain)
─────────────────────            ─────────────────────
S1 提取 ──┬─▶ S2×N 並行 ──┐
          └─▶ ...        ├─▶ S3 合併 ──▶ S4 導航 ──▶ S5 心智模型 ──▶ S6 驗證 ──▶ S7 組裝 ──▶ darwin 門
                          │   (contradicts    (並行 3)   (三重驗證)    (fresh)    (<4K)     (≥B+)
                          │    人工確認)

詳細契約見 pipeline/ingest.md。關鍵約束:

  • S1 必做 docling preflight(schema §12.4,technical 模式硬依賴)
  • S2 節點 ID 遵 <type>-<source>-<canonical-term>(schema §10 Determinism)
  • S3遇 contradicts/does_not_guarantee 邊必須 contact_supervisor 人工確認
  • S5 載入 engines/nuwa-validation.md 做三重驗證
  • S6/S7 用 fresh-context 子 agent(獨立驗證/評分,禁自評)
  • 全程每節點寫 provenance(generated_by_step/run_id/source_span)

品質門(darwin 2.0,9 維)

載入 engines/darwin-rubric.md,fresh-context 子 agent 評分:

維度權重關注點
①結構完整性 ②清晰度 ③內容完整性 ④可操作性15%×4frontmatter/工作流/覆蓋/可執行
⑤準確性 ⑥一致性10%×2定理原文精確/無斷裂引用
⑦執行效率 ⑧強健性8%/7%token 預算/誠實邊界
⑨元技能合規5%generator-skill 子類:四支柱

第 9 維雙子類(oracle 洞察):query-skill(CP 型,唯讀)vs generator-skill(本 skill 型,允許受控寫入但須滿足四支柱:可回滾/可審計/確定性/預檢)。這讓生成器能公平過品質門。

棘輪機制:darwin <B+ → git revert 最後 stage → 診斷低分維度 → 修復重評。連續 3 輪無改進 → 提議探索性重寫。


5 個參考源的去向

源去向複用方式
Karpathy LLM Wikischema/ + pipeline/乾淨繼承:3 層架構 + Ingest/Query/Lint 生命週期
book-to-skillengines/book_to_skill/乾淨 vendor:提取引擎(technical 模式保留公式)
nuwa-skillengines/nuwa-validation.md方法論提煉:三重驗證(去 expression DNA)
darwin-skillengines/darwin-rubric.md雙源重構:validation-report 的 9 維 + 舊版 8 維對照
dag-executor僅哲學參考wave-based 並行 + 檔案鎖(實現用 pi workflow/subagent)

examples/conformal-prediction(黃金參照)

懶載入——不參與預設 skill 路由,顯式請求時啟用:

  • v1.1.0 / 50 節點 / 138 邊 / 0 斷裂 / darwin 88 分(A-)
  • 3 篇來源(Angelopoulos 2022 / Teneggi 2025 / Min 2026)
  • 用法:(1) 新領域 ingest 時作為品質基準;(2) 用戶顯式查"共形預測"時載入

約束與誠實邊界

硬約束:

  • docling 是 technical 模式硬依賴(學術論文沒公式=沒價值,不可犧牲)
  • SKILL.md body <4K tokens(compaction 從末尾截斷)
  • 所有節點 provenance 必填(新 ingest)
  • generated skill 路徑只用 skill-root-relative(防連結斷裂)

做不到:

  • 蒸餾不了直覺——框架能提取,靈感不能
  • 覆蓋不了領域所有論文——只覆蓋用戶提供的來源
  • 自動判斷不了來源品質——garbage in garbage out(低品質論文 → 低品質知識庫)
  • 替代不了專家判斷——contradicts 邊必須人工確認

已知局限:

  • docling 版本漂移可能靜默降質提取(無測試捕獲)
  • canonical-term 的 LLM 抽取非完全確定性(同論文兩次抽取可能差 hash,Lint 會報告)
  • 大論文(>50K tokens)提取成本高(建議分批 ingest)

快速上手

用戶: 給我建一個 diffusion-models 領域知識庫,論文在 ~/papers/ddpm.pdf, ~/papers/score-sde.pdf

→ 本 skill:
  1. 確認領域 + 來源 + preflight docling
  2. 跑 7 步 pipeline(pipeline/ingest.md)
  3. darwin 評分,≥B+ 則交付生成的 skill 到 ~/.pi/agent/skills/diffusion-models/
  4. 用戶可後續查詢該生成的 skill

詳見 pipeline/ingest.md 的完整契約。


本 meta-skill 版本:v0.1 | 5 源複用 + D7 可控性 + darwin 2.0 品質門 | 黃金參照:examples/conformal-prediction (88/A-)

相關技能