Token导航 LogoToken导航

Agent Skill · 研究检索

openclaw-smart-search(OpenClaw smart 搜索)

openclaw-smart-search 用于处理浏览器自动化、网页检查和页面信息提取,适合在 OpenClaw 中需要让 Agent 打开页面、读取网页或验证前端流程时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

openclaw-smart-search 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为接触敏感数据;许可证为 MIT-0,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 23,855。

总安装 4,163周安装 177GitHub Stars 公开资料未说明下载 1,458核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.14

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:openclaw-smart-search(OpenClaw smart 搜索)
来源仓库:https://github.com/fdenny11gg/openclaw-smart-search
安装命令:
openclaw skills install openclaw-smart-search
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install openclaw-smart-search

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

统一智能搜索技能,整合多个搜索引擎(百炼 MCP、Tavily、Serper、Exa、Firecrawl),自动选择最佳引擎并融合结果

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install openclaw-smart-search;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

openclaw-smart-search 怎么安装?

在终端执行 openclaw skills install openclaw-smart-search。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

openclaw-smart-search 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

openclaw-smart-search 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

openclaw-smart-search 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

openclaw-smart-search 用的人多吗?

公开数据是累计安装 4,163 次,近一周安装 177 次,下载 1,458 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

openclaw-smart-search 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
openclaw-smart-search

OpenClaw smart 搜索 · 本页

4,163—接触敏感数据MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
smart-search
description
统一智能搜索技能,整合多个搜索引擎(百炼 MCP、Tavily、Serper、Exa、Firecrawl),自动选择最佳引擎并融合结果
homepage
https://github.com/openclaw/skills/tree/main/smart-search
metadata

Smart Search - 统一智能搜索

重要说明: 本技能仅支持 CLI 方式调用,不提供 HTTP API。

快速开始

1. 安装依赖

点击技能卡片上的 Install 按钮,或手动运行:

cd ~/.agents/skills/smart-search
npm install

2. 配置 API Key

方式一:使用配置向导(推荐)

npm run setup

交互式输入 API Key,会自动加密存储到 ~/.openclaw/secrets/smart-search.json.enc。

方式二:逐个配置

npm run key:set bailian
npm run key:set tavily
npm run key:set serper
npm run key:set exa
npm run key:set firecrawl

方式三:从文件导入

创建 api-keys.json:

{
  "bailian": "sk-xxx",
  "tavily": "tvly-xxx",
  "serper": "xxx",
  "exa": "xxx",
  "firecrawl": "fc-xxx"
}

然后运行:

npm run key:import ./api-keys.json

3. 测试搜索

npm run search "OpenClaw 新功能"

CLI 使用方式

基本搜索

# 在技能目录下执行
cd ~/.agents/skills/smart-search
npm run search "搜索内容"

带参数搜索

# 指定结果数量
npm run search "OpenClaw 新功能" -- --count=10

# 学术搜索(优先使用 Exa)
npm run search "LLM Agent planning" -- --intent=academic

# 技术搜索
npm run search "TypeScript 最佳实践" -- --intent=technical

# 新闻搜索
npm run search "最新 AI 动态" -- --intent=news

# 指定语言
npm run search "OpenClaw" -- --language=zh

参数说明

参数说明默认值
--count=<n>返回结果数量10
`--language=<zh\en>`语言偏好auto
--intent=<type>搜索意图general
--timeout=<ms>超时时间5000

intent 可选值:

  • general - 通用搜索
  • academic - 学术搜索(优先 Exa)
  • technical - 技术搜索(优先 Exa)
  • news - 新闻搜索(优先 Tavily)

API Key 管理

配置向导

npm run setup

交互式配置所有引擎。

查看状态

npm run key:status

显示所有引擎的配置状态和配额使用情况。

添加引擎

npm run key:set exa

轮换 Key

npm run key:rotate bailian

支持的搜索引擎

所有 5 个搜索引擎均已完整实现:

引擎状态免费额度用途配置命令
百炼 MCP✅ 已实现2000 次/月中文搜索npm run key:set bailian
Tavily✅ 已实现1000 次/月高级搜索npm run key:set tavily
Serper✅ 已实现2500 次/月Google 结果npm run key:set serper
Exa✅ 已实现1000 次/月学术/技术搜索npm run key:set exa
Firecrawl✅ 已实现500 页/月网页抓取npm run key:set firecrawl

总计: 约 7500 次/月搜索额度 🔍

智能路由策略

  • 中文查询 → 百炼(中文优化)
  • 英文查询 → Serper(Google 结果)
  • 学术意图 → 添加 Exa
  • 技术意图 → 添加 Exa
  • 新闻意图 → 添加 Tavily
  • 自动降级 → 引擎失败时自动切换备用引擎

技术细节

  • 加密: AES-256-GCM
  • 文件位置: ~/.openclaw/secrets/smart-search.json.enc
  • 文件权限: 0o600(仅所有者可读写)
  • 密钥派生: PBKDF2(10 万轮迭代)

故障排查

查看所有引擎状态

npm run key:status

测试单个引擎

npm run key:get bailian
npm run search "test"

重新配置

# 删除旧配置
rm ~/.openclaw/secrets/smart-search.json.enc

# 重新配置
npm run setup

🔑 密钥管理

主密钥配置

Smart Search 使用 AES-256-GCM 加密存储 API Keys,需要配置主密钥。

方式一:环境变量(推荐)
# 生成强随机密钥
openssl rand -base64 32

# 设置环境变量
export OPENCLAW_MASTER_KEY="your-generated-key-at-least-32-characters"

或在 .env 文件中配置:

OPENCLAW_MASTER_KEY=your-generated-key-at-least-32-characters
方式二:.env 文件
# 复制示例文件
cp .env.example .env

# 编辑配置
nano .env

⚠️ 安全要求:

  • 主密钥至少 32 个字符
  • 使用随机生成的密钥,不要使用密码或短语
  • 不要将 .env 文件提交到版本控制
  • 生产环境应使用密钥管理服务

密钥轮换

定期轮换 API Key 以增强安全性:

# 查看当前状态
npm run key:status

# 轮换指定引擎
npm run key:rotate bailian

# 完全重新配置
rm ~/.openclaw/secrets/smart-search.json.enc
npm run setup

加密技术细节

项目说明
加密算法AES-256-GCM
密钥派生PBKDF2-SHA256
迭代次数100,000 轮
盐值随机生成 16 字节盐,与加密配置一起存储
存储位置~/.openclaw/secrets/smart-search.json.enc
文件权限0o600(仅所有者可读写)

🔐 安全性

数据安全

  • API Key 存储: 使用 AES-256-GCM 加密存储
  • 文件权限: 配置文件权限为 0o600(仅所有者可读写)
  • 无日志记录: API Key 不会记录到日志中
  • 隐私保护: API Key 本地加密存储,搜索请求直接发送到各搜索引擎官方 API

输入验证

  • 命令注入防护: 所有用户输入经过严格验证和转义
  • 长度限制: 搜索关键词最大长度 500 字符
  • 特殊字符过滤: 自动过滤危险字符(;, &, |, ` `, $`, 等)
  • 类型验证: 所有参数经过类型检查

最佳实践

  1. ✅ 定期轮换 API Key
  2. ✅ 使用环境变量存储 Master Key
  3. ✅ 不要分享加密配置文件
  4. ✅ 在受信任的环境中运行
  5. ✅ 定期更新依赖包

审计

  • 访问日志: 记录所有 API Key 的访问(不记录 Key 本身)
  • 错误日志: 记录错误但不包含敏感信息
  • 可配置: 可以禁用日志记录

🔐 安全说明

主密钥(OPENCLAW_MASTER_KEY)

要求:

  • ✅ 至少 32 字符
  • ✅ 使用强随机字符串
  • ✅ 通过环境变量设置
  • ✅ 不要提交到版本控制

设置方法:

# Linux/macOS
export OPENCLAW_MASTER_KEY="your-32-char-secure-random-string-here"

# 或添加到 ~/.bashrc 或 ~/.zshrc(推荐)
echo 'export OPENCLAW_MASTER_KEY="your-key"' >> ~/.bashrc
source ~/.bashrc

# Windows PowerShell
$env:OPENCLAW_MASTER_KEY="your-32-char-secure-random-string-here"

# 或添加到 $PROFILE
echo '$env:OPENCLAW_MASTER_KEY="your-key"' >> $PROFILE

生成安全的主密钥:

# Linux/macOS
openssl rand -base64 32

# 或使用 Node.js
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"

安全警告:

  • ⚠️ 不要在终端打印密钥
  • ⚠️ 不要提交到 Git
  • ⚠️ 不要分享给他人
  • ⚠️ 定期轮换密钥

密钥管理实现

加密算法:

  • AES-256-GCM(认证加密)
  • PBKDF2 密钥派生(10 万轮迭代)
  • 随机盐(16 字节,每次加密都不同)

密钥生命周期:

  1. 主密钥通过环境变量提供
  2. 使用 PBKDF2 派生加密密钥
  3. 随机盐与加密数据一起存储
  4. API Key 加密存储在 ~/.openclaw/secrets/smart-search.json.enc
  5. 文件权限:0o600(仅所有者可读写)

代码位置:

  • 密钥管理:src/key-manager.ts
  • 输入验证:src/utils/sanitize.ts
  • 安全执行:src/engines/bailian.ts(使用 spawn,shell: false)

安全最佳实践

  1. ✅ 定期轮换 API Key
  2. ✅ 使用环境变量存储 Master Key
  3. ✅ 不要分享加密配置文件
  4. ✅ 在受信任的环境中运行
  5. ✅ 定期更新依赖包
  6. ✅ 在权限有限的用户账户中运行
  7. ✅ 检查依赖:npm audit
  8. ✅ 运行测试:npm test

安全审计

已完成的修复:

  • ✅ Shell 注入修复(v1.0.3)- 使用 spawn 替代 exec
  • ✅ 输入验证增强(v1.0.3)- 白名单 + 注入检测
  • ✅ 密钥管理完善(v1.0.3)- 环境变量 + 加密
  • ✅ 随机盐生成(v1.0.3)- 每次加密都使用新盐
  • ✅ 自动加载 .env(v1.0.11)- 不需要手动 source

ClawHub 安全扫描:

  • ✅ 无硬编码密钥
  • ✅ 无恶意网络调用
  • ✅ 依赖包安全
  • ✅ 代码符合声明的目的

Shell 命令执行安全说明

静态分析警告说明:

ClawHub 静态分析工具检测到代码中使用 child_process,但这不是安全问题:

安全实践:

// ✅ 安全:使用 spawn,参数作为数组传递
spawn('mcporter', ['call', 'WebSearch.bailian_web_search', `query=${query}`], {
  shell: false,  // 不通过 shell 执行
  stdio: ['pipe', 'pipe', 'pipe']
});

// ❌ 不安全:使用 exec,参数经过 shell 解析
exec(`mcporter call ... query="${query}"`);  // 有注入风险

代码位置:

  • src/engines/bailian.ts - 使用 spawn() + shell: false
  • scripts/doctor.ts - 使用 spawnSync() 检查依赖
  • scripts/setup-bailian.ts - 使用 spawnSync() 检查配置

为什么安全:

  1. ✅ 使用 spawn() 而非exec()
  2. ✅ 参数作为数组传递,不经过 shell 解析
  3. ✅ 设置 shell: false 明确禁用 shell
  4. ✅ 所有输入经过 validateSearchQuery() 验证
  5. ✅ 无用户输入直接传递给 shell

参考:

  • Node.js 安全最佳实践:https://nodejs.org/en/docs/guides/security/#child-processes
  • OWASP 命令注入防护:https://cheatsheetseries.owasp.org/cheatsheets/Injection_Prevention_Cheat_Sheet.html

故障排查

问题: "Salt not found in config file"

原因: v1.0.3 的安全修复使用随机盐,旧配置文件不兼容

解决方案:

# 删除旧配置文件
rm ~/.openclaw/secrets/smart-search.json.enc

# 重新配置
npm run setup

问题: "OPENCLAW_MASTER_KEY environment variable is required"

原因: 未设置主密钥环境变量

解决方案:

# 设置环境变量
export OPENCLAW_MASTER_KEY="your-32-char-secure-random-string"

# 或添加到 ~/.bashrc
echo 'export OPENCLAW_MASTER_KEY="your-key"' >> ~/.bashrc
source ~/.bashrc

平台分布

OpenClaw

92.91%
按下载量换算1,355

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

可疑

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills