Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Free Ride - Unlimited free AI

v1.0.9

Manages free AI models from OpenRouter for OpenClaw. Automatically ranks models by quality, configures fallbacks for rate-limit handling, and updates opencla...

425· 59.1k·432 current·464 all-time
byShaishav Pidadi@shaivpidadi

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for shaivpidadi/free-ride.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Free Ride - Unlimited free AI" (shaivpidadi/free-ride) from ClawHub.
Skill page: https://clawhub.ai/shaivpidadi/free-ride
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required env vars: OPENROUTER_API_KEY
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Canonical install target

openclaw skills install shaivpidadi/free-ride

ClawHub CLI

Package manager switcher

npx clawhub@latest install free-ride
Security Scan
Capability signals
Requires sensitive credentials
These labels describe what authority the skill may exercise. They are separate from suspicious or malicious moderation verdicts.
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The name, description, requested network access (openrouter.ai) and the single secret (OPENROUTER_API_KEY) align with a tool that lists, ranks, and configures OpenRouter free models. However, the SKILL.md claims FreeRide 'preserves everything else' and only writes agents.defaults.model and agents.defaults.models, while the code's setup_openrouter_auth() will add an auth profile under config['auth']['profiles'] if missing. That is a functional change to the OpenClaw config not stated in the docs.
Instruction Scope
Runtime instructions (set OPENROUTER_API_KEY, pip install -e ., run 'freeride auto', restart gateway) are appropriate. The code reads the full OpenClaw config (~/.openclaw/openclaw.json) and may write cache and watcher state files (declared in SKILL.md). The mismatch is that the SKILL.md explicitly promises to only touch certain keys but the implementation also ensures an OpenRouter auth profile is present (modifies config['auth']). This is scope-creep relative to the documentation and should be disclosed to users.
Install Mechanism
Install is via local pip (pip install -e .) from the package included in the skill; setup.py only depends on requests. No remote, arbitrary downloads or obscure URLs are used. The skill.json contains an install helper (npx clawhub...) but nothing in the files indicates high-risk install behavior.
Credentials
Only OPENROUTER_API_KEY is required (env or stored in OpenClaw config). That matches the skill's purpose. The code supports multiple keys (JSON array) for rotation, which is reasonable for a tool intended to handle rate limits. No other secrets or unrelated credentials are requested.
Persistence & Privilege
The skill does not request always:true and is user-invocable. It will create and update files under ~/.openclaw (openclaw.json, .freeride-cache.json, .freeride-watcher-state.json). The watcher can run as a daemon and will periodically make network requests using your API key(s) to probe models and rotate them. This long-running behavior is expected for auto-rotation but increases the blast radius if the keys are compromised or misused—users should be aware before enabling the daemon.
Scan Findings in Context
[no_findings] expected: No pre-scan injection signals were detected. The code performs network requests to openrouter.ai and filesystem reads/writes under ~/.openclaw, which are expected for this skill.
What to consider before installing
This skill appears to do what it says (manage OpenRouter free models) and only needs your OpenRouter API key(s). Before installing: 1) Back up ~/.openclaw/openclaw.json (the skill will read and modify it). 2) Note the implementation will add an OpenRouter auth profile to your OpenClaw config (not highlighted in SKILL.md) and will create cache and watcher state files under ~/.openclaw. 3) If you enable the freeride-watcher daemon it will periodically use your key(s) to probe/rotate models — only enable if you trust the code and your keys. If you're unsure, inspect the included Python files locally (main.py and watcher.py) or run commands manually without the daemon. Overall: coherent functionality but the docs understate some config changes and the daemon behavior, so proceed with caution.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

Environment variables
OPENROUTER_API_KEYrequiredOpenRouter API key — get a free one at openrouter.ai/keys
latestvk973rxjm4hfndxhb97s3z985f584w8v3
59.1kdownloads
425stars
8versions
Updated 9h ago
v1.0.9
MIT-0

FreeRide - 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:

  1. 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-..."
    
  2. The freeride CLI is installed. Check with which 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

CommandWhen to use it
freeride autoUser wants free AI set up (most common)
freeride auto -fUser wants fallbacks but wants to keep their current primary model
freeride auto -c 10User wants more fallbacks (default is 5)
freeride listUser wants to see available free models
freeride list -n 30User wants to see all free models
freeride switch <model>User wants a specific model (e.g. freeride switch qwen3-coder)
freeride switch <model> -fAdd specific model as fallback only
freeride statusCheck current FreeRide configuration
freeride fallbacksUpdate only the fallback models
freeride refreshForce refresh the cached model list

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:free
  • agents.defaults.model.fallbacks — e.g. ["openrouter/free", "nvidia/nemotron:free", ...]
  • agents.defaults.models — allowlist so /model command 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 (Optional)

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

Troubleshooting

ProblemFix
freeride: command not foundcd ~/.openclaw/workspace/skills/free-ride && pip install -e .
OPENROUTER_API_KEY not setUser needs a key from https://openrouter.ai/keys
Changes not taking effectopenclaw gateway restart then /new for fresh session
Agent shows 0 tokensCheck freeride status — primary should be openrouter/<provider>/<model>:free

Comments

Loading comments...