Claude Tips mascot
Claude Tips & Tricks
Claude Code intermediate

Switch Project Configurations with One Command

Swap entire Claude Code configurations (CLAUDE.md, rules, skills, settings) for different contexts like work, personal, or client projects.

If you work across multiple projects with different rules, switching configurations manually is tedious. Automate it.

#!/bin/bash
# switch-config.sh
CONFIG_DIR=~/.claude/configs
TARGET=${1:-default}

ln -sf "$CONFIG_DIR/$TARGET/settings.json" ~/.claude/settings.json
ln -sf "$CONFIG_DIR/$TARGET/CLAUDE.md" ./CLAUDE.md
echo "Switched to config: $TARGET"
# Set up config directories
mkdir -p ~/.claude/configs/{work,personal,client-acme}

Usage:

./switch-config.sh work
./switch-config.sh client-acme

What to Vary Per Config

  • CLAUDE.md: different coding standards, frameworks, conventions
  • settings.json: different permission levels, allowed tools, status line
  • skills/: different automation workflows per project type
  • rules/: different linting and review standards

ClaudeCTX Tool

ClaudeCTX wraps this pattern into a single command:

claudectx switch work
claudectx switch personal

Tip

Keep a default config that works for open-source and personal projects. Only create specialized configs when you actually need different rules.