I ran out of usage in Claude on an afternoon and wanted to carry on working in ChatGPT, which I already use most days for Codex, but I quickly realised the two aren’t set up the same way.

The surface comparison is easy. The harder part is what actually survives the move from one tool to another.
What I was trying to move was the skills and projects I’d set up. A skill in Claude is a saved set of instructions that fires on its own when the work calls for it, so my writing rules apply without me pasting them in each time. A project is a workspace that holds its own instructions and files so everything in it shares the same context. When I went looking for the same setup in ChatGPT, on the same personal plan I already pay for, there wasn’t anything I could just switch on that did the skill part at all. It has projects, but they work differently, and the instructions you can attach to a project cap out at eight thousand characters, which the ones I’d written ran well past, so the setup I wanted to bring over simply wouldn’t fit in the box meant to hold it.
Every one of these tools now keeps a memory, a store of things it has picked up about you across conversations so you don’t have to reintroduce yourself each time. Switching between them is sold on the back of it: move your memory across and the new tool already knows you. Anthropic added an import for exactly this earlier in the year, where you paste a prompt into ChatGPT, it writes out what it reckons it knows about you, and you paste that back into Claude. It works, from what I’ve read, but memory is the one part of my setup I’d never want to move, because I keep the two apart on purpose and merging them would just muddy what I actually rely on from each.
The skill was the part I did want to move, and it turned out to be the one with nothing under it on my plan. ChatGPT does have a skills feature, but only on its business plans, not the personal Plus one I’m on. So I did what ChatGPT suggested when I asked: rebuild the skill as project instructions with the files attached. It could read my rules back accurately, but it followed them after writing instead of before, so I ended up checking by hand what the skill is supposed to check on its own. And in Claude a skill works in any chat I open, where this version only lived inside the one project.

The problem was not moving text. It was trying to move workflow enforcement into a place that did not have the same shape.
Editing was the one place it went the other way. In ChatGPT I can just change the words directly in the box instead of asking for another version, where Claude has me leave comments on a generated md file for it to redo. For a piece that was mostly there already, going in and fixing it myself was the easier of the two.
The code was the one place the shift was genuinely easy, because I write my site with Claude Code and set the repo up to work with Codex as well. That cost almost nothing, since both tools read their instructions from a file in the project rather than from anything saved inside the tool. I wrote mine Claude-first, in a CLAUDE.md that Claude Code reads, and then added an AGENTS.md, a shared format a lot of other coding tools have agreed to read, that points them back to the same setup. Codex picks it up, Cursor would, a good thirty other tools would, because they’ve all settled on reading that same file.
The code came across because that shared file was already there for it to arrive into, where the skills and the memory and the enforcement had nowhere equivalent to go on the ChatGPT side. I used to assume moving between tools would get easier as they grew more alike, but from this it looks less like similarity and more like whether there’s already something on the other side built to catch what you’re moving.
So mostly I’ve stopped trying to move the writing across, and wait for the Claude usage to reset instead. It’s less effort than rebuilding something that only half-works when it gets there.