Install
openclaw skills install cognitive-forgeDual-value learning system - extracts reusable mental models from books, writes individual pattern files (patterns/{id}.md) with YAML frontmatter for building compound thinking ability. Each run produces: (1) F.A.C.E.T. analysis for user learning, (2) permanent knowledge base entry for AI's decision framework library. Supports breadth/depth modes, configurable topic mapping, multi-source book selection, and brief/full output.
openclaw skills install cognitive-forgeOne run, dual value — 每次运行同时产出两个价值:
patterns/{id}.md 的决策框架(带 YAML frontmatter),构建可复用的思维模型库随时间积累,你的 AI 拥有一个不断增长的决策框架库(类似 Charlie Munger 的 "latticework of mental models"),在未来任何领域的提问中都可以引用。
所有路径均相对于 OpenClaw workspace 根目录(通常为
~/.openclaw/workspace/)。 如用户 workspace 位于其他位置,请将文档中的路径替换为实际 workspace 路径。
| 用途 | 相对路径 |
|---|---|
| 阅读记录 | memory/reading-history.json |
| 思维框架库 | memory/knowledge-base/patterns/*.md (每个模型一个文件) |
| 概念库 | memory/knowledge-base/concepts.md |
| 用户画像 | USER.md |
| 调度配置 | HEARTBEAT-reading.md |
根据用户意图,选择不同的执行路径:
| 用户意图 | 路由 | 说明 |
|---|---|---|
| "生成今日读书简报" / 默认 | → Main Workflow (breadth) | 完整选书→分析→写入流程,提取 1 个模型 |
| "深度分析《XXX》" / "depth_mode: depth" | → Main Workflow (depth) | 对指定书籍连续提取多个模型,合并输出 |
| "cognitive-forge status" / "认知锻造 状态" | → Status Branch | 输出知识库统计 |
| "cognitive-forge review" / 周日自动触发 | → Review Branch | 间隔复习本周模型 |
| "分析《XXX》这本书" | → Main Workflow (breadth, 跳过选书) | 用户直接指定书籍,提取 1 个核心模型 |
Depth mode 触发方式:
depth_mode: depthdepth: true,调度时传入该参数则自动走 depth mode当用户请求查看知识库状态时:
memory/knowledge-base/patterns/ 目录下 .md 文件数 = 模型总数memory/reading-history.json,统计:
used_models 数组长度)category 分组计数)## 📊 认知锻造 · 知识库状态
**模型总数**: XX 个思维框架
**已读书籍**: XX 本
**知识库大小**: XX KB
### 领域分布
| 领域 | 模型数 | 占比 |
|------|--------|------|
| Business Strategy | 5 | 25% |
| Psychology | 3 | 15% |
| ... | ... | ... |
### 最近 5 条
1. 2026-03-27 | 《反脆弱》 | 反脆弱三元组
2. ...
### 覆盖薄弱领域
⚠️ Philosophy (0), Biography (0) — 建议补充
触发方式:
执行逻辑:
memory/reading-history.json,筛选最近 7 天的 used_models 记录## 🔄 本周复习:你还记得这些模型吗?
**1.「逃离机制」来自《逃离不平等》**
- 核心框架是什么?(回忆 [F])
- 什么时候会失效?(回忆 [E])
**2.「双系统理论」来自《思考,快与慢》**
- 它摧毁了什么常识?(回忆 [C])
- 你上周在工作中用到了吗?
> 回复你的答案,我帮你查漏补缺。
每次运行开始时执行,静默完成(不打断用户):
检查 memory/reading-history.json 是否存在
{
"schema_version": 1,
"last_attempted": null,
"queue": [],
"used_models": []
}
检查 memory/knowledge-base/ 目录 是否存在
检查 memory/knowledge-base/patterns/ 目录 是否存在
检查 memory/knowledge-base/concepts.md 是否存在
检查 USER.md 是否存在
💡 建议创建 USER.md(职业、兴趣、当前挑战),以获得个性化的 [T] Transfer 分析。检查依赖 skill 是否可用
book-scout 和 mental-model-forge 必须可调用检查 last_attempted 字段
status == "failed" → 提示用户:
⚠️ 上次运行在「{step}」步骤失败(书籍: {book})。
是否要恢复上次操作?回复"是"恢复,或"否"跳过。
选书来源优先级(从高到低):
如果用户明确说了 "分析《XXX》by YYY",直接使用该书,跳过选书流程。
source: "user_specified"检查 memory/reading-history.json 的 queue 数组:
{
"queue": [
{"title": "《穷查理宝典》", "author": "彼得·考夫曼", "topic": "决策科学"}
]
}
queue 非空 → 取第一项,从 queue 中移除source: "queue"当 queue 为空且用户未指定时,调用 book-scout skill。
确定搜索主题:
HEARTBEAT-reading.md 是否有自定义主题映射(## 主题映射 section)
| 星期 | 默认主题 |
|---|---|
| Monday | Business Strategy |
| Tuesday | Psychology |
| Wednesday | Technology |
| Thursday | Economics |
| Friday | Innovation |
| Saturday | Philosophy |
| Sunday | Biography |
可配置: 用户可在
HEARTBEAT-reading.md中添加## 主题映射section 覆盖默认值。 也可以按时段细分(参考 HEARTBEAT-reading.md 中的 21 主题轮转配置)。
加载去重列表(书名去重):
从 memory/reading-history.json 提取所有 book_title 字段值,去重后作为已读书名列表。
重要:不读取
thinking-patterns.md或patterns/*.md。去重只需要书名,不需要模型内容。
调用 book-scout:
主题: {topic}
已读书籍:
- 《精益创业》
- 《从0到1》
- 《影响力》
执行 book-scout skill,搜索符合主题的经典书籍。
重试机制:
⚠️ 选书失败:{error}
已尝试 3 次。你可以直接指定书籍:"分析《书名》by 作者"
book-scout 成功返回:
{
"book_title": "《增长黑客》",
"author": "肖恩·埃利斯",
"author_nationality": "美国",
"publish_date": "2015-04",
"rating": 8.5,
"review_count": 10000,
"score": 74.4,
"summary": "增长黑客方法论...",
"reasoning": "评分8.5且有1万真实评价..."
}
标记 source: "web_search",进入 Step 2。
更新 last_attempted:
"last_attempted": {
"date": "YYYY-MM-DD",
"book": "《增长黑客》",
"step": "book_selection",
"status": "success"
}
调用 mental-model-forge skill,对选中的书进行 F.A.C.E.T. 分析,提取 1 个核心思维模型。
当用户指定 depth_mode: depth 时,对同一本书连续提取多个思维模型:
工作流:
mental-model-forge,提取书中最核心的思维模型exclude_models 参数,再次调用:
这本书是《反脆弱》。
exclude_models: ["反脆弱三元组"]
请提取这本书中另一个独立的、不同的思维框架。
| 退出条件 | 判断方式 |
|---|---|
| 模型数上限 | 该书已提取 5 个模型 → 停止 |
| 语义去重 | AI 判断新模型与已提取模型本质相同(同一思想的变体或换皮)→ 停止 |
| AI 自评 | 提取后自问 "这本书还有独立的、值得提取的思维框架吗?" → No → 停止 |
mental-model-forge 返回后,执行以下自检:
处理:
mental-model-forge(最多重试 1 次)⚠️ 本次分析质量未达标,建议后续深入阅读输出模式(默认 full):
创建完整结构化简报,必须适配用户上下文:
[强制步骤] 读取 USER.md:
USER.md(相对于 workspace 根)输出结构:
## 📖 今日思维锚点
**书籍**: 《XXX》 - 作者
**核心一句话**: [今日思维锚点,一句话总结]
---
## 🧠 F.A.C.E.T. 认知穿透
### [F] Framework (核心框架)
[核心机制,≤80字中文]
### [A] Anchor Case (锚定案例)
[最经典的真实案例,生动讲述]
### [C] Contradiction (反共识摧毁)
❌ 被摧毁的常识: "..."
✅ 真相: ...
### [E] Edge (隐性边界)
失效条件:
1. ...
2. ...
### [T] Transfer (跨界迁移)
[映射到用户的实际上下文:职业、项目、挑战]
---
## 🎯 应用场景
| 场景 | 如何应用 | 预期效果 |
|------|---------|---------|
| [场景1:映射用户职业] | ... | ... |
| [场景2:映射用户项目] | ... | ... |
| [场景3:映射用户挑战] | ... | ... |
## 🔴 反面案例
[违反该原则的真实或假设案例]
## 🤔 战略拷问
[尖锐、具体、可行动的问题,引用用户实际上下文]
- Bad: "企业家应该怎么做?"
- Good: "你在爱康国宾的 AI 产品,是在避免失败还是利用失败?"
## 🔄 认知模式更新
**思维框架**: 看到XX → 想到XX
**决策原则**: 在XX场景下,应该XX而非XX
**盲区警告**: 小心XX情况
**反射弧**: 看到XX信号 → 联想到这个模型 → 判断/行动
---
> 💬 这个模型让你想到工作中的哪个具体场景?回复我,我帮你深入分析。
个性化规则:
当用户指定 output: brief 时,输出精简版:
## 📖 《书名》 - 作者
**核心框架**: [F] 一句话总结核心机制
**破除常识**: [C] 被摧毁的常识信念
**应用到你**: [T] 一个具体行动项(映射用户上下文)
**盲区**: [E] 何时失效
💡 想看完整分析?说 "展开" 即可。
当 depth mode 提取了多个模型时,合并为一份报告输出:
## 📖 深度解析:《书名》 - 作者
**提取模型数**: N 个 | **模式**: Depth
---
### 💎 模型 1: [Model Name]
**[F] 核心框架**: [一句话,≤80字]
**[A] 锚定案例**: [最经典案例,2-3句]
**[C] 破除常识**: ❌ "..." → ✅ ...
**[E] 失效边界**: [何时失效]
**[T] 迁移应用**: [映射用户上下文]
---
### 💎 模型 2: [Model Name]
(同上结构)
---
### 💎 模型 3: [Model Name]
(同上结构)
---
## 🔗 模型关联分析
| 模型 | 核心逻辑 | 适用场景 | 与其他模型的关系 |
|------|---------|---------|----------------|
| 模型1 | ... | ... | 与模型2互补 / 与模型3矛盾 |
| 模型2 | ... | ... | ... |
| 模型3 | ... | ... | ... |
## 🤔 综合战略拷问
[基于所有模型的综合视角,提出一个更深层的战略问题]
关键区别:
分类并存储提取的模型。
提取的知识
├─ 能否在不同领域复用为决策工具? → YES → Thinking Pattern
├─ 是否是高度抽象的通用指导原则? → YES → Principle
├─ 是否是领域特定的知识/术语? → YES → Concept
└─ 边界模糊 → 标记多个 tags
三种分类:
| 类型 | 定义 | 示例 | 写入位置 |
|---|---|---|---|
| Thinking Pattern | 可复用决策框架 | 颠覆性创新框架、逃离机制 | patterns/{id}.md |
| Principle | 高度抽象指导原则 | 二八法则、奥卡姆剃刀 | patterns/{id}.md |
| Concept | 领域特定知识 | 种痘术、能量密度天花板 | concepts.md |
一个条目可以同时标记多个类型(如 "杠铃策略" 既是 Thinking Pattern 又有 Concept 成分)。
写入格式:
For Thinking Patterns / Principles (写入 memory/knowledge-base/patterns/{id}.md):
从 mental-model-forge 返回的 KB_META 块提取 frontmatter 字段,从 FACET 维度映射正文字段:
---
id: {from KB_META}
name_zh: {from KB_META}
name_en: {from KB_META}
source: {book_title}, {author}
category: {from KB_META}
tags: {from KB_META}
scenarios: {from KB_META}
related_models: {from KB_META}
difficulty: {from KB_META}
date: YYYY-MM-DD
---
**核心逻辑**:
{从 [F] Core Framework 提炼的一段话,比 Framework 更完整}
**思维框架**:
{直接使用 [F] Core Framework 内容}
**决策原则**:
{从 [F] + [E] 推导,格式:在XX场景下,应该XX而非XX}
**盲区警告**:
{直接使用 [E] Hidden Boundaries 内容}
**反射弧**:
{从 scenarios 推导,格式:看到XX信号 → 联想到模型 → 判断/行动}
**锚定案例**:
{直接使用 [A] Anchor Case 内容}
**反共识**:
{from KB_META contradiction field,格式:❌ "旧常识" → ✅ 新真相}
FACET → 知识库字段映射表:
| FACET 维度 | 知识库字段 | 映射方式 |
|---|---|---|
| [F] Framework | 核心逻辑 + 思维框架 | 核心逻辑=扩展版,思维框架=原文 |
| [A] Anchor Case | 锚定案例 | 直接使用 |
| [C] Contradiction | 反共识 | 直接使用 |
| [E] Edge | 盲区警告 | 直接使用 |
| [T] Transfer | 不写入知识库 | 仅用于用户简报 |
| — | 决策原则 | 从 [F]+[E] 提炼 |
| — | 反射弧 | 从 scenarios 推导 |
重要:[T] Transfer 是用户简报专用维度,包含个性化上下文(职业、项目、挑战),不写入知识库。每次生成简报时根据 USER.md 实时生成。
For Concepts (写入 concepts.md):
## [Concept Name] - [Book Title]
**定义 (Definition)**:
- [简洁定义]
**上下文 (Context)**:
- 这个概念在什么领域/场景重要?
**关联理论 (Related Theories)**:
- 与哪些思维框架相关?
**来源**: [Book Title] - [Author]
**日期**: YYYY-MM-DD
更新 last_attempted:
"last_attempted": {
"date": "YYYY-MM-DD",
"book": "《XXX》",
"step": "knowledge_base_write",
"status": "success"
}
验证逻辑:
# 验证: 检查文件是否存在
ls ~/.openclaw/workspace/memory/knowledge-base/patterns/{id}.md
自检清单:
patterns/{id}.md 文件存在?--- 开头和结尾)?date 为当天?如果验证失败 → 立即重新写入,再次验证。验证通过后才能继续 Step 5。
向 memory/reading-history.json 的 used_models 数组追加新条目:
{
"date": "YYYY-MM-DD",
"book": "书名",
"author": "作者",
"model": "提取的思维模型名称",
"category": "主题分类",
"source": "web_search | queue | user_specified",
"applied_count": 0,
"tags": ["thinking-pattern"]
}
同时更新 last_attempted:
"last_attempted": {
"date": "YYYY-MM-DD",
"book": "《XXX》",
"step": "reading_history_update",
"status": "success"
}
错误恢复策略:
last_attempted 标记为 failed,下次运行时提醒用户手动补录[检查] 读取 HEARTBEAT-reading.md 获取数据库配置:
HEARTBEAT-reading.md## 环境配置 section如果配置存在,写入 Feishu Bitable:
feishu_bitable_create_record({
app_token: "{from HEARTBEAT-reading.md}",
table_id: "{from HEARTBEAT-reading.md}",
fields: {
"日期": Date.now(),
"书名": "《反脆弱》",
"作者": "Nassim Nicholas Taleb",
"模型名称": "反脆弱三元组",
"分类": "Innovation",
"核心框架(F)": "系统分三类:脆弱、坚韧、反脆弱...",
"应用场景": "产品迭代、技能学习、风险管理",
"战略拷问": "你的产品是在避免失败还是利用失败?"
}
})
Notion Database (alternative):
NOTION_API_KEY, NOTION_DATABASE_ID如果无凭证 → 跳过(skill 仍可本地使用)
统一 schema 定义:
{
"schema_version": 1,
"last_attempted": {
"date": "2026-03-27",
"book": "《反脆弱》",
"step": "knowledge_base_write",
"status": "success"
},
"queue": [
{
"title": "《穷查理宝典》",
"author": "彼得·考夫曼",
"topic": "决策科学"
}
],
"used_models": [
{
"date": "2026-03-24",
"book": "《上瘾》",
"author": "尼尔·埃亚尔",
"model": "上瘾模型(Hook Model)",
"category": "用户增长",
"source": "web_search",
"applied_count": 0,
"tags": ["thinking-pattern"]
}
]
}
字段说明:
schema_version: 当前为 1,用于未来格式升级时的迁移判断last_attempted: 上次运行的状态快照,用于错误恢复queue: 用户预排的待读书籍队列(FIFO)used_models: 已处理的所有模型记录(追加式,不可删除)
source: 标记选书来源(web_search | queue | user_specified)applied_count: 该模型被 AI 在后续对话中引用的次数(未来追踪用,初始为 0)tags: 分类标签数组(thinking-pattern | principle | concept)迁移指引:
如果你已有旧格式的 reading-history.json(只有 used_models 数组,无 schema_version),只需手动添加以下顶层字段:
{
"schema_version": 1,
"last_attempted": null,
"queue": [],
"used_models": [... 保留原有数据 ...]
}
默认: breadth(每次运行处理一本新书,提取 1 个模型)
切换方式: 用户在对话中指定 depth_mode: depth 或说 "深度分析这本书"
depth 模式详细流程:
选中书籍: 《反脆弱》
│
├─ Round 1: 提取 "反脆弱三元组" → 写入 patterns/antifragility.md + reading-history
├─ Round 2: 提取 "杠铃策略" → 写入 patterns/barbell-strategy.md + reading-history
├─ Round 3: 提取 "林迪效应" → 写入 patterns/lindy-effect.md + reading-history
├─ Round 4: AI 自评 "无更多独立框架" → 停止
│
├─ 合并输出: 一份报告包含 3 个模型(精简 F/A/C/E + 🎯迁移 + 关联分析)
└─ 写入飞书: 每个模型一条记录
三重退出条件(任一触发即停止):
禁止:
要求:
配置来源优先级:
HEARTBEAT-reading.mdFEISHU_APP_TOKEN, FEISHU_TABLE_IDNOTION_API_KEY, NOTION_DATABASE_ID用户上下文 (可选但强烈推荐):
USER.md知识库路径 (自动创建):
memory/knowledge-base/patterns/*.md (每个模型一个文件)memory/knowledge-base/concepts.mdVersion: 3.0.0 Last updated: 2026-03-28 Changes: Knowledge base restructure — single-file-per-model with YAML frontmatter (patterns/{id}.md), dedup via reading-history.json only (no longer reads thinking-patterns.md), FACET→KB field mapping table, KB_META extraction from mental-model-forge output, contradiction field added