乐于分享
好东西不私藏

驾驭AI:关于Harness Engineering范式及其在OpenClaw中实践的综合研究

驾驭AI:关于Harness Engineering范式及其在OpenClaw中实践的综合研究

进入2026年,人工智能(AI),特别是基于大型语言模型(LLM)的自主智能体(AI Agent),正以前所未有的深度和广度渗透到软件开发的各个层面。然而,如何确保这些强大的AI Agent在执行复杂、长周期任务时保持稳定、可靠、安全和可控,已成为业界亟待解决的核心挑战。在此背景下,一种名为“Harness Engineering”(驾驭工程,或称驭缰工程)的新兴AI软件工程范式应运而生,并迅速成为行业焦点。本文深入剖析Harness Engineering的核心理念、技术机制、应用方式,并重点研究其与当前最热门的开源AI Agent框架OpenClaw之间的深度融合与协同关系。报告将阐明,Harness Engineering不仅是一种技术方法论,更是一场深刻的思维变革,它将工程师的角色从传统的“代码编写者”转变为AI系统的“环境设计师”和“行为驾驭者”,而OpenClaw正是这一变革的杰出实践范例。


第一章:Harness Engineering的诞生——AI软件开发的新范式

1.1 Harness Engineering的定义与核心理念

Harness Engineering,直译为“驾驭工程”或“驭缰工程”,是一种专为AI时代设计的软件工程新范式。其核心思想并非要直接修改或提升AI模型本身的智能(即“马”的能力),而是通过系统化、工程化的方法,为AI Agent构建一个强大、稳定、可控的外部“马具”或“缰绳”(即“Harness”),从而引导、约束和增强其在真实世界中执行任务的能力。这个“Harness”是一个围绕着AI模型的综合性“脚手架”或外挂系统,旨在确保Agent在人类设定的边界内可靠、高效地完成工作。

Harness Engineering的核心目标是解决AI Agent在从“能回答问题”到“能完成任务”的跃迁中所面临的根本性挑战:持续、稳定的任务执行能力。传统的软件开发流程,甚至早期的AI应用开发方法,都难以应对AI模型内在的不确定性和在复杂任务链中的行为漂移。Harness Engineering正是为了填补这一空白,致力于将AI Agent从一个充满潜力的“玩具”或“演示品”,转变为一个可工业化落地、稳定可靠的生产力工具。

1.2 为什么需要Harness Engineering?范式演进的必然性

Harness Engineering的出现并非偶然,而是AI工程化实践层层递进的必然结果。我们可以将其置于一个更广阔的范式演进脉络中来理解:

  1. Prompt Engineering (提示工程): 这是与LLM交互的最初级阶段,核心是解决“怎么对模型说”的问题。工程师通过精心设计提示词(Prompt)来引导模型产生期望的输出。它的局限性在于,对于复杂任务,单一或少数几个Prompt无法提供足够的控制力和稳定性。

  2. Context Engineering (上下文工程): 这是第二阶段,核心是解决“给模型看什么”的问题。工程师通过管理和构建模型的上下文(Context),例如使用RAG(检索增强生成)技术,为模型提供完成任务所需的背景知识。这大大增强了模型处理特定领域任务的能力,但仍未解决长链条任务中的执行控制问题。

  3. Harness Engineering (驾驭工程): 这是当前最前沿的阶段,它超越了前两者,核心是解决“让模型在什么样的机制里干活,并确保它把活干成”的问题。它不只关心单次的交互或信息的提供,而是关注整个任务执行的生命周期,通过设计一个完整的运行环境来管理Agent的行为、状态和资源。

因此,Harness Engineering并非要取代Prompt或Context Engineering,而是建立在它们之上的、更高维度的系统工程方法论。它承认并接纳了LLM的“黑盒”特性和内在的不确定性,选择从外部系统层面施加确定性的约束和引导,从而实现整体系统的可靠性。

1.3 工程师角色的深刻转变:从“砖瓦匠”到“城市规划师”

Harness Engineering的推行,正在引发软件工程师角色的根本性转变。在这个新范式下,工程师的价值重心不再是逐行编写确定性的业务逻辑代码,而是转向更高层次的系统设计工作。

  • 从“编写代码”到“设计环境”: 工程师的主要工作变成了为AI Agent设计一个功能完备、边界清晰、资源可控的运行环境。这包括定义Agent可以使用的工具、可以访问的数据、可以执行的操作,以及它与外部世界交互的接口。

  • 从“实现逻辑”到“设计规则”: 工程师需要将业务规则、安全策略、质量标准等,转化为AI Agent必须遵守的、可自动执行的“法律”或“物理定律”。这些规则构成了Harness的核心,确保Agent的行为不会偏离预设轨道。

  • 从“开发者”到“系统驾驭者”: 工程师的角色更像是一个“系统设计者”、“城市规划师”或者一位经验丰富的“驯马师”。他们负责规划整个AI应用系统的蓝图,搭建基础设施,设定交通规则(约束),并建立反馈系统(如市民热线和市政维修队)来持续优化城市的运行。他们不再是砌每一块砖的“砖瓦匠”,而是确保整座城市能够繁荣、有序发展的总设计师。

这种角色的转变,要求工程师具备更强的系统思维、架构设计能力和对AI行为模式的深刻理解。这是AI时代对软件工程师提出的新要求,也是Harness Engineering思想的精髓所在。


第二章:Harness Engineering的技术架构与核心机制

Harness Engineering并非一个空泛的概念,它拥有一套具体、可落地的技术架构和核心组件。这些组件协同工作,共同构成了驾驭AI Agent的强大“马具”。

2.1 宏观架构:一个多层次的约束与控制系统

从工程实现的角度看,一个成熟的Harness系统可以被 conceptualized 为一个分层架构,每一层都解决不同粒度的问题,层层递进,确保Agent的稳定运行。一个被广泛讨论的三层架构模型如下:

  1. 基础驾驭层 (Base Driving Layer):

    • 目标:解决“让Agent能跑起来”的基础问题。
    • 核心机制:实现一个最简化的执行循环 (Execution Loop or Agent Loop)。这个循环是Agent自主性的基础,其流程通常是:模型根据当前任务和状态输出一个或多个指令(如调用工具、执行命令)→ Harness系统执行这些指令 → 将执行结果(成功、失败、输出数据等)反馈给模型作为新的上下文 → 模型基于新上下文进行下一步决策 → 循环往复,直到任务完成或达到终止条件。这是所有Agent系统的“心跳”。
  2. 约束安全层 (Constraint Safety Layer):

    目标:解决“让Agent不闯祸”的核心问题,确保其行为安全、合规。

    核心机制:

    • 工具与技能管控 (Tool/Skill Management):定义一个严格的工具/技能库。Agent只能调用这个预先批准的工具清单中的工具。这从根本上限制了Agent的能力边界,例如,一个只被授予读文件权限的Agent绝不可能执行删除文件的操作。
    • 沙箱环境 (Sandbox Environment):将Agent的执行环境严格隔离。例如,代码生成和执行任务应在容器化的沙箱中进行,以防止对宿主系统造成潜在破坏。
    • 安全校验与权限控制 (Security Validation & Permission Control):在指令执行前后插入钩子(Hooks),进行权限检查和安全扫描。例如,在执行一条shell命令前,校验该命令是否在允许的白名单内。
    • 子Agent机制 (Sub-Agent Orchestration):对于复杂任务,可以由一个主Agent将任务分解,并委派给多个专门的子Agent并行或串行处理。每个子Agent拥有更小、更专注的权限和工具集,从而降低单个Agent失控的风险。
  3. 生产质量层 (Production Quality Layer):

    目标:解决“让Agent能稳定上线并持续优化”的生产化问题。核心机制:
    • 可观测性 (Observability):提供详尽的日志追踪、状态监控和度量指标。工程师需要能够清晰地看到Agent的每一步决策、每一次工具调用和每一次状态变更,以便在出现问题时进行调试和复盘。
    • 反馈回路与熵管理 (Feedback Loop & Entropy Management):建立一个闭环的反馈机制,将生产环境中的失败案例、非预期行为或低质量输出,系统化地转化为新的规则、测试用例或评估标准。这是一种“熵管理”机制,通过不断从混乱(失败)中提取信息(规则),来降低系统的整体不确定性,使其持续进化。
    • 状态管理与断点续传 (State Management & Persistence):为长周期任务提供可靠的状态管理。Agent的完整状态(包括记忆、任务进度、中间产物等)需要被结构化地存储。这样即使系统中断,任务也能从上一个断点恢复,而不是从头开始。
    • CI/CD与自动化测试:将Harness的规则和Agent的行为纳入持续集成和持续部署流水线。通过自动化测试(如单元测试、集成测试、回归测试)来验证Agent在规则变更后是否依然表现正常。

2.2 Harness Engineering的八大核心支柱

综合各类分析,我们可以将Harness Engineering的技术实现归纳为八个相互关联的核心支柱。这些支柱共同构成了Harness系统的骨架。

  1. 上下文工程 (Context Engineering):

    • 作用:精细化管理提供给LLM的上下文,确保其拥有做出正确决策所需的所有信息,同时避免无关信息造成的干扰和Token浪费。
    • 实现:包括上下文压缩、动态知识库检索(RAG)、会话历史管理等技术。
  2. 架构约束 (Architecture Constraints):

    • 作用:通过系统架构层面的设计,从根本上限定Agent的行为空间。
    • 实现:定义Agent的角色、职责分离、与外部系统的交互接口(API Gateway),以及设计任务分解和编排的模式。
  3. 执行循环与编排 (Execution Loop & Orchestration):

    • 作用:Agent自主运行的核心引擎,负责驱动任务的逐步执行。
    • 实现:实现“思考-行动-观察”的循环,并支持复杂的任务编排逻辑,如条件分支、并行执行和错误处理。
  4. 工具与技能管控 (Tool & Skill Management):

    • 作用:Agent与世界交互的唯一媒介,是控制其能力的关键。
    • 实现:提供一个可插拔、版本化、权限受控的工具系统。每个工具都有明确的输入输出模式(如JSON Schema),Agent必须严格遵守。
  5. 状态管理 (State Management):

    • 作用:记忆和追踪任务的长期和短期状态,是实现复杂、长周期任务的基础。
    • 实现:结构化的会话状态存储(如数据库或文件系统)、记忆机制(短期工作记忆、长期知识库)和断点续传能力。
  6. 反馈回路与评估 (Feedback Loop & Evaluation):

    • 作用:系统自我进化的驱动力,确保Agent的性能可以持续提升。
    • 实现:建立评估(Evaluation)机制,在任务执行的关键节点或完成后,通过自动化校验(如Linter、单元测试)或人工审核来判断结果质量。失败和低质量的结果会触发反馈回路,用于优化规则、提示或工具。
  7. 安全与环境隔离 (Security & Environment Isolation):

    • 作用:防止Agent对外部环境造成非预期的负面影响。
    • 实现:使用沙箱(如Docker容器、WebAssembly)、文件系统权限控制、网络访问策略、敏感信息过滤等手段,将Agent的执行环境与生产系统严格隔离。
  8. 可观测性 (Observability):

    • 作用:提供深入洞察Agent内部工作状态的能力,是调试、优化和审计的基础。
    • 实现:详尽的日志记录(Logging)、性能指标监控(Metrics)和分布式追踪(Tracing),将Agent的“思考过程”透明化。

这八大支柱共同构成了一个完整的Harness Engineering体系,为驾驭AI Agent提供了坚实的工程基础。


第三章:OpenClaw项目剖析——Harness Engineering的旗舰实现

在Harness Engineering从理论走向实践的过程中,OpenClaw项目无疑是最具代表性和影响力的开源实现。截至2026年初,OpenClaw在全球开发者社区中引起了巨大反响,其GitHub星标数快速增长,被誉为AI Agent领域的“神作”。它的成功,在很大程度上被视为Harness Engineering范式的一次重大胜利。

3.1 OpenClaw是什么?一个AI Agent的操作系统

OpenClaw的官方定位是一个开源的、本地优先的AI智能体运行时框架。它旨在为开发者提供一个强大的、可高度自定义的平台,用于构建、运行和编排AI Agent。

我们可以用一个更形象的比喻来理解OpenClaw的定位:如果说大型语言模型(LLM)是新时代的CPU,负责提供核心的推理和计算能力,那么OpenClaw就是为这个CPU打造的操作系统(OS)。这个操作系统负责管理CPU(LLM)的运行,为其连接各种外设(工具和服务),调度应用程序(具体的Agent任务),并提供安全、稳定的运行环境。

OpenClaw的核心价值主张是,它已经为开发者“造好了一辆加满油、可以直接上路的车”,用户只需告诉它目的地(任务目标),而无需从头开始构建复杂的底层驾驭系统。它将Harness Engineering的复杂理念,封装成了一套开箱即用的工程组件和基础设施。

3.2 OpenClaw的核心架构与关键组件

OpenClaw的架构设计深刻体现了Harness Engineering的思想。它并非一个单一的程序,而是一个由多个核心组件构成的、高度模块化的系统。这些组件共同协作,构建了一个完整的Harness。

  1. Gateway (网关):

    • 作用:Gateway是OpenClaw的统一入口和接入层,扮演着“破壁”的角色。它负责连接和适配各种前端消息平台(如Telegram, WhatsApp, Slack, 飞书等)和后端的LLM服务提供商(如OpenAI, Anthropic, Google等)。
    • Harness体现:Gateway是架构约束的体现。它将Agent与具体的通信协议和模型API解耦,提供了一个标准化的接口。同时,它也是实施全局策略、认证和路由的理想位置。
  2. Skills Library (技能库):

    • 作用:这是OpenClaw的“百宝箱”,定义了Agent可以执行的所有具体操作。每个Skill都是一个封装好的工具,例如“读取文件”、“发送邮件”、“执行代码”、“查询天气”等。Skills库是可插拔、可扩展的。
    • Harness体现:这是工具管控的核心实现。通过管理Skills库,开发者可以精确地控制Agent的能力边界。每个Skill的定义(通常包含JSON Schema格式的输入参数描述)本身就是一种对模型行为的强约束。
  3. Memory Mechanism (记忆机制):

    • 作用:赋予Agent记忆能力,使其能够处理需要长期上下文的复杂任务。OpenClaw的记忆系统通常是双模的:包括用于当前会话的短期工作记忆,以及用于跨会话知识沉淀的长期记忆。
    • Harness体现:这是状态管理上下文工程的直接体现。通过结构化的记忆系统,Agent的状态得以持久化和有效管理,解决了LLM本身无状态的局限。
  4. Heartbeat (心跳机制):

    • 作用:这是赋予Agent“主观能动性”的组件,使其能够24/7持续在线运行,并能主动触发任务,而不仅仅是被动响应用户输入。例如,Agent可以被配置为每小时检查一次邮箱并总结摘要。
    • Harness体现:这是执行循环的体现,但超越了简单的请求-响应模式。Heartbeat机制允许Agent拥有自主的、基于时间的触发器,使其行为模式更加丰富和主动。
  5. Soul.md (人格化配置文件):

    • 作用:这是一个特殊的配置文件,通常用Markdown格式,用于定义Agent的身份、角色、性格、说话风格和长期目标。
    • Harness体现:这是系统提示 (System Prompt)高级上下文工程的创新实践。通过一个易于人类理解和编辑的文件来塑造Agent的核心“人格”,为Agent的所有行为提供了一个高层次的、一致性的指导框架。
  6. Harness Layer (驾驭层):

    • 在一些架构分析中,OpenClaw内部有一个明确的“Harness层”。这一层是面向LLM的结构化运行外壳,负责在每次与LLM交互前,动态地组装提示词(整合Soul.md、记忆、工具定义等)、挂载当前可用的工具集、应用安全策略和约束,然后通过Provider Adapter与具体的LLM API交互。这是Harness Engineering思想最直接的代码实现。

这些组件共同构成了一个健壮的系统,使得开发者能够安全、灵活地驾驭AI Agent,实现从“对话式AI”到“行动式AI”的转变。


第四章:协同与融合——OpenClaw如何实践Harness Engineering

OpenClaw与Harness Engineering的关系并非简单的“使用”与“被使用”,而是一种“实现”与“被实现”的共生关系。OpenClaw的整个架构哲学和每一个核心组件的设计,都是Harness Engineering理念的具体化和产品化。本章将深入分析这种深度的融合关系。

4.1 映射关系:将Harness支柱与OpenClaw组件一一对应

我们可以将第二章中提出的Harness Engineering八大支柱,与第三章中介绍的OpenClaw核心组件进行清晰的映射,从而揭示其内在的实现逻辑。

通过这张映射表,我们可以清晰地看到,OpenClaw并非仅仅“应用”了Harness Engineering,它的血肉和骨骼就是由Harness Engineering的原则塑造的。

4.2 从理念到代码:Harness Engineering在OpenClaw中的落地体现

OpenClaw的成功之处在于,它将抽象的Harness Engineering理念转化为了具体的、开发者友好的工程实践。

  • 配置即代码 (Configuration as Code): OpenClaw的核心行为和约束在很大程度上是通过其主配置文件 openclaw.json (或 config.yml) 来定义的。这个文件本身就是Harness的“设计蓝图”。开发者通过编辑这个文本文件,就可以定义Agent的人格、模型、可用工具、连接的渠道等,这使得对Harness的修改变得版本可控、可审查和可复现。

  • 清单驱动的开发 (Manifest-Driven): 在更深层次的实践中,如社区重构项目claw-code所展示的,Harness Engineering的思想被进一步推向“清单驱动”。这意味着Agent的能力、工具、甚至任务流程都可以通过声明式的清单文件来定义,系统根据清单自动装配和验证运行时环境。这极大地提高了系统的可维护性和可移植性。

  • 默认安全 (Secure by Default): OpenClaw的设计哲学倾向于默认提供一个相对安全的环境。例如,高风险工具需要被显式启用,文件访问被限制在特定的工作区内。这种“最小权限”原则是Harness Engineering中约束安全层的核心实践。

  • 生态系统的力量: OpenClaw的开源模式吸引了大量开发者为其贡献新的Skills、Channels和集成。这个不断壮大的生态系统本身就构成了一个更宏大的Harness,为所有使用OpenClaw的Agent提供了丰富的、经过社区验证的工具和能力。

综上所述,OpenClaw与Harness Engineering的结合,是理论指导实践、实践丰富理论的典范。OpenClaw的流行,反过来也极大地推动了Harness Engineering这一概念的普及和深入人心。


第五章:实践指南——在OpenClaw中配置和自定义Harness

理论的价值最终体现在实践中。本章将基于现有信息,提供一份在OpenClaw中配置和自定义Harness关键组件的实践指南。虽然搜索结果并未提供详尽的、逐行的代码示例,但通过对OpenClaw配置结构和核心概念的综合分析,我们完全可以勾勒出实现这些Harness功能的具体路径。

5.1 核心配置文件:openclaw.json

万物始于配置。OpenClaw的Harness主要通过其核心配置文件 ~/.openclaw/openclaw.json 进行定义和调整。该文件采用JSON5格式,相比普通JSON更加灵活,支持注释和尾随逗号,非常适合作为复杂的配置文件。

一个典型的 openclaw.json 文件结构包含了定义Harness各个方面的顶级键,如 agentsmodelsgatewayskillschannels 等。

5.2 配置约束层 (Constraint Layer)

约束层的目标是“让Agent不闯祸”。在OpenClaw中,这主要通过工具管控和执行环境限制来实现。

  • 方法1:工具白名单/黑名单

    • 描述:
      这是最直接和最有效的约束手段。你可以为每个Agent实例精确定义它被允许或禁止使用的技能。
    • 配置路径:
      在 openclaw.json 的 agents 部分,为特定的agent配置 tools.allow 或 tools.deny 列表。
    • 概念示例:
      // ~/.openclaw/openclaw.json{  "agents": {    "code_reviewer_agent": {      "model": "gpt-4-turbo",      "system_prompt": "You are a senior code reviewer. Your only job is to review code files for quality and security.",      // 约束层:只允许使用文件读取和代码分析工具      "tools": {        "allow": ["file.read", "code.lint", "code.analyze_complexity"],        // "deny": ["file.write", "shell.exec"] // 或者使用黑名单      }    },    "researcher_agent": {      "model": "claude-3-opus",      // 约束层:只允许使用网络搜索和文件读写工具      "tools": {        "allow": ["web.search", "file.read", "file.write"],        "deny": ["shell.exec"] // 明确禁止执行shell命令      }    }  }}
  • 方法2:配置沙箱环境

    • 描述:
      对于需要执行代码或shell命令的技能,必须在隔离的沙箱环境中运行。
    • 配置路径:
      OpenClaw通常通过集成特定的技能(如shell.execcode.execute)来实现沙箱功能。这些技能的配置项会允许你指定沙箱的类型(如Docker)和相关参数。
    • 概念示例:
      在 skills 配置部分,你可能会看到类似如下的配置,用于指定代码执行技能所使用的Docker镜像。
      // ~/.openclaw/openclaw.json{  "skills": {    "code_execution_skill": {      "provider": "docker_sandbox", // 指定使用Docker沙箱      "image": "python:3.11-slim", // 指定运行环境的镜像      "timeout": 60, // 设置执行超时时间      "network_disabled": true // 禁止容器内网络访问,增加安全性    }  }}

5.3 配置校验层 (Validation Layer)

校验层的目标是在执行后检查输出的质量和合规性。在OpenClaw中,这主要通过Hook系统和集成外部测试工具实现。

  • 方法1:使用Hook系统进行实时校验

    • 描述:
      OpenClaw的Hook系统允许你在Agent生命周期的关键点注入自定义逻辑。这可以用来实现“事后纠偏”的校验机制。
    • 配置路径:
      在 openclaw.json 中配置 hooks 部分。
    • 概念示例:
      假设我们想在每次Agent生成代码后,自动运行一个linter来检查代码风格。
      // ~/.openclaw/openclaw.json{  "hooks": {    "after_tool_call": [ // 在每次工具调用后触发      {        "if": {          // 条件:如果调用的工具是 'code.generate' 并且调用成功          "tool_name": "code.generate",          "status": "success"        },        "run": {          // 执行一个自定义脚本来进行校验          "type": "script",          "path": "/path/to/my_linter_validator.sh",          "args": ["{{tool_output}}"] // 将工具的输出作为参数传入脚本        }      }    ]  }}
  • 方法2:结构化输出与Schema验证

    • 描述:
      强制Agent的工具输出遵循特定的JSON Schema。OpenClaw的配置文件本身就由Zod等库进行严格的Schema验证这种思想同样可以应用到工具的输出上。
    • 配置路径:
      在定义一个自定义Skill时,明确声明其输出必须满足的JSON Schema。
    • 概念示例 (在技能定义代码中):
      // a_custom_skill.tsexportconst myDataExtractionSkill = {name"data.extract_user_info",description"Extracts user information from a text.",inputSchema: { /* ... */ },// 校验层:定义严格的输出格式outputSchema: {type"object",properties: {name: { type"string" },email: { type"string"format"email" },age: { type"integer"minimum0 }    },required: ["name""email"]  },handlerasync (input) => {// ... LLM调用和处理逻辑 ...const result = //...// 在返回前,框架会自动根据outputSchema验证result的结构return result;  }};

5.4 配置工具集 (Tool Management)

工具集是Agent能力的核心。OpenClaw提供了灵活的工具管理机制。

  • 方法:启用、禁用和配置技能
    • 描述:
      OpenClaw拥有一个丰富的内置技能库,同时支持社区和自定义技能。你可以通过配置文件来管理这些技能。
    • 配置路径:
      openclaw.json 的 skills 部分。
    • 概念示例:
      // ~/.openclaw/openclaw.json{  "skills": {    // 启用内置的文件操作技能    "file": { "enabled": true, "workspace": "/home/user/openclaw_workspace" },    // 启用内置的网页浏览技能    "web": { "enabled": true },    // 禁用内置的shell执行技能以增强安全性    "shell": { "enabled": false },    // 配置一个需要API Key的自定义技能    "github_skill": {      "enabled": true,      "api_key": "${GITHUB_API_KEY}" // 从环境变量安全地加载敏感信息    }  }}

5.5 实现反馈回路与状态管理

  • 反馈回路 (Feedback Loops):

    • 优化提示:
      修改 Soul.md 或特定任务的提示,给出更明确的指令。
    • 完善工具:
      改进相关工具的实现,使其更健壮或提供更清晰的错误信息。
    • 增加约束:
      在 openclaw.json 中增加新的约束规则(如调整工具白名单)或校验Hook。
    • 创建测试:
      将这个失败案例转化为一个自动化的回归测试用例。
    • 描述:
      反馈回路是一个更宏观的概念,通常不是由一个简单的配置项实现的。在OpenClaw中,它体现为整个开发和运维流程。
    • 实现路径:
    1. 观察:
      通过OpenClaw的日志和Web控制台监控Agent在生产环境的行为。
    2. 评估:
      当发现失败案例或非预期行为时(例如,Agent错误地解析了一个文件),记录下这个案例。
    3. 改进:
      • 优化提示:
         修改 Soul.md 或特定任务的提示,给出更明确的指令。
      • 完善工具:
         改进相关工具的实现,使其更健壮或提供更清晰的错误信息。
      • 增加约束:
         在 openclaw.json 中增加新的约束规则(如调整工具白名单)或校验Hook。
      • 创建测试:
         将这个失败案例转化为一个自动化的回归测试用例。
    4. 部署:
      将更新后的配置和代码部署到生产环境。这个持续的“观察-评估-改进-部署”循环,就是Harness Engineering中最重要的反馈回路。
  • 状态管理 (State Management):

    • 描述:
       OpenClaw通过其记忆和会话机制内置了强大的状态管理能力。
    • 配置路径:
      openclaw.json 中的 agents 或全局配置中关于 memory 和 session 的部分。
    • 概念示例:
      // ~/.openclaw/openclaw.json{  "agents": {    "long_term_project_manager": {      // ... 其他配置 ...      "memory": {        "provider": "local_vector_db", // 使用本地向量数据库作为长期记忆        "path": "~/.openclaw/memory/project_manager_db"      },      "session": {        "compaction": { // 配置会话压缩,防止上下文过长          "strategy": "summary",          "threshold_tokens": 3000        }      }    }  }}

通过以上配置方法,开发者可以运用OpenClaw提供的强大功能,将Harness Engineering的理念从抽象的蓝图变为具体、可控的现实。


第六章:未来展望与结论

6.1 Harness Engineering与OpenClaw的未来轨迹

随着AI能力的持续指数级增长,Harness Engineering的重要性将日益凸显。我们可以预见其未来的几个发展方向:

  1. 标准化与规范化:
    未来的Harness框架可能会出现行业标准,例如标准化的工具定义语言、Agent间通信协议(如AGENTS.md所倡导的以及安全约束的描述规范。这将促进不同Agent系统之间的互操作性。
  2. 智能化Harness:
    Harness本身也将变得更加智能。未来的Harness系统可能会利用AI来自动分析Agent的失败日志,并自动建议或生成新的约束规则和测试用例,从而实现反馈回路的更高程度自动化。
  3. 更强大的可观测性与调试工具:
    专门为AI Agent设计的可视化调试工具将会出现,让开发者能像调试传统程序一样,直观地“单步执行”Agent的思考链,查看每一步的上下文、工具调用和状态变化。

而作为Harness Engineering的领跑者,OpenClaw项目无疑将继续在这些方向上引领潮流。我们可以期待OpenClaw在安全机制、多Agent协作编排、企业级集成以及对Harness的声明式配置能力上进行持续的强化和创新。

6.2 结论

Harness Engineering这一新兴AI软件工程范式的核心理念、技术架构与关键机制,标志着软件开发领域的一次深刻转型,工程师的角色正从“编码者”演变为复杂AI系统的“驾驭者”。Harness Engineering通过构建外部的约束、控制和反馈系统,成功地解决了AI Agent在执行复杂任务时面临的可靠性和可控性难题。

OpenClaw项目作为Harness Engineering的杰出开源实现,通过其模块化的架构和一系列精心设计的组件(Gateway, Skills, Memory, Heartbeat等),将抽象的工程理念转化为了强大的、可供全球开发者使用的工具。 OpenClaw的成功雄辩地证明了,在当前AI时代,真正的价值创造不仅来自于模型能力的提升,更来自于围绕模型构建的卓越工程体系。

对于任何希望在2026年及以后,构建严肃、可靠、可投入生产的AI Agent应用的开发者、架构师和技术领导者来说,深入理解并掌握Harness Engineering范式,并熟练运用像OpenClaw这样的框架,将不再是“可选项”,而是通往成功的“必经之路”。驾驭AI的时代已经到来,而Harness Engineering正是我们手中最坚实的缰绳。

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-04-18 02:44:21 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/541340.html
  2. 运行时间 : 0.220778s [ 吞吐率:4.53req/s ] 内存消耗:4,965.62kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=1841508f818e004f15cd519178a8e610
  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.80 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000974s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000944s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000373s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000281s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000500s ]
  6. SELECT * FROM `set` [ RunTime:0.000215s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000643s ]
  8. SELECT * FROM `article` WHERE `id` = 541340 LIMIT 1 [ RunTime:0.000526s ]
  9. UPDATE `article` SET `lasttime` = 1776451461 WHERE `id` = 541340 [ RunTime:0.005646s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.000237s ]
  11. SELECT * FROM `article` WHERE `id` < 541340 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000501s ]
  12. SELECT * FROM `article` WHERE `id` > 541340 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000371s ]
  13. SELECT * FROM `article` WHERE `id` < 541340 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.018446s ]
  14. SELECT * FROM `article` WHERE `id` < 541340 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.022393s ]
  15. SELECT * FROM `article` WHERE `id` < 541340 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.010431s ]
0.222564s