Skip to main content
Glama

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.

Переменные окружения (все необязательные)

Переменная

По умолчанию

Назначение

SYNC_HUB_PROJECTS_ROOT

~/Projets

Корневой каталог, сканируемый для обнаружения проектов

SYNC_HUB_DATA_DIR

<repo>/data

Расположение базы SQLite и логов

SYNC_HUB_IMPORTS_DIR

<repo>/imports

Каталог массовых выгрузок (ChatGPT, Claude.ai)

PORT

4000

Порт дашборда/API

HOST

127.0.0.1

Интерфейс прослушивания (по умолчанию остаётся локальным)

Подключение 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).

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    An MCP server that indexes Claude Code conversation history into SQLite, enabling full-text search across past sessions for context recovery and cross-agent observability.
    10
    3
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Capture, index, and search your Claude Code conversation history. Provides an MCP server for Claude Code to query its own past conversations.
    6 npm
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Collects 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.
    -