【花雕学编程】行空板 K10 部署 MimiClaw 之三步配置搜索 API 密钥,让 AI Agent 联网冲浪

2026-04-0571
AI 快速预览详细 收起
本文介绍了如何在行空板 K10 上部署 MimiClaw 并配置博查搜索 API 密钥,以解决联网搜索问题。首先,用户需要注册并获取博查搜索 API 密钥;接着,通过自定义技能或兼容模式将密钥配置到 MimiClaw 中;最后,测试联网搜索功能,确保其正常工作。通过这些步骤,用户可以轻松实现 MimiClaw 的联网搜索能力,提升设备的实用性。

在《行空板 K10 部署 MimiClaw:开机上手指南》中,我们完成了固件烧录、Wi-Fi 配置和飞书机器人对接,在飞书聊天框里对着你的 K10 发送了第一条消息。

但如果尝试问它“今天北京天气怎么样”或“ESP32-S3 有多少 GPIO”,你可能收到了这样的报错:


web_search status: ESP_ERR_INVALID_STATE
Error: No search API key configured.
Set MIMI_SECRET_TAVILY_KEY or MIMI_SECRET_SEARCH_KEY in mimi_secrets.h

这不代表你的 MimiClaw 出了问题,恰恰相反——报错信息本身就是最好的提示:你的 Wi-Fi 连接正常、设备与飞书通信正常,只是在 联网搜索 这一步,MimiClaw 还缺少一个搜索引擎 API 密钥。

本文将按照 “按需获取密钥 → 快速配置密钥 → 验证搜索功能” 的思路,帮你一次性彻底解决这个问题。

00 (1).jpg

一、为什么选择博查搜索?

对比项 Tavily(国外) ——博查搜索(国内)

访问稳定性 经常打不开、注册困难——秒开,国内直连

中文搜索质量 一般,偏向英文——深度优化中文语义

与 MimiClaw 集成 需要配置 set_tavily_key——支持,通过兼容模式或自定义工具

免费额度 1000 次/月——新用户 1000 次免费

数据合规 数据出境风险——国内合规,数据不出海

博查搜索已经正式登陆 ClawHub,推出了专为 OpenClaw 设计的 Skill,完全能够替代 Tavily / Brave。对于 MimiClaw 用户,同样可以通过简单的配置来调用。

02.jpg
03.jpg

二、三步配置博查搜索 API 密钥

第一步:注册并获取 API Key

访问 博查开放平台(国内直连,秒开)。

点击右上角「注册」,使用手机号或邮箱完成注册。

登录后,进入「控制台」→「API 密钥管理」。

点击「创建 API 密钥」,输入名称(如 mimiclaw-test),选择免费套餐。

复制生成的 API Key(格式通常为 bocha-xxxxxxxxxxxxxx),保存好。

新用户自动获得 1000 次免费调用额度,完全够你完成所有测试。

05.jpg


第二步:在 MimiClaw 中配置密钥

MimiClaw 目前原生支持 Tavily 和 Brave,但尚未内置 set_bocha_key 命令。不过我们可以通过两种方式让博查生效:

方法一:通过自定义技能(推荐,无需改源码)

MimiClaw 支持加载 /spiffs/skills/ 目录下的自定义技能。我们可以写一个简单的 Python 脚本(或 C 工具),让 MimiClaw 调用博查 API。

操作步骤:

在你的电脑上创建一个文件 bocha_search.md,内容如下(Markdown 格式的技能描述):

markdown


#Bocha Search

This skill performs web search using Bocha Search API.

##Usage

`bocha_search `

##Implementation

```python
import requests
import json

API_KEY = "你的博查API密钥" # 替换为真实密钥

def bocha_search(query):
url = "https://api.bocha.cn/v1/search"
headers = {"Content-Type": "application/json", "Authorization": f"Bearer {API_KEY}"}
payload = {"query": query, "num": 5}
try:
resp = requests.post(url, json=payload, headers=headers, timeout=10)
data = resp.json()
results = data.get("result", {}).get("items", [])
if not results:
return "未找到相关结果。"
output = []
for item in results[:3]:
title = item.get("title", "")
link = item.get("url", "")
snippet = item.get("snippet", "")
output.append(f"【{title}】({link})\n{snippet}\n")
return "\n".join(output)
except Exception as e:
return f"搜索失败:{str(e)}"
```

2. 将文件上传到 MimiClaw 的 SPIFFS 文件系统:
- 通过串口 CLI:使用 `upload` 命令(如果固件支持)。
- 或者通过网页门户(`http://192.168.4.1` 在 AP 模式下)上传。

3. 在 MimiClaw 中加载技能:`skill_list` 确认 `bocha_search` 已出现。

4. 通过飞书或串口调用:发送 `bocha_search ESP32 教程` 即可获得搜索结果。

####方法二:直接使用兼容模式(如果固件支持自定义工具)

部分 MimiClaw 版本允许通过 `tool_exec` 调用外部命令。你可以编写一个简单的 shell 脚本或二进制程序,放在 SPIFFS 中,然后在 `tool_exec` 中调用。

如果你对 C 语言熟悉,也可以直接修改 MimiClaw 源码,在 `tools/web_search.c` 中添加博查 API 的调用逻辑(参考原有 Tavily 实现)。

###第三步:测试联网搜索功能

配置完成后,在串口终端执行:

```bash
mimi> bocha_search MimiClaw 部署教程


或者在飞书中发送:


bocha_search 行空板 K10 开发
预期输出:返回包含标题、链接和摘要的搜索结果列表。

如果返回结果正常,说明你的 MimiClaw 已经成功接入了国内搜索 API,可以随时查询实时信息。

06 (2).jpg

三、常见问题与排查

问题 可能原因 解决方案
技能上传失败 SPIFFS 空间不足 执行 df 查看剩余空间,删除无用文件
bocha_search 命令不存在 技能未正确加载 执行 skill_list 确认技能是否存在,重启设备
搜索返回空结果 API 密钥无效或网络问题 检查 wifi_status,确认密钥正确,尝试在 PC 上用 curl 测试
飞书中无法调用 飞书配置未关联自定义技能 确保飞书消息能触发 MimiClaw 的 ReAct 循环,且技能已启用
API 额度耗尽 免费次数用完 登录博查控制台查看用量,或升级付费套餐


四、进阶:让搜索与记忆、定时任务联动

配置好搜索后,你的 MimiClaw 就不再是一个单纯的“问答机器”,而是可以主动获取信息并采取行动:

定时抓取新闻:通过 schedule add 添加任务,每小时搜索一次“AI 最新动态”,并将结果写入 MEMORY.md。

条件触发搜索:当传感器检测到异常(如温度骤升),自动搜索“高温应急处理”并推送到飞书。

长期知识积累:每次搜索到的有用信息,可以用 memory_write 追加到记忆库中,形成本地知识库。

这些能力,正是嵌入式 AI 智能体区别于普通物联网设备的真正价值。


结语

Tavily 打不开不是你的错,但让 MimiClaw 继续“搜不了东西”就是你的损失了。通过本文的三步配置,你不仅解决了联网搜索的痛点,还体验了国产 AI 工具链的便捷与稳定。

现在,你的行空板 K10 已经拥有了完整的三项基础能力:

Wi-Fi 联网(wifi_status 已通)

LLM 对话(飞书配置完成)

联网搜索(博查 API 已配置)

在飞书里向你的 MimiClaw 发送第一条搜索指令吧:

“搜索一下 MimiClaw 的最新玩法”

它将带你进入一个更广阔的知识海洋。

附录:快速命令速查

bash
#查看已安装技能
mimi> skill_list

#手动调用搜索(如果技能名为 bocha_search)
mimi> bocha_search 关键词

#检查网络状态
mimi> wifi_status

#查看内存
mimi> heap_info

01.jpg

目前MimiClaw状态评估

 

08.jpg
09.jpg

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(0)
- 没有更多了 -