AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Codex Multi Profile

skill-hung2124-codex-multi-profile-codex-multi-profile · by Hung2124

>-

No reviews yet
0 installs
17 views
0.0% view→install

Install

$ agentstack add skill-hung2124-codex-multi-profile-codex-multi-profile

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-hung2124-codex-multi-profile-codex-multi-profile)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Codex Multi Profile? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Codex Multi-Profile (Windows)

Unofficial helper for Codex Desktop on Windows when you need more than one ChatGPT login and still want one shared workspace.

Default: ShareLive + AuthSwap

| Piece | Where it lives | |---|---| | Sessions, skills, MCP, memories, projects | Always %USERPROFILE%\.codex | | Account | profiles\\auth.json, swapped into ~\.codex\auth.json at launch | | On close | Watcher saves secondary auth back, then restores main auth.json | | Electron UI | --user-data-dir=profiles\ (profile root, not a nested electron\ folder) |

Do not open the main Store Codex and a profile at the same time.

Why AuthSwap (not a second CODEX_HOME)

The Desktop app-server sometimes ignores CODEX_HOME and reads ~\.codex\auth.json anyway. A second home then shows the main account. AuthSwap puts the secondary token in the path the app actually reads.

Launch rules (verified)

  1. Do not run executables from WindowsApps (Access Denied). Clone ChatGPT.exe first.
  2. Entry point is ChatGPT.exe. Codex.exe exits 1.
  3. Get-AppxPackage.InstallLocation can be empty — prefer an existing local clone.
  4. Set both CODEX_ELECTRON_USER_DATA_PATH and --user-data-dir to the profile root.
  5. Do not rely on Start-Process inheriting $env:CODEX_HOME. Write a .cmd with set and start.
  6. PowerShell 5.1 Set-Content -Encoding UTF8 writes a BOM. That can invalidate config.toml. Use [IO.File]::WriteAllText(..., UTF8Encoding $false).
  7. Never set a persistent user-level CODEX_HOME.
  8. Never copy auth.json between machines or into git.

Paths

| Item | Path | |---|---| | Install root | %LOCALAPPDATA%\CodexParallelDesktop | | Shared module | CodexMultiProfile.psm1 | | Profile launcher | Launch-CodexProfile.ps1 | | Restore main | Launch-CodexMain.ps1 | | Manager | CodexProfile.ps1 (new, list, stop, shortcut, launch) | | Profiles | ...\profiles\\ | | Clone | ...\versions\\app\ChatGPT.exe | | Shared home | %USERPROFILE%\.codex |

Commands

$root = "$env:LOCALAPPDATA\CodexParallelDesktop"

# Recommended launch (AuthSwap)
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\Launch-CodexProfile.ps1" -Name codex1

# Restore main Store Codex
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\Launch-CodexMain.ps1"

# Manager
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 status -AsJson
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action doctor
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action processes
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action repair
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action sync-check
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action diagnostics
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action verify
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action stop -Name codex1
powershell -NoProfile -ExecutionPolicy Bypass -File "$root\CodexProfile.ps1" -Action remove -Name codex2 -Force

Agent workflow

  1. "Switch account / keep my data" → AuthSwap via Launch-CodexProfile.ps1.
  2. "Create another profile" → -Action new, then launch with Launch-CodexProfile.ps1.
  3. Wrong account in the UI → compare emails in the two auth.json files; fix launch (cmd wrapper); do not tell the user to log in again if profile auth is still valid.
  4. Access Denied / empty path / exit 1 → clone ChatGPT.exe, never WindowsApps, never empty InstallLocation.
  5. After editing scripts, copy CodexMultiProfile.psm1 and the launchers into %LOCALAPPDATA%\CodexParallelDesktop and into scripts\ in this skill. Launchers import the module from $PSScriptRoot.
  6. "Is it installed / which account is active?" → -Action status (emails are masked) then -Action doctor / -Action verify.
  7. "Stuck on secondary account / stale lock" → -Action repair (close clones first).
  8. "Bug report" → -Action diagnostics or Redact-LaunchTrace.ps1.
  9. User wants a safe log for GitHub → Redact-LaunchTrace.ps1.

Poisoned profile auth

If the user opens Codex Main while a profile is still running, restore can write the main token into profiles\\auth.json.

Guards already in the scripts:

  • Watcher / Launch-CodexMain only save profile auth when the active email differs from auth.json.__main__
  • Keep auth.json.secondary.bak
  • If profile auth is missing or equals main → bootstrap login (clear active auth, force secondary sign-in)

Do not

  • Copy or commit auth.json
  • Open main + profile ShareLive together
  • Launch Codex.exe or a WindowsApps path
  • Start-Process without an explicit cmd/CODEX_HOME
  • Write config.toml with Set-Content -Encoding UTF8 on Windows PowerShell 5.1

Details: [docs/architecture.md](docs/architecture.md), [docs/troubleshooting.md](docs/troubleshooting.md).

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.