Clutch Developer
ES
Book a call

Dos cuentas de Claude en un Mac: mi configuración personal y de trabajo

Una instalación de Claude, dos perfiles de escritorio y dos alias breves. Una guía práctica de macOS para mantener abiertas las cuentas personal y de trabajo en paralelo.

Uso Claude para proyectos personales y trabajo con clientes en el mismo Mac. Cerrar sesión cada vez que cambio de contexto interrumpe el día, y es muy fácil empezar una conversación en la cuenta equivocada. Mi configuración da a cada contexto su propio lanzador: Claude Personal y Claude Work. Desde Terminal, escribo ccp o ccw. Ambos lanzadores usan la misma instalación de Claude.app.

Esta guía explica la configuración de macOS detrás de esos accesos directos, incluido un pequeño lanzador de AppleScript que puedes inspeccionar antes de usarlo. Lo útil no es tener más ventanas, sino convertir la cuenta y su perfil de escritorio en una elección consciente antes de empezar a trabajar.

Este es un recurso de la comunidad para Claude Desktop en macOS, no una función oficial de Anthropic para cambiar de cuenta. Las actualizaciones de la aplicación pueden cambiar su comportamiento. Los lanzadores de abajo reproducen un perfil predeterminado para Personal y otro separado para Work; comprueba cada cuenta en la aplicación después de la configuración.

Versión breve: una app, dos perfiles de escritorio

  • Instala Claude Desktop en /Applications/Claude.app. Necesitas acceso a las cuentas personal y de trabajo que quieras usar.
  • Personal usa el perfil predeterminado existente en ~/Library/Application Support/Claude. Work usa ~/Library/Application Support/Claude-Work.
  • El comando open -n pide a macOS que inicie una instancia nueva. --args reenvía los argumentos restantes a la aplicación, y --user-data-dir selecciona el otro perfil de escritorio.
  • Los lanzadores de uso diario buscan primero el proceso principal correspondiente. Si existe, piden a System Events que lo traiga al frente; si no, lo inician.

1. Entiende los dos comandos de lanzamiento

Para el perfil personal predeterminado, el comando subyacente es:

open -n -a "/Applications/Claude.app"

Para el perfil de trabajo, es:

open -n -a "/Applications/Claude.app" --args --user-data-dir="$HOME/Library/Application Support/Claude-Work"

Estos comandos sirven para entender la configuración, pero ejecútalos solo cuando la instancia correspondiente se haya cerrado por completo. Repetir open -n no es un comando para cambiar de cuenta: solicita otro proceso. El lanzador de la sección siguiente añade una comprobación antes de hacerlo. Mantén las comillas alrededor de las rutas que contienen espacios y usa $HOME aquí; una tilde dentro de comillas dobles no se expande a tu directorio de inicio.

Un directorio de datos de usuario separado permite que la aplicación de escritorio mantenga una sesión local distinta y ajustes específicos del perfil. Inicia sesión con la cuenta de trabajo en la ventana de trabajo y confirma la cuenta que aparece allí. Las conversaciones disponibles desde tu cuenta siguen regidas por esa cuenta; crear una carpeta nueva no copia ni migra los chats almacenados en la nube.

2. Crea los lanzadores Claude Work y Claude Personal

Abre Script Editor en tu Mac y pega el siguiente AppleScript. Deja profileName como "Work" para el lanzador de trabajo. Elige File → Export, selecciona Application como formato de archivo y guárdalo como Claude Work.app en /Applications. Si ese nombre ya existe, inspecciona el lanzador existente antes de reemplazarlo. Deja desactivada la opción “Stay open after run handler”.

property profileName : "Work"

on run
    set appPath to "/Applications/Claude.app"
    set profileDir to (POSIX path of (path to home folder)) & "Library/Application Support/Claude-Work"
    set executablePath to appPath & "/Contents/MacOS/Claude"
    set selector to "personal"
    if profileName is "Work" then set selector to "work"

    set matcher to "$2 == exe && $0 !~ /--type=/ { if (mode == \"personal\" && index($0, \"--user-data-dir\") == 0) { print $1; exit } if (mode == \"work\") { marker = \"--user-data-dir=\" profile; pos = index($0, marker); tail = substr($0, pos + length(marker)); if (pos > 0 && (tail == \"\" || tail ~ /^[[:space:]]/)) { print $1; exit } } }"
    set lookup to "/bin/ps -axww -o pid=,command= | /usr/bin/awk -v exe=" & quoted form of executablePath & " -v mode=" & quoted form of selector & " -v profile=" & quoted form of profileDir & " " & quoted form of matcher
    set foundPid to do shell script lookup

    if foundPid is not "" then
        set targetPid to foundPid as integer
        tell application "System Events"
            set frontmost of (first application process whose unix id is targetPid) to true
        end tell
        return
    end if

    set launchCommand to "/usr/bin/open -n -a " & quoted form of appPath
    if selector is "work" then
        set launchCommand to launchCommand & " --args " & quoted form of ("--user-data-dir=" & profileDir)
    end if
    do shell script launchCommand
end run

Crea el segundo lanzador a partir del mismo script y cambia solo property profileName : "Work" por property profileName : "Personal". Expórtalo como Claude Personal.app en /Applications. Son pequeños applets de lanzamiento, no copias renombradas de la aplicación Claude. Puedes arrastrar ambos al Dock y, si quieres, dar a sus iconos colores distintos para diferenciar mejor los accesos directos.

En el primer intento de poner una ventana en primer plano, macOS puede pedir permiso al lanzador para controlar System Events. Permite esa automatización si quieres que el foco funcione al hacer clic. Si macOS informa de una restricción de accesibilidad, comprueba el acceso del lanzador en System Settings → Privacy & Security → Accessibility. El script se detiene si falla al poner la ventana en primer plano; no crea silenciosamente otra instancia como alternativa.

Este lanzador identifica el ejecutable principal de Claude y excluye los procesos auxiliares que llevan --type=. Personal identifica un proceso principal que utiliza el perfil predeterminado; Work identifica el directorio de trabajo. Es una comprobación práctica para clics normales y secuenciales, no un bloqueo atómico: evita hacer clic repetidamente mientras Claude todavía se está iniciando. Si un proceso sigue ejecutándose después de cerrar su última ventana, traerlo al frente puede no restaurar una ventana. Termina cualquier trabajo en segundo plano, cierra esa instancia normalmente y vuelve a iniciarla. El script no interrumpe el trabajo en segundo plano ni inicia un segundo proceso contra el mismo perfil.

3. Añade los alias ccp y ccw de Terminal

Estos son los dos accesos directos que uso. Añádelos a ~/.zshrc si usas zsh, el shell predeterminado en las versiones modernas de macOS:

alias ccp='open -a "Claude Personal"'
alias ccw='open -a "Claude Work"'

Abre una pestaña nueva de Terminal o recarga la configuración del shell:

source ~/.zshrc

Ahora ccp abre o pone en primer plano la instancia personal, y ccw abre o pone en primer plano la de trabajo. Los alias llaman a los wrappers sin -n; el wrapper decide si es necesario iniciar el proceso subyacente de Claude. Estos nombres son accesos directos propios, no comandos proporcionados por Anthropic. Requieren las dos aplicaciones lanzadoras creadas arriba.

4. Comprueba la configuración antes de confiar en ella

  1. Inicia sesión en una cuenta cada vez. Inicia Personal, comprueba la cuenta y ciérralo antes de iniciar sesión en Work por primera vez. De lo contrario, las devoluciones de llamada de inicio de sesión del navegador podrían llegar a una instancia inesperada. Cuando ambas sesiones estén establecidas, abre los dos lanzadores.
  2. Comprueba los argumentos de los procesos. Usa el comando siguiente para buscar los procesos principales. Work debería mostrar la ruta Claude-Work. Personal no debería tener una anulación de datos de usuario. Los ID de proceso son temporales; nunca escribas uno directamente en un lanzador.
  3. Comprueba el comportamiento del enfoque. Con ambas ventanas abiertas, vuelve a ejecutar ccp y ccw, de uno en uno. Cada uno debería traer al frente su ventana existente. Si aparece otro proceso o un duplicado con la sesión cerrada, detente y revisa la coincidencia de perfiles.
  4. Comprueba las integraciones por separado. Confirma la cuenta prevista, los servidores MCP y los permisos en cada perfil. Asigna a cada servidor o servicio de desarrollo un puerto distinto cuando sea necesario. Repite estas comprobaciones después de actualizar Claude.
ps -axww -o pid=,command= | grep '[C]laude.app/Contents/MacOS/Claude' | grep -v -- '--type='

Para inspeccionar más adelante un applet de AppleScript, descompila su script:

osadecompile '/Applications/Claude Work.app/Contents/Resources/Scripts/main.scpt'

Ese comando se aplica a los applets exportados desde Script Editor. Un wrapper basado en shell puede guardar su lanzador en otro lugar. Evita compartir listados de procesos o contenidos de perfiles sin filtrar: podrían exponer rutas locales o detalles de integraciones que no corresponden a un hilo público de soporte.

Qué separa esto y qué no

El objetivo es mantener separados los contextos de escritorio: un inicio de sesión personal y sus ajustes de perfil junto a un inicio de sesión de trabajo y sus ajustes. Ambos siguen ejecutándose con el mismo usuario de macOS. Pueden acceder a los archivos permitidos para ese usuario y a cualquier herramienta que autorices. Los repositorios compartidos, las variables de entorno, las credenciales externas de MCP y los servicios de red no quedan aislados solo porque el perfil de escritorio tenga otro nombre.

En particular, esta guía no configura la CLI independiente de Claude Code. Su configuración usa un mecanismo distinto, incluido CLAUDE_CONFIG_DIR, descrito en la documentación oficial de configuración de Claude Code. No des por hecho que estos alias de escritorio separan todas las credenciales, permisos o configuraciones de proyecto de la CLI. Si dos agentes van a editar el mismo proyecto, dales worktrees o checkouts de Git separados y una división clara del trabajo.

Mantener Personal en el perfil de escritorio predeterminado resulta cómodo si ya tienes una sesión iniciada, pero también significa que al abrir el icono estándar de Claude puedes dirigirte a ese perfil. Usa los lanzadores con nombre de forma coherente. En una instalación nueva, otra opción es dar a Personal su propio directorio explícito; para ello hay que cambiar a la vez su comando de lanzamiento y el comprobador de procesos. No muevas ni copies un perfil activo mientras Claude lo esté usando.

Preguntas frecuentes

¿Tengo que instalar Claude dos veces?

No para esta configuración. Ambos applets abren /Applications/Claude.app. La instalación de la aplicación es compartida; los directorios de datos de escritorio son distintos. Al actualizar la aplicación principal se actualiza el binario que usan ambos lanzadores, aunque después de la actualización conviene comprobar rápidamente el comportamiento de esta solución alternativa.

¿Aumenta esto mi límite de uso?

No. Un lanzador no cambia una suscripción, añade créditos ni restablece un límite. Cada cuenta conserva el acceso y los límites de uso que le correspondan. La ventaja es poder mantener disponibles los contextos personal y de trabajo sin cerrar sesión repetidamente.

¿Por qué un clic abrió una ventana con la sesión cerrada?

Una posibilidad que conviene comprobar es que más de un proceso esté usando el mismo perfil. Guarda tu trabajo, cierra normalmente las instancias afectadas y vuelve a abrir una sola vez el lanzador previsto. Comprueba también los permisos de automatización y el directorio exacto del comando de lanzamiento. Reinstalar o borrar carpetas de perfiles no debería ser la primera respuesta.

Fuentes y reconocimiento

El enfoque basado en el indicador de perfil lo describe Philipp Stracker. El gist del lanzador de aoxborrow explora los lanzadores con nombre y el comportamiento del enfoque; su versión actual usa una distribución de directorios distinta de la mía. El AppleScript anterior es una implementación compacta para las rutas específicas de este artículo. La guía de Melkon cubre otro enfoque que implica copiar paquetes de aplicaciones. No necesitas sus pasos de modificación del paquete para esta configuración.

¿Usas IA para avanzar más rápido? Asegúrate de que el código esté a la altura.

Un flujo de trabajo de IA mejor te ayuda a moverte entre proyectos. No te dice si la aplicación resultante tiene una arquitectura sólida, gestiona bien los datos o está lista para salir al mercado. Si has heredado una base de código, has creado un MVP con IA o has llegado al punto en que cada cambio parece frágil, es un buen momento para una revisión independiente.

Mi servicio de auditoría de código para móviles y web revisa la arquitectura, la gestión del estado, el rendimiento, los posibles puntos de exposición de seguridad y la preparación para el lanzamiento. Recibes un informe escrito, clasificado por gravedad, con correcciones recomendadas y una sesión guiada en directo, para que puedas decidir qué merece atención primero. Acordamos el alcance antes de la revisión; la implementación de las correcciones puede ser un encargo independiente.

También ayudo a equipos con la adopción y el despliegue de IA y el desarrollo de productos con IA. Cuéntame sobre tu aplicación y solicita una auditoría de código. Indica el stack, la fase del producto y la parte en la que menos confías; juntos definiremos un alcance útil.