Skip to content

Instantly share code, notes, and snippets.

@lucianodiisouza
Created November 11, 2025 17:58
Show Gist options
  • Select an option

  • Save lucianodiisouza/285f28a7f0798de336d73fe3d438a65e to your computer and use it in GitHub Desktop.

Select an option

Save lucianodiisouza/285f28a7f0798de336d73fe3d438a65e to your computer and use it in GitHub Desktop.
cursor setup
Resumo das opções
1. Separar user-data-dir + abrir Chrome com perfil específico (simples e confiável)
2. Duplicar o app do Cursor no /Applications e usar --user-data-dir (isola tudo e é visualmente claro)
3. Criar outro usuário macOS (isolamento absoluto — mais pesado)
Vou focar nas duas primeiras (são práticas, rápidas e não exigem logout do seu macOS).
Pré-requisitos
• macOS (qualquer versão moderna)
• Terminal (app Terminal ou iTerm)
• Google Chrome (essa instrução presume Chrome — se usar outro browser, o conceito é o mesmo)
• Permissão para criar scripts em /usr/local/bin (ou outro diretório no seu PATH)
1) Criando um diretório separado para a conta da empresa
Abra o Terminal e rode:
mkdir -p ~/.cursor-firma
Esse diretório será usado como user-data-dir para a instância “Cursor Empresa”.
2) Encontrar o profile-directory do Chrome (nome exato)
Para garantir que o Chrome abra com o perfil correto, vamos mapear os perfis que existem no seu sistema.
Comando rápido (lista os diretórios):
ls -la ~/Library/"Application Support"/Google/Chrome
Você verá pastas como Default, Profile 1, Profile 2, etc.
Para mapear o nome legível do perfil para a pasta (recomendado)
Cole este script Python no Terminal — ele lê o Local State do Chrome e mostra qual pasta corresponde a cada nome de perfil:
python3 - <<'PY'
import json, pathlib, sys
p = pathlib.Path.home() / "Library/Application Support/Google/Chrome/Local State"
if not p.exists():
print("Arquivo Local State não encontrado em:", p)
sys.exit(1)
data = json.loads(p.read_text())
profiles = data.get("profile", {}).get("info_cache", {})
if not profiles:
print("Nenhum profile encontrado no Local State.")
else:
for dir_name, info in profiles.items():
name = info.get("name", "")
print(f"{dir_name} -> '{name}'")
PY
Exemplo de saída:
Default -> 'Pessoal'
Profile 1 -> 'Trabalho'
Profile 2 -> 'Firma'
Anote o dir_name que corresponde ao perfil que você usa para a conta da empresa — por exemplo: Profile 2.
3) Script prático: abrir o Chrome com o perfil da firma e abrir o Cursor com user-data-dir
Este é o método que eu recomendo primeiro. Ele garante que, quando o Cursor abrir a janela de login no navegador, o Chrome já está usando o perfil da empresa.
Crie um script cursor2 em /usr/local/bin:
sudo mkdir -p /usr/local/bin
sudo nano /usr/local/bin/cursor2
Cole o conteúdo abaixo (substitua Profile 2 pelo dir_name que você obteve no passo anterior):
#!/bin/bash
# Abre o Chrome no perfil da empresa
open -a "Google Chrome" --args --profile-directory="Profile 2"
# Aguarda um pouco para o Chrome subir (ajuste se necessário)
sleep 0.7
# Abre uma nova instância do Cursor com user-data-dir isolado
open -n /Applications/Cursor.app --args --user-data-dir="$HOME/.cursor-firma"
Salvar e sair (CTRL+O, Enter, CTRL+X) e então tornar executável:
sudo chmod +x /usr/local/bin/cursor2
Agora você pode executar cursor2 no Terminal. Depois de abrir, clique em “Login” no Cursor, e o navegador vai abrir usando o perfil da empresa (evitando que a sessão pessoal seja usada).
Dica: ajuste o sleep se seu Chrome demorar mais para abrir.
4) Método alternativo (isolar ainda mais): duplicar o app do Cursor
Se você preferir isolamento total (e um ícone separado na Dock), pode duplicar o app:
cp -R "/Applications/Cursor.app" "/Applications/Cursor Empresa.app"
Então crie o script cursor2 assim:
#!/bin/bash
open -n "/Applications/Cursor Empresa.app" --args --user-data-dir="$HOME/.cursor-firma"
Torne executável como antes.
Com esse método você tem duas aplicações tratadas pelo macOS como apps diferentes (ícones distintos, preferências separadas) e o user-data-dir garante que a sessão do Cursor fique isolada.
5) Automatizar alias para o cursor padrão
Se quiser que o comando cursor abra sua instância pessoal rapidamente, adicione isto ao seu ~/.zshrc (ou ~/.bashrc):
# alias para abrir Cursor pessoal (app normal)
alias cursor='open -a /Applications/Cursor.app'
Depois rode source ~/.zshrc (ou reinicie o Terminal).
6) Problemas comuns e como resolver
• As duas instâncias ainda abrem com a conta da firma — significa que o navegador tem a sessão da firma ativa no perfil que o Cursor está usando. Verifique se você abriu o Chrome no perfil correto antes do login do Cursor.
• O --profile-directory não funciona quando passado ao Cursor — isso pode ocorrer dependendo de como o app abre o link de login. A estratégia de primeiro abrir o Chrome com o perfil (open -a "Google Chrome" --args --profile-directory="Profile X") é a forma mais robusta.
• Permissão negada ao criar script em /usr/local/bin — use sudo para criar e mudar permissões.
• O app demora a abrir e o Cursor abre antes do Chrome — aumente o sleep (ex.: sleep 1.5) ou faça um loop que verifica se o Chrome está respondendo.
7) Conclusão
Combinando um user-data-dir isolado para o Cursor com a abertura do Chrome no perfil da empresa você consegue dois comandos simples:
• cursor → sua instância pessoal
• cursor2 → instância da firma (login separado)
Se preferir isolamento máximo, duplicar o app é uma solução prática e visualmente clara.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment