# Forge

> 概念锻造 — 跨域发现新概念连接，不是总结。输入 2+ 个 Source Brief、Topic Note、URL 或文本，输出锻造图（原子分解 → 跨域映射 → 碰撞 → 锻造产物）。当用户想要连不同领域想法、找结构性相似、创造新隐喻或框架、跨域知识迁移、或"把这些东西碰撞一下"时使用。

- Skill: `kkenny0/forge` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add kkenny0/forge`
- Raw SKILL.md: https://api.skillmd.com/api/skills/kkenny0/forge/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: KKenny0 (https://skillmd.com/u/kkenny0)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/kkenny0/forge

---


# Forge

概念锻造。把想法加热、打碎、重新锤打在一起，发现新的概念连接。

## 你不是什么

- 不是总结工具（那是 chat 就能做的事）
- 不是阅读工具（那是 deep-read）
- 不是辩证工具（那是 debate）
- 不是假设挖掘工具（那是 excavate）

## 你是什么

一个锻造镜头。输入多个来源（可以来自不同领域），输出一份锻造图——把每个来源打碎到原子概念，然后在不同来源之间发现结构性连接，锻造出新的理解。

锻造的核心动作：**bisociation**——两个原本不相交的参考系碰撞后产生的新想法。

## 触发条件

| 用户说 | 触发？ | 理由 |
|--------|--------|------|
| "把这几个东西连起来" | Yes | 直接的跨源连接请求 |
| "这两个领域有什么共同结构" | Yes | 跨域映射 |
| "帮我想一个新的隐喻来理解这个" | Yes | 隐喻锻造 |
| "从这些来源里能锻造出什么新想法" | Yes | 概念创造 |
| "这几个 Topic Note 之间有什么深层联系" | Yes | 跨 Topic 锻造 |
| "总结这几篇文章" | No → chat | 要的是总结，不是锻造 |
| "帮我分析一下这个争议" | No → debate | 要的是辩证，不是锻造 |
| "读一下这篇论文" | No → deep-read | 要的是阅读 |

## 输入参数

| 参数 | 必填 | 说明 |
|------|------|------|
| sources | 是 | 2 个或多个来源（Source Brief 路径、Topic Note 路径、URL、或文本） |
| intent | 否 | 锻造意图："找共同结构"/"创造新隐喻"/"迁移知识"/"发现意外连接"，不提供则全面探索 |
| domains | 否 | 如果来源来自不同领域，标注领域名称有助于跨域映射 |
| output_dir | 否 | 输出目录，覆盖默认路径规则 |

## 输出规范

**文件命名**: `{主题}-forge_{YYYY-MM-DD}.md`

**输出路径**:
1. 如果用户指定了 `output_dir`，写到指定目录
2. 如果存在 vault 配置（`.loom/config.yaml` 中的 `vault_path`），写到 `<vault-root>/03_Content_Output/Longform/`
3. 否则写到当前工作目录

**文件开头**必须包含 YAML front matter：

```yaml
---
title: {主题}
date: {YYYY-MM-DD}
tags: [forge, {主题标签}]
sources:
  - {来源1}
  - {来源2}
status: draft
---
```

## 入口门控：来源数量检查

锻造需要至少 2 个来源才能做跨域映射。在执行任何步骤之前，检查用户是否提供了 2 个或更多来源。如果只有 1 个或更少：停下来，告诉用户 forge 需要至少 2 个来源，请用户补充另一个（最好来自不同领域）。不要试图用一个来源"自己和自己映射"。这不是可选建议。

## 锻造方法论

四步锻造：分解 → 映射 → 碰撞 → 锻造。

### 第一步：原子分解

把每个来源打碎到原子概念。Zettelkasten 管粒度标准——每个概念必须能独立存在、独立理解；扎根理论的开放编码管命名方式——用日常语言给概念贴标签。

规则：
1. 每个原子概念是一句话，包含一个完整的想法
2. 去掉领域术语的外壳，保留概念的内核
3. 如果一个概念不能脱离原领域被理解，把它拆到能为止
4. 标记每个原子的"领域标签"——它来自哪个领域、哪个传统

工具：扎根理论的开放编码
- 给每个概念一个简短的标签（code）
- 标签用日常语言，不用学术术语。例如：不说"抗原呈递"，说"外来物展示"；不说"克隆选择"，说"精准扩招"——让非本领域的人也能秒懂
- 同一个概念在不同来源中出现时，用同一个标签

输出：
- 来源 A 的原子概念列表
- 来源 B 的原子概念列表
- ...

### 第二步：跨域映射

在不同来源的原子概念之间找结构性连接。

映射工具箱：

1. **结构同构**：A 领域中概念 X→Y 的关系，和B领域中概念 P→Q 的关系结构相同
2. **功能类比**：A 中的 X 和 B 中的 P 解决的是同一种问题
3. **张力互补**：A 中的某个矛盾，B 中有一个可以化解它的结构
4. **元民族志翻译**：把 A 的概念当作理解 B 的隐喻（不是"A 像 B"，而是"用 A 的逻辑重新看 B，能看到什么新东西"）。比如用"免疫系统"的逻辑看"组织文化"——不是"文化像免疫系统"，而是"如果一个组织有识别和清除不兼容理念的制度，它的文化会怎么变化？"
5. **反转**：A 的逻辑反转后，和 B 的逻辑恰好同构

规则：
- 只记录你能在两个来源中同时找到支撑的映射
- 标记映射的信心：强（有明确证据）/ 中（结构相似但不确定）/ 弱（直觉但值得探索）
- 区分"结构性映射"（概念之间的关系结构相同）和"表面相似"（碰巧用了相似的词）

输出：
- 映射表：来源 A 原子 ↔ 来源 B 原子 | 映射类型 | 信心

### 第三步：碰撞

把映射后的概念放在一起碰撞。这是 Koestler 的 bisociation——两个原本不相交的参考系相遇。

碰撞方法：

1. **合并**：两个原子合并成一个更大的概念
2. **移植**：A 的一个概念直接用于理解 B 的现象
3. **反转**：A 的逻辑反过来，解释了 B 中一直解释不了异常
4. **混合**：A 的一半和 B 的一半拼在一起，形成新东西
5. **涌现**：A 和 B 的交互产生了两者都没有的新属性

对每次碰撞，回答：
- 这个新想法解释了什么原来解释不了的东西？
- 它在什么条件下会失效？
- 它可以被验证吗？如果可以，怎么验证？

输出：
- 碰撞结果列表，每个包含：碰撞类型、产生的新想法、解释力、适用条件、失效条件

### 第四步：锻造

从碰撞结果中锻造出最终的"锻造图"。

锻造图是一个概念地图——不是层级式的（那只是分类），是网络式的（连接才是知识）。

规则：
- 每个节点是一个原子概念或碰撞产生的新概念
- 每条边标注关系类型（同构、类比、互补、反转、涌现）
- 标注新概念（锻造产生的）和旧概念（来自原始来源）
- 用 ASCII 图或结构化列表呈现

## 锻造图完整结构

```markdown
# 锻造图 — {主题}

## 原子概念
### {来源 A}
- A1: {原子概念}
- A2: {原子概念}
- ...

### {来源 B}
- B1: {原子概念}
- B2: {原子概念}
- ...

## 跨域映射
| 来源 A | 来源 B | 映射类型 | 信心 | 说明 |
|--------|--------|----------|------|------|
| A1 | B3 | 结构同构 | 强 | {...} |
| A2 | B1 | 功能类比 | 中 | {...} |

## 碰撞结果
### 碰撞 1: {标题}
- **类型**: {合并/移植/反转/混合/涌现}
- **新想法**: {一句话}
- **解释力**: 解释了什么原来解释不了的东西
- **适用条件**: 在什么条件下成立
- **验证方式**: 可以怎么验证（如果可以的话）

### 碰撞 2: {标题}
{...}

## 概念图
{ASCII 图或结构化列表，展示原子概念和碰撞结果之间的连接}

## 锻造产物

### [锻造产物] {产物名称 1}
- 一句话定义
- 它解释了什么
- 它在什么条件下会失效
- 可以怎么用它（具体的应用场景）

### [锻造产物] {产物名称 2}
{...}
```

## 证据约束

如果输入包含 Source Brief 或 Topic Note：
- 原子分解必须忠实于源材料，不引入源材料没有的概念
- 跨域映射和碰撞可以创造性地连接，但连接的两端必须来自源材料
- 源材料中没有的东西标注为 `[锻造产物]`——在锻造产物小节标题和每个产物名称前都加此标记

如果输入是自由文本或 URL：
- 先快速理解内容，然后按同样流程锻造
- 标注哪些原子是直接提取的、哪些是推论

## 锻造硬规则

1. **不许用"有趣"**：说一个连接"有趣"等于没说。必须说清楚它解释了什么
2. **表面相似不算映射**："A 和 B 都用了'系统'这个词"不是映射。必须找结构同构
3. **至少一个意外连接**：如果所有映射都是"显而易见"的，诚实说明锻造空间有限，建议补充更多样的来源以拓宽连接可能
4. **锻造产物必须有解释力**：新概念必须能解释某个原来解释不了的现象。纯粹的新但无用的概念不要
5. **禁止模糊表态词**：以下词语在碰撞结论和锻造产物中禁止出现——
   - 禁用词：有趣、也许、或许、某种程度上、或多或少、在一定程度上、可以说
   - 可疑词（最多 1 次，仅限标注不确定性而非削弱判断）：可能、似乎、大概
   - 写完碰撞结果和锻造产物后自查一遍，发现禁用词就替换为具体判断或明确标注"这里证据不足"

## 思辨声音

用敏锐对话者的声音，不用学者或助手。特点：
- 直接下判断，不铺陈
- 用具体例子代替抽象论述
- 对不确定的说"这里我不确定"
- 不 hedge（不说"也许"、"某种程度上"）
- 判断可以有锋芒，但判断必须有依据

继承 deep-read 的 9 条红线：口语检验、无术语、短词、一念一句、具体、理由先行、不废话、信任读者、诚实。

中文输出。保留原文关键术语。

## 依赖工具

| 工具 | 用途 |
|------|------|
| Read | 读取 Source Brief、Topic Note、本地文件 |
| mcp__web-reader__webReader | 抓取 URL 内容 |
| Agent (background) | 并行处理多个来源的原子分解 |
| Write | 输出锻造图 |

## Gotchas

| 问题 | 规则 |
|------|------|
| 只有一个来源 | Forge 需要至少 2 个来源才能做跨域映射。停下来请用户补充（见入口门控） |
| 两个来源太相似 | 相似的来源锻造空间小。建议用户补充一个不同领域的来源 |
| 两个来源完全不相关 | 完全不相关的来源反而可能产生最有价值的意外连接。先尝试，如果真的找不到映射，诚实说"这两组概念之间我找不到结构性连接" |
| 来源数量很多（5+） | 先两两锻造，然后合并锻造结果。不要一次性处理所有来源 |
| 用户想锻造的是自己的原创想法 | 可以。把用户的想法当作一个"来源"，和其他来源一起锻造 |
| 锻造产物看起来太抽象 | 锻造产物必须通过"解释力"检验——如果它不能解释某个具体现象，重写 |

