Cómo usar dos cuentas de Claude AI al mismo tiempo en Mac
Una forma limpia de usar una cuenta personal y otra de trabajo de Claude en macOS: dos apps separadas, configuraciones aisladas y sesiones activas en paralelo.
Sí, puedes usar dos cuentas de Claude al mismo tiempo en Mac. Instala Claude Desktop dos veces como dos apps separadas. Luego lanza la segunda app con --user-data-dir apuntando a una carpeta distinta, como ~/Library/Application Support/Claude-Work. Para el uso diario, envuelve el ejecutable de la app copiada para que los lanzamientos desde Finder, Spotlight y el Dock pasen ese flag automáticamente. Para Claude Code en la terminal, usa un CLAUDE_CONFIG_DIR distinto para cada cuenta. Cada instalación mantiene su propio inicio de sesión, historial, memoria y configuración de MCP.
El problema
Claude Code almacena tokens de autenticación, historial de sesión, configuraciones de MCP, archivos de memoria y ajustes de proyectos en ~/.claude. Si usas dos cuentas de Anthropic, cambiar entre ellas implica ejecutar /login con frecuencia, lo que borra la sesión anterior.
La mayoría de las soluciones proponen un alias de terminal con CLAUDE_CONFIG_DIR apuntando a una ruta distinta. Eso funciona en la terminal. No resuelve el problema con la app de escritorio. Claude Desktop no tiene un selector de cuentas integrado.
La solución real: dos instalaciones
La solución más limpia es instalar Claude Desktop dos veces como dos bundles .app separados en tu Mac. macOS trata cada bundle como una app independiente. Puedes llamar a la segunda Claude Work, Claude 2 o lo que mejor encaje en tu flujo de trabajo.
Al hacer esto, macOS asigna automáticamente a cada app su propio directorio de Application Support. Claude Desktop usa ~/Library/Application Support/Claude/ para la primera instalación y ~/Library/Application Support/Claude-Work/ (o el nombre que hayas elegido) para la segunda. Las credenciales, la memoria, las sesiones y las configuraciones de MCP son completamente independientes entre ambas.
Lanzar la segunda app con la configuración correcta
El flag clave es --user-data-dir, un argumento a nivel de Electron que indica a la app qué directorio usar para todos los datos persistentes. Primero, crea la segunda copia (de lo contrario el comando open falla con "Unable to find application named 'Claude 2'"):
cp -R "/Applications/Claude.app" "/Applications/Claude 2.app"Luego abre esa segunda instalación de Claude y asegúrate de que siempre apunte a su propia configuración:
open -n -a "Claude 2" --args --user-data-dir="$HOME/Library/Application Support/Claude-Work"El flag -n fuerza una nueva instancia aunque ya haya una app con ese nombre en ejecución. Esto es útil para pruebas, pero un doble clic normal no pasa --user-data-dir. Para el uso diario, envuelve el ejecutable de la app copiada para que el flag se inyecte automáticamente cada vez que la abres desde Finder, Spotlight o el Dock.
Atajos para terminal y escritorio
Escribir el prefijo completo de la variable de entorno o el comando open cada vez es poco práctico. Cuatro alias de shell reducen cada lanzamiento a una sola palabra.
Para la terminal, cada alias apunta a un directorio de configuración separado para que las dos cuentas no compartan tokens, historial ni archivos de memoria:
alias claude-personal='CLAUDE_CONFIG_DIR=~/.claude-personal claude'
alias claude-work='CLAUDE_CONFIG_DIR=~/.claude-work claude'Para las apps de escritorio, cada alias llama a open con el --user-data-dir correcto ya incluido. El flag -n garantiza que se abra una nueva ventana aunque la app ya esté en ejecución:
alias open-claude='open -n -a "Claude" --args --user-data-dir="$HOME/Library/Application Support/Claude-Personal"'
alias open-claude-work='open -n -a "Claude Work" --args --user-data-dir="$HOME/Library/Application Support/Claude-Work"'Recarga el shell después de añadirlos:
source ~/.zshrcLa primera vez que ejecutes claude-work, escribe /login para autenticarte con la cuenta de trabajo. Después, ambos alias funcionan en paralelo en pestañas separadas sin interferencias.
Los alias de escritorio requieren los dos bundles de app de la siguiente sección. Sin el ejecutable wrapper, --user-data-dir se ignora silenciosamente y ambos alias abren la misma app.
No necesitas los alias si solo usas la cuenta de trabajo ocasionalmente. Puedes pasar la variable de entorno en línea sin configurar nada de forma permanente:
CLAUDE_CONFIG_DIR=$HOME/.claude-work claudeVerificar qué cuenta está activa
Con dos configuraciones en uso es fácil perder la pista de qué cuenta está usando una sesión de terminal. La forma más rápida de comprobarlo es ejecutar /status dentro del CLI. Muestra la cuenta activa y el plan.
También puedes leerlo desde el shell sin abrir Claude:
# Personal (predeterminada)
python3 -c "import json,os;print(json.load(open(os.path.expanduser('~/.claude/.claude.json')))['oauthAccount']['emailAddress'])"# Trabajo
python3 -c "import json,os;print(json.load(open(os.path.expanduser('~/.claude-work/.claude.json')))['oauthAccount']['emailAddress'])"Si el directorio de configuración existe pero el email aparece vacío, esa cuenta todavía no ha ejecutado /login. Que el directorio esté presente no significa que esté autenticada.
Asegúrate de que la facturación va a la cuenta correcta
CLAUDE_CONFIG_DIR aísla la suscripción a la que te conectas, pero una variable de entorno puede saltarse todo silenciosamente: ANTHROPIC_API_KEY.
Si ANTHROPIC_API_KEY (o ANTHROPIC_AUTH_TOKEN, o los flags equivalentes de Bedrock/Vertex) está definida en tu shell, el CLI usa esa clave para la facturación e ignora completamente tu inicio de sesión por suscripción. Puedes estar conectado a tu cuenta Max y aun así ser facturado por token contra una API key sin darte cuenta.
Comprueba antes de empezar:
echo "¿API key configurada? ${ANTHROPIC_API_KEY:+SÍ}"Si imprime SÍ y quieres facturación por suscripción, desactívala para esa sesión:
unset ANTHROPIC_API_KEYTambién puedes confirmar el modo de facturación activo inspeccionando el campo billingType en el JSON de configuración. Un valor de stripe_subscription indica que la suscripción está activa, no una API key.
Convertirla en una app real: nombre e icono personalizados
Lanzar con un flag funciona. También puedes convertir la segunda instalación en una app separada con su propio nombre, icono en el Dock y grupo de notificaciones. Una app de Mac es una carpeta, y su identidad reside en Contents/Info.plist.
Primero, duplica la app con un nuevo nombre:
cp -R "/Applications/Claude.app" "/Applications/Claude Work.app"Luego dale a la copia su propia identidad. CFBundleIdentifier es el campo clave. Sin él, macOS trata ambas apps como una sola. Lee primero el id original y luego establece nuevos valores en la copia:
defaults read "/Applications/Claude.app/Contents/Info" CFBundleIdentifierplist="/Applications/Claude Work.app/Contents/Info.plist"
/usr/libexec/PlistBuddy -c "Set :CFBundleName 'Claude Work'" "$plist"
/usr/libexec/PlistBuddy -c "Set :CFBundleDisplayName 'Claude Work'" "$plist"
/usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier 'com.anthropic.claude.work'" "$plist"Cambia el icono reemplazando el .icns al que hace referencia el bundle:
cp "MiIcono.icns" "/Applications/Claude Work.app/Contents/Resources/AppIcon.icns"Para que la apertura normal funcione, envuelve el ejecutable copiado. Esto mantiene el nombre de la app, pero redirige cada lanzamiento al binario real de Claude con --user-data-dir ya incluido:
app="/Applications/Claude Work.app"
exe="$app/Contents/MacOS/Claude"
real="$app/Contents/MacOS/Claude.real"
mv "$exe" "$real"
printf "%s\n" "#!/bin/zsh" \
'APP_DIR="$(cd "$(dirname "$0")" && pwd)"' \
'exec "$APP_DIR/Claude.real" --user-data-dir="$HOME/Library/Application Support/Claude-Work" "$@"' > "$exe"
chmod +x "$exe"Editar el bundle invalida la firma de código de Apple. Vuelve a firmarlo ad-hoc y actualiza las cachés de iconos y Launch Services para que macOS detecte los cambios:
codesign --force --deep --sign - "/Applications/Claude Work.app"
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f "/Applications/Claude Work.app"
killall Dock FinderAhora abre la segunda app normalmente y el wrapper siempre la apuntará a su propio directorio de datos:
open "/Applications/Claude Work.app"Si prefieres un script, he automatizado todo el proceso en un único comando — consulta el script complementario al inicio de este artículo.
Solución de problemas
Firma de código: si la app renombrada se niega a abrirse o Gatekeeper la bloquea, omitiste el paso de firma ad-hoc. Ejecuta de nuevo el comando codesign después de cualquier edición al bundle.
El icono no cambia: las versiones más recientes de Electron referencian el icono desde un catálogo de assets (Assets.car) mediante la clave CFBundleIconName en lugar de un AppIcon.icns suelto. Si el intercambio de archivo suelto no funciona, establece CFBundleIconFile a tu .icns con PlistBuddy y elimina la clave CFBundleIconName, luego actualiza las cachés de nuevo.
Las actualizaciones dejan la copia desactualizada: el actualizador automático de Claude solo actualiza la Claude.app original. Tu copia renombrada no se actualiza sola, así que vuelve a ejecutar la duplicación (o el modo --update del script) después de cada nueva versión para mantenerte al día.
El inicio de sesión va a la ventana equivocada: Claude se autentica mediante deep links claude://, y con dos instancias abiertas macOS puede enviar el login a la equivocada. La solución más sencilla es cerrar completamente la otra app (Cmd+Q) mientras inicias sesión en una instalación nueva.
Qué permanece separado
Cada app y alias del CLI mantiene sus propios datos: tokens de autenticación, sesión de cuenta, historial, archivos de memoria, notas de proyectos, configuración de MCP, permisos de Claude Code, tareas y hooks.
Lo único compartido es el propio binario de Claude Code (el ejecutable CLI en ~/.local/bin/claude). Ambas cuentas usan la misma versión de la herramienta. Solo difieren los directorios de datos.
Ideas clave
Instala Claude Desktop dos veces para un aislamiento real de cuentas a nivel de app.
Usa --user-data-dir para apuntar cada app a su propio directorio de configuración.
Envuelve el ejecutable de la app copiada para que los lanzamientos normales desde Dock/Finder pasen --user-data-dir automáticamente.
Cambia CFBundleIdentifier (más nombre e icono) para obtener una app separada en el Dock.
Los alias de shell reducen cada lanzamiento a una palabra. Renómbralos a lo que realmente vayas a recordar.
Ejecuta source ~/.zshrc después de añadir un alias para que la sesión de terminal actual lo detecte.
Ejecuta /status dentro del CLI para confirmar qué cuenta y plan están activos.
Desactiva ANTHROPIC_API_KEY si está definida y quieres facturación por suscripción, no por token.
Vuelve a firmar ad-hoc después de editar el bundle y vuelve a clonar después de cada actualización.
Ambas cuentas pueden ejecutarse simultáneamente sin necesidad de cerrar sesión.
Preguntas frecuentes
¿Se pueden usar dos cuentas de Claude al mismo tiempo en Mac?
Sí. Instala Claude Desktop como dos bundles de app separados, cada uno lanzado con su propio --user-data-dir, o usa la variable de entorno CLAUDE_CONFIG_DIR para el CLI de Claude Code. Ambas cuentas se ejecutan en paralelo con inicios de sesión separados y sin necesidad de cerrar sesión.
¿Cómo cambio entre dos cuentas de Anthropic sin cerrar sesión?
No cambias en absoluto. Dale a cada cuenta su propio directorio de configuración aislado: una segunda instalación de Claude Desktop con --user-data-dir, o un CLAUDE_CONFIG_DIR diferente para el CLI. Cada una mantiene su propia sesión, así que ambas permanecen conectadas simultáneamente.
¿Dónde almacena Claude su configuración en Mac?
Claude Code (el CLI) almacena todo en ~/.claude. Claude Desktop usa ~/Library/Application Support/Claude. Apuntar una segunda instalación a un directorio diferente es lo que hace que dos cuentas sean independientes.
¿Puedo usar una cuenta personal y una de trabajo de Claude simultáneamente?
Sí. Ejecuta tu cuenta personal desde la instalación predeterminada y la de trabajo desde una segunda instalación (o un segundo alias del CLI con su propio CLAUDE_CONFIG_DIR). Solo comparten el binario de Claude Code; las credenciales, la memoria y la configuración permanecen separadas.
¿Puedo darle a la segunda app de Claude su propio nombre e icono?
Sí. Duplica Claude.app y renómbrala. Edita los campos de su Info.plist: CFBundleName, CFBundleDisplayName y CFBundleIdentifier. macOS la tratará como una app separada con su propio icono en el Dock y notificaciones propias. El script complementario de este artículo automatiza todo el proceso.
Artículos relacionados
Comments
Be the first to comment.