乐于分享
好东西不私藏

Agent与传统软件的本质区别

Agent与传统软件的本质区别

探索Agent与传统软件的本质差异:底层根技术、计算架构演进与工程范式重构

引言:技术栈的重构与“根技术”的辩证关系

在探讨人工智能(AI)、智能体(Agent)与传统软件的本质关系时,一种具有深刻洞察力的观点指出:传统软件的根技术构成了AI能力的底层土壤。AI模型,尤其是大型语言模型(LLM),在极大程度上依赖于传统软件的确定性基础设施(如文件系统、数据库、编译器、API调用)来将其纯粹的“智能推理”转化为现实世界中的“物理或数字效能”。在这种视角下,Agent以及围绕其展开的“外围工程(Harness Engineering)”似乎仅仅是将LLM作为中央处理器(大脑),利用传统软件的工具链进行串联的一种高级应用形式。然而,深入的架构分析、工业界前沿部署实践以及计算机科学的基础理论表明,Agent与传统软件之间的差异,远远超越了“旧工具+新大脑”的简单拼图组合。这实际上是一场从底层计算架构到高级工程范式的全面系统性转移。传统软件的控制流是高度确定和穷举的,而Agent架构引入了概率性推理作为核心调度引擎,从而彻底颠覆了人机交互与指令执行的基础逻辑。本研究报告将详尽解构传统软件与Agent的核心差异,深入剖析“感知 → 推理 → 行动”闭环背后的控制论意义,探讨从“人类编写所有控制分支”到“模型自主决策”的软件3.0(Software 3.0)范式转移。在此基础上,本报告将通过解构大模型操作系统(LLM OS)和外围工程(Harness Engineering)的工业级案例,论证工具调用(Tool-use)、记忆(Memory)与规划(Planning)等能力绝非Agent架构中的“锦上添花”,而是等同于现代操作系统内核的基础设施,是构成Agent本质差异的决定性架构图元。

核心范式转移:从“软件1.0”到“软件3.0”的计算架构重塑

要理解Agent与传统软件的区别,必须首先解构其底层的计算范式演进。这种演进被包括Andrej Karpathy在内的领域专家概括为从“软件1.0”到“软件3.0”的历史性跨越 1

大型语言模型操作系统(LLM OS)的架构隐喻与现实

在传统计算架构中,中央处理器(CPU)执行确定性处理任务,随机存取存储器(RAM)保存短期工作状态,而外部设备和文件系统处理输入输出。在软件3.0的理论框架中,Karpathy提出了一个极具颠覆性的架构模型:LLM OS(大型语言模型操作系统)1。这种新型计算平台的中心不再是基于硅芯片的确定性指令处理器,而是一个基于神经网络权重的概率性推理引擎 4在这个全新架构中,传统计算架构的各个核心组件被赋予了全新的对应物,揭示了传统软件作为“根技术”是如何被AI所继承并重构的:

传统操作系统(OS)概念
LLM OS/Agent架构等效概念
核心功能与本质差异的深度解析
CPU(中央处理器)模型权重(Model Weights)
在传统计算机中,CPU是固定的物理硅片;在LLM OS中,神经网络权重是固定的处理基质,负责执行知识检索、语法解析和逻辑推理等复杂计算 1。虽然权重在推理时是固定的,但可以通过微调(Fine-tuning)或强化学习被“升级”为高度优化的特定领域处理器 1
RAM(内存)上下文窗口(Context Window)
传统的RAM是易失性的短期记忆;上下文窗口同样承载当前任务的短期工作状态(包含提示词、文档、工具输出)。窗口大小(如128K至1M Tokens)直接决定了Agent的瞬时并发处理能力与状态保持上限 1
系统调用(Syscalls)工具调用与MCP(Tool Calls / MCP Tools)
传统系统调用提供了用户空间与内核交互的结构化接口;在Agent中,工具调用(特别是模型上下文协议MCP)赋予了模型读写现实环境和调用传统软件API的安全权限 6
内核与进程调度器Harness(外围执行层)与Orchestrator
传统内核管理资源并决定下一个执行的进程;Harness执行层驱动模型的主循环(计划-行动-观察),决定资源加载,并强制执行确定性策略和错误恢复逻辑 6
程序(Program)提示词与指令(Prompting / Instructions)
软件1.0时代的程序是由人类编写的确定性代码逻辑(穷举规则);软件3.0时代的程序是自然语言编写的意图和规范,由上下文窗口承载并由模型“解释”执行 1

在LLM OS中,传统的外围设备(如文件系统、数据库、浏览器)并没有消失,而是通过API和模型上下文协议(MCP)与核心LLM引擎相连 1。这种架构上的映射清晰地回答了用户的第一个核心疑问:传统软件的根技术确实构成了AI的根基(文件系统依然是文件系统,网络请求依然是网络请求),但是系统的“控制流”已经发生了质变。系统运行在一个本质上不可预测(Non-deterministic)的基础之上,带来了灵活性与适应性的指数级增长,能够更好地适应新任务和新环境 4

编程抽象的升维:从规则硬编码到意图声明

从“人类编写所有分支”到“模型自己决策”,并非只是编程语言层面的“语法糖”,而是软件开发史上最深刻的范式转移,这也是Agent区别于传统软件的根本标志之一 2在软件1.0时代(传统软件工程),开发者的任务是编写详尽的显式规则。例如,要实现一个复杂的自动化环境部署脚本,人类工程师需要编写数百行的条件分支(if/else)、异常捕获和状态机转换代码,以应对每一种可能的边缘情况(Edge Case)。这些硬编码在遇到未预见的系统变体时极易发生级联崩溃 1。软件2.0时代引入了机器学习模型来处理图像和声音等感知数据,但其核心系统控制逻辑依然是人类编写的。进入软件3.0(Agent原生软件)时代,自然语言与结构化配置文件成为了原生的编程抽象。开发者只需在一个文本文档(如Markdown文件)中描述环境状态、提供传感器(获取信息的工具)和执行器(采取行动的工具),Agent便能够通过“感知 → 推理 → 行动”的循环读取环境、做出智能决策、在沙盒中调试错误,并自主适应底层操作系统的差异以完成任务 2这种将系统控制权从人类工程师的硬编码逻辑转移到大模型推理引擎的过程,代表了对极高复杂性场景的降维打击。开发者不再需要“穷尽”所有逻辑分支,模型权重中的潜在语义空间自动补全了从“高层意图”到“微观执行路径”之间的决策空白 1

确定性与概率性的深度解耦:控制论视角的系统演进

要精确回答“Agent和传统软件的核心区别在哪里”,就必须深入探讨计算机科学和系统控制论中最古老的二元对立:确定性(Determinism)与概率性(Probabilism)。

传统软件的确定性统治与安全边界

确定性系统或传统软件的核心特征是:给定完全相同的输入,系统将始终如一地产生一致的输出 8。这种特性建立在预定义的、严密的硬编码规则之上。在传统软件工程中,确定性执行以接近于零的边际成本处理高吞吐量和稳定的执行路径。其可预测性、准确性、透明度和可信度是企业级应用(如金融交易、身份验证、基础设施编排)不可动摇的基石 8传统的信息安全工具(如软件物料清单SBOMs、云安全态势管理CSPM、漏洞扫描器)均是为这种确定性逻辑而构建的。这些工具无法理解Agent框架中动态调用的工具声明、模型标识符或它们之间在运行时的突发交互关系 10

AI Agent的非确定性与概率性推理的成本与收益

相反,现代AI、LLM及其驱动的Agent本质上是概率性的,包含固有的随机性和系统演化上的不确定性 8。同一个编码Agent面对同一个代码库和相同的任务描述,在两次独立的运行会话中,可能会采取截然不同的调试路径、API工具调用顺序,甚至生成不同结构的有效代码。对于需要应对模糊性、模式识别和复杂边缘情况的任务,概率性模型能够捕捉人类和静态规则无法可靠提取的深层语义模式,并创造巨大的真实商业价值 9然而,这种非确定性在纯粹的安全或严格合规上下文中通常被视为一种负债(Liability)。如果一个安全审计Agent的判定结果在不同运行间存在分歧,它将面临合规审查的严峻挑战 11。更为关键的是,传统规则引擎执行一次逻辑的边际成本极低,而Agent的每一次推理循环都伴随着巨大的Token推理成本和上下文加载开销 9

突现状态机(ESM)架构的崛起与融合

在现代Agent系统的设计中,如何调和这两种截然相反的特性?架构师们开始借鉴控制工程(Control Engineering)和现代操作系统理论,提出了一种将概率性解释器与确定性控制相分离的深层架构设计 13在现代软件开发中,经常出现的一个设计缺陷是将“解释”与“控制”坍缩在同一个概率性组件内,导致系统行为难以推理、调试或审计 13。为了解决这一问题,前沿架构构建了如下的严密反馈循环:

ESM 架构反馈循环:

信号(Signals) ──→ [LLM 解释] ──→ 状态估计 ──→ [确定性策略] ──→ 行动日志/代码/输出     概率性推理     结构化状态     Harness 引擎    传统 API↑                                                              │└──────────────────── 反馈 ──────────────────────────────────┘

在这种被定义为“突现状态机(Emergent State Machine, ESM)”的结构中 13:

  1. 信号
    (日志、代码、系统输出)由概率模型(LLM)进行高度语义化的解释(即Agent的感知过程)。
  2. 解释结果
    被投影到一个高度结构化的、确定性的状态表示中。
  3. 系统的下一跳转换(Transition)和行动决策,由确定性的策略逻辑(如Harness外围引擎或传统控制引擎)来最终裁决并调用传统软件接口执行 13

在这一框架下,LLM主要扮演的是“高级观察者(Observer)”和“决策顾问”的角色,而系统的实际控制流(何时停止运行、何时触发告警、如何进行网络路由)仍保留着传统软件的确定性和可审查性 13。这意味着,Agent系统的未来并不是要完全抛弃传统软件的确定性,而是将概率性的“超级大脑”封装在深具确定性的“传统软件外骨骼(Harness)”之中,实现两者的深度共生。

Agent解剖学:Model与Harness的共生生态

当讨论“Tool-use、Memory、Planning是否只是锦上添花”时,其背后隐含的假设往往是:大模型(LLM)本身就已经等同于Agent。然而,学术界和工业界的广泛共识已经明确并彻底地否定了这一假设。

核心解剖学公式:Agent = Model + Harness

在传统的强化学习(RL)理论中,Agent被定义为一个接收环境观察并输出行动策略的数学函数。而在大语言模型时代,这个定义被扩展为一个极其重要的工程方程:

┌─────────────────────────────────────────┐│           Agent(智能体)                ││  =  Model(模型) + Harness(外围控制层)││     ┌──────────┐   ┌──────────────────┐ ││     │ 概率推理  │ + │ 确定性执行引擎    │ ││     │ 文本补全  │   │ 工具/MCP/沙盒    │ ││     │ 语义理解  │   │ 记忆/规划/验证   │ ││     └──────────┘   └──────────────────┘ │└─────────────────────────────────────────┘

7一个未经包装的原始大模型(Foundation Model)仅仅是一个强大的文本序列补全引擎。它自身缺乏维持长期状态的机制、无法直接执行代码、无法获取实时知识。只有当Harness(包含所有非模型本身的控制代码、配置、网络代理和执行逻辑)赋予模型状态管理、工具执行能力、强制性反馈循环和执行约束时,这个纯粹的“静态智能体”才真正转变为一个具备在物理或数字世界中行动能力的“动态工作引擎” 7如果说模型内部的权重矩阵包含了系统的智能潜力,那么Harness则使得这种智能在现实中变得有用。业界的一句核心箴言是:“如果你不是模型,那你就是Harness” 15。两个采用了完全相同底层模型的企业级产品,如果配备了不同的Harness,其表现出的Agent特性将产生天壤之别 7

概念边界辨析:Scaffold、Harness与Policy

为了精确定义Agent的运作机制及其与传统软件的交互,前沿工程界对Agent内部层次进行了严格的概念划分 7:

  1. Scaffold(脚手架)
    :这是定义Agent行为的静态配置层。它包含深思熟虑的系统提示词(System Prompt)、遵循OpenAPI等传统软件规范的工具描述(JSON Schema)、对模型输出解析的指令,以及上下文管理策略(决定模型应跨步骤保留哪些记忆)。Scaffold塑造了模型在部署期间如何“看待”数字世界 7
  2. Harness(控制束/执行层)
    :这是Agent内部的动态执行引擎(Active Loop),完全由传统确定性代码(如Python, TypeScript)编写。它负责驱动模型,处理模型的工具调用(如发起真实的HTTP请求或在沙盒中执行Bash代码),验证输出格式,并依据预设逻辑决定任务何时终止。Harness是传统软件与AI模型交汇的最前线 7
  3. Policy(策略)
    :这是Agent表现出的最终行为学特征。给定任何特定情境,策略定义了采取每种可能行动的数学概率。在LLM系统中,策略不仅硬编码在模型的权重中,更受到Scaffold的引导和Harness的严重制约 7。部署一个包裹在特定Harness中的模型检查点(Checkpoint),就实例化了一个遵循特定Policy的Agent 7

Tool-use、Memory与Planning:系统的“内核”而非“锦上添花”

基于上述严密的解剖学结构,我们必须彻底重新审视工具调用、记忆和规划的定位。它们绝非架构之上的锦上添花(Nice-to-have),而是构成了Agent Harness的基础负载图元(Load-bearing Primitives),其地位和必要性完全等同于传统操作系统的内核级组件。

  • 文件系统与Git集成(持久化状态与Memory)
    :由于LLM的上下文窗口(即LLM OS的RAM)存在极其严格的Token容量上限(当前主流范围在128K至1M Tokens之间 1),Harness必须提供文件系统抽象。这使得Agent能够将不适合放在活动工作内存中的中间推理状态、海量代码和长篇文档进行持久化存储(Offloading),并在跨越长周期的会话中保持状态连贯 7。如果没有外部Memory架构的支撑,Agent将永远患有“数字失忆症”,无法胜任任何长周期、多步骤的软件开发或复杂系统管理任务 16
  • Bash与沙盒执行(Tool-use的泛化抽象)
    :传统软件范式要求人类工程师预先为每一个可能的功能诉求开发专用的API接口。而在Agent架构中,赋予模型一个通用的Bash环境和隔离的代码执行沙盒,使得模型能够在运行时自动编写、编译并执行自定义工具(脚本)以应对突发需求 7。这是从“静态预定义功能集合”向“动态工具即时生成”的本质飞跃。工具调用能力是Agent打破封闭语言空间的唯一“执行器(Actuator)”。
  • 规划(Planning)与自我验证闭环(Self-verification)
    :长周期的自治执行(例如让Agent从零开始构建一个完整的全栈应用程序)需要抵御严重的“上下文腐烂(Context Rot)”效应 7。随着执行步骤的增加,无用的堆栈跟踪和历史尝试会淹没有效信息。Harness通过实施Ralph Loop等高级规划设计模式,在模型试图提前宣布任务失败或异常退出时进行底层系统拦截,强制清理上下文窗口,并重新注入包含最新进度的外部规划文件(如执行计划树),迫使Agent模型继续朝着总体目标进行纠偏 7。这种规划与反馈循环机制不仅不是锦上添花,反而是Agent能够持续运作而不发生逻辑坍塌的生命维持系统。

Harness Engineering(外围工程):软件开发范式的深度重构

随着大型基座模型(Foundation Models)能力的逐渐同质化和商品化,构建顶尖AI系统的工程壁垒正在迅速向“外围”转移。Harness Engineering(外围工程)已正式确立为AI应用开发和下一代DevOps领域的全新核心实践分支 7。著名软件工程专家Martin Fowler指出,Harness Engineering的核心在于利用传统软件工程的最佳实践,战略性地设计围绕AI模型的多层控制系统,以提高模型概率性输出的确定信度,减少人工审查的辛劳,并从根本上提升生成软件的质量 17

解决Agent常见故障模式(AI Missteps)

在缺乏强大Harness的“裸奔”模型环境中,AI编码助手在全自动模式下往往表现出多种极具破坏性的故障模式 17。Harness工程的存在正是为了在系统架构层面消解这些缺陷:

故障模式类别
典型AI失误(AI Missteps)
Harness Engineering的架构级干预与修复策略
即时阻力 (Time to Commit)
对问题的误诊(如将Docker构建内存不足误判为架构不兼容);产生不工作的代码导致“兔子洞”效应 17
部署沙盒与自验证循环。赋予Agent在隔离环境中直接运行测试和编译的工具权限,并在错误发生时利用定制Linter强制注入带有修复指令的返回信息,打破误诊循环 7
团队协同摩擦 (Team Flow)
倾向于执行全量暴力重构而非增量修复;掩盖根本原因而非解决问题;生成过度复杂且破坏现有工作流的构建配置 17
实施渐进式披露(Progressive Disclosure)与严格规划。通过Harness切分任务,限制单次模型能够修改的上下文范围;部署“审查者子Agent(Reviewer Subagent)”以否决违反团队最小化改动原则的拉取请求 7
长期可维护性债务 (Long-Term)
生成冗长、重复且脆弱的测试用例;缺乏代码模块化意识;忽略现有依赖注入链条而重复造轮子 17
强化前馈控制(Guides)与计算型反馈。在AGENTS.md中注入长期的架构适应度函数(Fitness Functions);部署静态代码分析传感器(Sensors)检测代码重复率和圈复杂度,一旦违规立刻阻断合并 17

控制论机制:前馈(Guides)与反馈(Sensors)的协同

为了有效地驯服和规范具有巨大潜力的编码Agent,成熟的Harness Engineering建立了两大维度的系统控制机制 17:

  1. Guides(前馈控制/前向引导)
    :其核心思想是在模型采取任何具有破坏性或低效的行动之前,预判其行为模式并进行结构化引导。通过配置极其明确和细化的系统提示词集合(如项目根目录下的CLAUDE.md或AGENTS.md)以及具有强类型的工具接口(Schema),前馈控制极大地提高了概率模型在第一次尝试时就产出高质量正确结果的基线概率 17
  2. Sensors(反馈控制/后向感知)
    :在模型已经输出结果并执行动作后对其进行观察,并协助其启动自我纠正循环。现代Harness工程中的传感器被刻意设计为产生“专门针对LLM消费优化”的信号 17。例如,当Agent生成的代码违反了项目的日志记录规范时,自定义的Linter(一种传统的确定性软件工具)不会仅仅像对待人类开发者那样简单地抛出一个红色的“Build Failed”标志,而是将具体的错误AST树节点、堆栈跟踪和明确的重构说明直接注入到模型的上下文中,这在工程上被称为一种“有益的提示词注入(Positive Prompt Injection)” 17

这两种控制机制在实际运行中又可被划分为两种截然不同的执行维度:

  • 计算型控制(Computational Controls)
    :依赖传统的、确定性的CPU级指令代码(如传统的C++编译器、TypeScript类型检查器、单元测试框架)。其特点是执行速度处于毫秒至秒级,反馈极其可靠且运行成本极低,构成了Agent护栏的第一道防线 17
  • 推断型控制(Inferential Controls)
    :利用其他AI模型(如“LLM作为评委/LLM-as-a-judge”)进行复杂的语义分析和架构审查。通常运行在昂贵的GPU或NPU上,速度较慢、成本高昂且具有固有的非确定性,但它们能够提供传统计算规则无法企及的深度语义反馈,弥补了僵化规则的盲区 17

“人类掌舵,Agent执行”的新型协作范式与棘轮效应

在OpenAI内部进行的一项极具前瞻性、长达五个月的Codex工程实验中,人类工程师团队制定了一条被严格执行的规则:完全不手动编写任何一行产品代码,一个包含上百万行代码的内部复杂平台系统必须由Agent独立建设完成 7。这种极端的工程实践彻底重新定义了现代开发者的职业角色。在传统软件工程中,工程师的核心交付物是“功能代码”。而在以Agent为优先(Agent-first)的范式下,工程师的工作性质转变为“定义数字环境、编写详细意图,并构建坚不可摧的反馈循环” 7。当Agent任务失败时,人类的反应不再是跳过系统去直接修复Bug,而是诊断当前的Harness框架中缺失了什么约束能力,进而将相应的修复逻辑和规则永久地注入到工具定义中。这就是“人类掌舵,Agent执行(Humans steer. Agents execute)”理念的深刻体现 7这一理念催生了Harness Engineering中的一个基石性习惯,即棘轮效应(The Ratchet)。在传统开发团队中,开发者犯错后通常依靠代码审查指出,同样的错误可能在几个月后重演。而在Agent工程中,系统的每一个失误都被视为一次极其宝贵的永久性架构强化信号。例如,如果Agent在一次合并请求中提交了一段被注释掉的测试用例(这是一种经典的AI惰性表现),工程师的操作如下:

  1. 收紧前馈规则
    :更新全局指导文件AGENTS.md,加入不可妥协的显式规则:“永远不要注释测试代码;你必须删除它们或修复它们” 7
  2. 硬化计算型反馈
    :配置基于传统软件正则表达式的预提交钩子(Pre-commit hooks),扫描代码差异中的.skip(或xit(字样。一旦发现违规模式,系统立即阻断Agent的提交流程,并将包含错误上下文的信号强行反馈给Agent,触发其内部的自我修复认知循环 7。 这种机制确保了Agent系统永远不会在同一个坑里跌倒两次。其能力边界和代码规范不仅不会因为系统复杂度的提升而熵增,反而会随着每一次试错经验的积累而不断硬化和演进。

工业级部署的极限实践与底层硬件约束

实验室环境中运行的Demo级Agent往往拥有天马行空的自由度。然而,当Agent真正步入承载着真实商业利益、严苛合规要求和物理硬件限制的工业界生产环境时,其架构形态表现出对传统确定性基础设施的高度依赖与妥协。以硬件资源限制、Stripe的全自动代码合成流水线,以及Nirmata的云基础设施治理为例,我们可以深刻洞察Agent在现实世界中的演进形态。

大规模计算资源与本地部署的硬件挑战

LLM OS的普及并非毫无阻力。其中最为现实的瓶颈是极高的硬件与资源要求 19。一个普通的平均桌面系统难以承担运行顶尖推理引擎(如Qwen 3.5的122B或397B参数量MoE模型,这需要几十到上百GB的高速VRAM)的负担 1。即使是运行缩小版的模型(如7B参数模型),在没有高端NVIDIA GPU加速的消费级硬件上也会出现严重的延迟 19在本地部署场景(如对数据隐私要求极高的企业内网环境),开发者必须在模型能力与VRAM预算之间做出精细的权衡(如选择Gemma 4的E4B模型适配4-6GB VRAM,或Qwen 3.5的9B模型适配6-8GB VRAM)1。这再次证明,Agent这种高度抽象的概率性软件系统,其能力天花板最终依然受制于最底层的确定性硅片物理定律。硬件约束迫使工业界不断优化Harness层的调度算法,如在执行成本极高的推理之前,尽可能多地依赖传统的、计算成本趋近于零的本地执行过滤逻辑 9

Stripe Minions:极度隔离沙盒中的大规模无人值守自治

支付巨头Stripe内部开发了名为“Minions”的纯无人值守编码Agent系统。这一系统现已达到极其惊人的生产力规模,每周完全自主产出并经由CI/CD流水线合并约1300个拉取请求(Pull Requests)21面对包含数亿行基于Sorbet类型的Ruby代码、高度定制化的海量内部中间件工具链,以及处理超万亿美元支付体量的极度严苛的金融监管环境,Stripe并没有选择盲目信赖任何现成商业LLM的“原生认知能力”,而是为其量身定制了极具结构化和强确定性控制的Harness环境 17

  1. 绝对同构的云端基础设施
    :Stripe坚持了一个核心架构原则:“如果某套开发者工具链对人类工程师足够好用,那么它对LLM也必须同样好用” 21。Minions并非运行在简陋的虚拟空间中,而是运行在与人类高级工程师完全相同的云端隔离开发环境(Devboxes)中。这种深度的预热环境集成使得Minions能够无缝调用企业内部最深层的构建体系,同时并发操作上百个任务而无需担心环境冲突或污染生产数据 17
  2. 基于架构强制隔离的安全权限模型
    :在金融级系统中,系统安全绝对不能仅仅依靠对语言模型的“系统提示词道德约束”(如告诉模型“请不要篡改生产数据库”)。Stripe的解决方案是通过网络架构层面的硬性物理沙盒隔离机制。Minion在沙盒内的行为被底层操作系统的控制组(cgroups)和密码学证书机制严格钳制。通过MCP接入点,Stripe在协议层强制执行权限:一个Minion或许拥有读取和分析客户脱敏测试数据的权限,但它在网络堆栈的最底层被坚决阻断了对任何生产集群的写入路径 25。这种“基于架构强制(Architecture-enforced)而非基于信任(Trust-based)”的新型安全模型,完美体现了传统信息安全的铜墙铁壁对AI引擎的强势包容与冷酷制约 25
  3. 基于确定性编译测试的反馈闭环质量控制
    :每周合并1300个由机器生成的PR,仅在代码质量通过极高审查标准时才有意义。当Minion完成代码编写后,它并不能直接将其推向人类审查。相反,Harness会接管控制权,在沙盒内本地运行耗时不到五秒的快速启发式静态分析和Lint规则。如果代码在后续复杂的CI/CD流水线(涵盖超三百万个并发测试用例)中发生故障,高度结构化的错误日志和堆栈异常将自动反向路由给该Agent。在强制中止任务并请求人类介入之前,Agent系统被允许进行最高两次的诊断与重写迭代。这种基于真实企业级编译器、持续集成框架的坚固反馈闭环,才是支撑Stripe大规模AI自主编码神话的核心引擎 17

Nirmata Cloud Agents:确定性工作流与AI分析推理的克制叠加

在Kubernetes(K8s)管理和云原生基础设施治理这一容错率极低的领域,Nirmata公司针对其Cloud Agents提出了一种对AI自由度进行更为极端限制的架构范式 14在关键基础设施运维(Ops)中,系统表现出的创造力往往等同于巨大的灾难和责任风险(Creativity is a liability in production)14。因此,Nirmata的Agent架构明确且清晰地切断了模型的操作权限,并严格遵循高度确定性的工作流图。在该体系内,LLM绝对不被允许作为“系统操作员(Operator)”去执行类似kubectl exec、发起配置变更或是任何可能导致集群状态突变的写入操作。其角色被Harness严格降维并限制为“高级分析师(Analyst)”:底层的传统确定性脚本、监控探针和策略执行引擎负责在集群中无损地收集海量遥测数据;随后,这些庞杂的数据集被输送给LLM进行概率性推理、异常模式识别、威胁分析和根因综合;最终,LLM生成一份详尽的结构化诊断报告和修复建议,再由具有明确安全资质的人类管理员或是具有高度确定性的策略引擎进行最终授权执行 14这种底层高度受限、顶层充分利用AI语义推理能力的叠加模式,提供了一种坚如磐石的保障:即在完全相同的基础设施状态下运行两次相同的Agent工作流,用户获得依然是同等深度的分析见解框架,而绝不是根据大模型偶发的“幻觉(Hallucination)”或“情绪”随时发生变异并可能摧毁整个微服务架构的危险操作指令 14。这一工业级应用深度印证了前文所述的突现状态机(ESM)架构,概率模型仅仅作为环境状态的观测器,而最终执行流坚定地锚定在确定性软件的底座之上。

MCP(模型上下文协议):跨越两个计算时代的神经突触与总线

在连接纯概率性的LLM“超级大脑”与由确定性构筑的传统软件深海工具链的过程中,MCP(Model Context Protocol)技术的崛起发挥了类似于现代操作系统中“系统调用接口(Syscalls)”甚至硬件总线的关键作用 6MCP作为一种开放、标准化且高度结构化的通信协议接口,允许运行在抽象“用户空间”的LLM通过严格受控的Harness连接器,安全地向底层的计算资源请求工具清单、执行访问控制列表(ACL)验证、拉取知识图谱切片,以及直接操作企业级外部SaaS应用服务(如自动在Slack中发送通知、在Jira中更新史诗级任务状态、或在GitHub中合并代码分支)6。在Stripe的大规模实践中,他们甚至为了管理庞大的上下文依赖,专门构建了一个被称为Toolshed的内部中心化MCP服务器。该服务器系统化地注册和管理了超过400个复杂的MCP工具,使得在模型主循环运行前,就能通过启发式算法预先获取并精准注入海量的相关业务上下文 17MCP架构的出现和工业级成熟,不再仅仅是一种技术实现细节,而是彻底在工程上固化了Agent系统内部不可逆转的劳动分工格局:“大模型大脑专注语义推理与动态决策,标准化协议总线负责安全联通与上下文输送,而历经岁月考验的传统软件系统负责产生实际的物理和数字动作”。

结论:重塑传统软件与Agent的核心边界与分歧

基于上述对底层计算架构演进、软件工程范式转移以及工业界级前沿实施深度的详尽剖析,我们现对系统架构师关于“Agent和传统软件核心区别在哪里”的深层疑问,给出全面、严谨且深具洞察力的结论综合。传统软件的核心技术毫无疑问是AI与Agent技术得以落地生根、发挥现实生产力的基础土壤。脱离了操作系统内核、稳定的文件系统抽象、确定性的编译器以及历经几十年沉淀的各类网络与系统API,无论多么庞大、参数量多么惊人的AI模型,都将沦为只能在封闭控制台中输出字节字符串的“孤岛”。但与此同时,Agent计算架构与传统软件工程之间存在着不可磨灭且影响深远的代际差异。其本质区别可以从以下三个核心维度进行系统性归纳:第一,是“感知 → 推理 → 行动”的闭环吗?答案是:不仅仅是闭环那么简单。传统的高级控制系统工程(例如工业界广泛采用的PID控制器,或是各类复杂的IT自动化工作流)同样拥有成熟的“感知、计算、执行”自动化闭环。Agent体系下的反馈闭环,其本质性区别在于在其核心推理环节,历史性地引入了基于超大规模向量空间的概率性运算和广义语义理解能力。传统软件依靠生硬的布尔逻辑、硬编码的条件判断(If A then B)来链接其环境感知与预设行动;而Agent系统则利用神经网络模型权重在极其庞大、模糊且未知的隐含特征空间中寻找最优解策略。在这个宏大的闭环体系中,传统软件构成了坚不可摧的安全边界和提供确定性反馈的执行外骨骼(Harness),而AI大脑提供了能够处理高度模糊性、未知复杂意图和未见业务场景的“软态智能控制引擎”。第二,是“从人类写所有分支”到“模型自己决策”的范式转移吗?答案是:这正是计算历史进程中最核心的底层范式差异。软件1.0和2.0时代的工程基础,建立在极高成本的人类智力必须通过确定性代码去尽力穷尽所有潜在逻辑分支的基础上。而软件3.0架构(以LLM OS为代表)彻底确立了“自然语言提示词即程序、海量上下文窗口即系统内存、百亿级神经网络权重即中央处理器”的全新数字秩序。软件开发者不再需要痛苦地描述计算机完成某个高难度任务的每一个微观指令步骤,而是转变为在高维度上声明目标意图规范,并提供一个安全的传统工具箱,交由概率模型在运行时态自动编译、推理并试错出一条直达目标的最佳执行路径。这直接引发了现代软件工程角色的划时代巨变:人类工程师正从传统的“微观逻辑指令编写者”全面演进为“Harness规则配置者、系统环境搭建者与宏观意图纠偏者”。第三,Tool-use(工具使用)、Memory(记忆机制)、Planning(规划能力)这些高级能力,是仅仅作为锦上添花的存在,还是构成了本质差异?答案是明确而坚定的:它们绝对不是可有可无的锦上添花组件,而是将一个纯粹在虚拟空间中计算统计学概率分布的“文本序列补全器”,实现降维升阶为一个能够在真实世界长久自治行动的系统所不可或缺的“核心构件”在Agent = Model + Harness的权威工程公式中,如果没有Memory(如支撑文件系统的状态持久化机制、防上下文腐烂机制),模型只能活在类似“金鱼记忆”的瞬时反应中,永远无法累积复杂的逻辑状态;如果没有Tool-use(如具备沙盒隔离能力的代码执行环境、标准化的MCP通信总线),模型只能在语言空间内进行徒劳的“空想”,而无法对现实数字基础设施产生任何实质性改变;如果没有Planning(如强制上下文状态清理、支持自我验证的Ralph Loop机制),模型将在长周期、多步骤的深层逻辑链条中迅速发生认知崩溃。因此,这些核心能力在现代Agent系统中扮演的角色,完全等价于甚至超越了传统计算机架构中“操作系统内核、进程调度器和底层系统调用库”的根本性地位。综上所述,现代Agent系统是一种坚定地架构在传统软件百年演进史的坚实基础之上的全新数字物种。它的核心“思考引擎”是深邃且概率性的庞大语言模型,而其具备现实执行力的“四肢、骨骼以及敏锐感官”,是由深具确定性哲学和工程纪律的Harness Engineering所精心浇筑铸造。唯有当这种非确定性的耀眼智能火花,与不可妥协的确定性传统工程边界实现最完美的融合与共生时,真正意义上高效、稳定、安全且可长期自治的下一代Agent计算平台才能够真正降临并改变世界。

引用的著作

  1. Software 3.0 Explained: Why Karpathy Says the Context Window Is ..., 访问时间为 六月 4, 2026, https://www.mindstudio.ai/blog/software-3-0-explained-karpathy-context-window-ram-model-weights-cpu
  2. What Is Software 3.0? How Prompting Replaced Programming - MindStudio, 访问时间为 六月 4, 2026, https://www.mindstudio.ai/blog/what-is-software-3-0-prompting-replaced-programming
  3. Karpathy's Software 3.0: The Context Window is Your New Program | AI Builder Club, 访问时间为 六月 4, 2026, https://www.aibuilderclub.com/blog/karpathy-software-3-0
  4. LLM OS | LLM Knowledge Base - Promptmetheus, 访问时间为 六月 4, 2026, https://promptmetheus.com/resources/llm-knowledge-base/llm-os
  5. Why Andrej Karpathy Says LLMs Are the New Operating System? | by Shaunak J - Medium, 访问时间为 六月 4, 2026, https://medium.com/@shaunakpython/why-andrej-karpathy-says-llms-are-the-new-operating-system-7dd0620a14f6
  6. The Agent Loop Is the New OS: Design Philosophy of the Harness MCP Server, 访问时间为 六月 4, 2026, https://www.harness.io/blog/agent-loop-new-os
  7. Harness, Scaffold, and the AI Agent Terms Worth Getting Right, 访问时间为 六月 4, 2026, https://huggingface.co/blog/agent-glossary
  8. What is deterministic AI? - Port.io, 访问时间为 六月 4, 2026, https://www.port.io/glossary/deterministic-ai
  9. Deterministic vs. Probabilistic AI: Enterprise Workflow Guide - Elementum AI, 访问时间为 六月 4, 2026, https://www.elementum.ai/blog/deterministic-vs-probabilistic-ai
  10. Shadow AI Is the New Shadow IT: Governing AI Agents from Code to Runtime | Nirmata, 访问时间为 六月 4, 2026, https://nirmata.com/2026/04/05/governing-ai-agents-from-code-to-runtime/
  11. Deterministic vs. Non-Deterministic vs. Probabilistic AI in AppSec: Why the Distinction Is Now a Security Control - Cycode, 访问时间为 六月 4, 2026, https://cycode.com/blog/deterministic-vs-non-deterministic-vs-probabilistic-ai-appsec/
  12. Principal AI Engineer (Prisma Browser - Agents Platform) at Palo Alto Networks, 访问时间为 六月 4, 2026, https://jobs.paloaltonetworks.com/en/job/tel-aviv/principal-ai-engineer-prisma-browser-agents-platform/47263/95543787360
  13. Separating probabilistic observers from deterministic control in AI systems (Emergent State Machines) : r/softwarearchitecture - Reddit, 访问时间为 六月 4, 2026, https://www.reddit.com/r/softwarearchitecture/comments/1rxchte/separating_probabilistic_observers_from/
  14. From Policy Engine to AI-Native Platform: Introducing Cloud Agents for Infrastructure Governance | Nirmata, 访问时间为 六月 4, 2026, https://nirmata.com/2026/04/02/introducing-cloud-agents/
  15. The Anatomy of an Agent Harness - LangChain, 访问时间为 六月 4, 2026, https://www.langchain.com/blog/the-anatomy-of-an-agent-harness
  16. The Agent Harness Is the Architecture (and Your Model Is Not the Bottleneck) - Medium, 访问时间为 六月 4, 2026, https://medium.com/@epappas/the-agent-harness-is-the-architecture-and-your-model-is-not-the-bottleneck-5ae5fd067bb2
  17. Harness engineering for coding agent users - Martin Fowler, 访问时间为 六月 4, 2026, https://martinfowler.com/articles/harness-engineering.html
  18. Harness Engineering: Turning AI Agents Into Reliable Engineers - Reddit, 访问时间为 六月 4, 2026, https://www.reddit.com/r/ArtificialInteligence/comments/1sc3m1t/harness_engineering_turning_ai_agents_into/
  19. Karpathy's LLM OS, what are your thoughts? - LinuxQuestions.org, 访问时间为 六月 4, 2026, https://www.linuxquestions.org/questions/linux-general-1/karpathy%27s-llm-os-what-are-your-thoughts-4175741199/
  20. Applied AI Engineer - VLSI Design, 访问时间为 六月 4, 2026, https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/Applied-AI-Engineer---VLSI-Design_JR2019190
  21. Minions: Stripe's one-shot, end-to-end coding agents | Stripe Dot Dev Blog, 访问时间为 六月 4, 2026, https://stripe.dev/blog/minions-stripes-one-shot-end-to-end-coding-agents
  22. Minions: Stripe's one-shot, end-to-end coding agents—Part 2 | Stripe Dot Dev Blog, 访问时间为 六月 4, 2026, https://stripe.dev/blog/minions-stripes-one-shot-end-to-end-coding-agents-part-2
  23. What Is an AI Agent Harness? The Architecture Behind Stripe's 1,300 Weekly AI Pull Requests | MindStudio, 访问时间为 六月 4, 2026, https://www.mindstudio.ai/blog/what-is-ai-agent-harness-stripe-minions
  24. How Stripe built “minions”—AI coding agents that ship 1,300 PRs weekly from Slack reactions | Steve Kaliski (Stripe engineer) - Lenny's Newsletter, 访问时间为 六月 4, 2026, https://www.lennysnewsletter.com/p/how-stripe-built-minionsai-coding
  25. How Stripe Built Secure Unattended AI Agents Merging 1000 Pull Requests Weekly, 访问时间为 六月 4, 2026, https://medium.com/@oracle_43885/how-stripe-built-secure-unattended-ai-agents-merging-1-000-pull-requests-weekly-1ff42f3fe550
  26. Nirmata's Cloud Agents Show the Right Way to Give AI Operational, 访问时间为 六月 4, 2026, https://autosolvelabs.com/blog/nirmata-cloud-agents-guardrails-ai-operations-control/
  27. Worker Agents | Harness Developer Hub, 访问时间为 六月 4, 2026, https://developer.harness.io/docs/platform/harness-ai/harness-agents
  28. Architectural Design Decisions in AI Agent Harnesses - arXiv, 访问时间为 六月 4, 2026, https://arxiv.org/html/2604.18071v1
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-20 18:45:26 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/775955.html
  2. 运行时间 : 0.143354s [ 吞吐率:6.98req/s ] 内存消耗:4,734.08kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=758aaa2d2b028151382df191a8dc66da
  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.000718s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000828s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000295s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000302s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000619s ]
  6. SELECT * FROM `set` [ RunTime:0.000282s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000628s ]
  8. SELECT * FROM `article` WHERE `id` = 775955 LIMIT 1 [ RunTime:0.001438s ]
  9. UPDATE `article` SET `lasttime` = 1781952326 WHERE `id` = 775955 [ RunTime:0.002806s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000247s ]
  11. SELECT * FROM `article` WHERE `id` < 775955 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000462s ]
  12. SELECT * FROM `article` WHERE `id` > 775955 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000521s ]
  13. SELECT * FROM `article` WHERE `id` < 775955 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000855s ]
  14. SELECT * FROM `article` WHERE `id` < 775955 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.000762s ]
  15. SELECT * FROM `article` WHERE `id` < 775955 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.000730s ]
0.149177s