Was macht Codex Multi-Profil (Windows)?
Inoffizieller Helfer für Codex Desktop unter Windows, wenn Sie mehr als eine ChatGPT-Anmeldung benötigen, aber trotzdem einen gemeinsamen Arbeitsbereich haben möchten.
Standard: ShareLive + AuthSwap
| Komponente | Speicherort |
|---|---|
| Sitzungen, Skills, MCP, Erinnerungen, Projekte | Immer %USERPROFILE%\.codex |
| Konto | profiles\<name>\auth.json, wird beim Start in ~\\.codex\auth.json getauscht |
| Beim Schließen | Watcher speichert sekundäre Authentifizierung zurück und stellt dann die Haupt-auth.json wieder her |
| Electron-UI | --user-data-dir=profiles\<name> (Profil-root, kein verschachtelter electron\-Ordner) |
Öffnen Sie nicht den Haupt-Store-Codex und ein Profil gleichzeitig.
Warum AuthSwap (nicht ein zweites CODEX_HOME)
Der Desktop-App-Server ignoriert manchmal CODEX_HOME und liest trotzdem ~\\.codex\auth.json. Ein zweites Home zeigt dann das Haupt-Konto an. AuthSwap legt das sekundäre Token in den Pfad, den die App tatsächlich liest.
Startregeln (überprüft)
- Führen Sie keine ausführbaren Dateien aus
WindowsAppsaus (Zugriff verweigert). Klonen Sie zuerstChatGPT.exe. - Der Einstiegspunkt ist
ChatGPT.exe.Codex.exebeendet sich mit Exit-Code 1. Get-AppxPackage.InstallLocationkann leer sein – bevorzugen Sie einen vorhandenen lokalen Klon.- Setzen Sie sowohl
CODEX_ELECTRON_USER_DATA_PATHals auch--user-data-dirauf den Profil-Root. - Verlassen Sie sich nicht darauf, dass
Start-Process$env:CODEX_HOMEvererbt. Schreiben Sie eine.cmd-Datei mitsetundstart. - PowerShell 5.1
Set-Content -Encoding UTF8schreibt ein BOM. Das kannconfig.tomlungültig machen. Verwenden Sie[IO.File]::WriteAllText(..., UTF8Encoding $false). - Setzen Sie niemals ein dauerhaftes benutzerebenes
CODEX_HOME. - Kopieren Sie
auth.jsonniemals zwischen Maschinen oder in Git.
Pfade
| Objekt | Pfad |
|---|---|
| Installationsverzeichnis | %LOCALAPPDATA%\CodexParallelDesktop |
| Gemeinsames Modul | CodexMultiProfile.psm1 |
| Profil-Starter | Launch-CodexProfile.ps1 |
| Hauptprofil wiederherstellen | Launch-CodexMain.ps1 |
| Verwaltung | CodexProfile.ps1 (new, list, stop, shortcut, launch) |
| Profile | ...\profiles\<name>\ |
| Klon | ...\versions\<ver>\app\ChatGPT.exe |
| Gemeinsames Home | %USERPROFILE%\.codex |
Befehle
$root = "$env:LOCALAPPDATA\CodexParallelDesktop"
# Empfohlener Start (AuthSwap)
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\Launch-CodexProfile.ps1" -Name codex1
# Haupt-Store-Codex wiederherstellen
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\Launch-CodexMain.ps1"
# Verwaltung
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
Arbeitsablauf für den Assistenten
- "Konto wechseln / meine Daten behalten" → AuthSwap mittels
Launch-CodexProfile.ps1. - "Ein weiteres Profil erstellen" →
-Action new, dann starten mitLaunch-CodexProfile.ps1. - Falsches Konto in der Benutzeroberfläche → E-Mails in den beiden
auth.json-Dateien vergleichen; Start (cmd-Wrapper) reparieren; den Benutzer nicht auffordern, sich erneut anzumelden, wenn die Profil-Authentifizierung noch gültig ist. - Zugriff verweigert / leerer Pfad / Exit-Code 1 →
ChatGPT.exeklonen, niemalsWindowsApps, niemals leereInstallLocation. - Nach Bearbeiten von Skripten
CodexMultiProfile.psm1und die Starter in%LOCALAPPDATA%\CodexParallelDesktopund in dasscripts-Verzeichnis dieses Skills kopieren. Die Starter importieren das Modul aus$PSScriptRoot. - "Ist es installiert / welches Konto ist aktiv?" →
-Action status(E-Mails sind maskiert) dann-Action verify.
Vergiftete Profil-Authentifizierung
Wenn der Benutzer Codex Main öffnet, während ein Profil noch läuft, kann die Wiederherstellung das Haupt-Token in profiles\<name>\auth.json schreiben.
Die Skripte enthalten bereits Schutzmaßnahmen:
- Watcher /
Launch-CodexMainspeichern die Profil-Authentifizierung nur, wenn sich die aktive E-Mail vonauth.json.__main__unterscheidet. auth.json.secondary.bakwird aufgehoben.- Wenn die Profil-Authentifizierung fehlt oder gleich der Haupt-Authentifizierung ist → Bootstrap-Anmeldung (aktive Authentifizierung löschen, sekundäre Anmeldung erzwingen).
Nicht tun
auth.jsonkopieren oder committen- Haupt- und Profil-ShareLive gleichzeitig öffnen
Codex.exeoder einen Pfad inWindowsAppsstartenStart-Processohne explizites cmd/CODEX_HOMEconfig.tomlmitSet-Content -Encoding UTF8unter Windows PowerShell 5.1 schreiben
Details: docs/architecture.md, docs/troubleshooting.md.
### Konfiguration
name: codex-multi-profile
version: "1.0.0"
description: Windows Codex Desktop Multi-Account per AuthSwap. Gemeinsamer Arbeitsbereich, separate ChatGPT-Anmeldungen.