explaingit

ip2a/memorph

26RustAudience · developerComplexity · 2/5ActiveSetup · easy

TLDR

A CLI and local web tool that copies a conversation session from one AI coding assistant into another, so you can switch between Claude Code, Codex, and OpenCode without losing context.

Mindmap

mindmap
  root((memorph))
    Inputs
      Source tool sessions
      Session IDs
      Provider filters
    Outputs
      Migrated sessions
      JSON export
      Markdown export
      HTML export
    Use Cases
      Switch coding assistants
      Back up conversations
      Search across sessions
      Restore from export
    Tech Stack
      Rust
      npm
      uv
      pip

Things people build with this

USE CASE 1

Move a Claude Code session into Codex and keep working from the same context

USE CASE 2

Export every coding session in a folder to Markdown for archival

USE CASE 3

Find a past session by title across all installed coding assistants

USE CASE 4

Back up a session as JSON before trying a risky refactor in another tool

Tech stack

Rustnpmuvpip

Getting it running

Difficulty · easy Time to first run · 5min

Install through npm, uv, pip, or run via npx and the CLI plus web UI are ready immediately.

In plain English

memorph is a session memory tool for people who use more than one AI coding assistant. The problem it solves is that each tool, like Claude Code, Codex, and OpenCode, keeps its own private record of your conversation history on disk, in its own format. If you build up useful context inside one of them and then want to continue the work in another, that context normally has to be copy-pasted by hand. memorph reads each tool's session storage and moves a conversation across, so the new tool starts up with the same history loaded. It ships both as a command-line tool and as a small local web page. You can install it through npm, uv, or pip, or run it without installing using npx. Running memorph web opens a browser interface where you pick a session from a list and click to migrate it; after the switch you can open the target tool and confirm the history is there. From the command line the main commands are list, switch, export, import, remove, rename, and find. The list command shows the sessions in the current working directory, with optional filters for each supported provider. The switch command takes a flag like --claude2codex or --opencode2claude and an optional session ID to copy one conversation from the source tool's storage into the target tool's storage. For portable backups, export writes a session out as JSON, Markdown, or HTML, and import reads any of those formats back into the chosen tool. find searches by directory, by session ID, or by title text, optionally restricted to one or more providers.

Copy-paste prompts

Prompt 1
Show me the exact memorph switch command to move my current Claude Code session into Codex
Prompt 2
Walk me through how memorph locates each tool's session storage on disk and what formats it expects
Prompt 3
Write a shell script that uses memorph export to back up all sessions in this repo to a daily folder
Prompt 4
Explain the difference between memorph web and the memorph CLI list and switch commands
Prompt 5
Add a new provider mapping to memorph for a hypothetical assistant called Foo Code
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.