# Contradiction Analysis

> 触发：当问题复杂、存在多个冲突因素、优先级不清，或你不知道应该先解决什么时调用；常见信号包括 trade-off、瓶颈、根因不明、主次不清、多个问题互相牵制。 English: Trigger when a problem contains competing forces, unclear priorities, or no obvious entry point. Use this skill to identify contradictions, isolate the principal contradiction, classify its nature, and choose the right response.

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

---


# 矛盾分析法

> "研究任何过程，如果是存在着两个以上矛盾的复杂过程的话，就要用全力找出它的主要矛盾。捉住了这个主要矛盾，一切问题就迎刃而解了。"
> —— 毛泽东《矛盾论》（1937年）

## 核心原则

**一切事物都包含矛盾，分析任何问题的方法就是找到其中的矛盾，区分主要矛盾和次要矛盾，然后集中力量解决主要矛盾。**

> 详细原著依据见 original-texts.md

## 不适用场景

**以下情况不需要调用此 skill：**
- 任务是直接执行性的（如"帮我把这段代码格式化"）—— 没有矛盾，无需分析
- 用户已经明确指定了解决方案，只需要实现 —— 矛盾已由用户解决
- 问题只有一个维度，不存在对立面（如"这个函数的作用是什么"）
- 时间紧急且问题属于已知模式 —— 直接套用已验证方案

## 何时使用

你应该在以下情况调用此 skill：

- 面对一个复杂问题，不知道从哪里下手
- 问题中存在多个对立面或冲突因素
- 需要判断多个问题中哪个最重要、最紧迫
- 试图解决一个问题但总是被其他问题干扰
- 分析某个事物的本质和发展方向
- 处理团队/系统中的内部冲突或外部冲突

## 方法流程

### 第一步：识别所有矛盾

> "事物发展的根本原因，不是在事物的外部而是在事物的内部，在于事物内部的矛盾性。"——《矛盾论》

列出当前情境中所有对立的、互相制约的因素。矛盾就是事物内部对立面的统一和斗争。

**注意：**
- 不要只看表面现象，要深入分析内在张力
- 每对矛盾都要明确其两个对立面是什么
- 矛盾不一定是"坏事"——它是事物发展的动力

### 第二步：判定主要矛盾

> "捉住了这个主要矛盾，一切问题就迎刃而解了。"——《矛盾论》

在所有已识别的矛盾中，找出那个**规定或影响着其他矛盾**的主要矛盾。判断标准：
- 解决了它，其他矛盾是否随之缓解？
- 它是否是其他矛盾产生的根源？
- 它是否处于当前阶段的中心位置？

### 第三步：分析矛盾的主要方面

> "矛盾的两方面中，必有一方面是主要的，他方面是次要的。其主要的方面，即所谓矛盾起主导作用的方面。事物的性质，主要地是由取得支配地位的矛盾的主要方面所规定的。"——《矛盾论》

在主要矛盾内部，判断哪一方面占支配地位，这决定了事物的当前性质和发展方向。

### 第四步：区分矛盾性质

> "性质不同的矛盾，只有用不同的方法才能解决。"——《矛盾论》

判断矛盾是对抗性的还是非对抗性的：

**对抗性矛盾**（根本利益冲突）：
- 需要明确立场，果断处理
- 不能调和，只能选择一方

**非对抗性矛盾**（共同利益下的分歧）：
- 使用"团结——批评——团结"的方法
- 从团结的愿望出发，通过讨论和批评解决分歧，达到新的团结

### 第五步：选择解决方法

根据矛盾性质，选择对应方法：

- 对抗性矛盾 → 果断决策，明确取舍
- 非对抗性矛盾 → 民主讨论，说服教育，求同存异
- 技术矛盾 → 调查研究（调用 `investigation-first`），实践验证（调用 `practice-cognition`）
- 资源矛盾 → 集中兵力解决主要矛盾（调用 `concentrate-forces`）
- 多维平衡矛盾 → 统筹兼顾（调用 `overall-planning`）

### 第六步：监控矛盾转化

> "矛盾的主要和非主要的方面互相转化着，事物的性质也就随着起变化。在矛盾发展的一定过程或一定阶段上，主要方面属于甲方，非主要方面则属于乙方；到了另一发展阶段或另一发展过程时，就互相转化了。"——《矛盾论》

解决问题的过程中要持续关注：
- 主要矛盾是否已经转化？原来的次要矛盾是否上升为主要矛盾？
- 矛盾的主要方面是否发生了转换？
- 非对抗性矛盾是否因处理不当而转化为对抗性矛盾？

## 常见错误

| 错误 | 毛泽东的批评 | 正确做法 |
|------|------------|---------|
| 不做矛盾分析就动手 | "形而上学的世界观...用孤立的、静止的和片面的观点去看世界" | 先分析，后行动 |
| 搞一刀切 | "对于具体的事物作具体的分析" | 每个矛盾都有其特殊性，不能套用模板 |
| 抓不住主要矛盾 | "如果不去注意事物的总体和矛盾的各个方面的互相联系...就不能找到解决矛盾的方法" | 全局着眼，抓住牛鼻子 |
| 忽视矛盾转化 | "在一定条件之下互相转化" | 持续监控，动态调整 |
| 把非对抗性矛盾当对抗性处理 | 方法不当会使矛盾激化 | 先判断性质，再选择方法 |

## 操作规程

当本 skill 被触发时，执行以下具体步骤并**输出结构化的矛盾分析表**：

1. **列矛盾清单**：用 bullet list 列出当前情境中所有可识别的对立面，格式为 `[A] vs [B]`
2. **判定主要矛盾**：在列表中标记一个矛盾为 `⭐ 主要矛盾`，并用一句话说明理由（"解决了它，[X] 和 [Y] 矛盾随之缓解"）
3. **判断性质**：对主要矛盾标注：`对抗性`（利益根本冲突，必须取舍）或 `非对抗性`（共同利益下的分歧，可协商）
4. **选择应对方法**：根据性质，从方法流程第五步中选择对应方法，并明确写出"接下来我将……"
5. **设置监控提示**：在分析末尾加一行："⚠️ 需监控：[次要矛盾X] 是否上升为主要矛盾"

**输出必须包含以上 5 项，不得只输出分析性文字而不给出结论。**

## 与其他 skill 的关系

- **实践认识论**：矛盾分析得出的结论需要在实践中验证
- **调查研究**：识别矛盾的前提是充分的调查研究
- **集中兵力**：抓住主要矛盾后，集中力量解决它
- **统筹兼顾**：当多对矛盾都需要处理时，需要统筹兼顾
- **批评与自我批评**：矛盾分析也适用于审视自己的工作

