开启左侧

EI_openclaw的skills分类

[复制链接]
AI小编 发表于 9 小时前 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
作者:CSDN博客
OpenClaw(以及类似的基于 LLM 的代理框架如 OpenHands/OpenDevin)能够高效运行得益于两个方面所用的云端智能体(chatGPT、Gmini、Claude或国内的)和本地的技能(Skills,养龙虾的主要工作就是之一就是编辑调试各种Skills),其中Skills根据其来源、作用范围、优先级和修改权限被划分为不同的层级。BUILT_IN SKILLSWORKSPACE SKILLSEXTRA SKILLS(通常指用户自定义或社区安装的扩展技能)构成了 OpenClaw 的能力金字塔。以下是它们的详细区别、联系及最佳使用场景:
一、核心区别对比表

特性BUILT_IN SKILLS (内置技能)WORKSPACE SKILLS (工作区技能)EXTRA SKILLS (扩展/自定义技能)
定义系统核心自带的通用能力,随软件安装默认存在。当前项目专属的技能,仅在当前打开的项目目录中生效。用户全局安装或从社区下载的第三方技能,位于用户主目录。
存储位置系统安装目录 (如 /usr/lib/openclaw/skills 或包内资源)当前项目根目录下的 .openclaw/skills/ 文件夹用户主目录 ~/.openclaw/skills/
作用范围全局。对所有项目都可用。局部。仅对当前打开的特定项目(Workspace)有效。全局。对所有项目可用,但优先级低于工作区技能。
修改权限只读。不建议直接修改,升级时会覆盖。完全可控。随项目代码一起版本控制 (Git)。可编辑。用户可自由修改、删除或更新。
典型用途基础文件操作、Shell 执行、代码搜索、基础 Git 命令。项目特有的构建脚本、内部 API 调用规范、特定测试流程。行业专用工具(如 SQL 优化器)、个人偏好模板、社区热门插件。
优先级最低 (作为兜底能力)。最高 (覆盖同名内置或扩展技能)。中等 (高于内置,低于工作区)。
二、详细解析与联系

1. BUILT_IN SKILLS (内置技能)

    角色:这是 OpenClaw 的“本能”。没有它们,AI 甚至无法读取文件或运行基本命令。
  • 特点:
      稳定性极高:经过官方严格测试,保证基础功能不报错。不可见性:通常不需要用户关心,除非你想查看底层实现逻辑。示例:read_file, write_file, run_shell_command, search_code。

联系:它们是其他所有技能的基石。自定义技能(Extra/Workspace)往往是在调用这些内置技能的基础上封装更复杂的逻辑。

2. WORKSPACE SKILLS (工作区技能)

    角色:这是项目的“私有知识库”或“项目特定规则”。
  • 核心价值:上下文隔离。
      假设你在开发项目 A(一个 Django 网站)和项目 B(一个 React 前端)。项目 A 需要一个技能叫 run_migrations (执行 Django 迁移)。项目 B 需要一个技能叫 build_bundle (打包 React)。如果你把这两个都放在全局(Extra),AI 可能会混淆。放在 Workspace Skills 中,当你打开项目 A 时,AI 只知道 run_migrations;打 开项目 B 时,只知道 build_bundle。

  • 最佳实践:
      将项目的部署脚本、特定的代码风格指南、内部文档查询逻辑定义为 Workspace Skills。将这些技能文件提交到 Git 仓库,这样团队成员克隆项目后,OpenClaw 自动拥有该项目的专属能力,无需手动配置。

3. EXTRA SKILLS (扩展/自定义技能)

    角色:用户的“个人工具箱”或“社区插件”。
  • 来源:
      用户自己编写并放在 ~/.openclaw/skills/ 的通用技能。通过 openclaw skills install  从 ClawHub 安装的社区技能。

  • 特点:
      复用性强:比如你写了一个“将代码转换为中文注释”的技能,你希望它在所有项目中都能用,就放在这里。易于管理:可以独立于任何项目进行升级或卸载。

联系:它是连接“通用能力”和“项目特需”的桥梁。如果某个 Workspace Skill 变得非常通用,你可以把它移动到 Extra 目录供所有项目使用。

三、加载优先级与冲突解决机制

当 AI 需要执行一个任务时,OpenClaw 按以下顺序查找技能(就近原则):

  • 检查 WORKSPACE SKILLS:
      如果在当前项目 .openclaw/skills/ 下找到了名为 X 的技能,立即使用它,忽略其他所有同名技能。场景:项目 A 定制了特殊的 test 命令,项目 B 使用标准的。

  • 检查 EXTRA SKILLS:
      如果工作区没找到,去用户主目录 ~/.openclaw/skills/ 找。场景:你安装了一个通用的 github-pr-creator 技能,所有项目都能用,除非某个项目有自己特殊的 PR 流程(被步骤 1 覆盖)。

  • 检查 BUILT_IN SKILLS:
      如果前两者都没找到,最后使用系统内置的基础技能。场景:基础的 ls 或 cat 操作。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
阅读排行更多+

Powered by Discuz! X3.4© 2001-2013 Discuz Team.( 京ICP备17022993号-3 )