sync-hub
sync-hub
Небольшой локальный демон (только macOS — launchd, ~/Library/...), который централизует дословно историю твоих локальных ИИ-разговоров (Claude Code, Codex CLI, Claude Cowork, Antigravity, импорты Claude.ai/ChatGPT) в единую базу SQLite и предоставляет к ней доступ:
через веб-дашборд (дерево проектов, полнотекстовый поиск, просмотр чата, покрытие синхронизации, сортировка непривязанных сессий);
через MCP-сервер, который Claude Code, Codex и Antigravity могут напрямую запрашивать, чтобы получить точный контекст другого инструмента, никогда не резюмируя и не реконструируя, — всегда исходный текст.
Ничто никогда не угадывается: сессия, рабочая папка которой не соответствует ни одному известному проекту, попадает в бакет «Не назначено», видимый и сортируемый, а не привязывается по эвристике.
Зачем
Работа с несколькими ИИ-инструментами над одними и теми же проектами приводит к потере контекста при каждой смене инструмента. sync-hub ничего не синхронизирует в инструменты (он никогда не касается нативного хранилища другого инструмента) — он читает то, что уже существует локально, и делает эти данные доступными для запросов из любого инструмента, подключённого через MCP.
Related MCP server: flightlog
Установка
Требования: macOS, Node.js ≥ 20 (better-sqlite3 имеет prebuild для последних версий — в обычном случае инструменты компиляции не нужны).
git clone <url-de-ce-repo>
cd sync-hub
npm install
npm run build
./scripts/install_service.sh # installe un service launchd macOS (démarre à la connexion)Дашборд доступен по адресу http://127.0.0.1:4000 (по умолчанию только локально).
Для удаления: ./scripts/uninstall_service.sh.
Переменные окружения (все необязательные)
Переменная | По умолчанию | Назначение |
|
| Корневой каталог, сканируемый для обнаружения проектов |
|
| Расположение базы SQLite и логов |
|
| Каталог массовых выгрузок (ChatGPT, Claude.ai) |
|
| Порт дашборда/API |
|
| Интерфейс прослушивания (по умолчанию остаётся локальным) |
Подключение MCP-сервера
# Claude Code
claude mcp add sync-hub -s user -- node <repo>/dist/server/mcp-entry.js
# Codex — dans ~/.codex/config.toml
[mcp_servers.sync-hub]
command = "node"
args = ["<repo>/dist/server/mcp-entry.js"]Предоставляемые инструменты:
дословное чтение:
get_project_timeline,get_thread,search_transcriptsнепрерывность между тредами:
link_threads,unlink_thread,get_thread_link_updates(только дельта)управление проектами (те же действия, что и в дашборде):
list_projects,list_threads,rename_project,merge_projects,assign_thread_to_project,archive_thread,archive_project
Импорт экспорта Claude.ai / ChatGPT
Помести файл(ы) экспорта в imports/claude/ или imports/chatgpt/, затем запусти повторное сканирование (кнопка «Пересканировать» в дашборде или POST /api/sync/rescan).
Разработка
npm run dev # client (Vite) + serveur (tsx watch) en parallèle
npm test # suite de tests (vitest)
npm run lint # typecheckАрхитектура
src/core/db.ts— схема SQLite + доступ к данным.src/core/registry.ts— сопоставление проект ↔ сессия (только точное соответствие, никогда не эвристика).src/core/adapters/— по одному адаптеру на источник (Claude Code, Codex, Cowork, Antigravity, массовые выгрузки).src/core/watch.ts— наблюдение в реальном времени за новыми сессиями.src/core/mcp-server.ts— MCP-сервер.src/server/— REST API + WebSocket (Fastify).src/client/— дашборд (React + Vite + Tailwind).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
Cross-tool persistent memory and context for AI assistants over MCP.
Shared memory MCP server for Claude Code, Codex, Gemini CLI and Cursor. Cited, editable.
Persistent memory for AI assistants. Save once; recall from Claude, ChatGPT, or any MCP client.
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA single MCP server that gives Claude, ChatGPT, Codex, and any MCP-compatible AI access to the same personal context via two tools: context_get and context_log.1MIT
- AlicenseAqualityBmaintenanceAn MCP server that indexes Claude Code conversation history into SQLite, enabling full-text search across past sessions for context recovery and cross-agent observability.103MIT
- AlicenseNot gradedqualityDmaintenanceCapture, index, and search your Claude Code conversation history. Provides an MCP server for Claude Code to query its own past conversations.2 npm1MIT
- FlicenseNot gradedqualityDmaintenanceCollects session JSONL from Codex and Claude Code into local SQLite memory, exposed through MCP with tools for memory context, search, get, put, forget, sleep, and status.-