Communitygithub.com

Codex Multi-Profile (Windows)

Utilitário não oficial para contas múltiplas no Codex Desktop no Windows, mantendo um espaço de trabalho compartilhado com logins separados do ChatGPT.

O que é Codex Multi-Profile (Windows)?

Esta skill permite que usuários do Codex Desktop no Windows gerenciem múltiplas contas do ChatGPT em um único espaço de trabalho compartilhado. Ela resolve uma limitação do aplicativo oficial, que geralmente ignora a variável de ambiente `CODEX_HOME` e lê o arquivo `auth.json` do diretório padrão `~/.codex`. A skill implementa uma técnica chamada AuthSwap, que alterna os tokens de autenticação entre perfis, garantindo que o aplicativo leia a conta correta. Suporta Windows e é gerenciada via scripts PowerShell, que cuidam desde a criação de novos perfis até a restauração do perfil principal. É útil para desenvolvedores que precisam alternar entre contas sem perder sessões, habilidades, MCP, memórias e projetos, que permanecem centralizados no diretório `%USERPROFILE%\.codex`.

Funciona com~Claude Code✓Codex CLI~Cursor
npx skills add Hung2124/codex-multi-profile

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Codex Multi-Profile (Windows) faz?

Utilitário não oficial para Codex Desktop no Windows quando você precisa de mais de um login do ChatGPT e ainda quer um espaço de trabalho compartilhado.

Padrão: ShareLive + AuthSwap

ComponenteOnde fica
Sessões, skills, MCP, memórias, projetosSempre %USERPROFILE%\.codex
Contaprofiles\<nome>\auth.json, trocado para ~\.codex\auth.json na inicialização
Ao fecharO observador salva a auth secundária de volta e restaura o auth.json principal
UI do Electron--user-data-dir=profiles\<nome> (raiz do perfil, não uma pasta electron\ aninhada)

Não abra o Codex da Loja principal e um perfil ao mesmo tempo.

Por que AuthSwap (e não um segundo CODEX_HOME)

O app-servidor Desktop às vezes ignora CODEX_HOME e lê ~\.codex\auth.json de qualquer forma. Um segundo home então mostra a conta principal. AuthSwap coloca o token secundário no caminho que o aplicativo realmente lê.

Regras de inicialização (verificadas)

  1. Não execute executáveis de WindowsApps (Acesso Negado). Clone ChatGPT.exe primeiro.
  2. O ponto de entrada é ChatGPT.exe. Codex.exe sai com código 1.
  3. Get-AppxPackage.InstallLocation pode estar vazio — prefira um clone local existente.
  4. Defina ambas CODEX_ELECTRON_USER_DATA_PATH e --user-data-dir para a raiz do perfil.
  5. Não confie em Start-Process herdando $env:CODEX_HOME. Escreva um .cmd com set e start.
  6. Set-Content -Encoding UTF8 do PowerShell 5.1 escreve um BOM. Isso pode invalidar config.toml. Use [IO.File]::WriteAllText(..., UTF8Encoding $false).
  7. Nunca defina um CODEX_HOME persistente no nível do usuário.
  8. Nunca copie auth.json entre máquinas ou para dentro de git.

Caminhos

ItemCaminho
Raiz de instalação%LOCALAPPDATA%\CodexParallelDesktop
Módulo compartilhadoCodexMultiProfile.psm1
Inicializador de perfilLaunch-CodexProfile.ps1
Restaurar principalLaunch-CodexMain.ps1
GerenciadorCodexProfile.ps1 (new, list, stop, shortcut, launch)
Perfis...\profiles\<nome>\
Clone...\versions\<ver>\app\ChatGPT.exe
Home compartilhado%USERPROFILE%\.codex

Comandos

$root = "$env:LOCALAPPDATA\CodexParallelDesktop"

# Inicialização recomendada (AuthSwap)
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\Launch-CodexProfile.ps1" -Name codex1

# Restaurar Codex principal da Loja
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\Launch-CodexMain.ps1"

# Gerenciador
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action new -Name codex2
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action list
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action status
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action verify
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action stop -Name codex1

Fluxo de trabalho do agente

  1. "Trocar conta / manter meus dados" → AuthSwap via Launch-CodexProfile.ps1.
  2. "Criar outro perfil" → -Action new, depois inicie com Launch-CodexProfile.ps1.
  3. Conta errada na interface → compare os e-mails nos dois arquivos auth.json; corrija a inicialização (wrapper cmd); não diga ao usuário para fazer login novamente se a auth do perfil ainda for válida.
  4. Acesso Negado / caminho vazio / saída 1 → clone ChatGPT.exe, nunca WindowsApps, nunca InstallLocation vazio.
  5. Após editar scripts, copie CodexMultiProfile.psm1 e os inicializadores para %LOCALAPPDATA%\CodexParallelDesktop e para scripts\ dentro desta skill. Inicializadores importam o módulo de $PSScriptRoot.
  6. "Está instalado / qual conta está ativa?" → -Action status (e-mails são mascarados) depois -Action verify.

Auth de perfil corrompida

Se o usuário abrir o Codex Main enquanto um perfil ainda estiver em execução, a restauração pode escrever o token principal em profiles\<nome>\auth.json.

Proteções já nos scripts:

  • O observador / Launch-CodexMain só salva a auth do perfil quando o e-mail ativo difere de auth.json.__main__
  • Mantenha auth.json.secondary.bak
  • Se a auth do perfil estiver ausente ou igual à principal → inicialização bootstrap (limpe a auth ativa, force o login secundário)

Não fazer

  • Copiar ou commitar auth.json
  • Abrir o Main e o perfil ShareLive juntos
  • Iniciar Codex.exe ou um caminho WindowsApps
  • Start-Process sem um cmd explícito/CODEX_HOME
  • Escrever config.toml com Set-Content -Encoding UTF8 no Windows PowerShell 5.1

Detalhes: docs/architecture.md, docs/troubleshooting.md.

Habilidades Relacionadas