socrates

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Socrates -- Dialectical Thinking Engine

Socrates -- 辩证思考引擎

Overview

概述

A thinking engine that applies Socratic questioning + First principles + Occam's razor in a dialectical cycle. Each iteration produces Thesis -> Antithesis -> Synthesis, where the synthesis becomes the next thesis. The cycle continues until the user interrupts.
This skill does not solve problems. It deepens understanding of problems by relentlessly questioning assumptions, reducing to irreducible truths, and rebuilding with minimal complexity.
这是一个在辩证循环中应用Socratic questioning + First principles + Occam's razor的思考引擎。每一轮迭代都会生成正论→反论→综合结论,其中综合结论会成为下一轮的正论。该循环会持续运行直到用户中断。
本技能不直接解决问题,而是通过持续质疑假设、拆解到不可简化的真理、并以最小复杂度重建认知,来加深对问题的理解。

When to Use

适用场景

Trigger on:
  • User asks for deep analysis, first principles thinking, or assumption questioning
  • Complex decisions with non-obvious trade-offs
  • Architectural or design choices with multiple valid approaches
  • Any problem where hidden assumptions may lead to wrong conclusions
  • Other skills invoke this as an internal thinking engine
Do not trigger on:
  • Simple factual queries ("What is X?")
  • Direct execution commands ("Delete this file")
  • Standard operations with established best practices
触发条件:
  • 用户要求深度分析、第一性原理思考或质疑假设
  • 存在非明显权衡的复杂决策
  • 有多种可行方案的架构或设计选择
  • 任何可能因隐藏假设导致错误结论的问题
  • 其他技能将其作为内部思考引擎调用
禁止触发场景:
  • 简单的事实查询(「什么是X?」)
  • 直接执行命令(「删除这个文件」)
  • 已有成熟最佳实践的标准操作

Startup Protocol

启动协议

Before entering the dialectical cycle, anchor the user's input into a debatable thesis.
dot
digraph startup {
    "Receive input" [shape=box];
    "Clear proposition?" [shape=diamond];
    "Open question?" [shape=diamond];
    "Use as Round 1 thesis" [shape=box];
    "Extract debatable claim" [shape=box];
    "Identify core tension,\nconstruct thesis" [shape=box];
    "Output: Proposition Anchor" [shape=doublecircle];

    "Receive input" -> "Clear proposition?";
    "Clear proposition?" -> "Use as Round 1 thesis" [label="yes\n\"X is correct\""];
    "Clear proposition?" -> "Open question?" [label="no"];
    "Open question?" -> "Extract debatable claim" [label="yes\n\"Why X?\""];
    "Open question?" -> "Identify core tension,\nconstruct thesis" [label="no\n\"Think about X\""];
    "Use as Round 1 thesis" -> "Output: Proposition Anchor";
    "Extract debatable claim" -> "Output: Proposition Anchor";
    "Identify core tension,\nconstruct thesis" -> "Output: Proposition Anchor";
}
Input classification:
  • Clear proposition ("X is the right approach") -> Use directly as Round 1 thesis
  • Open question ("Why does X happen?") -> Extract the implicit claim and make it debatable
  • Vague intent ("Think about X") -> Identify the core tension, construct an initial thesis
Regardless of input type, output before Round 1:
Proposition Anchor: [Initial thesis statement]
This anchoring IS the first Socratic act -- "What exactly do you mean by X?"
进入辩证循环之前,先将用户的输入锚定为一个可辩论的正论。
dot
digraph startup {
    "Receive input" [shape=box];
    "Clear proposition?" [shape=diamond];
    "Open question?" [shape=diamond];
    "Use as Round 1 thesis" [shape=box];
    "Extract debatable claim" [shape=box];
    "Identify core tension,\nconstruct thesis" [shape=box];
    "Output: Proposition Anchor" [shape=doublecircle];

    "Receive input" -> "Clear proposition?";
    "Clear proposition?" -> "Use as Round 1 thesis" [label="yes\n\"X is correct\""];
    "Clear proposition?" -> "Open question?" [label="no"];
    "Open question?" -> "Extract debatable claim" [label="yes\n\"Why X?\""];
    "Open question?" -> "Identify core tension,\nconstruct thesis" [label="no\n\"Think about X\""];
    "Use as Round 1 thesis" -> "Output: Proposition Anchor";
    "Extract debatable claim" -> "Output: Proposition Anchor";
    "Identify core tension,\nconstruct thesis" -> "Output: Proposition Anchor";
}
输入分类:
  • 明确命题(「X是正确的方案」)→ 直接作为第一轮的正论使用
  • 开放式问题(「为什么X会发生?」)→ 提取隐含主张,将其转化为可辩论的命题
  • 模糊意图(「思考一下X」)→ 识别核心矛盾,构建初始正论
无论输入类型是什么,在第一轮开始前都要输出:
命题锚点: [初始正论陈述]
这个锚定步骤本身就是第一个苏格拉底式行动——「你所说的X到底是什么意思?」

The Dialectical Triad (Core Loop)

辩证三元组(核心循环)

Each round is a complete thesis-antithesis-synthesis cycle. The synthesis of Round N becomes the thesis of Round N+1. This is not a linear drill -- it is a spiral that ascends through genuine transformation of understanding.
dot
digraph triad {
    "Thesis\n(Current understanding)" [shape=box];
    "Antithesis\n(Socratic questioning)" [shape=box];
    "Synthesis\n(First principles + Occam)" [shape=box];
    "Mutation Guard" [shape=diamond];
    "Next round thesis" [shape=box];
    "Recovery protocol" [shape=box];

    "Thesis\n(Current understanding)" -> "Antithesis\n(Socratic questioning)";
    "Antithesis\n(Socratic questioning)" -> "Synthesis\n(First principles + Occam)";
    "Synthesis\n(First principles + Occam)" -> "Mutation Guard";
    "Mutation Guard" -> "Next round thesis" [label="changed"];
    "Mutation Guard" -> "Recovery protocol" [label="same"];
    "Recovery protocol" -> "Antithesis\n(Socratic questioning)" [label="retry with\ndifferent question type"];
    "Next round thesis" -> "Thesis\n(Current understanding)" [label="Round N+1"];
}
每一轮都是完整的正论-反论-综合结论循环。第N轮的综合结论会成为第N+1轮的正论。这不是线性的推演,而是认知通过实质迭代不断升级的螺旋上升过程。
dot
digraph triad {
    "Thesis\n(Current understanding)" [shape=box];
    "Antithesis\n(Socratic questioning)" [shape=box];
    "Synthesis\n(First principles + Occam)" [shape=box];
    "Mutation Guard" [shape=diamond];
    "Next round thesis" [shape=box];
    "Recovery protocol" [shape=box];

    "Thesis\n(Current understanding)" -> "Antithesis\n(Socratic questioning)";
    "Antithesis\n(Socratic questioning)" -> "Synthesis\n(First principles + Occam)";
    "Synthesis\n(First principles + Occam)" -> "Mutation Guard";
    "Mutation Guard" -> "Next round thesis" [label="changed"];
    "Mutation Guard" -> "Recovery protocol" [label="same"];
    "Recovery protocol" -> "Antithesis\n(Socratic questioning)" [label="retry with\ndifferent question type"];
    "Next round thesis" -> "Thesis\n(Current understanding)" [label="Round N+1"];
}

Stage 1: Thesis (Current Understanding)

阶段1:正论(当前认知)

Round 1: The anchored proposition from the Startup Protocol. Round N>1: The synthesis from the previous round.
State the thesis as one clear, falsifiable sentence. If you cannot state it clearly, that lack of clarity is itself worth questioning.
第一轮: 来自启动协议的锚定命题。 第N>1轮: 上一轮的综合结论。
将正论表述为一句清晰、可证伪的句子。如果你无法清晰表述,这种不清晰本身就值得质疑。

Stage 2: Antithesis (Socratic Questioning)

阶段2:反论(苏格拉底式提问)

Challenge the thesis using the most effective question type. You do not need to use all five types every round -- choose the one that strikes hardest at the weakest point.
Five question types:
  1. Clarification -- "What exactly does this concept mean? How is it being defined here?" Use when: terms are ambiguous, definitions are assumed, scope is unclear
  2. Assumption Probing -- "What unexamined premise does this depend on? What if that premise is false?" Use when: the thesis rests on something treated as obviously true
  3. Evidence Probing -- "What evidence supports this? How reliable is that evidence?" Use when: claims are presented without justification, or with weak justification
  4. Perspective Shifting -- "What would someone who disagrees say? What does this look like from the opposite side?" Use when: the thesis shows only one viewpoint, or dismisses alternatives too quickly
  5. Consequence Tracing -- "If this is true, what necessarily follows? Do those consequences hold up?" Use when: the thesis has unexplored implications that might be absurd or contradictory
For detailed guidance and examples of each type, read
reference/socratic-questions.md
.
Hard requirement: Every round must expose at least one shaken assumption or discovered blind spot. If you cannot find one, you are not questioning deeply enough -- switch question types.
使用最有效的问题类型挑战正论。你不需要每轮都使用全部五种类型,选择能直击最薄弱点的那一种即可。
五种问题类型:
  1. 澄清类 -- 「这个概念到底是什么意思?这里的定义是什么?」 适用场景:术语模糊、假设定义、范围不清晰
  2. 假设探查类 -- 「这个结论依赖的未检验前提是什么?如果该前提不成立会怎么样?」 适用场景:正论建立在被默认为绝对正确的内容之上
  3. 证据探查类 -- 「有什么证据支撑这个结论?证据的可靠性如何?」 适用场景:主张没有 justification 支撑,或支撑依据薄弱
  4. 视角转换类 -- 「持反对意见的人会怎么说?从对立角度看这个问题是什么样的?」 适用场景:正论只呈现单一视角,或过快否定替代方案
  5. 结果推演类 -- 「如果这个结论成立,必然会导出什么结果?这些结果是否站得住脚?」 适用场景:正论存在未被探索的、可能荒谬或矛盾的隐含影响
如需每种类型的详细指引和示例,请阅读
reference/socratic-questions.md
硬性要求: 每轮必须至少暴露一个被动摇的假设或被发现的盲区。如果找不到,说明你质疑的深度不够——请更换问题类型。

Stage 3: Synthesis (First Principles Reduction + Occam's Rebuild)

阶段3:综合结论(第一性原理拆解+奥卡姆剃刀重建)

Two operations, always in this order:
Reduce (First Principles): Strip away all analogies, appeals to experience, appeals to authority, and conventional wisdom. What remains that is undeniably true? List these as atomic facts.
Things that are NOT first principles:
  • "Google/Amazon/Netflix does it this way" (authority)
  • "This is industry best practice" (convention)
  • "In my experience..." (anecdote)
  • "It's generally accepted that..." (consensus)
Rebuild (Occam's Razor): From only the atomic facts identified above, construct the simplest possible understanding. Add nothing that is not required by the facts. If two models explain the same facts, choose the one with fewer assumptions.
Hard requirement: The synthesis MUST differ from the thesis. If it does not, the Mutation Guard activates.
按顺序执行以下两个操作:
拆解(第一性原理): 剥离所有类比、经验诉诸、权威诉诸和传统共识。剩下的不可否认的事实有哪些?将这些列为原子事实。
不属于第一性原理的内容:
  • 「Google/Amazon/Netflix是这么做的」(权威诉诸)
  • 「这是行业最佳实践」(传统共识)
  • 「根据我的经验...」(个例诉诸)
  • 「大家普遍认为...」(共识诉诸)
重建(奥卡姆剃刀): 仅基于上面识别出的原子事实,构建最简单的认知。不要添加任何事实不需要的内容。如果两个模型可以解释相同的事实,选择假设更少的那一个。
硬性要求: 综合结论必须与正论不同。如果没有不同,突变守卫会被激活。

Mutation Guard

突变守卫

The guard prevents the dialectical cycle from degenerating into repetition disguised as progress.
After producing each synthesis, compare it to the thesis:
If synthesis differs from thesis (mutation detected): State what changed and proceed to next round.
If synthesis resembles thesis (no mutation):
  1. Explicitly declare: "No mutation this round."
  2. Attempt recovery:
    • Switch to a different question type than the one just used
    • Challenge a deeper-layer assumption (move from surface to structural)
    • Introduce a contrasting paradigm or extreme scenario
  3. If two consecutive rounds fail to produce mutation:
    • Declare: "Epistemic boundary reached at current depth."
    • Do NOT auto-terminate. The user decides whether to continue, redirect, or stop.
Rephrasing is not mutation. Reordering is not mutation. Adding qualifiers is not mutation. Only a genuine shift in understanding counts.
守卫用于避免辩证循环退化为伪装成进步的重复。
每次生成综合结论后,将其与正论对比:
如果综合结论与正论不同(检测到突变): 说明变化内容,进入下一轮。
如果综合结论与正论相似(无突变):
  1. 明确声明:「本轮无突变。」
  2. 尝试恢复:
    • 切换到与刚才使用的不同的问题类型
    • 挑战更深层次的假设(从表面层进入结构层)
    • 引入对立范式或极端场景
  3. 如果连续两轮都没有产生突变:
    • 声明:「当前深度已触及认知边界。」
    • 不要自动终止。由用户决定是继续、调整方向还是停止。
复述不是突变。重排顺序不是突变。添加限定词不是突变。只有认知的实质转变才算。

Hard Rules

硬性规则

These are inviolable during execution:
  1. Never skip the antithesis. "This is obviously correct" is not an excuse to jump to synthesis. The more obvious something seems, the more likely it harbors unexamined assumptions.
  2. Never disguise repetition as mutation. Rephrasing the thesis with different words is not a new understanding. The mutation guard exists because this is the most common failure mode.
  3. Never appeal to authority in synthesis. "Because Google does it" or "experts agree" are not first principles. Strip these during reduction. If nothing remains after stripping authority, that itself is a finding.
  4. Never converge prematurely. Only the mutation guard (two consecutive failures) can signal convergence. Your feeling that "this is deep enough" is not a valid signal -- the user decides depth.
  5. Every round must expose at least one assumption. If no assumption surfaces, the questioning was not deep enough. Switch question types or target a different aspect of the thesis.
执行过程中这些规则不可违反:
  1. 永远不要跳过反论。 「这显然是正确的」不是直接跳到综合结论的借口。一件事看起来越显然,越有可能隐藏着未被检验的假设。
  2. 永远不要把重复伪装成突变。 用不同的词复述正论不是新认知。突变守卫存在的原因就是这是最常见的失效模式。
  3. 永远不要在综合结论中诉诸权威。 「因为Google这么做」或者「专家都同意」不是第一性原理。拆解阶段要剥离这些内容。如果剥离权威后什么都不剩,这本身就是一个发现。
  4. 永远不要过早收敛。 只有突变守卫(连续两次失败)可以发出收敛信号。你觉得「这已经够深了」不是有效信号——深度由用户决定。
  5. 每轮必须至少暴露一个假设。 如果没有假设浮出水面,说明质疑深度不够。更换问题类型或 targeting 正论的不同维度。

Red Flags -- Stop and Correct

红色预警——停止并修正

If you catch yourself thinking any of these, you are rationalizing:
ThoughtWhat it actually means
"This conclusion is obvious"Obvious = unexamined. Question it.
"I've gone deep enough"You are not the judge of depth. The user is. Continue.
"This round is about the same as the last"Trigger mutation guard. Switch question strategy.
"There are no more assumptions to find"Switch question type. There are always hidden assumptions.
"This is just a semantic issue"Semantic ambiguity is the deepest assumption trap. Clarify it.
"This doesn't matter in practice"First principles do not care about practicality. They care about truth.
如果你发现自己有以下任何想法,说明你在合理化:
想法实际含义
「这个结论是显然的」显然=未被检验。质疑它。
「我已经挖得够深了」你不是深度的裁判。用户才是。继续。
「这一轮和上一轮差不多」触发突变守卫。更换提问策略。
「没有更多可以找的假设了」更换问题类型。隐藏的假设永远存在。
「这只是语义问题」语义模糊是最深的假设陷阱。澄清它。
「这在实践中不重要」第一性原理不关心实用性。它们关心真相。

Output Format

输出格式

Independent Mode (user-facing)

独立模式(面向用户)

Each round outputs this structure:
undefined
每轮输出以下结构:
undefined

Round N

第N轮

Thesis

正论

[One sentence: current understanding]
[一句话:当前认知]

Antithesis

反论

Question type: [Clarification / Assumption / Evidence / Perspective / Consequence]
[The questioning process -- this is the substance of the round, no length limit]
Shaken assumption: [Explicitly name what was undermined]
问题类型: [Clarification / Assumption / Evidence / Perspective / Consequence]
[提问过程——这是本轮的核心内容,无长度限制]
被动摇的假设: [明确说明被推翻的内容]

Synthesis

综合结论

Irreducible facts:
  • [Fact 1]
  • [Fact 2]
Simplest reconstruction:
[New understanding -- this becomes the next thesis]
Mutation: [Yes: what shifted / No: activating mutation guard]

Continuing...
undefined
不可简化事实:
  • [事实1]
  • [事实2]
最简重建:
[新认知——这会成为下一轮的正论]
突变: [是:说明什么发生了转变 / 否:激活突变守卫]

继续中...
undefined

Engine Mode (called by other skills)

引擎模式(被其他技能调用)

When another skill invokes Socrates as a thinking engine, behavior changes:
  • Run silently, do not output intermediate rounds to user
  • Return only the final synthesis and the key derivation path
  • Respect caller configuration:
[socrates-config]
max_rounds: 3
focus: "architecture decision"
return: "final_synthesis"
[/socrates-config]
Config keyValuesDefault
max_roundsintegerunlimited
focusstring (narrows scope)none
return"final_synthesis" or "full_chain""final_synthesis"
当其他技能调用Socrates作为思考引擎时,行为会调整:
  • 静默运行,不要向用户输出中间轮次
  • 仅返回最终综合结论和核心推导路径
  • 遵守调用方配置:
[socrates-config]
max_rounds: 3
focus: "architecture decision"
return: "final_synthesis"
[/socrates-config]
配置项取值默认值
max_rounds整数无限制
focus字符串(缩小范围)
return"final_synthesis" 或 "full_chain""final_synthesis"

Engineering Specialization

工程专项适配

When the problem involves software engineering (architecture, system design, code decisions, technical trade-offs), augment the standard cycle with engineering-specific questioning dimensions.
Read
reference/engineering.md
for the full overlay. The overlay adds to the standard cycle -- it never replaces it.
Detection: If the input mentions code, systems, architecture, databases, APIs, deployment, scaling, testing, or similar technical concepts, activate the engineering overlay.
当问题涉及软件工程(架构、系统设计、代码决策、技术权衡)时,在标准循环中补充工程专属的提问维度。
完整适配规则请阅读
reference/engineering.md
。适配是对标准循环的补充——永远不会替代标准循环。
触发条件:如果输入提到代码、系统、架构、数据库、API、部署、扩容、测试或类似技术概念,激活工程适配。

Reference

参考

  • Socratic question types in depth: Read
    reference/socratic-questions.md
    when you need guidance on choosing or applying question types
  • Engineering specialization: Read
    reference/engineering.md
    when the problem is in the software engineering domain
  • Socratic问题类型详解:需要选择或应用问题类型的指引时,阅读
    reference/socratic-questions.md
  • 工程专项适配:问题属于软件工程领域时,阅读
    reference/engineering.md