今日开源[第42期]Cangjie Skill

Cangjie Skill 项目解读

仓库:https://github.com/kangarooking/cangjie-skill
许可证:MIT
解读时间:2026-07-30


目录

  1. 项目名称、作者与背景
  2. 部署过程与运行条件
  3. 代码框架、技术栈与核心代码
  4. 优势、不足与创新点
  5. 总结

1. 项目名称、作者与背景

1.1 名称

Cangjie Skill(仓颉 skill,仓库名 kangarooking/cangjie-skill),中文标语为:

"读完、看完、听完之后,带走一套能调用的方法论。"

项目徽章标注其方法为 RIA-TV++,平台兼容 OpenClaw / Claude Code,许可证 MIT

1.2 作者

  • 袋鼠帝 kangarooking(GitHub ID:kangarookingluohm
  • 身份:AI 博主、独立开发者,微信公众号「袋鼠帝 AI 客栈」主理人
  • 头衔:火山引擎领航 KOL、百度千帆开发者大使、GLM 布道师、Trae 昆明第一任 Fellow
  • 其他生态贡献者:
    • shenqistart:贡献外部 book2skill 引用,并补充中/英/日 README
    • qbdx-hub:贡献 6 个整书/章节蒸馏示例仓库

1.3 作用

cangjie-skill 是一个「内容蒸馏」元技能(meta skill):把高价值长内容(书籍、长视频转写、播客、访谈、演讲、课程、长文、资料集)中的方法论、决策框架、原则、概念体系,蒸馏成一组原子化、可被 AI Agent 在真实场景下直接调用的 executable skills。

不是做书摘、读后感、作者人设角色扮演(后者由生态中的 nuwa-skill 负责),而是把"知识"变成"工具"。

1.4 背景与动机

  • 痛点驱动:人们看了很多书/视频/播客,但运用不起来。摘要、笔记、字幕整理只是"压缩",不是"结构化复用"——读完仍不知道"什么时候该用什么"。
  • 生态启发:受 nuwa-skill(蒸馏"人"的思维 DNA)验证有效后,作者认为蒸馏人系统性表达过的内容(书、长视频等)是另一维度的补充。
  • 方法论缺口:现有的读书/听课方法论都是"给人看"的,不是"给 agent 用"的。当目标从"读者有收获"迁移到"真实问题被 agent 解决"时,需要一套面向执行的蒸馏方法。
  • 生态定位:与 nuwa-skill(蒸馏人)、darwin-skill(进化任意 skill)三者咬合——nuwa 蒸馏人,cangjie 蒸馏书,darwin 让它们持续进化。cangjie 产出的 test-prompts.json 严格遵循 darwin 格式,可直接接入自动进化。

2. 部署过程与运行条件

2.1 这是什么形态

本项目不是传统可编译的软件,而是一个纯 Prompt / Markdown 驱动的 Agent Skill。它没有需要 pip install 或编译的代码,全部由 SKILL.md(元技能定义)、methodology/(各阶段方法论文档)、extractors/(5 个并行提取器 Prompt)、templates/(输出模板)构成。真正的"运行"发生在支持 Agent 能力的宿主(Claude Code / Cursor / OpenClaw)里。

2.2 部署过程

所谓"部署"即把仓库克隆进宿主的 skills 目录,让宿主能够识别并调用这个元 skill:

# 方式一:克隆到用户级 skills 目录(对所有项目生效)
git clone https://github.com/kangarooking/cangjie-skill.git ~/.claude/skills/cangjie-skill

# 方式二:克隆到项目级 skills 目录
#   Claude Code: <your-project>/.claude/skills/cangjie-skill
#   Cursor:      <your-project>/.cursor/skills/cangjie-skill

安装成功后,在对话中直接说"帮我拆《穷查理宝典》""把毛选蒸馏成 skill""把这个 B 站视频蒸馏成 skill",宿主即会触发 cangjie-skill 的元 skill 流程。

注:阶段 5 交付时,cangjie-skill 还会把通过测试的 skill 复制或 symlink 到宿主的 skills 目录(用户级或项目级),使其真正可被调用——没有这一步,产出的 skill 无法被真正调用

2.3 运行条件

类别 条件
宿主环境 支持 Agent/Sub-agent 的 AI 编码工具:Claude Code、Cursor、OpenClaw 等
并行提取能力 阶段 1 需要能并行 spawn 5 个 sub-agent(如 Claude Code 的 Agent 工具);不支持并行时自动降级为串行执行,产出格式不变
输入文本来源 必须提供纯文本:PDF/EPUB/TXT/字幕/转写稿路径或可访问文本。不允许在没有文本时"凭记忆"蒸馏——宁可停下来向用户索取
视频/播客前置 建议先用作者提供的 video-downloader skill 下载视频、提取字幕/音频转写,再交给 cangjie-skill
运行依赖 无第三方库、无 API Key、无需联网(蒸馏过程完全在宿主内由 LLM 完成)
用户交互 阶段 0 后需用户确认全书骨架;阶段 1.5 后需用户轻确认入选名单——属于"人机协同"流程,非全自动无人值守

2.4 已生成的衍生 skill packs(验证实例)

项目 README 列举了 20+ 个已蒸馏产物,证明流水线可复用,例如:

仓库 来源 Skills 数
buffett-letters-skill 巴菲特致股东信(1957–2023) 20
huangdi-neijing-skill 《黄帝内经》(素问+灵枢) 22
ai-for-everyone-skill 吴恩达《AI for Everyone》视频课 25
system-prompt-skills 165 个 AI 产品系统提示词 15
X-growth-skills X 起号/内容/算法/变现资料集 15

3. 代码框架、技术栈与核心代码

3.1 技术栈

维度 内容
本质 Agent Skill(Prompt 工程 + 方法论 SOP),非传统程序
载体格式 Markdown + YAML frontmatter + 纯文本 Prompt
核心方法 RIA-TV++ 七阶段流水线
思想来源 Adler 分析阅读法、赵周 RIA 拆书法、Luhmann 卡片盒(Zettelkasten)、Tiago Forte 渐进式总结、nuwa-skill 并行提取/三重验证、darwin-skill 测试格式
宿主 Claude Code / Cursor / OpenClaw(依赖其 sub-agent 编排与 skills 加载机制)
无代码运行时 不需要 Python/Node、不需要编译、不调外部 API

严格来说,这是一个"以 Markdown 为代码、以 LLM 为运行时"的项目。它的"框架"是文档化编排(doc-as-code),而非软件架构。

3.2 代码模块(仓库结构)

cangjie-skill/
├── README.md              ← 项目总览(中)
├── README.en.md           ← English version
├── README.ja.md           ← 日本語版
├── LICENSE                ← MIT
├── SKILL.md               ← 元 skill 定义(cangjie-skill 的完整执行规范,核心入口)
├── methodology/           ← RIA-TV++ 各阶段的方法论文档
│   ├── 00-overview.md          # 方法论总览与思想来源
│   ├── 01-stage0-adler.md      # 阶段0:Adler 整书理解
│   ├── 02-stage1-parallel-extract.md  # 阶段1:5 sub-agent 并行提取
│   ├── 03-stage1.5-triple-verify.md   # 阶段1.5:三重验证筛选
│   ├── 04-stage2-ria-plus.md    # 阶段2:RIA++ 构造 skill
│   ├── 05-stage3-zettelkasten.md# 阶段3:Zettelkasten 链接
│   ├── 06-stage4-pressure-test.md# 阶段4:压力测试
│   └── 07-stage5-deliver.md     # 阶段5:交付
├── extractors/            ← 5 个并行提取器的 prompt 定义
│   ├── framework-extractor.md          # 框架提取器(思维模型/决策框架)
│   ├── principle-extractor.md          # 原则提取器(原则/清单/规则)
│   ├── case-extractor.md               # 案例提取器(作者亲历实例)
│   ├── counter-example-extractor.md    # 反例提取器(失败模式/警告)
│   └── glossary-extractor.md           # 术语提取器(关键概念词典)
└── templates/             ← 输出模板
    ├── SKILL.md.template              # 单个 skill 的输出结构(R/I/A1/A2/E/B)
    ├── BOOK_OVERVIEW.md.template      # 阶段0 产出
    ├── INDEX.md.template              # 阶段3 技能地图(含 mermaid 引用图)
    ├── DIGEST.md.template             # 阶段5 面向读者的精华长文
    └── test-prompts.json.template    # 阶段4 压力测试格式(darwin 兼容)

3.3 核心流水线:RIA-TV++

RIA-TV++ 拆解:

  • RIA = 赵周《这样读书就够了》便签拆书法(Reading / Interpretation / Appropriation)
  • TV = Triple Verification(三重验证)
  • ++ = 面向 agent 执行的扩展:E(Execution 可执行步骤)+ B(Boundary 边界)

七阶段流水线(来自 SKILL.mdmethodology/00-overview.md):

阶段 0: Adler 整书理解     → BOOK_OVERVIEW.md
阶段 1: 5 个 agent 并行提取 → 候选方法论单元池 (candidates/)
阶段 1.5: 三重验证筛选     → 通过的单元 (verified.md + rejected/)
阶段 2: RIA++ 构造 skill   → 每个 skill 的 SKILL.md (R/I/A1/A2/E/B)
阶段 3: Zettelkasten 链接  → INDEX.md + GLOSSARY.md
阶段 4: 压力测试 (darwin)  → test-prompts.json + 回炉淘汰
阶段 5: 交付              → DIGEST.md 精华长文 + 安装到 skills 目录

管道图(ASCII):

          ┌───────────────────┐
          │ 阶段 0: 整书理解   │  Adler 四步
          └─────────┬─────────┘
                    │ BOOK_OVERVIEW.md
                    ▼
          ┌───────────────────┐
          │ 阶段 1: 并行提取   │  5 个 sub-agent 同时跑
          └─────────┬─────────┘
                    │ candidates/
                    ▼
          ┌───────────────────┐
          │ 阶段 1.5: 三重验证 │  V1 跨域 / V2 预测力 / V3 独特性
          └─────────┬─────────┘
                    ▼
          ┌───────────────────┐
          │ 阶段 2: RIA++ 构造 │  R / I / A1 / A2 / E / B
          └─────────┬─────────┘
                    ▼
          ┌───────────────────┐
          │ 阶段 3: 链接       │  Zettelkasten + INDEX.md
          └─────────┬─────────┘
                    ▼
          ┌───────────────────┐
          │ 阶段 4: 压力测试   │  test-prompts.json + 盲测 + 回炉
          └─────────┬─────────┘
                    ▼
          ┌───────────────────┐
          │ 阶段 5: 交付       │  DIGEST.md + 安装到 skills 目录
          └───────────────────┘
                    │
                    ▼
          可喂给 darwin-skill 自动进化

关键设计不变量(任何迭代都不能违反)

  1. 原子性:一个 skill 只做一个方法论单元
  2. 可追溯:每个 skill 必须有原文引用,指向源书章节(视频指向时间戳/分 P)
  3. 可验证:每个 skill 必须通过三重验证 + 压力测试
  4. 可进化:每个 skill 必须附带 darwin 兼容的 test-prompts.json
  5. 用户参与:阶段 0 后确认骨架;阶段 1.5 后确认入选名单
  6. 可交付:终点是"用户能调用"——必须安装到 skills 目录

3.4 核心代码一:元 skill 定义(SKILL.md 节选)

这是整个项目的"主程序",定义了何时触发、输入输出结构、七阶段严格顺序、质量红线。

---
name: cangjie-skill
description: Distill a book, long-video transcript, podcast, course, or interview
  into a coherent set of executable skills. Use when the user asks to "拆书" /
  "蒸馏一本书" / "把 XX 书做成 skill" / "把这个视频/播客/课程蒸馏成 skill" ...
  NOT for simple summarization, book reviews, or role-playing as the author
  (that is nuwa-skill's job).
---

# cangjie-skill — 把一本书蒸馏成一组可执行 skills 的元 skill

## 核心方法论: RIA-TV++
(阶段 0 → 阶段 5,见上文管道)

## 输出结构
books/<book-slug>/
├── PIPELINE_STATE.md          # 流水线状态: 断点续跑用
├── BOOK_OVERVIEW.md           # 阶段 0 产出
├── verified.md                # 阶段 1.5 产出
├── INDEX.md                   # 阶段 3 产出 + 引用图
├── GLOSSARY.md                # 阶段 3 产出
├── DIGEST.md                  # 阶段 5 产出
├── candidates/                # 阶段 1 候选池 (审计用)
├── rejected/                  # 阶段 1.5 淘汰单元 + 原因
└── <skill-slug-1>/
    ├── SKILL.md
    ├── test-prompts.json      # darwin-skill 兼容格式
    └── test-results.md

## 质量红线 (违反则阻止输出)
1. 每个 skill 必须通过全部三重验证
2. 每个 skill 必须有完整的 R / I / A1 / A2 / E / B 六段
3. 原文引用 ≤150 字/段 (英文 ≤100 词/段)
4. 每个 skill 必须有 test-prompts.json,且包含诱饵测试,其中至少 1 条是同书兄弟 skill
5. description 字段必须明确 trigger 条件,不能只是"一个关于 X 的 skill"

3.5 核心代码二:单 skill 输出模板(templates/SKILL.md.template)

这是每个产物 skill 的"数据 schema",强制包含触发场景与可执行步骤。

---
name: {{skill-slug}}
description: |
  {{何时调用 + 何时不调用 + 关键 trigger 信号, ≤300 字}}
source_book: 《{{BOOK_TITLE}}》 {{AUTHOR}}
source_chapter: {{章节}}
tags: [{{tag1}}, {{tag2}}]
related_skills: []    # 阶段 3 填充
---

# {{Skill Title}}

## R — 原文 (Reading)
> {{原文引用, ≤150 字 (英文 ≤100 词), 必须标注章节/页码/时间戳}}
> — {{AUTHOR}}, {{CHAPTER}}

## I — 方法论骨架 (Interpretation)
{{用自己的话重写, 5-15 行。读完这段, 没读过原书的人应理解该方法论在做什么。}}

## A1 — 书中的应用 (Past Application)
### 案例 1: {{案例名}}
- **问题 / 方法论的使用 / 结论 / 结果**

## A2 — 触发场景 (Future Trigger) ★
### 用户会在什么情境下需要这个 skill?
1. {{场景 1}}  2. {{场景 2}}  3. {{场景 3}}
### 语言信号 (用户的话里出现这些就应激活)
- "{{典型措辞 1}}"
### 与相邻 skill 的区分
- 与 `{{related-skill-a}}` 的区别: {{ ... }}

## E — 可执行步骤 (Execution)
当 skill 被激活后, agent 应按以下步骤执行:
1. **{{步骤 1}}** — 完成标准: {{...}}
2. **{{步骤 2}}** — 判停条件: 若 {{X}} 则跳到步骤 {{N}}

## B — 边界 (Boundary) ★
### 不要在以下情况使用此 skill
- {{反场景 1 — 为什么不适用}}
### 作者的盲点 / 时代局限
- {{来自阶段 0 批判阶段}}

## 审计信息
- **验证通过**: V1 ✓ / V2 ✓ / V3 ✓
- **测试通过率**: {{%}} (详见 test-prompts.json)

3.6 核心代码三:框架提取器(extractors/framework-extractor.md 节选)

5 个并行提取器之一,展示 Prompt 如何把一个职责精确限定、输出成机器可读的 YAML。

# Framework Extractor
你是 cangjie-skill 流水线中**并行运行的 5 个 extractor 之一**,专门负责从一本书里
识别**思维模型 / 决策框架 / 推理方法**。

## 你的职责范围 (只找这些)
- 思维模型: 可迁移的思考结构 (如 "能力圈" / "逆向思维" / "多元思维模型")
- 决策框架: 面对决策时的结构化流程
- 推理方法: 从已知推向未知的特定路径

## 不属于你的 (交给别的 extractor)
- 原则/清单/规则 → principle-extractor
- 作者亲历案例   → case-extractor
- 失败模式/反例  → counter-example-extractor
- 术语定义       → glossary-extractor
边界模糊时**宁可多提取**,阶段 1.5 会去重。

## 输出格式
每条候选写成一个 YAML 条目,追加到 books/<slug>/candidates/frameworks.md:
```yaml
- id: f01
  title: 逆向思维
  type: framework
  source_chapter: 第 3 讲
  source_quote: |
    "反过来想,总是反过来想。如果知道我会在哪里死去,那我就永远不去那里。"
  summary: |
    面对一个目标时, 不直接问"怎么达成", 而先问"什么会让我失败"……
  tags: [decision, mental-model, inversion]

自检 (提交前)


---

## 4. 优势、不足与创新点

### 4.1 优势

1. **产物是"可调用工具"而非"笔记"**:输出的是带 trigger 条件、可执行步骤、判停标准的 skill,Agent 能在真实决策中主动调用,真正解决"收藏不用"的痛点。
2. **严格的质量门控**:三重验证(跨域佐证 / 预测力 / 独特性)通过率仅 25–50%,配合阶段 4 压力测试(含跨 skill 混淆诱饵题),显著优于"照单全收"的摘要。
3. **原子化 + 链接**:Zettelkasten 化的 skill 之间建立依赖/对比/组合关系,支持组合调用与知识网络化。
4. **面向 agent 执行的扩展(E/B)**:在传统 RIA 基础上补了 Execution 与 Boundary,直接针对"agent 何时调用、何时不调用、怎么执行"的工程问题。
5. **鲁棒的工程化设计**:
   - `PIPELINE_STATE.md` 断点续跑,长任务中断可恢复;
   - 阶段 1 长文本分块 + 并行不支持时串行降级;
   - 阶段 0 / 1.5 双用户确认点,避免大段返工;
   - `candidates/` 与 `rejected/` 全程保留审计轨迹,可事后捞回。
6. **生态闭环**:与 nuwa(人)、darwin(进化)咬合,`test-prompts.json` 直接兼容 darwin,产出可一键进入自动进化。
7. **零运行依赖**:纯 Prompt/Markdown,不需编译、不需 API Key、不需联网,部署只是克隆目录。
8. **多语言与多源**:中/英/日 README;支持书、视频、播客、课程、访谈等多种长内容。
9. **已规模验证**:20+ 衍生 skill pack 实证流水线可复用于不同体裁与语种。

### 4.2 不足与风险

1. **强依赖宿主 Agent 能力**:核心"运行时"是 Claude Code / Cursor 等支持 sub-agent 编排的 AI 工具。没有这类宿主则项目无法运行,迁移到其他平台需适配其 skills 机制。
2. **质量上限受限于 LLM**:提取、验证、构造、测试全由 LLM 完成,"可验证"本质是 LLM 自我评审(self-review),存在幻觉与一致性风险,三重验证无法完全消除。
3. **"蒸馏书"不等于"读懂书"**:输出的是可复用方法论单元,丢失了原文的叙事、情感、论证过程与上下文;深度文学/哲学类内容可能只析出表层框架。
4. **人力协同成本不低**:阶段 0、1.5 都要求用户确认,全流程多轮交互,对"一键批量"预期的用户并不"全自动"。
5. **诱饵测试仍是 LLM 出题+判分**:压力测试由 LLM 设计 prompt 并由 LLM 盲测判分,测试的覆盖度与判分客观性依赖模型水平,存在"自己考自己"的局限。
6. **输出规模风险**:一部大书可析出 20+ skill,维护、版本管理与去重成本随书库增长而上升;`related_skills` 链接需阶段 3 人工/模型回填,可能滞后或不准。
7. **版权与合规边界**:对受版权保护的书籍大段蒸馏成可商用 skill 包并公开仓库,存在版权与合规风险,项目本身未就"哪些书可蒸馏"给出明确红线。

### 4.3 创新点 / 亮点

1. **"为 agent 执行"而非"为读者消费"的蒸馏范式**:核心洞察是"现有读书方法论都是为人类读者蒸馏,不是为 agent 执行者蒸馏",并据此重新设计字段(trigger / 可执行步骤 / 判停标准)。这是该项目最根本的方法论创新。
2. **RIA-TV++ 复合方法论**:把 Adler 分析阅读、赵周 RIA 拆书、Zettelkasten、渐进式总结、nuwa 三重验证、darwin 测试格式缝合为一个可操作的七阶段 SOP,且命名自解释。
3. **5 个并行提取器 + 三重验证的"广进严出"架构**:先并行最大化召回(宁错杀),再用 V1/V2/V3 严格筛选,把"提取"与"质检"解耦。
4. **压力测试内建"跨 skill 混淆诱饵"**:要求至少 1 条诱饵是"应触发同书另一个 skill"的场景,专门对抗 Agent 误调用,是面向多 skill 共存环境的实用设计。
5. **文档即代码(doc-as-code)的可执行 SOP**:整条流水线用 `SKILL.md` + `methodology/` + `extractors/` + `templates/` 实现,**没有一行传统程序却是一套可复现的生产线**,对"知识工程/方法论工程"有示范意义。
6. **"蒸馏—进化"生态定位**:与 nuwa(人)、darwin(进化)形成人—书—进化的闭环,产物天然携带 darwin 兼容测试,可被自动迭代。
7. **面向失败的设计(断点续跑 / 审计轨迹 / 用户确认点)**:把长任务的不确定性(中断、误判、返工)显式建模进流程,而非假设一帆风顺。

---

## 5. 总结

**Cangjie Skill** 是一个由「袋鼠帝 kangarooking」维护的 MIT 协议开源项目,本质是一套**以 Markdown/Prompt 为代码、以 LLM 为运行时**的"内容蒸馏元技能"。它用自创的 **RIA-TV++ 七阶段流水线**,把书、长视频、播客等高价值长内容中的方法论,蒸馏成**原子化、可触发、可验证、可进化**的 Agent Skills,解决"收藏很多但用不起来"的真实痛点。

其亮点在于把"为 agent 执行"作为第一性目标,并配套了并行提取 + 三重验证的严格门控、跨 skill 混淆压力测试、断点续跑与审计轨迹等工程化设计;不足则集中在**对宿主 Agent 能力的强依赖**与**LLM 自我评审的质量天花板**。对想做"知识工程 / 方法论工程 / 个人知识库 Agent 化"的开发者,是一份很有参考价值的范式样本。

---

*本文档基于项目 README、SKILL.md、methodology/00-overview.md、templates/SKILL.md.template、extractors/framework-extractor.md 等公开文件解读整理。*
posted @ 2026-07-30 19:42  zhang-yd  阅读(193)  评论(0)    收藏  举报