Free Ride - Unlimited free AI
Manages free AI models from OpenRouter for OpenClaw. Automatically ranks models by quality, configures fallbacks for rate-limit handling, and updates opencla...
Shaishav Pidadi
@shaivpidadi
What This Skill Does
Automatically configures OpenClaw to use free AI models from OpenRouter by ranking them by quality, setting the best as primary, and adding fallbacks for rate-limit handling. Updates only the model-related keys in openclaw.json while preserving all other configuration.
Replaces manual model selection and fallback configuration by automatically finding, ranking, and switching between free AI models with live rate-limit recovery.
When to Use It
- Set up free AI models for OpenClaw when the user wants to reduce costs
- Switch to a specific free model like qwen3-coder
- Add more fallback models when the current chain keeps hitting rate limits
- Refresh the cached model list to get newly available free models
- Recover from a dead fallback chain where all models are rate-limited
- Check which free model is currently active and view the fallback configuration
Install
$ openclaw skills install @shaivpidadi/free-rideFreeRide - Free AI for OpenClaw
What This Skill Does
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.
Prerequisites
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
freerideCLI is installed. Check withwhich freeride. If not found:cd ~/.openclaw/workspace/skills/free-ride pip install -e .
Primary Workflow
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.
Commands Reference
| 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 |
freeride rotate | User is rate-limited / fallback chain is dead — live-test and rebuild |
After any command that changes config, always run openclaw gateway restart.
What It Writes to Config
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/modelcommand shows the free models
Everything 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.
Watcher (Background Daemon)
For autonomous recovery from a "whole chain is rate-limited" deadlock — which
the agent can't fix by itself, since calling freeride rotate requires
inference and inference is exactly what's failing — the user can run a slim
background daemon:
# Foreground
freeride-watcher
# Persistent background
nohup freeride-watcher > ~/.openclaw/freeride-watcher.log 2>&1 &
# One-shot check (no loop)
freeride-watcher --once
# State / history
freeride-watcher --status
The daemon probes the current primary every 60s; if it fails, it rebuilds the chain with live-verified models. Recommend this whenever the user is leaving an unattended OpenClaw setup running.
Troubleshooting
| 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 |
Top skills in this category
Playwright (Automation + MCP + Scraper)
@ivangdavilaAutomates, tests, and debugs browsers with Playwright: locators, auto-waiting, traces, CI runs, and MCP browser control. Use when a test is flaky, times out, or fails only in CI or headless; when a locator matches multiple elements or the wrong one (strict mode violation); when clicks need force, waits become sleeps, or networkidle never settles; for storageState and login setup, request mocking and HAR replay, uploads and downloads, iframes and shadow DOM, popups and dialogs, screenshot diffs that change per machine, trace and report artifacts, sharding a slow suite, device and permission emulation, accessibility checks, driving a real browser through Playwright MCP, extracting data from JS-rendered pages, or porting a Cypress, Puppeteer, or Selenium suite to Playwright. Not for maintaining an existing Cypress or Puppeteer suite (cypress, puppeteer) or for work a plain HTTP request answers (http).
n8n
@thomasansemsManage n8n workflows and automations via API. Use when working with n8n workflows, executions, or automation tasks - listing workflows, activating/deactivating, checking execution status, manually triggering workflows, or debugging automation issues.
Superpowers Dev Workflow
@wlshlad85Spec-first, TDD, subagent-driven software development workflow. Use when: (1) building any new feature or app — triggers brainstorm → plan → subagent executi...
Google Ads
@jdrhyneQuery, audit, and optimize Google Ads campaigns. Supports two modes: (1) API mode for bulk operations with google-ads Python SDK, (2) Browser automation mode for users without API access - just attach a browser tab to ads.google.com. Use when asked to check ad performance, pause campaigns/keywords, find wasted spend, audit conversion tracking, or optimize Google Ads accounts.
Claude Code Usage
@azaidi94Check Claude Code OAuth usage limits (session & weekly quotas). Use when user asks about Claude Code usage, remaining limits, rate limits, or how much Claude usage they have left. Includes automated session refresh reminders and reset detection monitoring.