book-skill-generator

Installation
SKILL.md

Book Skill Generator

从书籍中提取核心方法论,为每个方法论生成一个独立的可安装 skill。

工作流程

1. 接收书籍信息

支持两种方式:

方式 1: 书籍名称(网络搜索)

  • 书籍完整名称
  • 作者(如果有多个同名书籍)
  • 是否有特定的方法论需要提取(可选)

方式 2: 上传文件(更准确)

  • 支持 PDF、Word、TXT、Markdown 等格式
  • 直接从文件内容提取方法论
  • 更准确,避免网络信息偏差
  • 适合有电子书的用户

推荐: 如果用户有书籍文件,优先使用文件上传方式。

2. 提取书籍方法论

方式 A: 从文件提取(推荐)

如果用户上传了文件:

  1. 读取文件内容

    • 使用 read 工具读取上传的文件
    • 支持 PDF、Word、TXT、Markdown 等格式
  2. 识别核心章节

    • 查看目录结构
    • 识别包含方法论的章节
    • 重点关注:框架、模型、步骤、方法论等关键词
  3. 提取方法论

    • 方法论名称(中英文)
    • 方法论的核心目的和适用场景
    • 方法论的关键步骤或框架
    • 实际应用案例或示例
    • 相关的斜杠命令建议

方式 B: 网络搜索

如果没有文件,使用 websearch 工具搜索书籍的核心方法论、框架或模型。搜索策略:

搜索关键词组合:

  • "{书名} 核心方法论"
  • "{书名} 主要观点"
  • "{书名} 方法论总结"
  • "{书名} 实践框架"
  • "{书名} 关键概念"

信息来源优先级:

  1. 官方书籍介绍和目录
  2. 权威书评和读书笔记
  3. 作者公开演讲或文章
  4. 知名平台的书摘(如豆瓣、知乎、微信公众号)

提取要点:

  • 方法论名称(中英文)
  • 方法论的核心目的和适用场景
  • 方法论的关键步骤或框架
  • 实际应用案例或示例
  • 相关的斜杠命令建议(如 /mvp)

混合方式(最佳实践): 如果用户既提供了书名又上传了文件:

  1. 优先从文件提取核心内容
  2. 使用网络搜索补充背景信息和案例
  3. 结合两者,生成更完整的 skill

3. 整理方法论列表

将搜索到的信息整理成结构化的方法论列表,包含:

{
  "book_name": "书籍名称",
  "author": "作者",
  "methodologies": [
    {
      "name_en": "find-community",
      "name_cn": "寻找社群",
      "trigger_scenario": "想找创业方向、定位目标人群",
      "description": "方法论的详细描述",
      "steps": ["步骤1", "步骤2", "步骤3"],
      "output_format": "预期的输出格式",
      "examples": "实际应用示例"
    }
  ]
}

4. 为每个方法论生成 Skill

为每个方法论创建一个独立的 skill 文件夹,结构如下:

{methodology-name}/
├── SKILL.md

SKILL.md 模板:

---
name: {methodology-name}
description: {触发场景描述}。当用户{具体触发条件}时使用此技能。
---

# {方法论中文名称}

{方法论的详细描述,包括来源书籍、核心理念等}

## 适用场景

- {场景1}
- {场景2}
- {场景3}

## 执行步骤

### 步骤 1: {步骤名称}
{详细说明}

### 步骤 2: {步骤名称}
{详细说明}

### 步骤 3: {步骤名称}
{详细说明}

## 输出格式

{描述最终输出的格式和内容}

**示例输出:**

{提供一个具体的输出示例}

## 注意事项

- {注意事项1}
- {注意事项2}

## 来源

本方法论来自《{书籍名称}》{作者},第{章节}章。

5. 打包所有 Skill

使用 skill-creator 的打包脚本将每个方法论 skill 打包成 .skill 文件:

python -m scripts.package_skill {methodology-name}

将所有生成的 .skill 文件放在一个统一的输出目录中。

输出交付

最终向用户提供:

  1. 方法论清单文档 - 列出所有提取的方法论及其对应的 skill
  2. 多个 .skill 文件 - 每个方法论一个独立的可安装 skill
  3. 安装说明 - 如何安装和使用这些 skill

输出示例:

已从《小而美》中提取 10 个核心方法论,生成对应的 skill:

1. find-community.skill - 寻找社群
   触发: 想找创业方向、定位目标人群

2. validate-idea.skill - 验证想法
   触发: 测试一个商业点子值不值得做

3. mvp.skill - 最小可行产品
   触发: 准备做第一款产品,不知道该做哪些功能

...

所有 skill 文件已生成在: /path/to/output/

质量标准

方法论提取质量:

  • 准确反映书籍原意,不曲解作者观点
  • 方法论之间有清晰边界,不重复
  • 每个方法论都有明确的适用场景
  • 提供可执行的步骤,而非抽象概念

Skill 生成质量:

  • description 清晰准确,便于触发
  • 适用场景具体,用户容易理解何时使用
  • 执行步骤可操作,有明确的输入输出
  • 包含示例,帮助用户理解预期结果

特殊情况处理

文件上传相关:

  • 如果文件格式不支持,提示用户支持的格式(PDF、Word、TXT、Markdown)
  • 如果文件过大或内容过多,优先提取目录和核心章节
  • 如果文件内容不清晰,建议用户提供书名进行网络搜索补充
  • 如果文件是扫描版PDF,提示用户可能识别不准确,建议结合书名搜索

书籍信息不足:

  • 如果搜索结果不足以提取完整方法论,明确告知用户
  • 提供已找到的部分信息,询问用户是否继续
  • 建议用户上传书籍文件或提供更多上下文

方法论过多:

  • 如果书籍包含大量方法论(>15个),优先提取最核心的 8-12 个
  • 询问用户是否有特定关注的方法论类型
  • 提供方法论清单供用户选择

方法论名称冲突:

  • 如果方法论名称已被占用,添加书籍前缀(如 "lean-startup-find-community")
  • 确保每个 skill 名称唯一且有意义

示例对话

示例 1: 使用书籍名称(网络搜索)

用户: 帮我从《精益创业》这本书提取方法论,生成 skill

助手: 好的,我来帮你从《精益创业》中提取核心方法论并生成对应的 skill。

[搜索《精益创业》核心方法论...]

我找到了《精益创业》的 10 个核心方法论:

  1. MVP(最小可行产品) - 用最低成本验证核心假设
  2. Build-Measure-Learn(构建-测量-学习循环) - 建立快速迭代反馈循环
  3. Pivot(转型) - 数据证明假设错误时调整方向 ...

现在我为你生成独立的 skill 文件...

[生成 skill 文件...]

完成!已生成 10 个 skill 文件,每个方法论对应一个可安装的 skill。

示例 2: 上传文件(更准确)

用户: [上传《原子习惯.pdf》] 帮我从这个文件提取方法论,生成 skill

助手: 收到文件!我来从《原子习惯》PDF 中提取核心方法论。

[读取 PDF 文件...]

我从文件中识别到了以下核心章节:

  • 第1章:习惯的回路
  • 第2章:行为改变四定律
  • 第3章:提示 ...

提取到 4 个核心方法论:

  1. 习惯回路(habit-loop) - 理解习惯的形成机制
  2. 行为改变四定律(four-laws) - 养成好习惯的系统方法
  3. 习惯堆叠(habit-stacking) - 将新习惯与旧习惯绑定
  4. 环境设计(environment-design) - 通过环境改变行为

现在我为你生成独立的 skill 文件...

[生成 skill 文件...]

完成!已生成 4 个 skill 文件。

示例 3: 混合方式(最佳实践)

用户: [上传《思考快与慢.pdf》] 这是我上传的《思考快与慢》,帮我提取方法论

助手: 好的!我会从你上传的文件中提取核心内容,同时搜索补充信息。

[读取 PDF 文件 + 网络搜索...]

从文件中提取到:

  • 系统一与系统二
  • 锚定效应
  • 可得性启发 ...

从网络搜索补充:

  • 经典案例和实验
  • 实际应用场景
  • 相关书籍推荐

整合后提取到 6 个核心方法论:

  1. 双系统思维(dual-systems) - 理解快思考与慢思考
  2. 锚定效应(anchoring) - 识别和避免决策偏差
  3. 可得性启发(availability-heuristic) - 理解记忆对判断的影响 ...

完成!已生成 6 个 skill 文件,结合了文件内容和网络信息。

Installs
21
GitHub Stars
30
First Seen
Apr 10, 2026