#Wrong Usage of Skills/API

1 messages · Page 1 of 1 (latest)

rare stag
#

I have brave search and clawdhub weather and skills.md. But when i am doing what is the weather at <location>? It's doing web fetch with wrong url instead of the one described in the skills. Technically using the brave search api instead of weather

delicate rockBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> âś… Mark Solution

misty frigateBOT
#

Skills don’t “route” tool calls automatically — they’re mostly instructions in the system prompt. So even if you installed a Weather skill, the model can still decide to use web_search / web_fetch unless (a) the skill wasn’t actually loaded, or (b) you make weather usage more deterministic.

1) First check: is the Weather skill actually eligible + loaded?

Run these on the gateway host and paste the output:

openclaw --version
openclaw skills list --eligible
openclaw skills check
openclaw skills info <weather-skill-name>

Common gotchas:

  • Installed into the wrong workspace (multi-agent setups have different workspaces).
  • Skill is present but ineligible due to gating (missing env/bin/config).
  • Skills are snapshotted when the session starts → after installing/updating skills, start a new chat session (e.g. /new) or restart the gateway so the session picks up the new skills list.
#

Docs:

2) If it is loaded, why is it still using Brave/web_fetch?

Two likely cases:

A) The Weather skill itself uses web_fetch (normal), but the model is picking the wrong URL.
Fix: tighten the Weather skill instructions (or override it in ~/.openclaw/skills/<name>/SKILL.md) to say “use exactly this endpoint, don’t substitute other URLs”.

B) The model is choosing Brave Search instead of Weather.
Fix options (pick one):

  • Easiest: use the skill’s slash command if it provides one (e.g. /weather Vienna) — that’s the most reliable.
  • If you want natural language (“what’s the weather in X?”) to always use the weather skill: add a clear rule in your agent prompt (SOUL/AGENTS) like “For any weather question, use the Weather skill; do not use web_search.”
  • Hard enforcement: remove/disable web_search (or even web_fetch) for that agent via tool allowlisting, but that’s a tradeoff because it limits other tasks.

If you paste: