作者:互联网 时间: 2026-08-10 09:20:02
从源直接安装技能的最快方式。
npx clawhub@latest install free-ride
将技能文件夹复制到以下位置之一
全局模式~/.openclaw/skills/
工作区
<project>/skills/
优先级:工作区 > 本地 > 内置
将此提示词复制到 OpenClaw 即可自动安装。
请帮我使用 Clawhub 安装 free-ride。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。
FreeRide 是一款专门设计的技能,旨在优化 OpenClaw 生态系统中免费大语言模型的使用。通过直接与 OpenRouter 集成,它可以识别当前可用的最高质量免费模型,并将其配置为 AI 智能体的主驱动或回退驱动。对于希望保持持续、零成本开发流程且不愿受手动切换模型困扰的开发者来说,这项技能至关重要。
该工具通过实施分级回退系统来专注于可靠性。如果特定模型遇到速率限制,系统会自动将请求重定向到下一个最佳的可用免费模型。这确保了您的 Openclaw Skills 即使在大负载使用或供应商限制下也能保持响应,使高质量的 AI 辅助更加触手可及且符合预算。
要开始使用此 Openclaw Skills 扩展,请执行以下步骤:
export OPENROUTER_API_KEY="your-api-key-here"
cd ~/.openclaw/workspace/skills/free-ride
pip install -e .
freeride auto
openclaw gateway restart
FreeRide 在 ~/.openclaw/openclaw.json 文件中管理配置状态。它更新以下特定的元数据键:
| 键 | 描述 |
|---|---|
agents.defaults.model.primary |
当前选择的最佳免费模型(例如 openrouter/qwen/qwen3-coder:free)。 |
agents.defaults.model.fallbacks |
当主模型失败时使用的优先级备份模型列表。 |
agents.defaults.models |
允许列表,使 /model 命令能够识别免费供应商。 |
name: freeride
description: Manages free AI models from OpenRouter for OpenClaw. Automatically ranks models by quality, configures fallbacks for rate-limit handling, and updates openclaw.json. Use when the user mentions free AI, OpenRouter, model switching, rate limits, or wants to reduce AI costs.
Configures OpenClaw to use free AI models from OpenRouter. Sets the best free model as primary, adds ranked fallbacks so rate limits don't interrupt the user, and preserves existing config.
Before running any FreeRide command, ensure:
OPENROUTER_API_KEY is set. Check with echo $OPENROUTER_API_KEY. If empty, the user must get a free key at https://openrouter.ai/keys and set it:
export OPENROUTER_API_KEY="sk-or-v1-..."
# Or persist it:
openclaw config set env.OPENROUTER_API_KEY "sk-or-v1-..."
The freeride CLI is installed. Check with which freeride. If not found:
cd ~/.openclaw/workspace/skills/free-ride
pip install -e .
When the user wants free AI, run these steps in order:
# Step 1: Configure best free model + fallbacks
freeride auto
# Step 2: Restart gateway so OpenClaw picks up the changes
openclaw gateway restart
That's it. The user now has free AI with automatic fallback switching.
Verify by telling the user to send /status to check the active model.
| Command | When to use it |
|---|---|
freeride auto |
User wants free AI set up (most common) |
freeride auto -f |
User wants fallbacks but wants to keep their current primary model |
freeride auto -c 10 |
User wants more fallbacks (default is 5) |
freeride list |
User wants to see available free models |
freeride list -n 30 |
User wants to see all free models |
freeride switch <model> |
User wants a specific model (e.g. freeride switch qwen3-coder) |
freeride switch <model> -f |
Add specific model as fallback only |
freeride status |
Check current FreeRide configuration |
freeride fallbacks |
Update only the fallback models |
freeride refresh |
Force refresh the cached model list |
After any command that changes config, always run openclaw gateway restart.
FreeRide updates only these keys in ~/.openclaw/openclaw.json:
agents.defaults.model.primary — e.g. openrouter/qwen/qwen3-coder:freeagents.defaults.model.fallbacks — e.g. ["openrouter/free", "nvidia/nemotron:free", ...]agents.defaults.models — allowlist so /model command shows the free modelsEverything else (gateway, channels, plugins, env, customInstructions, named agents) is preserved.
The first fallback is always openrouter/free — OpenRouter's smart router that auto-picks the best available model based on the request.
For auto-rotation when rate limited, the user can run:
freeride-watcher --daemon # Continuous monitoring
freeride-watcher --rotate # Force rotate now
freeride-watcher --status # Check rotation history
| Problem | Fix |
|---|---|
freeride: command not found |
cd ~/.openclaw/workspace/skills/free-ride && pip install -e . |
OPENROUTER_API_KEY not set |
User needs a key from https://openrouter.ai/keys |
| Changes not taking effect | openclaw gateway restart then /new for fresh session |
| Agent shows 0 tokens | Check freeride status — primary should be openrouter/<provider>/<model>:free |