Session Migrate
Migrate coding agent sessions across 18 harnesses (Claude Code, Codex, Pi, OpenCode, Copilot, Antigravity, Vibe, Muse, Qwen, Kimi, Cursor, etc.)
Install
git clone https://github.com/xhluca/session-migrateInstall command taken from the project's README or registry entry. Always review code before running it.
README excerpt
Read full README on GitHub →Migrate your sessions to any harness.
Move coding agent sessions among Claude Code, Codex, Pi, Oh My Pi, OpenCode, GitHub Copilot CLI, Antigravity CLI, Cursor Agent, Mistral Vibe, Muse Code, Qwen Code, and Kimi Code, Grok, Kilo Code, OpenHands, Hermes Agent, MastraCode, and Devin.
Install
curl -LsSf https://session-migrate.github.io/install.sh | sh
Or install with uv:
uv tool install session-migrate
pipx install session-migrate works too. Python 3.11+ and Linux are currently
supported. The full command is session-migrate; smigrate is the shorthand.
Already installed? Run uv tool upgrade session-migrate.
Quick start
Inspect any native transcript without printing its conversation:
smigrate inspect ~/.claude/projects/-work/SESSION.jsonl
Move a Claude session into Codex and resume it from the same project directory:
smigrate transfer SESSION_UUID --from claude --to codex --cwd "$PWD"
codex resume NEW_SESSION_UUID
Or find an older session by its native title/name first:
smigrate catalog refresh
smigrate catalog search "oauth refresh" --format claude
smigrate transfer --title "oauth refresh" --from claude --to pi
Search is case-insensitive and every word must match, in any order. It searches native titles, names, and IDs—not conversation bodies. A few useful patterns:
# “Fix flaky PostgreSQL timeout” also matches this reversed keyword order.
smigrate catalog search "timeout postgres"
# Find a release conversation among archived Codex sessions from this month.
smigrate catalog search "release notes" --format codex \
--lifecycle archived --since 2026-08-01T00:00:00Z
# Opt in to matching a project directory when the title is vague.
smigrate catalog search "checkout api" --include-paths
catalog refresh is exhaustive inside the default, environment-selected,
registered, and explicitly discovered roots. It does not crawl your whole disk.
Give it to your coding agent
Choose the route on the project website, or replace the three bracketed values yourself:
Follow https://session-migrate.github.io/llms.txt to migrate a session from
[SOURCE]to[TARGET]. Session:[UUID OR TITLE]
The linked procedure is sandbox-tested with both Claude Code and Codex. See the agent workflow and verification.
Compatibility
Similar plugs
CLI proxy that reduces LLM token consumption by 60-90% on common dev commands. Single Rust binary, zero dependencies
Bash is all you need - A nano claude code–like 「agent harness」, built from 0 to 1
Documented system prompts from Anthropic - Claude Fable 5.1, Opus 5.5, Claude Design, Claude Code. OpenAI - ChatGPT GPT-6-Astra, Codex. Google - Gemini 3.8 Flash, 3.1 Pro,…
Wrap Antigravity, ChatGPT Codex, Claude Code, Grok Build, Muse Code, Devin as an OpenAI/Gemini/Claude/Codex compatible API service, allowing you to enjoy the free Gemini…