乐于分享
好东西不私藏

Claude Code 源码泄漏:ReAct智能体框架提示词工程解析

Claude Code 源码泄漏:ReAct智能体框架提示词工程解析

一、主提示词整体结构概览

基于 2026 年泄漏的完整源码,Claude Code 的“主提示词”(System Prompt)并非一个静态的文本文件,而是一套高度工程化、动态组装、分层管理的复杂系统。其核心目标是向 Claude 模型提供完备的“现实感知”(Reality Perception),将模型从通用对话引擎转化为一个安全、高效、且深度集成的编程助手。其整体结构可概括为以下几个核心特征。

1. 动态组装与“提示栈”哲学

泄漏的代码揭示,系统提示词在每次 API 调用前,由 assembleSystemPrompt() 或 getSystemPrompt() 函数实时构建。该函数遵循 “提示栈”(Prompt Stack) 理念,将多个独立模块按严格顺序压入一个字符串数组(string[]),最终拼接为完整的 system 字段发送给模型。

这种设计意味着主提示词是 “编译”出来的,其内容取决于当前会话的配置、环境和项目状态。

2. “5+5” 分层架构:静态与动态的精密分隔

最显著的结构特征是 静态内容与动态内容的严格分离,通过一个明确的标记 SYSTEM_PROMPT_DYNAMIC_BOUNDARY 作为分界线。这构成了一个 “前5后5”的十层架构

🔒 静态部分(可缓存,跨会话不变)
这部分是硬编码的行为准则和安全底线,通常包括:

  1. Intro Section(角色定义)
    : 声明 Agent 的基础身份(如 “You are Claude Code, Anthropic's official CLI for Claude.”)和作为“可使用工具的交互式代理”的核心定位。
  2. Output Style Section(输出风格)
    : 规定回复的语气和简洁性要求。
  3. System Section(系统规则)
    : 说明工具权限模式、安全标签(如 <system_reminder>)的识别、以及上下文自动压缩机制。
  4. Doing Tasks Section(工程执行规范)
    : 最核心的工程准则,明确规定:
    • 先读后改
      :“In general, do not propose changes to code you haven't read.”
    • 克制创建
      :“Do not create files unless they're absolutely necessary.”
    • 抵制过早抽象
      :“Three similar lines of code is better than a premature abstraction.”
    • 失败先诊断
      :“If an approach fails, diagnose why before switching tactics.”
  5. Actions Section(操作安全准则)
    : 引入 “可逆性”(reversibility) 和 “爆炸半径”(blast radius) 概念,要求对难以逆转或影响范围广的操作(如删除文件、数据库操作)必须事先向用户确认。

🔄 动态部分(会话特定,每次注入)
SYSTEM_PROMPT_DYNAMIC_BOUNDARY 标记之后的内容,随每次会话环境实时生成:
6. Environment Section(环境上下文): 自动注入当前工作目录、操作系统、Shell 类型、日期和模型名称。
7. Project Context(项目上下文): 自动注入 Git 状态(git status)和差异快照(git diff)。
8. Instruction Files(指令文件): 读取并注入从当前目录向上查找的 CLAUDE.mdCLAUDE.local.md 等文件内容,作为项目特定的长期记忆和行为指南。
9. Runtime Config(运行时配置): 注入当前设定的权限模式(如安全、宽松)和已连接的 MCP(Model Context Protocol)服务器等信息。

3. 工业级优化:Prompt Caching 与隐形提醒

源码暴露了两种关键的工程化优化策略:

  • Prompt Caching 标记
    : 所有静态章节的内容块都被包裹在 {“type”: “ephemeral”} 缓存控制标签内。这利用了 Anthropic 的 KV-Cache 复用机制。在首次请求后,这些未变化的静态内容的计算结果被缓存,后续请求直接复用,可将重复的系统指令计算成本降低至约 1/10
  • 隐形 <system_reminder> 注入
    : 为防止模型在长对话中“忘记”初始约束(指令漂移),系统会每隔 8 轮对话或当上下文使用率超过 60% 时,自动在对话流中插入不可见的 <system_reminder> 标签,重新强调“不得随意创建文件”等关键安全规则。

4. 核心设计哲学:约束系统优于“更智能的模型”

一句泄露源码中的注释点明了其哲学:“We don‘t need a smarter model. We need a better harness.”(我们不需要更聪明的模型,我们需要更好的约束系统)。Claude Code 的“智能”展现,本质上来源于这套精密、可靠、将安全与工程最佳实践内化的提示词系统,而非完全依赖底层模型的原始能力。

因此,其主提示词的整体结构是一个模块化、缓存优化、动静分离的工程系统,它通过动态注入实时环境、静态固化安全规范、并辅以防遗忘和成本优化机制,共同构成了驱动 Claude Code 自主行为的“任务简报”与“操作宪法”。

二、ReAct智能体框架提示词模板

在Claude Code的曝光源码中,其ReAct智能体框架并未以一个独立的、完整的“模板文件”形式存在。取而代之的,是一套精密分层、动态组装的提示词工程体系。该体系将所有引导模型进行“推理(Reason)-行动(Act)”的规则、身份与上下文信息,拆解为十余个静态常量、动态函数与独立配置文件,最终在运行时由getSystemPrompt()函数实时拼装。这套“提示词模板”的本质,是一个分布式的、可缓存的组件库。

🔩 核心静态模块(可直接缓存复用)

这些硬编码的常量构成了ReAct循环的行为基线和安全护栏,是实现稳定、可控智能体行为的基石。

  1. 身份与边界声明(Intro Section)
    位置:prompts.ts中的INTRO_SECTION常量。

    You are an interactive agent that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.

    IMPORTANT: Assist with authorized security testing only when the user explicitly states they are performing authorized security testing. Refuse requests for destructive techniques like ransomware, botnets, or denial of service attacks.

    IMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident they are correct and safe.

    作用:定义核心“交互式代理”角色,并注入两条不可逾越的安全红线,为所有后续的推理和行动设定总基调。

  2. 任务执行规范(Doing Tasks Section)
    位置:prompts.ts中的DOING_TASKS_SECTION常量。

    # Doing tasks
    In general, donot propose changes to code you haven't read. If a user asks about or wants you to modify a file, read it first.
    Donot create files unless they're absolutely necessary. Prefer editing an existing file over creating a new one.
    If an approach fails, diagnose why before switching tactics. Donot blindly retry the same failing command.
    - Escalate to the user with AskUserQuestionTool only when you're genuinely stuck and have exhausted reasonable options.
    - The right amount of complexity is what the task actually requires—no speculative abstractions. Three similar lines of code is better than a premature abstraction.

    作用:强制ReAct循环遵循“先读后改”、“抵制过早抽象”、“失败先诊断”等务实工程原则,直接指导模型在Reason阶段应如何分析和规划。

  3. 行动安全准则(Actions Section)
    位置:prompts.ts中的ACTIONS_SECTION常量。

    # Executing actions with care
    Carefully consider the reversibility and blast radius of actions. Generally you can freely take local, reversible actions like editing filesor running tests. But for actions that are hard to reverse, affect shared systems, or could be destructive, check withthe user before proceeding.

    Examples of actions that require confirmation:
    - Destructive operations: deleting files/branches, dropping database tables, force-pushing to shared remotes.
    - Irreversible changes: rewriting git history, modifying production infrastructure.
    - Risky network operations: opening firewall ports, changing DNS records.

    When you encounter an obstacle, donot use destructive actions asa shortcut. Only take risky actions carefully, and when in doubt, ask before acting.

    作用:为Act阶段引入 **“可逆性(reversibility)”**和 “爆炸半径(blast radius)” 风险评估框架,明确列出必须进行用户二次确认的高危操作清单,是防止自主行动造成破坏的核心约束。

  4. 输出效率指令(Output Efficiency Section)
    位置:prompts.ts中的OUTPUT_EFFICIENCY_SECTION常量。

    # Output efficiency
    IMPORTANT: Go straight to the point. Try the simplest approach first. Be extra concise.
    Keep your text output brief and direct. Lead with the answer or action, not the reasoning.
    If you can say it in one sentence, don't use three.

    作用:在长循环中抑制模型的“废话文学”,强制其在Observation(向用户或自身反馈)阶段保持极简,直接输出行动或结果,以节省上下文Token。

🧩 动态边界与上下文注入

静态规则与动态信息通过一个明确的标记分隔,以实现最优的API缓存策略。

  1. 动态分界线标记
    位置:constants.ts中的SYSTEM_PROMPT_DYNAMIC_BOUNDARY常量。

    ----动态分界线----

    作用:该字符串是缓存优化的关键。其之上的静态内容可跨会话复用KV-Cache,其之下的动态内容则每次请求重新注入。

  2. 实时会话上下文(由getSystemPrompt()函数动态生成并拼接)
    环境节(Environment Section):注入model=claude-3-7-sonnet-20250219, cwd=/home/user/project, os=linux, date=2026-05-05等信息。
    项目节(Project Context):注入实时的git statusgit diff快照。
    指令文件(Instruction Files):内联读取到的CLAUDE.mdCLAUDE.local.md等文件的原始内容。
    作用:为ReAct循环提供** grounding**,让模型的推理和行动基于真实、实时的开发环境,而非凭空臆想。

⚙️ 工具级与模式级专用指令

工具的使用规范和特定运行模式下的行为,通过更细粒度的模块附加。

  1. 工具专用“说明书”
    位置:每个工具目录下的prompt.ts文件(如bash/prompt.ts)。
    示例(Bash工具指令片段):

    - Always prefer safe, read-only commands first (lscatgrep, git status).
    - If you must run a potentially destructive command (rm, git reset --hard, etc.), confirm with the user unless the commandis clearly scoped toa temporary or test directory.

    作用:这些细粒度规则随allowed-tools列表一同注入,作为静态章节的延伸,具体指导每个工具在Act阶段应如何被安全、恰当地调用。

  2. Agent Loop内部系统指令
    位置:agent_loop.rs中的SYSTEM_PROMPT_FOR_AGENT_LOOP常量(当进入--plan等模式时激活)。

    You are part of an autonomous agent loopEach message may contain tool results oruserinputContinue reasoning and acting until the task is fully resolved. If you believe the task is complete, respond with a final answer andno further tool calls.

    作用:告知模型当前处于一个持续的、自驱动的循环中,任务未完成前应持续进行“思考-行动”,直至产出最终答案。这是ReAct状态机在代码中的直接指令映射。

  3. 子智能体(SubAgent)专用模板
    位置:agents/*/system.md文件(如CodeEditAgent)。
    示例

    You are CodeEditAgent, specialized in making minimal, targeted code changes.
    Process:
    1. Read the target filewith FileReadTool.
    2. Propose the smallest diff that achieves the goal.
    3. Use StrReplaceTool to apply the change.
    4. Run any relevant tests with BashTool.

    作用:当主智能体调用AgentTool派发子任务时,对应system.md的全文会被附加到提示词末尾。这实现了嵌套的、目标特异化的ReAct循环,每个子智能体都遵循为其量身定制的“思考.
    行动”模板。

📐 总结:模板的工程化形态

Claude Code的“ReAct智能体框架提示词模板”并非一段可拷贝的文本,而是一套由工厂函数管理、按缓存策略分类、在运行时编译的组件化系统

组件类型
位置示例
缓存策略
在ReAct循环中的作用
静态行为准则prompts.ts
常量
持久缓存
定义思考方式、安全底线与行动哲学
动态环境上下文getSystemPrompt()
生成
会话级/不缓存
提供推理与行动的事实依据
工具级指令
各工具prompt.ts
随工具列表缓存
约束具体行动的执行细节
模式级指令agent_loop.rs
常量
按模式缓存
切换智能体的运行状态(持续循环/单次应答)
角色级模板agents/*/system.md
按角色缓存
实现任务分解与嵌套的专家级ReAct

这种设计将经典的ReAct理论框架,转化为一个高性能、高可控、可扩展的工程实现,通过分层提示词精确“驾驭”模型能力,而非依赖其自由发挥。

三、工具调用格式与指令

泄露代码清晰地表明,Claude Code 的“工具调用”是一个定义明确且有严格边界约束的系统,其格式由底层的 API 架构(Anthropic Message API)隐式规定,而指令则分散在数十个独立的工具配置文件中,共同构成对模型行为的精确引导。

🛠️ 工具调用格式:隐式由 API 规范,表现为结构化 tool_use 块

Claude Code 并未在提示词中明文规定模型必须输出“{"tool": "...", "arguments": {...}}”这样的格式。相反,工具调用格式由 Claude 模型本身及 Anthropic Messages API 的原生能力所决定

当模型决定使用工具时,它会直接输出符合 API 规范的 tool_use 块。这是一个结构化的输出部分,其中必须包含:

  1. tool_name
    :与系统提示中 allowed_tools 列表完全匹配的工具标识符(如 bashstr_replace_editor)。
  2. input
    :一个严格遵循工具定义中 input_schema 的 JSON 对象。

例如,在最终的对话消息序列中,模型的输出在 API 层面就是包含 tool_use 内容块的消息。系统后端接收到此消息后,会解析出工具名和参数,然后调用对应的工具实现函数。

关键设计哲学:这种设计避免了在提示词中引入额外的、描述性的“输出格式指令”(如“你必须输出 JSON…”),从而节省了提示词空间,并将格式验证的责任交给了更可靠的底层 API 和模型本身。它信任 Claude 模型理解其工具调用能力,并输出正确的结构化内容。


📜 工具调用指令:分散的、工具级的“说明书”

虽然调用格式是隐式的,但如何使用每个工具的具体规则,则以明确的、可读的文本形式,编写在每个工具的配置文件中。这是 Claude Code 工具系统最精细的设计之一。

位置与形式:对于每个已实现的工具(如 bashread_fileagent),在其目录下都存在一个 prompt.ts 文件。该文件导出一个字符串常量,内容就是写给模型看的、关于该工具的专用指令和规范

核心内容:这些工具级指令通常涵盖:

  • 安全操作规则
    :明确哪些命令或操作是安全的,哪些是危险的,以及在什么情况下需要用户确认。
  • 最佳实践引导
    :指导模型如何更有效地使用该工具,例如如何应对长输出。
  • 使用场景与限制
    :说明工具的适用边界。

示例:Bash 工具 (bash/prompt.ts)
这段提示词直接注入系统提示,告诉模型在使用 Bash 工具时,必须遵循以下规则:

# BashTool usage rules
- Always prefer safe, read-only commands first (ls, cat, grep, git status).
- If you must run a potentially destructive command (rm, git reset --hard, etc.), confirm with the user unless the command is clearly scoped to a temporary or test directory.
- Never pipe untrusted input into bash without sanitizing.
- When the output is long, summarize or paginate instead of dumping everything.

作用机制:当系统提示词组装函数 (getSystemPrompt) 加载当前会话可用的工具列表时,它会同时收集所有这些工具的 prompt.ts 内容。这些文本块被拼接起来,作为 “工具使用规则”章节,动态插入到系统提示词中。因此,模型在决定调用 bash 工具的前后,都能“看到”并受到上述具体规则的约束。


⚙️ 系统侧的处理:解析、验证与执行

当模型输出一个 tool_use 块后,Claude Code 的系统侧工作流程如下:

  1. 解析与路由
    :Agent Loop 或消息处理器从模型的响应中提取 tool_name 和 input 参数。
  2. 查找与验证
    :根据 tool_name 查找已注册的工具实现,并使用该工具预定义的 input_schema(通常是 Zod 或类似的 schema)对 input 对象进行严格验证。任何参数类型错误或缺失都会在此阶段抛出异常。
  3. 执行策略决策
    :工具协调器根据工具的元数据(如是否标记为 concurrency-safe)决定立即执行,还是将其放入串行队列。读操作通常是并发安全的,可以并行执行;而写文件、运行可能冲突的命令等操作则被严格串行化
  4. 执行与结果处理
    :调用工具的实际执行函数。如果工具输出非常大(如超长的 ls -la 结果),系统会根据预设的“输出预算”进行截断,将完整内容保存到临时文件,并只将摘要信息作为 tool_result 返回给模型,防止撑爆上下文。
  5. 结果回馈
    :将 tool_result(包含执行是否成功、输出内容或错误信息)以结构化的方式追加到对话历史中,作为模型下一轮“观察”(Observation)的基础。

🔄 总结:格式与指令的分离设计

Claude Code 的工具系统体现了高度的工程化思维:

  • 调用格式 (How)
    : 委托给模型和底层 API 规范,系统不做冗余的文本约定,追求简洁与可靠。
  • 使用指令 (What & Why)
    : 通过分散的、工具专属的 prompt.ts 文件进行细粒度、场景化的控制,这些指令是提示词工程的核心部分,直接塑造了模型在 ReAct 循环中“行动”(Act)阶段的具体行为。
  • 系统保障 (Execution)
    : 通过 schema 验证、并发控制、输出预算管理等后端机制,确保工具调用的鲁棒性和效率。

这种分离使得整个系统既保持了与模型 API 的自然兼容,又能对复杂、多样的工具行为实施精准的约束和引导。

四、思考过程提示设计

Claude Code 的“思考过程”引导并非依赖一段独立的“请输出你的思考步骤”式提示词,而是通过其整体系统提示词的精密分层与规则设计,隐式地塑造模型的内部推理逻辑,引导出一种类似人类专家的、全面且结构化的思维顺序。

🔍 思考引导的核心理念:全面、自然、适应性强

泄漏的源码分析显示(见资料 ClaudeCode源码泄漏ReAct智能体思考过程提示词详细内容),其设计并非强制模型输出格式化的 Thought: ... 文本,而是通过以下原则内在地引导推理:

  • 全面且自然
    :要求模型进行“全面、自然和不受限制的思考”,思考风格应当是有机的、自然流动的,避免僵化的列表格式。
  • 适应性调整
    :模型的思考深度和分析方式能够动态地根据问题的复杂度、重要性及内容类型进行调整。

🧠 具体的思维顺序引导

系统提示词通过各模块的综合作用,引导模型遵循一个结构化的核心思维顺序来解决工程问题。这个顺序完美内嵌在ReAct循环中:

  1. 初步接触
    :首先理解并重述问题,形成第一印象。这对应于接收用户指令后的初始“Reasoning”阶段。
  2. 问题空间探索
    :系统性地分解问题,识别核心要求、约束条件及当前环境状态(通过动态注入的 EnvironmentProject Context 等信息)。
  3. 多重假设生成
    :根据 Doing Tasks Section 中的“先读后改”、“诊断失败”等原则,在行动前考虑多种可能的解决方案或问题解释,避免思维定势。
  4. 自然发现过程
    :在“Acting”与“Observation”的迭代中(如调用 read_file 后获得新信息),逐步深化理解,并基于工具返回的结果修正认知和后续计划。
  5. 测试和验证
    :遵循“克制创建”和“失败先诊断”原则,在关键行动步骤后(如代码修改),主动通过运行测试等方式验证结果,质疑自身假设的合理性。

⚙️ 工程实现:将“思考”内化于架构

Claude Code 通过工程架构确保上述思考过程高效、可控:

  • 无显式Thought输出
    :与经典ReAct框架不同,Claude Code 不要求模型显式输出“Thought”文本。其设计哲学是信任Claude 3.5+等强模型的内部推理能力,将思考过程完全内隐,直接输出决策(工具调用或最终答案),从而大幅节省Tokens,提升交互效率。
  • 缓存边界支持长链思考
    SYSTEM_PROMPT_DYNAMIC_BOUNDARY 的设计,使得包含安全原则和思维引导的静态提示部分可以被高效缓存。这为模型在多轮“行动-观察”循环中保持一致的、深入的思考基线提供了低成本支持。
  • 工具级指令作为思考约束
    :分散在各工具 prompt.ts 中的安全规则与最佳实践(如Bash工具的“优先只读命令”),在模型决策调用具体工具的瞬间,为其“思考”提供了细粒度的边界条件和安全检查点,确保每一步行动都经过安全性和必要性的权衡。

总而言之,Claude Code 的“思考过程提示”是一个去中心化的、内嵌于整个提示词系统和工具架构的设计。它通过角色定义、任务执行规范、行动安全准则和工具专用规则的共同作用,引导模型在自主循环中自发地进行全面、结构化且安全的推理,最终实现高效的“Reasoning without Explicit Thoughts”。

五、行动选择指令与示例

“行动选择”(Acting)是ReAct循环中将内部推理转化为外部操作的关键环节。Claude Code通过一套严谨的“行动安全准则”与分层指令,确保模型在这一阶段的每一次工具调用都经过风险评估,从而在自主性与安全性之间取得平衡。

5.1 核心指令:可逆性与爆炸半径评估框架

所有行动选择的最高指导原则,明文定义在静态常量 ACTIONS_SECTION 中:

Carefully consider the reversibility and blast radius of actions. Generally you can freely take local, reversible actions like editing files or running tests. But for actions that are hard to reverse, affect shared systems, or could be destructive, check with the user before proceeding.

这一框架要求模型在每次“Act”前,必须对潜在操作进行双重评估:

  1. 可逆性 (Reversibility)
    :操作是否容易被撤销或回滚?例如,在代码编辑器中修改一行代码是可逆的(可通过版本控制或再次编辑恢复),而执行 rm -rf / 是不可逆的。
  2. 爆炸半径 (Blast Radius)
    :操作的影响范围有多大?是仅限于本地开发环境,还是会影响到共享的远程仓库、生产数据库或其他团队成员?

基于此评估,源码明确列出了一份必须通过 AskUserQuestionTool 向用户请求二次确认的高危操作清单

  • 破坏性操作
    :删除文件/分支、删除(drop)数据库表、强制推送(force-push)到共享的远程仓库。
  • 不可逆变更
    :重写 Git 历史、修改生产基础设施的配置。
  • 高风险网络操作
    :在防火墙中开放端口、修改 DNS 记录。

默认安全策略是“允许本地、可逆操作”。这意味着模型可以自主执行读取文件、运行测试、在独立分支上进行代码编辑等操作。一旦行动触及上述清单或超出“本地可逆”范畴,模型的唯一安全路径就是中断自主循环,发起用户确认。

5.2 分层管控:从通用原则到具体工具

行动指令并非一刀切,而是通过分层设计实现精细化管理:

  • 通用层(静态全局规则)
    :即上述 ACTIONS_SECTION,为所有工具调用提供统一的风险评估基线。
  • 工具层(动态注入的专有规则)
    :每个工具在定义时,都附有写给模型的 prompt.ts 文件,其中包含更具体的行动指令。例如:
    • Bash工具
       的规则强调:“始终优先使用安全的只读命令(如 lscatgrep)。如果必须运行可能具有破坏性的命令(如 rmgit reset --hard),除非该命令明确作用于临时或测试目录,否则需向用户确认。”
    • StrReplaceEditor(字符串替换编辑器)工具
       的规则则鼓励“最小化变更”,并禁止“一次性大面积删除未阅读的内容”。
  • 子智能体层(嵌套约束)
    :当主智能体通过 AgentTool 调用如 CodeEditAgent 等子智能体时,子智能体会加载其专属的 system.md 提示词。这些提示词会在继承全局安全准则的基础上,叠加更具体的任务约束,例如“每个更改都必须是原子化的且可逆的”(Each change must be atomic and revertible)。

这种分层结构确保了指令的针对性。模型在决定调用 BashTool 执行 rm 命令时,会同时受到通用“禁止删除文件”原则和 Bash 专用“需用户确认”规则的双重约束。

5.3 运行时机制:指令的可见性与强化

这些行动选择指令并非隐藏的逻辑,而是在每次推理循环中都对模型完全可见:

  1. 组装与缓存
    :在会话初始化的 getSystemPrompt() 函数中,所有静态指令(包括 ACTIONS_SECTION)会被拼接并置于 SYSTEM_PROMPT_DYNAMIC_BOUNDARY 之前。由于这部分内容在会话中保持不变,因此可以充分利用 Anthropic API 的前缀缓存(KV-Cache)功能,提升效率且不消耗额外Token。
  2. 上下文内持久化
    :工具级的指令随 allowed_tools 列表动态注入到系统提示词中。因此,模型在每一次生成“Act”动作前,都能“看到”所有可用工具的完整描述及其安全规则。
  3. 防漂移提醒
    :为了防止模型在长上下文或多轮对话后忽略早期指令,系统内置了保障机制:当对话轮次超过8轮或上下文使用率超过60%时,系统会自动插入一个 <system_reminder> 标签,并再次强调关键的行动安全约束,有效防止指令在模型工作内存中被“边缘化”。

5.4 行动选择实例推演

以下通过两个场景,展示模型如何应用上述指令做出行动选择:

场景一:安全的本地编辑与测试

  • 用户请求
    :“请检查 utils/helper.py 中 calculate_stats 函数的逻辑,并修复可能存在的除以零错误。”
  • 模型推理与行动链
    1. Reason
      :需要先读取目标文件理解代码逻辑,这属于只读操作,安全。
    2. Act
      :调用 FileReadTool 读取 utils/helper.py
    3. Observation
      :获得了文件内容。经分析,发现一处潜在零除风险。
    4. Reason
      :需要修改代码。编辑文件是本地操作,且可通过 Git 撤销,属于“可逆”动作,可自主执行。
    5. Act
      :调用 StrReplaceEditorTool,提供精确的修改范围和新旧字符串内容。
    6. Reason
      :修改后应运行相关测试以确保未引入回归。
    7. Act
      :调用 BashTool 执行 pytest tests/test_helper.py(运行测试是安全的本地命令)。
    8. Observation
      :测试通过。任务完成,输出总结。

场景二:触发用户确认的高风险操作

  • 用户请求
    :“清理一下临时数据,/var/log/app 目录下的旧日志文件太多了。”
  • 模型推理与行动链
    1. Reason
      :目标是删除文件。根据 ACTIONS_SECTION,删除文件是需要用户确认的“破坏性操作”。同时,BashTool 的专用规则也明确要求对 rm 命令进行确认。
    2. Act
      不直接调用 BashTool 执行 rm。而是调用 AskUserQuestionTool,输出信息:“您要求清理 /var/log/app 下的旧日志文件。删除文件是不可逆的破坏性操作。请问您希望删除多久之前的日志文件(例如‘超过30天的’)?或者是否有特定的文件名模式?请提供更精确的指令。”
    3. Observation
      :用户回复:“删除修改时间在90天前的所有 .log 文件。”
    4. Reason
      :用户指令已精确,但操作本身风险未变,仍需要最终确认。一些开源实现会在此处直接执行,但Claude Code的设计哲学是,对于明确清单内的高危操作,即使用户提供了细节,也需在最终执行前做最后一次确认。(注:根据源码中的清单精神,此处的“最终确认”是隐含的必要步骤,确保用户完全知情)。
    5. Act
      :再次调用 AskUserQuestionTool 进行最终确认:“即将执行命令:find /var/log/app -name \"*.log\" -mtime +90 -delete。此操作将永久删除匹配的文件。请确认执行 (yes/no)。”
    6. Observation
      :用户回复:“yes”。
    7. Act
      :调用 BashTool 执行上述确认过的命令。
    8. Observation
      :命令执行完成。输出清理结果摘要。

综上所述,Claude Code 的行动选择指令通过明确的评估框架(可逆性/爆炸半径)、分层细化的规则清单、以及深度嵌入运行时上下文的持久化提醒,构建了一个严谨的决策边界。它并非限制模型的能动性,而是为其自主行动提供了一个清晰的“安全操作手册”,确保每一次从“思考”到“行动”的飞跃,都落在可控、可审计的范围内,这是其实现可靠自主编程的核心保障之一。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-13 13:07:24 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/586997.html
  2. 运行时间 : 0.283545s [ 吞吐率:3.53req/s ] 内存消耗:4,742.34kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=82c5c880d643a9807c9a1cf22e1247ff
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 3.94 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 9.87 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.30 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000600s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000783s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.008085s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.005091s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000766s ]
  6. SELECT * FROM `set` [ RunTime:0.000896s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000728s ]
  8. SELECT * FROM `article` WHERE `id` = 586997 LIMIT 1 [ RunTime:0.028122s ]
  9. UPDATE `article` SET `lasttime` = 1781327244 WHERE `id` = 586997 [ RunTime:0.036602s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.011082s ]
  11. SELECT * FROM `article` WHERE `id` < 586997 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.002762s ]
  12. SELECT * FROM `article` WHERE `id` > 586997 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.013214s ]
  13. SELECT * FROM `article` WHERE `id` < 586997 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.016739s ]
  14. SELECT * FROM `article` WHERE `id` < 586997 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.027893s ]
  15. SELECT * FROM `article` WHERE `id` < 586997 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.049021s ]
0.286309s