OpenClaw—使用桌面精灵交互

我们在前边尝试了OpenClaw的命令行、WebUI、远程飞书控制,今天尝试将桌面精灵和OpenClaw结合起来,跟桌面精灵语音说话就可以让OpenClaw干活,不用再打开浏览器或者命令行,提高下交互效率。

先给个桌面精灵效果图:

一、OpenClaw API

要想通过其他方式调用AI,最简单的方法就是通过它的API接口,OpenClaw也提供了类似OpenAI的接口封装,只是需要自己手动配置一下。

接口文档:https://docs.openclaw.ai/zh-CN/gateway/openai-http-api

  • IP和端口与 WebUI的Gateway 网关相同(WS + HTTP 多路复用):http://<gateway-host>:<port>/v1/chat/completions
  • 调用时需要发送Bearer令牌:Authorization: Bearer <token>

1. 启动API功能配置

API接口功能默认是关闭的,需要通过http.endpoints.chatCompletions配置打开,同时我们需要关注下auth认证模式,我这里使用token方式:

# 启用API功能
vim ~/.openclaw/openclaw.json

  ...
  "gateway": {
    "port": 18789,
    "mode": "local",
    "bind": "loopback",
    "auth": {
      "mode": "token",
      "token": "cfa2a25c88307ae61bxxxxxxxxxx"
    },
    http: {
      endpoints: {
        chatCompletions: { enabled: true },
      },
    },
    ... 
  }

# 重启网关
openclaw gateway restart

2. 测试API接口

传入token,测试api是否已经可以正常调用:

# 传入token,调用api接口:
curl -sS http://127.0.0.1:18789/v1/chat/completions \
  -H 'Authorization: Bearer cfa2a25c88307ae61b0eedxxxxxxxxx' \
  -H 'Content-Type: application/json' \
  -H 'x-openclaw-agent-id: main' \
  -d '{
    "model": "openclaw",
    "messages": [{"role":"user","content":"hi"}]
  }'

# 可以看到api正常返回了结果
{"id":"chatcmpl_ab811974-9ba8-46ff-b22a-86ef32583d87","object":"chat.completion","created":1772708747,"model":"openclaw","choices":[{"index":0,"message":{"role":"assistant","content":"Hey! I just came online. Who am I? Who are you?"},"finish_reason":"stop"}],"usage":{"prompt_tokens":0,"completion_tokens":0,"total_tokens":0}}

3. 会话保持

默认情况下,API每次请求无状态的(每次调用生成新的会话键),如果请求包含 OpenAI user 字符串,Gateway 网关会从中派生一个稳定的会话键,因此重复调用可以共享智能体会话。

OK,第一步的OpenClaw API接口准备工作已经ready。

 

二、桌面精灵改造

有OpenClaw,我们当然不用自己写了,让OpenClaw来完成这项开发工作。

1. 文字控制

编写过程太长就不再赘述了,就是一直告诉它怎么做,怎么改即可。

这里单独给下让他调用OpenClaw API的部分,因为这里是他自己搞不定的地方,必须明确告诉他调用方式和token,否则它自己是不知道怎么调用的,可以把API接口文档发给它看一下:

编译运行后的精灵形象:

先右键“偏好配置”填写你的OpenClaw Token:

右键“文字聊天”开始对话:

右键点击“和猫咪聊天”菜单后,弹出的聊天窗口,可以看到OpenClaw已经可以正常响应了:

2. UI美化

界面看着太粗糙了,我们让openclaw再改下,文字聊天窗口半透明效果:

内置几个卡通精灵形象:

3. 语音控制

这里和上边类似,告诉openclaw增加通过语音控制和语音播报结果的交互方式。

 

三、桌面精灵下载安装

下载地址:https://github.com/yanjingang/Fairy/releases/download/1.0.1/Fairy.app.tar.gz

安装说明:由于我没有购买Apple Developer账号($99/年),需要额外执行以下指令(否则会提示文件已损坏):

cd ~/Download/
# 解压
tar zxvf Fairy.app.tar.gz
# 移除App隔离属性
sudo xattr -rd com.apple.quarantine Fairy.app
# 安装应用
sudo cp  Fairy.app /Applications/

 

yan 3.7

 

参考:

OpenAI Chat Completions API

 

发表评论

您的电子邮箱地址不会被公开。