switch-modes

Switch between AI models dynamically to optimize costs and performance. Use when the user says mode commands like "eco mode", "balanced mode", "smart mode", or "max mode", or when they want to check their current mode with "/modes status" or configure modes with "/modes setup".

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "switch-modes" with this command: npx skills add serudda/switch-modes

Switch Modes

Dynamically switch between AI models to optimize costs and performance.

When to Use This Skill

Activate this skill when the user mentions:

  • Mode switching commands: eco mode, balanced mode, smart mode, max mode
  • Status check: /modes status
  • Configuration: /modes setup

How It Works

The skill manages 4 predefined modes, each mapped to a specific model:

  • eco → Cheapest model (for summaries, quick questions)
  • balanced → Daily driver model (for general work)
  • smart → Powerful model (for complex reasoning)
  • max → Most powerful model (for critical tasks)

Configuration is stored in ~/.openclaw/workspace/switch-modes.json.

Step-by-Step Instructions

1. Detect Mode Commands

When the user message contains any of these patterns:

  • eco mode or eco (standalone)
  • balanced mode or balanced
  • smart mode or smart
  • max mode or max
  • /modes status
  • /modes setup

2. Handle Setup Command (/modes setup)

If the configuration file doesn't exist or user requests setup:

  1. Use AskUserQuestion to gather model preferences for each mode:

    • ECO mode: Recommend anthropic/claude-3.5-haiku
    • BALANCED mode: Recommend anthropic/claude-sonnet-4-5
    • SMART mode: Recommend anthropic/claude-opus-4-5
    • MAX mode: Recommend anthropic/claude-opus-4-6 or openai/o1-pro
  2. Create/update ~/.openclaw/workspace/switch-modes.json with the structure:

{
	"eco": "model-id",
	"balanced": "model-id",
	"smart": "model-id",
	"max": "model-id"
}
  1. Confirm setup completion to the user.

3. Handle Status Command (/modes status)

  1. Read the OpenClaw config at ~/.openclaw/openclaw.json to get current model
  2. Read ~/.openclaw/workspace/switch-modes.json to get mode mappings
  3. Determine which mode is currently active by matching the current model
  4. Display: ✅ Currently in [MODE] mode using [MODEL_ID]

4. Handle Mode Switch Commands

When user requests a mode switch:

  1. Read configuration:

    cat ~/.openclaw/workspace/switch-modes.json
    

    If file doesn't exist, prompt user to run /modes setup first.

  2. Get the target model from the config based on requested mode (eco/balanced/smart/max)

  3. Update OpenClaw config:

    • Read current config: ~/.openclaw/openclaw.json
    • Update the model field with the new model ID
    • Write back to ~/.openclaw/openclaw.json
  4. Confirm to user:

    ✅ [MODE] mode activated
    Now using: [MODEL_ID]
    

Examples

Example 1: Mode Switch

User: eco mode
Agent: [reads switch-modes.json, gets model for "eco"]
Agent: [updates openclaw.json with new model]
Agent: ✅ ECO mode activated
      Now using: anthropic/claude-3.5-haiku

Example 2: Status Check

User: /modes status
Agent: [reads openclaw.json for current model]
Agent: [reads switch-modes.json for mode mappings]
Agent: ✅ Currently in BALANCED mode using anthropic/claude-sonnet-4-5

Example 3: First Time Setup

User: /modes setup
Agent: [uses AskUserQuestion for each mode]
Agent: [creates ~/.openclaw/workspace/switch-modes.json]
Agent: ✅ Setup complete! You can now use:
      - eco mode
      - balanced mode
      - smart mode
      - max mode

File Locations

  • Configuration: ~/.openclaw/workspace/switch-modes.json
  • OpenClaw Config: ~/.openclaw/openclaw.json
  • Example Config: See example-config.json in skill directory

Common Edge Cases

  1. Config file missing: Prompt user to run /modes setup
  2. Invalid model ID: Show error and ask user to reconfigure that mode
  3. Model not available: Suggest checking API keys and model access in OpenClaw
  4. Ambiguous input: If just "eco" or "smart" without "mode", still treat as mode switch command
  5. Case insensitive: Accept "ECO MODE", "Eco Mode", "eco mode" all the same

Important Notes

  • Mode switching is instant - no restart required
  • Changes only affect the current session's default model
  • Preserve all other settings in openclaw.json when updating model
  • Always validate JSON before writing config files
  • Use absolute paths: ~/.openclaw/... not relative paths

Reference

For detailed troubleshooting, supported models list, and FAQ, see ./REFERENCE.md.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Charging Ledger

充电记录账本 - 从截图提取充电信息并记录,支持按周、月查询汇总。**快速暗号**: 充电记录、充电账本、充电汇总。**自然触发**: 记录充电、查询充电费用、充电统计。

Registry SourceRecently Updated
General

qg-skill-sync

从团队 Git 仓库同步最新技能到本机 OpenClaw。支持首次设置、定时自动更新、手动同步和卸载。当用户需要同步技能、设置技能同步、安装或更新团队技能,或提到「技能同步」「同步技能」时使用。

Registry SourceRecently Updated
General

Ad Manager

广告投放管理 - 自动管理广告投放、优化ROI、生成报告。适合:营销人员、电商运营。

Registry SourceRecently Updated