2026年龙虾进化论:不搞懂 OpenClaw 这套“手脚”逻辑,你的 AI Agent 永远长不大[特殊字符]!

龙虾进化论:不搞懂 OpenClaw 这套“手脚”逻辑,你的 AI Agent 永远长不大[特殊字符]!开启养虾篇的更新喽 最近 OpenClaw 特别火 之前自己也写过一点 ts 代码 于是扒了一下 OpenClaw 代码研究一下 本篇文章将会从 0 到 1 讲解一下爆火的 OpenClaw 手脚是如何长出来的 大纲 1 什么是 OpenClaw 2 手脚 是什么 OpenClaw 是怎么执行真正的动作的 2 1 skills 技能 AI 能做什么 2 2 Tools 工具 与 Function

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



开启养虾篇的更新喽!最近OpenClaw特别火,之前自己也写过一点ts代码,于是扒了一下OpenClaw代码研究一下,本篇文章将会从0到1讲解一下爆火的OpenClaw手脚是如何长出来的?

大纲

  • 1.什么是 OpenClaw?
  • 2.“手脚”是什么?OpenClaw 是怎么执行真正的动作的?
    • 2.2 Tools(工具)与 Function Calling —— 动作真正执行者
    2.1 skills(技能)—— AI 能做什么?
  • 3.OpenClaw 源码核心分析
    • 3.2 工具集
    3.1 技能加载

简单来说,OpenClaw 是一个开源的 AI Agent 平台,它不是普通聊天机器人,而是 真正能执行任务的人工智能助手框架。它能自动化执行命令、操作文件、运行浏览器自动化流程、集成 API、响应消息渠道等。

📌 核心特点:

  • 多种渠道支持:Telegram、Discord、WhatsApp 等聊天平台可接入 OpenClaw Agent。(OpenClaw Center)
  • 支持多种模型:如 GPT、Claude、Gemini、本地模型等。(OpenClaw Center)
  • 完全开源、自主部署,数据可以留在本地而不泄露给第三方。(OpenClaw)
  • 不是纯聊天机器人,它可以 执行真正的动作——运行代码、控制浏览器、执行命令等。(Best AI Tools)

🧠 通俗比喻:

如果把普通聊天机器人当成智能客服,OpenClaw 就像是 一个会动、会操作、会执行任务的 AI 助手的操作系统


OpenClaw 最核心的价值就是 —— 让 AI 不只是生成文字,而是“做事”

为了做到这一点,它有两个关键体系:

2.1 Skills(技能)—— AI 能做什么?

技能(Skills) 类似于文档SOP,描述了 Agent 能做的事情:

  • 简单技能:比如返回当前时间
  • 复杂技能:比如进行 Web 搜索、管理邮箱、运行 shell 命令、API 工作流
  • 自定义技能:社区或开发者自己开发的扩展模块

这些 skills 通常由一个目录+文档组成,OpenClaw 在启动时会自动扫描这些技能并将它们加载到 Agent 的能力列表中。

📌 Skill 的作用:它不是执行逻辑,而是 告诉 Agent:这个功能存在、可以被调用、该如何使用

换句话说:

Skills 是能力声明,但不执行动作。

OpenClaw 的技能系统遵循 AgentSkills 兼容规范。 每个技能是一个文件夹,至少包含一个 ,用于向 Agent 显示:

  • 技能名称、描述
  • 当用户/模型应当触发该技能时
  • 与该技能相关的工具使用说明

典型结构:

在 SKILL.md 里你写:

OpenClaw 会从三个位置加载技能(优先级为 workspace > 本地 > 内置),然后把这些技能信息注入到生成给模型的 prompt 里,让模型“知道有这些能力”。


2.2 Tools(工具)与 Function Calling —— 动作真正执行者

当 Agent 决定要“去做某件事”,它需要调用一个具体的 工具(tool)

这正是 Function Calling / Tool Calling 的意义所在。

什么是 Function Calling(或 Tool Calling)?

Function Calling(工具调用)不是 OpenClaw 自创,而是 OpenAI API 的官方概念。

它是模型与外部系统交互的通用机制——模型在生成输出时,会提出一个“函数调用请求”(结构化 JSON),由程序执行后再返回结果给模型。OpenClaw 就是利用这个机制让模型做实际操作。

  • Function Calling 基本流程

工具调用是指您的应用程序与模型之间通过 OpenAI API 进行的一系列多步骤交互。工具调用流程主要包含五个步骤:

  1. 使用模型可以调用的工具向模型发出请求
  2. 接收来自模型的工具调用
  3. 使用来自工具调用的输入,在应用程序端执行代码
  4. 使用工具输出向模型发出第二个请求
  5. 接收模型的最终响应(或更多工具调用)

这个过程就像:

函数调用图步骤
函数调用图步骤

这就是所谓的 Function Calling(工具调用)机制。它让模型的输出不仅仅是文本,而是一种结构化请求。OpenClaw 的“手脚”正是构建在这个机制之上。

3.1 技能加载

基于底层库来构建

Skills 加载入口:loadWorkspaceSkillEntries

在  源码中,OpenClaw 通过  函数实现了一套多层级的“能力发现”机制。并不只看一个目录,它会从多个源合并技能,并遵循“近者优先”的覆盖逻辑:

  • Extra Dirs: 用户自定义的外部路径。
  • Bundled: 框架内置的核心技能。
  • Managed: 全局管理目录()。
  • Agents Skills: 遵循  标准的项目或个人技能。
  • Workspace: 当前项目下的  目录(最高优先级)。

另外,代码中实现了一个性能优化:路径压缩(Compact Paths)。这个有趣的函数叫做。它会将路径中的用户主目录替换为 。

技术细节:这不仅是为了美观,通过将长路径(如 )缩短,每个技能可以节省 5-6 个 Token。在加载数百个技能时,能为系统提示词(System Prompt)腾出 400-600 个 Token 的空间。

3.2 工具集

在 OpenClaw 里面,“工具(Tools)” 就是 Agent 的实际执行能力。模型根据技能和 prompt 判断“应该用哪个工具做事”,再通过 函数调用(Function/Tool Calling) 真正触发执行。

核心入口就是:

这个函数负责收集、构建、过滤和注入所有 OpenClaw 可用的工具,并最终返回一组工具定义,供模型执行。它基于 pi‑agent‑core / pi‑coding‑agent 实现,并在此基础上扩展了 OpenClaw 自有的能力。

OpenClaw 的工具不是单一来源,它实际上把不同来源的工具组合起来,并在运行前经过 策略过滤、权限校验、schema 清理 等步骤,构成最终可被模型调用的工具列表。

支持的工具见前面图片即可。

AI时代已来,加速学习!

学习更多干货,欢迎关注转发!

玩转cpp小项目星球3周年了!

图片

图片

小讯
上一篇 2026-03-15 23:38
下一篇 2026-03-15 23:36

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/237208.html