Lattice
연구를 위한 작업공간
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Restore Claude desktop conversation history hidden by an account switch, and move it between Macs. macOS app.
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Switching Claude accounts hides your history. Take it with you.
A small macOS app with two buttons: back up one account, import into another.
That is the whole installation.
The first run takes about a minute: it creates a .venv inside the folder,
installs PySide6 into it, and starts the window. Every run after that opens
immediately. Nothing is installed into your system Python.README 전문 보기 ↗Switching Claude accounts hides your history. Take it with you.
A small macOS app with two buttons: back up one account, import into another.
git clone https://github.com/pokharnajay/claude-migrator.git
cd claude-migrator
python3 app.py
That is the whole installation.
The first run takes about a minute: it creates a .venv inside the folder,
installs PySide6 into it, and starts the window. Every run after that opens
immediately. Nothing is installed into your system Python.
Back Up and Import stay off while the Claude desktop app is running, because Claude holds these files open and rewrites them as it goes. The window has a Quit Claude button, and it notices on its own when Claude has gone.
python3 --version to check. macOS ships one; if it is too
old, brew install python or grab it from python.org..venv.venv/bin/pip install pyinstaller
.venv/bin/python packaging/build.py --install
Builds a self-contained Claude Migrator.app (Python and Qt inside, about
75 MB) and puts it in /Applications. Run it again after changing the code to
replace the installed copy.
Delete the .venv folder and try again:
rm -rf .venv
python3 app.py
~/Downloads/claude-app-backup-<timestamp>/.Open Claude and the chats are in the sidebar.
The old account was signed in on this Mac before, but you never backed it up? Its history is still on disk. Back up another account on this Mac… backs it up without signing in to it.
To move to another Mac, copy the backup folder across and import it there.
| Chats | Claude Code and Cowork conversations, which ones are archived, and the transcripts they need to open |
| Cowork | Memory, plugins, settings and artifacts |
| Scheduled tasks | The tasks themselves and their prompts |
| Setup | Desktop MCP servers and extensions; ~/.claude settings, CLAUDE.md, plugins, skills, agents and commands; MCP servers from ~/.claude.json |
Left out on purpose: sign-in state and tokens, caches, and the multi-gigabyte VM images Claude downloads again by itself. A backup is checked file by file against the original before it is called done.
Copies are APFS clones, so even gigabytes of transcripts take seconds and almost no extra disk until something changes.
The window counts runs of scheduled tasks separately from chats. A task that runs every twenty minutes leaves a session behind each time, so a raw count can be ten times the number of conversations you actually had.
One rule covers every file:
A chat is matched by its session file, so importing the same backup twice changes nothing the second time, and no chat is ever doubled. A chat you carried on after importing it keeps your newer turns.
The archive list, Cowork's artifacts and scheduled tasks are merged, not
replaced. MCP servers are added to ~/.claude.json unless one of the same
name is already there.
A backup of another account goes into the signed-in account's active workspace, which is the one Claude shows. A backup of the signed-in account itself goes back where it came from.
~/Downloads/claude-import-undo-<timestamp>/ at its original path.Everything happens on your Mac. The app makes no network requests — there is no networking code in it. Account e-mails are read from your own local files purely to label accounts in the window.
The one time anything is downloaded is the first run, when pip fetches
PySide6 from PyPI.
| Module | Responsibility |
|---|---|
app.py | Entry point — bootstraps the environment, opens the window |
storage.py | Finds accounts, workspaces and the signed-in account; counts chats |
identity.py | Resolves an account UUID to an e-mail and name |
backup.py | Makes and checks a backup folder |
restore.py | Validates a backup, plans an import, carries it out |
safety.py | Every write — containment, space, atomic placement, locking |
ui.py | The window |
.venv/bin/pip install pytest
QT_QPA_PLATFORM=offscreen .venv/bin/python -m pytest -q # 124 tests
Tests never touch real Claude data. They build a synthetic storage tree in a temp directory, including a planted token that must never reach a backup and damaged backups the importer has to refuse.
python3: command not found — install Python from
python.org or with brew install python.
The buttons are greyed out — Claude is still running. Press Quit Claude, or quit it yourself (⌘Q, and check it is not in the Dock).
"That is not a Claude Migrator backup" — choose the
claude-app-backup-… folder itself, not Downloads and not a folder inside it.
"The backup is incomplete" — a file was removed or changed since the backup was made, often by a partial copy between Macs. Copy the folder again, or make a new backup.
"Made by an older version" — folders named claude-backup-… come from the
previous version of this app. Make a new backup with Back Up.
Imported chats open empty — the chat came back but its transcript in
~/.claude/projects was already gone when the backup was made.
MIT — see LICENSE.
Not affiliated with Anthropic.