Signing into the same ChatGPT/OpenAI account on a new Mac does not necessarily recreate your complete local Codex working environment.
Your account may be available while important work remains on the old machine: local conversations, project organization, custom skills, configuration, automations, unpushed branches, linked worktrees, stashes, and unfinished files.
This guide explains what to check, what a plain Git clone misses, and how to move the work without overwriting the new Mac's identity.
First: do not erase the old Mac
Keep the old Mac unchanged until you have opened important conversations and worked successfully from the new one. Maintain an independent backup too. A migration progress bar is not proof that every conversation, Git object, worktree, or untracked file arrived intact.
On the new Mac:
- Install Codex or the ChatGPT desktop app with Codex.
- Open it and sign in once.
- Keep the new installation's authentication and installation identity.
- Close Codex on both migration accounts before the final replacement step.
What actually needs to move?
There are two separate categories.
Local Codex state
Depending on your Codex version and setup, local state can include:
- active and archived conversations
- configuration and project organization
- rules, memories, skills, and automations
- local databases and transcript files
- references to workspace paths
A blanket copy of the old ~/.codex directory is risky because it can also replace machine-specific state. In particular, do not blindly overwrite the new Mac's auth.json or installation_id with the old Mac's values.
Workspace folders
A repository is more than the files visible in Finder. If you want to resume exactly where you stopped, selected workspace folders may need their complete .git directories plus:
- local branches and tags
- stashes and remote refs
- uncommitted and untracked files
- linked-worktree metadata
- alternate Git object locations
- project-specific skills or configuration
If everything important is committed and pushed, a fresh git clone may be enough. If not, cloning from the remote cannot recover work that never reached it.
Is rsync enough?
It can be—if you already know every relevant path, exclusion, dependency, ownership rule, backup step, and verification check.
The copy command is not the hard part. The hard part is answering:
- Did I include every workspace and linked worktree?
- Did I preserve the new Mac's login and installation identity?
- Are absolute paths different because the usernames changed?
- Did a cloud-storage placeholder look like a real local file?
- Was the transfer interrupted halfway through?
- Is the destination backup complete and readable?
- Can I prove the conversations and repositories are usable afterward?
A safer migration sequence
A defensible flow is:
- Inspect the old Mac and create a read-only plan.
- Select the workspace roots you actually need.
- Connect the Macs over SSH using a verified host fingerprint.
- Stage a resumable copy without changing the source.
- Back up the destination before replacing selected data.
- Install only after both Codex instances are closed.
- Verify conversation content, database integrity, Git state, and file counts.
- Retain the old Mac until the new environment has been proven in real use.
Wi-Fi, Ethernet, or a working USB-C/Thunderbolt network route can carry the SSH transfer. A cable by itself does not guarantee that macOS has created a usable network connection. Transfer time depends mostly on the amount of data and the actual route.
An interrupted staging transfer should be resumable. An ambiguous or failed verification should stop the process and leave the old Mac intact—not declare success.
The tool I built for this
I ran into this while changing Macs, so I built Codex Migrate around the sequence above.
The complete CLI and source are MIT licensed and free. It inventories local Codex state and selected workspaces, excludes the old machine's authentication identity, stages a resumable SSH transfer, requires a verified destination backup, and produces a readable verification report.
For people who do not want to clone source or work in Terminal, there is also a signed and Apple-notarized Mac beta for $49. It uses the same engine and adds the packaged app plus personal, best-effort migration and recovery help from me.
The app is currently for Apple silicon Macs. It is a migration tool, not continuous multi-device sync and not a merge tool for two independently active workspaces. Keep the old Mac and an independent backup.
Quick decision guide
- Clean repos, everything pushed: clone from Git and reinstall your tooling.
- Broad whole-account move: consider Apple Migration Assistant.
- You know the exact state and safety steps: manual rsync can work.
- Local Codex conversations plus unfinished project state: use a staged, backed-up, verified migration process.
If your Codex history appears empty on the new Mac, stop before deleting anything on the old one. Inventory first; copy second; verify before you trust the result.
Disclosure: I am the maintainer of Codex Migrate. It is an independent project and is not affiliated with or endorsed by OpenAI.

Top comments (0)