Hey, it's me, josh - as a memoji

josh.miami

Two Claude Code tricks I actually use every day

Josh Echeverri
Josh Echeverri

Posted these on Threads recently and got enough questions that I wanted to write them up properly.

Switch between Claude Code accounts instantly

Claude Code uses one global config. If you work across multiple accounts (say, work and a personal OSS project), they share billing and auth by default. Annoying, and bad for IP ownership.

Two files control everything:

  • ~/.claude/settings.json - your config
  • ~/.claude.json - your auth session

Swap both and you're fully switched.

Save your profiles:

# Work
cp ~/.claude/settings.json ~/.claude/settings.work.json
cp ~/.claude.json ~/.claude.work.json

# Personal (after authenticating with that account)
cp ~/.claude/settings.json ~/.claude/settings.personal.json
cp ~/.claude.json ~/.claude.personal.json

Add to ~/.zshrc:

alias claude-work='
  cp ~/.claude/settings.work.json ~/.claude/settings.json &&
  cp ~/.claude.work.json ~/.claude.json &&
  echo "💼 Work"
'

alias claude-personal='
  cp ~/.claude/settings.personal.json ~/.claude/settings.json &&
  cp ~/.claude.personal.json ~/.claude.json &&
  echo "🏠 Personal"
'

Run claude-work or claude-personal and you're fully switched. Scale to as many profiles as you need.

Audio notifications when Claude finishes (Mac)

Claude Code has hooks that fire on certain events. You can use them to play macOS system sounds so you know when it's done or needs your attention without watching the terminal.

Add this to ~/.claude/settings.json:

"hooks": {
  "Stop": [
    {
      "matcher": "",
      "hooks": [
        {
          "type": "command",
          "command": "afplay /System/Library/Sounds/Glass.aiff",
          "async": true
        }
      ]
    }
  ],
  "Notification": [
    {
      "matcher": "",
      "hooks": [
        {
          "type": "command",
          "command": "afplay /System/Library/Sounds/Ping.aiff",
          "async": true
        }
      ]
    }
  ]
}

Glass plays when Claude stops. Ping when it needs your attention. Both are built into macOS, nothing to install.

To change the sound, swap the .aiff filename for anything in /System/Library/Sounds/.