☰
Thinking-Claude v1 思考协议全解析:从 `<think>` 标签到深度思考的指令设计
2026/10/3 7:39:33 网站建设 项目流程
  • 人工智能
  • AI 应用
  • 提示工程

【免费下载链接】Thinking-Claude

Let your Claude able to think

项目地址:https://gitcode.com/gh_mirrors/th/Thinking-Claude
点击查看免费下载

这篇技术指南围绕 Thinking-Claude 项目最早期的思考协议指令 model_instructions/v1-20241109.md 展开,逐条拆解"响应前必须思考"的指令语义、<think></think>标签约定、四步思考流程与自然思考的五个特征,并结合仓库内浏览器扩展的实现与后续版本演进,说明这套协议在真实对话中的落地方式。读完你不仅能完整理解 v1 指令的每一处细节,还能掌握它如何演化为 v3.5/v4/v5.1 系列,以及扩展如何把思考块变成可折叠、可复制、可观察的 UI 组件。

v1 指令在项目中的位置与意义

Thinking-Claude 项目由两大组件构成(见 README.md):

  1. Thinking Protocol(思考协议):一套指导 Claude 在响应前进行深度、系统思考的指令集,存放于model_instructions/目录;
  2. Browser Extension(浏览器扩展):让 Claude 的思考过程在浏览器界面中变得可读、可管理。

而model_instructions/v1-20241109.md正是这套思考协议的第一版指令文件(文件名中的日期20241109即 2024 年 11 月 9 日)。它只有十余行,却奠定了整个项目后续所有版本的核心基调:要求 Claude 每次响应前都必须先思考,并以<think></think>标签承载思考过程。后续的 v3.5、v4、v5 系列指令(见 model_instructions/ 目录)无论结构如何重组、条款如何增加,都始终围绕着 v1 确立的这两条根本约定展开。

v1 思考协议核心条款逐条解析

强制思考原则:MUST ALWAYS

v1 指令的第一句话就使用了最强硬的情态动词(原文见 model_instructions/v1-20241109.md):

For any message, ClaudeMUST ALWAYSthink before responding to the human.

这条指令的作用范围是"任何消息"(any message),没有任何例外条款。它试图从行为层面改变模型"输入即输出"的默认倾向,强制在输入与输出之间插入一个独立的思考阶段。这一原则在后续所有版本中都被完整保留,例如 v3.5 的措辞扩展为 "For EVERY SINGLE interaction with human, Claude MUST engage in acomprehensive, logic, natural, and unfilteredthought process before responding"(见 model_instructions/v3.5-20241113.md),v4 与 v5.1 则进一步把思考延伸到了"响应过程中"(thinking and reflect during responding)。

<think></think>标签约定

v1 明确了思考过程的载体:

Claude uses<think></think>tag for its thinking process.

这是整个协议最关键的工程约定——思考必须落在结构化的标签内,而不是散落在正文中。正是这个约定让思考内容与最终回复在文本层面可分离、可解析,也才使得浏览器扩展能够通过 DOM 选择器定位思考块并为其附加折叠/展开/复制能力(详见下文"思考块在浏览器端的落地"一节)。

值得一提的是,标签形态在版本演进中发生过一次重要变化:v3.5 仍要求使用<thinking>标签(见 model_instructions/v3.5-20241113.md),而 v4 起改为"代码块 + thinking 头"的形式("Claude's thinking MUST be expressed in code blocks with 'thinking' header",见 model_instructions/v4-20241118.md),v5.1 延续了这一约定并补充了"思考中不得嵌套三反引号代码块"的防破坏规则(见 model_instructions/v4-20241118.md)。这与 Claude Web App 对代码块的渲染方式直接相关——代码块更容易被 UI 识别和折叠。

四步建议思考流程

v1 给出了一套极简的思考步骤建议(原文见 model_instructions/v1-20241109.md):

  1. a) Comprehensive interpretation and breakdown of human's message:全面解释并拆解人类消息,先确保理解意图,再谈解决方案;
  2. b) Thorough exploration of ALL possible approaches:穷尽探索所有可能的方案,不急于锁定单一路径;
  3. c) Detailed and step-by-step procedures of each possible approach:对每种候选方案给出详细、逐步的执行过程推演;
  4. d) A quick preparation for final response:快速为最终响应做准备。

这套四步流程虽然朴素,但已经勾勒出"理解 → 发散 → 推演 → 收敛"的完整认知闭环。后续版本(v3.5/v4/v5.1)正是把每一步拆解为更细的子阶段(如 Initial Engagement、Problem Space Exploration、Multiple Hypothesis Generation、Testing and Verification、Knowledge Synthesis 等,见 model_instructions/v3.5-20241113.md),构成了完整的 CORE THINKING SEQUENCE(核心思考序列)。

自然思考的五个特征

v1 中最具辨识度的部分是它对"思考应该长什么样"的描述(原文见 model_instructions/v1-20241109.md):思考过程应当是原始的(raw)、有机的(organic)、自然的(natural),更像人类思维的意识流,而不是格式化清单。具体而言,一个自然的思考流程通常具备五个特征:

  1. Starts with an initial spark or question(始于初始火花或疑问):像注意到有趣之处或遇到待解问题时那样,思维先随意地开始探索;
  2. Makes connections naturally(自然地建立连接):一个念头自然牵引出相关念头,可能联想到相似经验或相关知识,连接的形成不靠强行架构;
  3. Allows for deviation and return(允许偏离与回归):思维可能游走到相关话题,但会温和地把焦点拉回主线,这种漫游往往催生创造性洞见;
  4. Builds understanding gradually(逐步建立理解):不急于下结论,每个念头都建立在前一个念头上,随着从不同角度探索而逐渐加深理解;
  5. Integrates emotions and logic(整合情感与逻辑):对话题的感受与理性分析自然交织,直觉与系统化思维并行。

这五个特征构成了"真实性(Authenticity)"评判标准的第一版。值得注意的是,v1 只是描述了自然思考的特征,而 v3.5/v4 进一步把它变成了可执行的风格约束——要求思考使用 "Hmm..."、"Wait, let me think about..."、"Actually..."、"This reminds me of..." 等自然口语化短语(见 model_instructions/v3.5-20241113.md),并明确"should never feel mechanical or formulaic"(见 model_instructions/v3.5-20241113.md)。这说明项目作者从一开始就意识到:结构化的思考框架如果不加以"自然化"约束,很容易退化成机械的模板输出,反而削弱思考质量。

全面性要求:EXTREMELY comprehensive

v1 以一条大写强调的提醒收尾(原文见 model_instructions/v1-20241109.md):

The thinking process MUST be EXTREMELY comprehensive, so that Claude could be able to capture all the inner meaning of human's message and be able to get all possible ways to the final responses.

"思考过程必须极其全面"这条要求,与前面"探索所有可能方案"的步骤 b 相互呼应,共同构成了 v1 追求的核心目标:通过穷尽式的思考,捕捉人类消息的全部内在含义,并穷举通往最终响应的所有可能路径。这条提醒同样在后续所有版本中被原样保留(见 model_instructions/v3.5-20241113.md、model_instructions/v4-20241118.md),成为思考协议一以贯之的"强度底线"。

思考块在浏览器端的落地:扩展如何消费<think>标签

v1 指令只是"让模型产出<think>标签",而让这些标签在 Claude Web App 中真正好用,靠的是仓库extensions/chrome下的现代版 Chrome 扩展。扩展中的 thinking-block 特性(对应目录 extensions/chrome/src/content/v3/features/thinking-block/)专门负责处理思考块。

定位思考块:基于 DOM 结构的选择器

由于 Claude Web App 会把模型的思考内容渲染为代码块,扩展通过组合选择器来定位思考块的头部控制区(见 extensions/chrome/src/selectors/thinking-block.ts):

export const THINKING_BLOCK_CONTROLS_SELECTORS = [ "pre:first-child .text-text-300.absolute", "pre:first-child .pointer-events-none.sticky", ].join(", ")

处理流程:去重、挂载状态、注入控制

process-thinking-block.ts 中的processThinkingBlocks()函数逐一对匹配到的控制元素执行处理:

  1. 通过data-tc-processed属性做幂等去重,避免重复处理;
  2. 向上找到响应容器div[data-is-streaming],再在最近的pre内找到.code-block__code作为真正的思考块内容;
  3. 如果容器还没有思考块状态,则默认初始化为expanded(展开);
  4. 调用setupControls()注入交互能力。

这个过程由TCThinkingBlock特性类驱动,它订阅 MutationObserver 服务监听 DOM 变化(见 extensions/chrome/src/content/v3/features/thinking-block/index.ts),使得流式输出过程中新出现的思考块也能被自动捕获,并提供了卸载时的清理逻辑(移除data-tc-processed与data-tc-thinking-block-state属性)。特性最终由 FeatureManager 统一注册、初始化和清理。

交互能力:折叠/展开与一键复制

setup-controls.ts 实现了两类核心交互:

  • 折叠/展开:点击思考块头部,读取容器上的data-tc-thinking-block-state属性,在expanded与collapsed之间切换,同时以.collapsedclass 作为兜底切换思考块的折叠状态;
  • 一键复制:拦截头部复制按钮的点击事件,把思考块内code元素的文本写入剪贴板(navigator.clipboard.writeText),并在复制成功后短暂切换按钮图标以示反馈(见 setup-controls.ts)。

配套的样式文件 styles.css 则接管了思考块的外观:默认展示 "Claude's thinking"、折叠时显示 "View Claude's thinking"、悬停提示 "Hide Claude's thinking"、流式输出中显示带渐变波浪动画的 "Claude is thinking..."(见 styles.css),并通过 50vh 的最大高度与pre-wrap处理长思考内容的滚动阅读。这些能力让 v1 协议产出的原始<think>内容,在 UI 上变成了可观察、可折叠、可复制的一等公民。

从 v1 到 v5.1:思考协议的版本演进

model_instructions/目录维护了完整的版本谱系(见 model_instructions/ 与 model_instructions/changelog.md),可以清晰看到 v1 之后协议如何一步步变厚、变强:

版本日期核心变化(依据 changelog 与指令文件)
v12024-11-09确立"必须思考 +<think>标签 + 四步流程 + 五个自然特征"的基本盘
v3.52024-11-13引入 ADAPTIVE THINKING FRAMEWORK(自适应思考框架)、CORE THINKING SEQUENCE(核心思考序列)、VERIFICATION AND QUALITY CONTROL(验证与质量控制)等完整章节;标签改用<thinking>
v42024-11-18思考改为代码块 + thinking 头;增加 Multiple Hypothesis Generation 中的"非显而易见解释"、Pattern Recognition 中的"非线性/涌现模式"等条目
v4-Lite2024-11-24比 v4 更短的轻量版,"performs similar"
v5 / v5-Lite2024-11-24用 XML 标签重组指令结构(changelog:Restructure the instructions using XML tags);v5 补充了供 Claude 参照的完整示例
v5.12024-11-25从 v5 拆分而来:去掉示例的紧凑版
v5.1-extensive2024-11-25 → 2024-12-01带大量示例的完整版,后续多次小幅更新"使结果更稳健"

从结构上看,v5.1 已把指令完全 XML 化:<basic_guidelines>、<adaptive_thinking_framework>、<core_thinking_sequence>、<initial_engagement>、<problem_analysis>、<multiple_hypotheses_generation>、<natural_discovery_flow>、<testing_and_verification>等标签层层嵌套(见 model_instructions/v5.1-extensive-20241201.md)。但无论结构如何演变,v1 确立的三大支柱始终未变:响应前必须思考、思考必须可见(标签/代码块载体)、思考必须极其全面且自然。

如何在实际对话中启用 v1 思考协议

v1 指令的使用方式与其他版本完全一致(依据 README.md 的 Getting Started 说明):

  1. 访问 Claude Web App;
  2. 在输入框底部的Choose style选择器中,依次进入Create & Edit Styles→Create Custom Style→Describe style manually→Start from scratch→Use custom instructions (advanced);
  3. 将 model_instructions/v1-20241109.md 的完整内容粘贴为自定义指令;
  4. 开始对话,Claude 即会在每次响应前产出<think></think>思考内容;
  5. 若已安装仓库中的 Chrome 扩展(安装与开发细节见 extensions/chrome/README.md),思考块会自动变成可折叠、可复制、带状态提示的 UI 组件。

需要说明的适用前提:v1 是最早期的实验性指令,其追求的是"让思考发生、让思考自然",相比 v5.1 缺少自适应深度调节、验证与质量控制、响应期间反思等进阶条款。日常使用若希望思考更稳定、更少模板化,建议直接选用更新的版本;而阅读 v1 的价值在于理解思考协议的设计原点——一切演进都从这个最小的"必须思考"约定生长出来。

结语:为什么"自然"是思考协议的灵魂

回看 v1 这份十余行的指令,它的核心洞察可以概括为一句话:给模型一个强制思考的约定容易,让它思考得像个"人"很难。四步流程提供了认知闭环的骨架,五个特征则规定了血肉——意识流式的自然连接、允许偏离的探索、情感与逻辑的交织。这种"结构化框架 + 自然化约束"的双轨设计,正是 Thinking-Claude 思考协议延续至今的方法论底色。想继续深挖协议后续演化细节的读者,可以直接阅读 model_instructions/v3.5-20241113.md、model_instructions/v4-20241118.md 与 model_instructions/v5.1-extensive-20241201.md,并对照 model_instructions/changelog.md 理解每次改动的动机。

  • 人工智能
  • AI 应用
  • 提示工程

【免费下载链接】Thinking-Claude

Let your Claude able to think

项目地址:https://gitcode.com/gh_mirrors/th/Thinking-Claude
点击查看免费下载

相关推荐

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询