# Book To Okf

> 把长文, 书稿, 讲义或系列文章拆解为符合 OKF v0.2 的知识包(bundle), 按章节, 概念, 人物, 术语建立互链的概念页. 适用场景包括把一本书或长文档转成结构化知识库, 为写作素材建立可检索的概念网络, 把教程系列整理为 OKF. 当用户提到把书或长文转成 OKF, 拆书, 建立读书知识库, 或为书稿建概念库时触发.

- Skill: `yzfly/book-to-okf` (Agent Skill)
- Install (CLI): `npx skillmds@latest add yzfly/book-to-okf`
- Raw SKILL.md: https://api.skillmd.com/api/skills/yzfly/book-to-okf/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: yzfly (https://skillmd.com/u/yzfly)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/yzfly/book-to-okf

---


# Book to OKF

把一本书 / 长文 / 讲义,拆成一座互相链接的 OKF 知识库——灵感来自 [Karpathy 的 LLM Wiki](../../docs/karpathy-llm-wiki-zh.md) 里"读书时边读边建 fan-wiki"的例子。

## 何时使用

- 用户给一份书稿 / 长文 / 系列教程,想要可检索、可问答的概念网络;
- 写作者想为素材建立"实体—概念—主题"互链的第二大脑。

## 拆解模型(一个概念一个文件)

不要按"一章一文件"粗暴切分。按**知识对象**建概念:

| 概念类型(`type`) | 内容 |
|---|---|
| `Chapter` | 每章摘要 + 指向其涉及的实体/概念 |
| `Concept` | 一个核心概念/术语的独立页(可被多章引用) |
| `Entity` | 人物、组织、地点、作品等实体页 |
| `Theme` | 跨章节的主题/论点,记录它在哪些地方出现、如何演变 |
| `Timeline` | (适用时)事件时间线 |

## 工作流

1. **先扫一遍全书**,列出概念清单(章节 + 反复出现的实体/术语/主题)。先列再写。
2. 用 `../okf-creator/scripts/scaffold_okf.py` 起骨架(目录建议 `chapters/`、`concepts/`、`entities/`、`themes/`)。
3. 逐章 **ingest**(借鉴 Karpathy 的三操作):
   - 写 `Chapter` 摘要页;
   - **更新**相关 `Concept`/`Entity` 页(同一个人物在多章出现 → 持续补充同一页,而非每章新建);
   - 在 `themes/` 记录主题演变;
   - 往根 `log.md` 追加 `## YYYY-MM-DD` 一条。
4. **建交叉链接**:概念间用包内绝对链接互连,形成图谱(人物↔事件↔主题)。
5. **lint**:找孤儿页、被提及却没建页的概念、矛盾点。
6. 校验:`validate_okf.py`。
7. (可选)用 [`okf-to-book`](../okf-to-book/) 把知识库反向发布成可浏览的文档站/图谱。

## 原则

- **复用而非重复**:同一概念只一页,各处链接它;
- **正文要执行洞察**:摘要不是目录复述,要写出"这章到底说了什么、和别处怎么连";
- **保留出处**:每个概念页用 `# Citations` 标注书中位置(章节/页码),`resource` 可指原文件。

## 多语言

中英双语书可用 i18n 约定:`lang` + `canonical`(见 [规范译文末](../../docs/okf-spec-zh.md#中文生态议题i18n-扩展提案草案))。

