OpenCode nutzt eine einzelne relationale SQLite-Datenbank (standardmäßig ~/.local/share/opencode/opencode.db) für die Sitzungsspeicherung und bietet ACID-Transaktionsintegrität sowie strukturierte Abfragen. Wenn Sie sensible Aufgaben auf lokal gehostete Open-Source-Modelle verlagern möchten (über Ollama oder vLLM in OpenCode) oder zurück an Frontier-Cloud-Modelle übergeben (Claude/Codex), stellt Watch eine geprüfte bidirektionale Brücke bereit.
Anders als Werkzeuge, die strikt auf nur anhängbare JSONL-Dateien setzen, organisiert OpenCode Sitzungen über normalisierte relationale Tabellen, darunter sessions, messages und parts. Direkte externe Eingriffe können Fremdschlüsselbedingungen beschädigen. Watch bildet die UnifiedTurn-Abstraktion sauber auf das relationale Schema von OpenCode ab und behält dabei den genauen Verzeichniskontext (cwd) und die Zeitstempel.
Schritt 1: Quellsitzungs-ID und Arbeitsverzeichnis ermitteln
Ermitteln Sie Ihre aktive Sitzungs-ID. Claude Code speichert Dateien in ~/.claude/projects/; Codex in ~/.codex/sessions/; OpenCode indexiert Sitzungen über global eindeutige IDs. Prüfen Sie, dass das Arbeitsverzeichnis ein absoluter Pfad ist, damit die Projektgrenzen übereinstimmen.
Schritt 2: Zieldatenbank vorab prüfen (Check)
Führen Sie die Watch-CLI mit --check aus, um die OpenCode-Zieldatenbank zu prüfen. Watch validiert Schreibrechte und Sperren auf ~/.local/share/opencode/opencode.db (oder dem über WATCH_OPENCODE_DB angegebenen Pfad), um konkurrierende Schreibzugriffe zu vermeiden.
Schritt 3: Bidirektionale Übergabe ausführen (Handoff)
Wählen Sie in Watch Desktop die Quellsitzung und das Ziel OpenCode, oder führen Sie den CLI-Befehl open aus. Watch extrahiert inkrementelle Turns, führt atomare SQLite-Transaktionen über sessions, messages und parts aus und gibt die Zielsitzungs-ID aus.
Schritt 4: Sitzung nativ in OpenCode fortsetzen (Resume)
Führen Sie nach der Konvertierung opencode -s <session-id> im Workspace-Verzeichnis aus oder nutzen Sie die Startschaltfläche in Watch Desktop. OpenCode lädt die aufgezeichnete Konversation in diesem Arbeitsverzeichnis.
# 1. Vorprüfung: Schreibbarkeit der OpenCode-Zieldatenbank prüfen
npm run watch -- open <claude-session-id> --to opencode --check --json
# 2. Übergabe: Sitzung in die OpenCode-SQLite-Datenbank übertragen
npm run watch -- open <claude-session-id> --to opencode --json
# 3. Rückübergabe: Von OpenCode zurück nach Claude oder Codex übertragen
npm run watch -- open <opencode-session-id> --to claude --json1. Datenbankisolation und Sicherungen: Watch arbeitet standardmäßig auf ~/.local/share/opencode/opencode.db und nutzt WATCH_OPENCODE_DB in Testumgebungen. Der Schreibvorgang ist eine SQLite-Transaktion und wird bei einem Fehler zurückgerollt. 2. Darstellung von Tool-Aufrufen: Tool-Datensätze werden über Schemata abgebildet; nicht unterstützte proprietäre Parameter werden zu strukturiertem Text. 3. Modellfortsetzung: Watch schreibt den gespeicherten Sitzungsdatensatz und das Arbeitsverzeichnis. Es garantiert nicht, dass jedes Tool-Ereignis erhalten bleibt. Spätere Antworten hängen vom konfigurierten Modell ab.