Token导航 LogoToken导航

Agent Skill · 研究检索

aira-smart-search(艾拉智能搜索)

aira-smart-search 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

aira-smart-search 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为需要联网;许可证为 MIT-0,第三方扫描有提醒项,按安装量在研究检索类的 73,675 个 Skill 里排第 18,072。

总安装 6,267周安装 256GitHub Stars 公开资料未说明下载 2,007核验 2026-05-01

安装说明

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

安装方式

通过对话安装

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

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

命令行安装

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

ClawHubOpenClaw
openclaw skills install aira-smart-search

这个 Skill 是做什么的

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

智能路由 Web 搜索至 Gemini 或 Brave API。具备配额管理与断路器机制保障稳定性。适用宿主包括 OpenClaw,接入前应确认版本、权限和运行环境要求。可将财务查询自动导向 Gemini 引擎。安装前应确认是否允许调用外部搜索 API。

aira-smart-search 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

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

  2. 2

    拿到安装命令

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

  3. 3

    安装后重启宿主

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

  4. 4

    按最小权限试用

    它需要需要联网,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

aira-smart-search 怎么安装?

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

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

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

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

权限级别是需要联网。该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

aira-smart-search 是免费的吗?

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

aira-smart-search 用的人多吗?

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

aira-smart-search 安全吗?

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

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

值得选的地方

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

先想清楚的地方

  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

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

不太适合

  • 需要厂商级技术支持和 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调用外部服务未明确有提醒
aira-smart-search

艾拉智能搜索 · 本页

6,267—需要联网MIT-0有提醒

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

SKILL.md 原文

name
smart-search
description
Intelligent web search routing across Gemini and Brave APIs with quota management, circuit breaker, and web_fetch fallback. Routes finance queries to Gemini, space/astronomy to Brave, with per-agent daily allocations and shared pool.
homepage
https://github.com/Spear-Fox-Technologies/smart-search
metadata

smart-search

1. WHAT THIS SKILL DOES

This skill routes search queries to the best available provider, manages daily API quota per agent, logs all searches, and degrades gracefully through web scraping when APIs are unavailable. It supports two execution strategies: scheduled agents that prioritise API calls for reliable results, and a general agent that preserves API quota by trying web scraping first. All quota state is persisted to a shared JSON file so multiple agents can coordinate without overrunning daily limits.


2. WHEN TO INVOKE THIS SKILL

Use this skill whenever an agent needs to search the web for information — news, research, stock data, general queries, or any topic requiring up-to-date results.

This skill exposes three tools:

ToolPurpose
smart_searchExecute a web search and return results
search_quota_statusCheck remaining quota for an agent or the full system
search_mark_agent_completeRelease unused quota to the shared pool when an agent finishes

3. TOOL REFERENCE

smart_search

Executes a search query using the best available provider for the given agent.

Parameters:

ParameterTypeRequiredDescription
querystringYesThe search query. Max 1000 characters. No control characters.
agent_idstringYesLowercase letters, numbers, and hyphens only (e.g. stock-analysis). Use general for manual/chat searches.
force_providerstringNoOverride routing. Accepts "gemini" or "brave" only.

Return shape:

{
  "results": "<string or array>",
  "provider_used": "gemini | brave | web_fetch",
  "queries_remaining": 12,
  "quota_source": "agent_allocation | shared_pool | provider_direct | none",
  "fallback_used": false,
  "warning": null,
  "web_fetch_engine": null,
  "error": null
}

On failure results is null and error contains the reason.


search_quota_status

Returns quota information for a specific agent or the full quota file.

Parameters:

ParameterTypeRequiredDescription
agent_idstringNoIf omitted, returns the full quota object.

Return shape (single agent):

{
  "agent_id": "stock-analysis",
  "gemini": { "allocated": 15, "used": 3, "remaining": 12 },
  "brave":  { "allocated": 0,  "used": 0, "remaining": 0  },
  "completed": false
}

search_mark_agent_complete

Marks an agent as done for the day and releases any unused allocation to the shared pool for other agents to use.

Parameters:

ParameterTypeRequiredDescription
agent_idstringYesThe agent to mark complete.

Return shape:

{
  "agent_id": "tech-news",
  "released": { "gemini": 7, "brave": 0 },
  "message": "Agent marked complete. 7 Gemini calls released to shared pool."
}

4. TWO EXECUTION STRATEGIES

Strategy A — Scheduled agents (any agent_id except general)

Used by automated agents with a known workload. Prioritises API quality; uses web scraping only as a last resort.

TierProviderCondition
1Primary API (Gemini or Brave)Agent has allocation remaining
2Fallback API (opposite provider)Primary exhausted or failed
3DuckDuckGo web_fetchBoth APIs unavailable — blocked for finance queries
4ErrorAll providers exhausted

Strategy B — General agent (agent_id: "general")

Used for manual chat or ad-hoc queries. Preserves API quota by trying web scraping first. Finance queries are not blocked from web_fetch in this strategy.

TierProviderCondition
1Google web_fetchAlways attempted first
2Bing web_fetchGoogle failed
3API (Gemini or Brave)Both web_fetch failed — quota consumed only here
4ErrorAll providers exhausted

5. PROVIDER ROUTING RULES

Routing is automatic based on query keywords. force_provider overrides all routing.

Routes to Gemini:

| Keyword | |---| | stock, share price, nse, bse, wse, nyse, nasdaq | | earnings, ipo, dividend, funding round, acquisition | | merger, valuation, competitor, market share | | breaking, just announced, today, hours ago | | spearfox, fifthspear |

Routes to Brave:

| Keyword | |---| | space, astronomy, nasa, esa, cosmos |

If no keywords match, the query routes to the configured default_provider (defaults to brave). Gemini always wins for finance queries regardless of other keywords.

Keyword lists are configurable in openclaw.json via finance_keywords and brave_keywords arrays.


6. WEB_FETCH ENGINES

EngineUsed byRole
GoogleStrategy B (general)Tier 1 — always tried first
BingStrategy B (general)Tier 2 — tried if Google fails
DuckDuckGoStrategy A (scheduled)Last resort — blocked for finance queries

All engines enforce a 2-second minimum delay between consecutive calls to avoid rate-limiting. Responses are capped at 10,000 characters to protect the model context window. Prompt injection patterns are stripped from all results before they are returned.


7. QUOTA SYSTEM

Each provider has a daily limit set in openclaw.json. Each agent has its own allocation drawn from that pool. Quota is tracked separately per provider (gemini_used, brave_used).

Deduction flow for a single search call:

  1. Agent allocation — deducted first if the agent has remaining quota for the provider
  2. Shared pool — used if the agent allocation is exhausted but other agents have released unused quota
  3. Provider direct — used if the shared pool is empty but the provider daily limit has remaining headroom
  4. Fallback provider — if all sources for the primary provider are exhausted, the opposite provider is tried through the same flow
  5. web_fetch — used if both APIs are unavailable (scheduled agents only; blocked for finance queries)
  6. Error — returned if all paths are exhausted

Config owns the ceilings (daily limits, per-agent allocations). The quota file owns the live counters. Changes to openclaw.json take effect on the next call without restart.

General agent quota is only consumed when both web_fetch attempts fail.


8. CONFIG-DRIVEN BEHAVIOUR

All allocations, limits, and behaviour flags live in openclaw.json under skills.smart-search. Changes take effect on the next skill invocation with no restart required.

{
  "skills": {
    "smart-search": {
      "gemini_model": "gemini-2.0-flash",
      "default_provider": "brave",
      "strict_agents": false,
      "retry_max_attempts": 3,
      "retry_base_delay": 500,
      "finance_keywords": ["stock", "earnings"],
      "brave_keywords": ["space", "astronomy"],
      "providers": {
        "gemini": { "daily_limit": 1500 },
        "brave":  { "daily_limit": 66 }
      },
      "agent_allocations": {
        "stock-analysis": { "gemini": 15, "brave": 0 },
        "general":        { "gemini": 20, "brave": 5 }
      }
    }
  }
}
KeyDefaultEffect
gemini_modelgemini-2.0-flashGemini model used for all API calls
default_providerbraveFallback provider when no keywords match
strict_agentsfalseWhen true, rejects agent IDs not defined in config
retry_max_attempts3Maximum API retry attempts per call
retry_base_delay500Base delay in ms for exponential backoff
finance_keywordsBuilt-in listKeywords that force Gemini routing
brave_keywordsBuilt-in listKeywords that force Brave routing

9. API KEY SECURITY

API keys are read from the env block in openclaw.json and held in memory only for the duration of the call. They are never logged to any file, never included in any error message, and never returned in any response object. Keys are not written to disk by this skill.


10. MANUAL CHAT USAGE

For manual or chat-initiated searches, OpenClaw must pass agent_id: "general". The skill automatically uses web_fetch first for this agent, so API quota is only consumed if both Google and Bing scraping fail. This is an OpenClaw configuration responsibility — the skill does not infer the agent from context.


11. LOG ROTATION

Each day's searches are written to a .jsonl file in the logs/ subdirectory alongside the quota file:

~/.openclaw/workspace/shared/logs/search-YYYY-MM-DD.jsonl

Each line is a JSON object with: timestamp, agent_id, query, provider_used, force_provider, quota_source, queries_remaining, success, response_summary (capped at 500 chars), error, fallback_used, web_fetch_engine.

Log files older than 30 days are deleted automatically based on the filename date, not the filesystem modification time.


12. ERROR REFERENCE

ErrorCauseResolution
query is required and must be a non-empty string.Missing or blank queryPass a non-empty string
query exceeds maximum length of 1000 characters.Query too longShorten the query
query contains invalid control characters.Null bytes or control chars in queryStrip control characters before calling
agent_id is required and must be a non-empty string.Missing agent_idPass a valid agent_id
agent_id must contain only lowercase letters, numbers, and hyphens.Invalid characters in agent_idUse only [a-z0-9-]
Unknown agent: "...". Add it to openclaw.json to use it.strict_agents is true, agent not in configAdd agent to config or disable strict_agents
Invalid force_provider: "...". Use "gemini" or "brave".Unknown provider nameUse gemini or brave only
Perplexity is not yet implemented.force_provider set to perplexityUse gemini or brave
GEMINI_API_KEY is not configured in openclaw.json.Missing API keyAdd key to openclaw.json env block
Brave Search is not configured. Add BRAVE_API_KEY to openclaw.json to enable it.Missing API keyAdd key to openclaw.json env block
Gemini model ... is unavailable.Model name incorrect or deprecatedUpdate gemini_model in config
Gemini API error: 4xxBad request or auth failureCheck API key and query
Brave API error: 4xxBad request or auth failureCheck API key
Gemini returned an empty response.API responded but returned no textRetry or check query
Brave returned no results.API returned empty results arrayTry a different query
Finance and time-sensitive queries require Gemini or Brave API.Finance query hit the web_fetch fallback blockEnsure API quota is available for finance queries
All search providers exhausted or unavailable.All tiers failedCheck API keys, quota, and network
... circuit is open. Try again later.Provider hit 3 consecutive failuresWait 60 seconds for circuit to reset
Quota file is locked. Try again.Concurrent write contentionRetry the call
Cannot read openclaw.json. Check OPENCLAW_CONFIG_PATH.Config file missing or unreadableCheck file path and permissions
Invalid JSON input.stdin payload was not valid JSONEnsure the harness sends valid JSON
Unknown tool: ...Tool name not recognisedUse smart_search, search_quota_status, or search_mark_agent_complete
Agent ... not found in quota.agent_id not in quota fileCall smart_search first to register the agent
Agent ... is already marked complete for today.Double-complete callNo action needed; agent is already released

13. EXAMPLES

Example 1 — Manual chat finance query, Google web_fetch succeeds

{ "tool": "smart_search", "args": { "query": "today AAPL stock price", "agent_id": "general" } }

Strategy B: Google web_fetch is tried first. Succeeds. Zero API quota consumed.

{
  "results": "<html content from Google>",
  "provider_used": "web_fetch",
  "queries_remaining": 20,
  "quota_source": "none",
  "fallback_used": true,
  "warning": "Result retrieved via web scraping. Quality may be lower than API results.",
  "web_fetch_engine": "google"
}

Example 2 — Manual chat finance query, both web_fetch fail, API fallback triggered

{ "tool": "smart_search", "args": { "query": "today AAPL stock price", "agent_id": "general" } }

Strategy B: Google fails, Bing fails. Gemini API is called (finance keyword routes to Gemini). Quota consumed.

{
  "results": "Apple (AAPL) is trading at $189.42...",
  "provider_used": "gemini",
  "queries_remaining": 19,
  "quota_source": "agent_allocation",
  "fallback_used": false,
  "warning": null,
  "web_fetch_engine": null
}

Example 3 — Manual chat general query, Google web_fetch succeeds

{ "tool": "smart_search", "args": { "query": "best noise-cancelling headphones 2025", "agent_id": "general" } }

Strategy B: No finance keywords. Google web_fetch tried first. Succeeds. Zero API quota consumed.

{
  "results": "<html content from Google>",
  "provider_used": "web_fetch",
  "queries_remaining": 20,
  "quota_source": "none",
  "fallback_used": true,
  "warning": "Result retrieved via web scraping. Quality may be lower than API results.",
  "web_fetch_engine": "google"
}

Example 4 — Scheduled agent finance query, Gemini API, agent has allocation

{ "tool": "smart_search", "args": { "query": "NSE market open today", "agent_id": "stock-analysis" } }

Strategy A: Finance keyword routes to Gemini. Agent has 12 remaining. API call succeeds.

{
  "results": "The NSE opened at 22,450 points today...",
  "provider_used": "gemini",
  "queries_remaining": 11,
  "quota_source": "agent_allocation",
  "fallback_used": false,
  "warning": null,
  "web_fetch_engine": null
}

Example 5 — Scheduled agent, both APIs exhausted, finance query → hard error

{ "tool": "smart_search", "args": { "query": "NSE market open today", "agent_id": "stock-analysis" } }

Strategy A: Gemini exhausted, Brave exhausted. Finance keyword blocks DuckDuckGo fallback.

{
  "results": null,
  "provider_used": null,
  "queries_remaining": 0,
  "quota_source": "none",
  "fallback_used": false,
  "warning": null,
  "web_fetch_engine": null,
  "error": "Finance and time-sensitive queries require Gemini or Brave API. web_fetch fallback is not permitted for this query type."
}

Example 6 — Scheduled agent, both APIs exhausted, general query → DuckDuckGo web_fetch

{ "tool": "smart_search", "args": { "query": "latest AI research papers", "agent_id": "tech-news" } }

Strategy A: Gemini exhausted, Brave exhausted. No finance keywords — DuckDuckGo web_fetch is permitted.

{
  "results": "<html content from DuckDuckGo>",
  "provider_used": "web_fetch",
  "queries_remaining": 0,
  "quota_source": "none",
  "fallback_used": true,
  "warning": "Result retrieved via web scraping. Quality may be lower than API results.",
  "web_fetch_engine": "duckduckgo"
}

平台分布

OpenClaw

86.04%
按下载量换算1,727

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

可疑

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

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

继续浏览同类 Skills