switch-modes

0
0
Source

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".

Install

mkdir -p .claude/skills/switch-modes && curl -L -o skill.zip "https://mcp.directory/api/skills/download/7316" && unzip -o skill.zip -d .claude/skills/switch-modes && rm skill.zip

Installs to .claude/skills/switch-modes

About this skill

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.

You might also like

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

9521,094

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

846846

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

571699

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

548492

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

673466

fastapi-templates

wshobson

Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.

514280

Stay ahead of the MCP ecosystem

Get weekly updates on new skills and servers.