Includes global state.vscdb, per-repo transcripts, workspace storage, composer exports, and restore scripts for a new machine. Co-authored-by: Cursor <cursoragent@cursor.com>
3.7 KiB
3.7 KiB
Инструкция для Cursor Agent (новый ноутбук)
Контекст пользователя
Пользователь Руслан переезжает на новый ноутбук. Репозитории клонируются в другие пути (другой $HOME, возможно другая структура каталогов). Нужно вернуть историю чатов Cursor в UI — те же треды в Agent/Composer при открытии тех же репозиториев.
Этот репозиторий — полный архив чатов с предыдущего ноутбука (cursor-chat-archive).
Что внутри архива
| Путь | Содержимое |
|---|---|
manifest.json |
Карта репозиторий → старые пути, workspace id, composer id |
source-profile.json |
Старый $HOME, Documents/repos |
global/state.vscdb |
Глобальная SQLite Cursor (все Composer-чаты) |
global/storage.json, ide_state.json |
Доп. состояние UI |
repos/<имя-репо>/agent-transcripts/ |
Agent-чаты (jsonl) |
repos/<имя-репо>/workspace-storage/<hash>/ |
Состояние воркспейса |
repos/<имя-репo>/composers/*.json |
Экспорт composer (читаемый бэкап) |
scripts/restore-archive.py |
Скрипт восстановления |
Старый профиль: /home/ruslanpi, репозитории: /home/ruslanpi/Documents/repos/<repo>.
Задача для агента
- Убедиться, что пользователь полностью закрыл Cursor.
- Клонировать этот репозиторий (если ещё не клонирован):
git clone git@91.108.237.249:komehdaht/cursor-chat-archive.git - Создать
restore-config.jsonизrestore-config.example.json:Пути должны совпадать с реальным расположением клонированных репозиториев.{ "new_home": "/home/НОВЫЙ_ПОЛЬЗОВАТЕЛЬ", "new_repos_root": "/home/НОВЫЙ_ПОЛЬЗОВАТЕЛЬ/Documents/repos" } - Запустить:
python3 scripts/restore-archive.py - Перезапустить Cursor, открыть папки репозиториев из
new_repos_root. - Проверить Agent sidebar — должны появиться старые чаты.
- Если чаты не видны: прочитать
~/.cursor/cursor-chat-restore-report.json, сверитьnew_workspace_idв отчёте сmanifest.json, при необходимости адаптировать пути вstate.vscdb(как делали дляmailgw-salt→ скриптfix-mailgw-chat-history.pyна старом ноуте).
Важно
- Имена папок репозиториев (
mailgw-salt,lmru--devops--argocd-apps, …) должны совпадать сrepos/в архиве. - Workspace id на новом пути =
md5("file://" + absolute_path)(три слэша:file:///home/...). - Slug проекта в
~/.cursor/projects/= путь без ведущего/, слэши заменены на-(напримерhome-user-Documents-repos-mailgw-salt). - Не пушить этот архив в корпоративный Git — только личная Gitea.
Если пользователь просит «подхватить чаты»
Кратко: восстановить из cursor-chat-archive через restore-archive.py, не создавать пустой workspace на старом пути.