Watch / 值更
WATCH TECHNISCHER LEITFADEN / SITZUNGSÜBERGABE

Anleitung zur bidirektionalen Sitzungsübergabe zwischen OpenCode, Claude und Codex

OpenCode speichert Sitzungen in ~/.local/share/opencode/opencode.db. WATCH_OPENCODE_DB zeigt Watch auf eine andere Datei. Watch schreibt sessions, messages und parts in einer SQLite-Transaktion und rollt bei Fehler zurück. Nicht unterstützte Tool-Felder werden zu Text. Spätere Antworten hängen vom konfigurierten Modell ab.

Beim Wechsel von kommerziellen Cloud-Agenten zu lokalen Open-Source-Modellen in OpenCode (oder zurück zu Cloud-Agenten) erklärt diese Anleitung, wie Sie Watch für die bidirektionale Übergabe mit transaktionaler SQLite-Datenisolation nutzen.

Veröffentlicht: 2026-09-21 Aktualisiert: 2026-09-23 Gilt für: Watch v0.1.1
Zentrale Betriebsgrenze

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.

  1. 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.

  2. 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.

  3. 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.

  4. 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 --json
Sicherheitsgrenzen und Hinweise

1. 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.

Häufige Fragen

Was ist der Vorteil des SQLite-Speichers von OpenCode gegenüber JSONL?

SQLite bietet ACID-Transaktionen und robuste Indizierung und beseitigt das Risiko abgeschnittener Zeilen oder Dateibeschädigung bei unerwartetem Abbruch. Die Überschreibung über WATCH_OPENCODE_DB erleichtert außerdem isolierte Testumgebungen.

Bleiben die Reasoning-Gedanken eigener Modelle bei der Übergabe aus OpenCode erhalten?

Watch kopiert die gespeicherten Nutzereingaben, Assistententexte, Thinking-Spuren und Tool-Ausgaben, die es abbilden kann. Nicht unterstützte Tool-Felder werden zu Text, daher ist die Kopie kein vollständiges Abbild der OpenCode-Zeile.

Wie verhindert Watch eine Abweichung des Arbeitsverzeichnisses?

Watch bindet das absolute cwd der Quellsitzung strikt an den OpenCode-Sitzungseintrag. Beim Fortsetzen über opencode -s <session-id> bindet OpenCode an diesen Workspace und verhindert versehentliche Änderungen im falschen Verzeichnis.

Offizielle Quellen und Prüfbelege

Zurück zur Watch-Startseite Watch Desktop laden