# Thinking

> 深度推理，第一性原理分析

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

---


# Thinking Skill (Sequential Thinking)

深度推理引擎，用于第一性原理分析和复杂决策。

## 核心理念

> **"I think the biggest mistake people make is not questioning the basic assumptions."** — Elon Musk

立足于第一性原理剖析问题，不被表象迷惑，追溯问题本质。

## 使用场景

| 场景 | 触发 |
|:---|:---|
| 架构设计 | Path B/C I阶段 |
| 方案对比 | 多个可行方案 |
| 技术选型 | 框架/库选择 |
| 问题诊断 | 难以直接解决的问题 |

## 第一性原理分析框架

```markdown
### 1. 问题本质
- 用户真正需要什么？（不是用户说的）
- 核心约束是什么？
- 什么是不可妥协的？

### 2. 分解问题
- 问题可以拆分为哪些子问题？
- 每个子问题的本质是什么？
- 哪些是核心，哪些是衍生？

### 3. 最简方案
- 解决核心问题的最简方案是什么？
- 是否有更简单的数据结构？
- 能否删除某些部分而不影响核心功能？

### 4. 验证假设
- 方案基于哪些假设？
- 这些假设成立吗？
- 如何验证？
```

## Linus 审查清单

```markdown
- [ ] **Data First**: 数据结构是最简的吗？
- [ ] **Naming**: 命名准确反映本质？
- [ ] **Simplicity**: 是否过度设计？能删除什么？
- [ ] **Compatibility**: 向后兼容？
- [ ] **Taste**: 这段代码有"味道"吗？
```

## 调用方式

```javascript
sequential_thinking({
  thought: "分析用户认证方案的本质需求...",
  thoughtNumber: 1,
  totalThoughts: 5,
  nextThoughtNeeded: true
})
```

## 多方案决策

```javascript
// 发现多个方案时
寸止.ask({
  question: "基于第一性原理分析，有两个可行方案",
  options: [
    "方案A: JWT + Redis — 本质：无状态+缓存",
    "方案B: Session + DB — 本质：有状态+持久化"
  ],
  analysis: "方案A更简单，但需要额外Redis；方案B更传统，数据库已有"
})
// 等待用户选择，禁止自行决定
```

## 思考模板

```markdown
## 第一性原理分析

### 问题
[一句话描述问题本质]

### 约束
1. [约束1]
2. [约束2]

### 分解
1. 子问题1 → 本质是...
2. 子问题2 → 本质是...

### 方案
最简方案: [描述]
理由: [为什么这是最简的]

### Linus检查
- [x] 数据结构最简
- [x] 无过度设计
- [ ] 需要用户确认...
```

## 降级方案

sequential-thinking不可用时 → 使用结构化Markdown分析

