Substitute whichever pair you have. The source is the agent that stopped, the target is the one that hasn't: catchup fork codex --into claude, catchup fork cursor --into opencode, and so on across Claude Code, Codex, Cursor, Cline, Kimi, Antigravity (agy), OpenCode, and Pi Agent.
This does not raise or bypass any limit. The limited agent stays limited until it resets. What moves is the conversation. This only helps if you already have a second agent you can run — it buys continuity, not quota.
Send only the part that matters
The whole session is usually more than the next agent needs, and a long opening prompt costs context you would rather spend on the work:
--since-compact keeps the tail after the last compaction, which is normally exactly the stretch that was in flight when the limit hit. --last 20 keeps the last 20 exchanges instead.
If you would rather wait it out
When the limit resets in minutes, or the work depends on state the transcript cannot carry, resume the same agent instead:
Without --into, this delegates to the agent's own resume path and keeps real session state. It is the better option whenever waiting is acceptable — see the comparison.
Make the next time automatic
Install the skill once and the agents learn the command themselves:
After that you say "catch up on the last Claude session" in plain words and the agent runs the right invocation. No flags to remember at 4:50 on a Friday.
Questions
Does this get around the usage limit?
No, and nothing does. The limited agent stays limited until it resets. What moves is the conversation, so a different agent — one you already pay for separately — can carry on without you re-explaining the task.
What if I would rather wait for the limit to reset?
Then wait, and resume the same agent later with catchup fork <agent>. That path uses the agent's own resume mechanism and keeps real session state, which crossing agents cannot do.
How do I stop losing context to this in the first place?
Run catchup install-skill once. It writes catchup's SKILL.md for every detected agent, so the next agent can recover the previous session on its own when you ask it to catch up, without you remembering any flags.