前言

在前面的文章中,我们介绍了单Agent模式多Agents模式的智能体。本期将介绍一种完全不同的智能体接入方式——OpenClaw模式

OpenClaw是一个开源的AI网关,可以理解为智能体的消息路由器。在OpenClaw模式下,小艺相当于一个IM(类似QQ、飞书、钉钉),用户输入的内容会被发送到OpenClaw,OpenClaw根据用户输入和智能体的配置进行处理,并将结果返回给小艺,最终展示给用户。

OpenClaw模式的最大优势是部署灵活——开发者可以在自己的服务器上部署OpenClaw,实现对智能体的完全控制。

一、OpenClaw架构原理

1.1 什么是OpenClaw

OpenClaw是一个开源AI网关,它连接小艺开放平台和各种AI服务/工具,提供灵活的消息路由和智能体编排能力。

核心特性:

  1. 开源部署:可自行部署在服务器或本地电脑上
  2. 插件系统:通过插件扩展能力,支持社区生态
  3. Channel机制:通过Channel与小艺开放平台对接
  4. 灵活编排:支持多种AI服务组合和路由策略

1.2 架构模型

OpenClaw模式的整体架构如下:

用户 → 小艺APP → 小艺开放平台 → OpenClaw网关 → 插件/AI服务
                                           ↓
                                     智能体逻辑处理
                                           ↓
                                    ← 返回结果给小艺

主要角色:

角色说明部署位置
小艺APP用户交互界面鸿蒙设备端
小艺开放平台智能体注册和分发华为云
OpenClaw网关消息路由和处理开发者服务器
插件实际业务处理单元OpenClaw插件体系

1.3 与传统模式对比

对比维度单Agent模式A2A模式OpenClaw模式
开发复杂度
部署方式平台内置自建API服务自建OpenClaw网关
控制力度平台限制完全控制完全控制
扩展方式平台插件自定义APIOpenClaw插件
适用场景简单对话企业集成个性化助手

二、环境搭建

2.1 安装OpenClaw

首先需要在电脑或云主机上安装OpenClaw:

# 使用 npm 安装
npm install -g @openclaw/core

# 或使用 Docker 安装
docker pull openclaw/openclaw:latest

# 验证安装
openclaw --version

2.2 安装小艺插件

OpenClaw通过插件与小艺开放平台对接:

# 安装小艺Channel插件
openclaw plugins install @ynhcj/xiaoyi@latest

# 查看已安装的插件列表
openclaw plugins list

2.3 配置文件

创建OpenClaw配置文件 openclaw.json

{
    "port": 8080,
    "plugins": {
        "@ynhcj/xiaoyi": {
            "enabled": true,
            "version": "latest"
        }
    },
    "channels": {},
    "log": {
        "level": "info",
        "file": "./logs/openclaw.log"
    }
}

配置文件核心参数说明:

参数类型说明
portnumber监听端口,默认8080
pluginsobject插件配置
channelsobjectChannel配置(详见下文)
log.levelstring日志级别:debug/info/warn/error

三、凭证创建

在与小艺开放平台对接前,需要先创建平台凭证

3.1 新建凭证

  1. 进入小艺开放平台
  2. 点击「工作空间」→「凭证」
  3. 点击「新建凭证」
  4. 输入Key名称(如 “openclaw-demo”)
  5. 保存后将生成一对密钥:Key(ak)安全密钥(sk)

创建凭证

注意:安全密钥只在创建成功时可明文复制,关闭窗口前请务必复制并妥善保管。

3.2 凭证使用说明

字段对应关系用途
Keyak身份标识,用于OpenClaw的Channel配置
安全密钥sk签名密钥,用于接口鉴权

四、创建智能体

4.1 新建智能体

在小艺开放平台,选择OpenClaw模式创建智能体:

创建OpenClaw智能体

注意事项:

  • 每个账号下仅限创建一个OpenClaw模式智能体
  • 创建时默认已勾选"手机-HarmonyOS NEXT"和"手机-HarmonyOS"
  • 智能体名称需符合平台命名规范

4.2 获取智能体ID

创建成功后,在智能体详情页可以获取到智能体的 agentId,这个ID需要在OpenClaw配置中使用。

五、配置Channel

5.1 Channel配置

在OpenClaw的配置文件 openclaw.json 中配置小艺Channel:

{
    "channels": {
        "xiaoyi": {
            "enabled": true,
            "ak": "小艺开放平台凭证ak",
            "sk": "小艺开放平台凭证sk",
            "agentId": "创建的智能体id"
        }
    }
}

配置参数说明:

参数说明示例值
ak凭证Key从平台获取的Key
sk凭证安全密钥从平台获取的Security Key
agentId智能体ID创建智能体后获取

注意:ak和sk需要替换为实际凭证的Key和安全密钥,除ak和sk外其他配置不可更改。

5.2 启动OpenClaw

配置完成后,启动OpenClaw网关:

# 启动
openclaw gateway start

# 或指定配置文件启动
openclaw gateway start --config ./openclaw.json

# 查看运行状态
openclaw gateway status

# 重启(修改配置后需要重启)
openclaw gateway restart

5.3 验证连接

启动后,可以通过查看日志确认连接状态:

# 查看实时日志
openclaw logs -f

# 预期输出
[INFO] Channel xiaoyi connected successfully
[INFO] Agent [智能体名称] is ready

六、配置开场对话

6.1 开场语配置

在小艺开放平台配置智能体的开场语:

开场对话配置

开场语配置建议:

开场语:
"你好!我是你的个性化智能助手,基于OpenClaw构建,可以帮你处理各种任务。"

预置问题:
1. 你能帮我做什么?
2. 查询当前状态
3. 执行自定义任务

6.2 回复模板

可以在OpenClaw中配置回复模板,实现多样化的回复形式:

{
    "templates": {
        "greeting": {
            "text": "你好!我是{{agent_name}},有什么可以帮你的吗?",
            "quick_replies": ["查询状态", "执行任务", "帮助说明"]
        },
        "status": {
            "text": "当前系统状态:\n- 运行时间:{{uptime}}\n- 活跃会话:{{active_sessions}}",
            "card": {
                "type": "DisplayFaCard",
                "data": {
                    "title": "系统状态",
                    "description": "一切运行正常"
                }
            }
        }
    }
}

七、调试与发布

7.1 网页调试

完成所有配置后,可以在小艺开放平台进行网页调试

调试界面

调试步骤:

  1. 在调试框中输入测试消息
  2. 查看OpenClaw的日志输出
  3. 检查返回结果是否正常

7.2 真机测试

调试通过后,可以发布真机测试

# 确保OpenClaw服务正常运行
openclaw gateway status

# 检查防火墙设置,确保端口可访问
curl http://localhost:8080/health

发布真机测试的注意事项:

  1. 真机测试仅限白名单用户体验
  2. 开发测试态长期有效
  3. 白名单人员可在小艺APP通过对话页触达智能体

7.3 常见调试问题

问题可能原因解决方案
连接失败凭证ak/sk错误检查凭证配置是否正确
无响应OpenClaw未启动执行 openclaw gateway start
回复异常插件版本不匹配执行 openclaw plugins update @ynhcj/xiaoyi
超时网络问题检查服务器网络和防火墙

八、OpenClaw的高级用法

8.1 多插件管理

OpenClaw支持同时加载多个插件,实现能力组合:

{
    "plugins": {
        "@ynhcj/xiaoyi": { "enabled": true },
        "@openclaw/plugin-weather": { "enabled": true },
        "@openclaw/plugin-image": { "enabled": true },
        "@openclaw/plugin-web-search": { "enabled": true }
    }
}

8.2 自定义插件开发

OpenClaw支持开发自定义插件:

// my-plugin.js
module.exports = {
    name: "my-custom-plugin",

    async handleMessage(context, message) {
        // 处理用户消息
        const userInput = message.text;

        // 业务逻辑
        const result = await processUserInput(userInput);

        // 返回响应
        return {
            text: result.response,
            card: result.cardData
        };
    },

    async handleEvent(event) {
        // 处理系统事件
        console.log("Event received:", event.type);
    }
};

8.3 配置路由规则

可以为不同的用户或场景配置不同的路由规则:

{
    "routing": {
        "rules": [
            {
                "match": { "userId": "vip_*" },
                "pipeline": ["premium-plugins", "main-processor"]
            },
            {
                "match": { "channel": "xiaoyi" },
                "pipeline": ["xiaoyi-adapter", "main-processor"]
            }
        ]
    }
}

总结

本文详细介绍了OpenClaw模式智能体的完整创建流程:

  1. 架构原理:OpenClaw作为AI网关的连接角色和通信机制
  2. 环境搭建:OpenClaw安装、插件安装、配置文件编写
  3. 凭证创建:小艺开放平台凭证的创建和保管
  4. 智能体创建:OpenClaw模式智能体的创建和ID获取
  5. Channel配置:配置文件编写和网关启动验证
  6. 调试发布:网页调试、真机测试和问题排查

OpenClaw模式为开发者提供了高度灵活的智能体构建方式,适合需要深度定制和自主控制的场景。下一篇文章将介绍自定义消息卡片的开发。

如果这篇文章对你有帮助,欢迎点赞👍、收藏⭐、关注🔔,你的支持是我持续创作的动力!


相关资源:

alt text

更多推荐