Zuerst auf den Rest der Fehlermeldung achten

Bevor Sie den Verlauf löschen, die Symptome trennen

Verlauf wird angezeigt / nur das Senden schlägt fehl
thread not found
→ Erneut öffnen, dann App neu starten
Lesen zu können heißt nicht, senden zu können
Auch das Archivieren schlägt fehl / os error 2
Fehler beim Verweis auf den Speicherort (der Verlauf ist oft trotzdem lesbar)
→ Gespeicherten Verlauf prüfen und melden
Dateinamen oder Datenbank nicht zuerst umschreiben
Nach dem Senden etwa 30 Sekunden gewartet, dann Fehler
Timeout / App server request expired while queued
→ Wartezeit in der Warteschlange und hängende Antwort unterscheiden
Dieselbe Sendefehler-Anzeige, aber anderer Pfad
Diese Abbildung hilft Ihnen, anhand des Fehlertextes zu wählen, wo Sie nachsehen sollten.

1. Was bedeutet „thread not found“?

Wenn Sie in OpenAIs Codex eine Folgenachricht an eine bestehende Aufgabe senden, kann ein Fehler wie dieser erscheinen. Die Kennung am Ende bezeichnet die betroffene Konversation und ist unten unkenntlich gemacht.

Beim Senden der Nachricht ist ein Fehler aufgetreten
thread not found: <ID der Konversation>

In Apps mit englischer Anzeige lautet die erste Zeile Error submitting message (#30710).

Error submitting message
thread not found: <conversation ID>

Dieser Artikel behandelt bestehende lokale Aufgaben in der Desktop-App. Er stützt sich auf Protokolle aus einem Fall, den wir in unserer Umgebung (Windows) beobachtet haben, auf öffentlichen Quellcode und auf Fehlerberichte von Nutzern, und gibt den Stand vom 21. September 2026 wieder.

„Lesen“ und „Senden“ sind getrennte Prüfungen

Gespeicherter Verlauf

Frühere Nachrichten lesen

Laden gespeicherter Daten

Für die Ausführung geladene Konversation

Nimmt neue Anweisungen entgegen

Konversation fortsetzen → nächste Anweisung

Selbst wenn der Bildschirm „wieder aufgenommen“ anzeigt …

Wenn die Konversation für die Ausführung nicht gefunden wird, kann das Senden fehlschlagen, obwohl der frühere Verlauf angezeigt werden kann.

Konzeptdiagramm auf Grundlage der öffentlichen Spezifikation und des Quellcodes. Prüfen Sie getrennt, ob Anzeige, gespeicherter Verlauf und Ausführungszustand übereinstimmen.

Die Anzeige des Verlaufs und die Annahme neuer Anweisungen sind getrennte Mechanismen. Bei einer Aufgabe, die längere Zeit nicht benutzt wurde, kann der Verlauf lesbar sein, während die Konversation auf der Seite, die Anweisungen annimmt, nicht geladen ist. Wird dann einfach gesendet, erscheint dieser Fehler.

Hintergrund (interne Namen der App-Kommunikation)

Laut der offiziellen App-Server-Spezifikation liest thread/read den gespeicherten Verlauf; die Konversation wird damit nicht in den Speicher für die Ausführung geladen. Die Funktion unterscheidet sich von thread/resume, das eine Konversation fortsetzt. Dies sind interne Namen der App-Kommunikation, keine Befehle, die Sie in das Chatfeld eintippen.

Im öffentlichen Quellcode des Sendevorgangs zur CLI-Version 0.155.0-alpha.9, die in den gespeicherten Metadaten unserer Umgebung steht, holt der Einstieg von turn/start die Konversation, und schlägt das fehl, liefert er thread not found zurück. Die Suche erfolgt in der Liste der Konversationen im Arbeitsspeicher. Dieser Fehler bedeutet daher nicht, dass die gespeicherte Datei verloren ist.

notLoaded ist der normale Zustand, in dem eine gespeicherte Konversation derzeit nicht für die Ausführung geladen ist. Laut der offiziellen App-Server-Spezifikation wird eine Konversation, deren letzter Abonnent sich abgemeldet hat, nach 30 Minuten ohne Abonnenten und ohne Aktivität entladen und wechselt zu notLoaded. Problematisch ist, dass aus diesem Zustand der nötige Fortsetzungsschritt nicht erfolgt und die nächste Anweisung nicht angenommen werden kann. Auch in unserem Beispiel trat der Fehler mehr als eine Stunde nach der letzten erfolgreichen Sendung auf.

2. Praxisbeispiel: Das Senden wurde wiederhergestellt, obwohl der Verlauf erhalten blieb

Dies ist ein Beispiel aus unserer Umgebung. Bei einer Aufgabe in der Windows-App 26.915.31029 trat dieser Fehler auf, als wir eine Anweisung zum Fortsetzen sendeten. Im Folgenden sind die App-Protokolle vom 21. September 2026 in UTC umgerechnet und ohne Konversations-IDs und Aufgabendetails zusammengefasst.

Vom erneuten Versuch auf dem Bildschirm bis zum tatsächlichen Neuladen

08:26:51 / 08:26:59

Senden fehlgeschlagen (interne Antwort war thread not found)

Der Bildschirm hatte die Konversation bereits als wieder aufgenommen behandelt

09:08:36

Gleicher Sendefehler nach dem erneuten Öffnen

Das bloße Wechseln der Ansicht half nicht

10:00:28 → 10:08:49

Nicht geladener Zustand bestätigt → Konversation erfolgreich neu geladen

Nicht geladen → Fortsetzung als nötig eingestuft → Fortsetzung erfolgreich

10:09:07 / 10:11:56

Nächste Anweisung angenommen; Senden erfolgreich

Eine spätere Verlaufsprüfung zeigte, dass beide Durchläufe mit Status completed und ohne Fehler abgeschlossen waren

Quelle: gespeicherte Protokolle aus unserer Umgebung. Es wurden keine Verlaufsreparaturen oder sonstigen Änderungen vorgenommen; wir haben die Protokolle nur gelesen.

Die gespeicherte Konversation und das Arbeitsverzeichnis blieben erhalten, und auch der Lesevorgang des Verlaufs gelang. Die ursprüngliche Aufgabe war nicht archiviert.

Was dieser Fall bestätigt hat

  • Der Verlauf war noch vorhanden
  • Das Senden gelang nach dem erneuten Laden
  • Bei der Untersuchung wurden Verlauf und Einstellungen nicht verändert

Was dieser Fall nicht zeigt

  • Den genauen Auslöser, durch den die Konversation intern entladen wurde
  • Eine Ursache, die allen Nutzern gemeinsam ist

Wahrscheinlich liegt eine Abweichung vor: Der Bildschirm behandelte die Konversation als wieder aufgenommen, intern war sie aber nicht geladen. Nachdem das Senden wieder funktioniert, prüfen Sie außerdem, ob die Arbeit dieses Durchgangs korrekt ist.

3. Die Reihenfolge der Schritte, wenn nur das Senden fehlschlägt

Speichern Sie Ihre Eingabe zunächst lokal, damit sie nicht verloren geht. Bevor Sie erneut auf Senden klicken, prüfen Sie, ob dieselbe Anweisung bereits in der Konversation steht oder die Verarbeitung schon begonnen hat. Gerade bei Anweisungen, die Veröffentlichen, Löschen oder Kaufen umfassen, ist es wichtig, keine verspäteten Anfragen zu stapeln.

01

Konversation und letzte Arbeit prüfen

Prüfen Sie, ob Sie frühere Nachrichten lesen können und ob die letzte Anweisung als abgeschlossen, laufend oder fehlerhaft erscheint. Steht die Aufgabe nicht in der Liste, öffnen Sie außerdem unter den Einstellungen „Archived chats“ (laut dem offiziellen Leitfaden zur Fehlerbehebung). Haben Sie Dateien bearbeitet, speichern Sie sie und notieren Sie den Arbeitsort. Betrachten Sie Anzeigeprobleme der Konversation getrennt vom Verlust von Arbeitsdateien.

02

Auf das Laden warten und dieselbe Aufgabe erneut öffnen

Wenn Sie die Aufgabe gerade geöffnet haben, warten Sie, bis sich die Anzeige des Verlaufs beruhigt. Wechseln Sie zu einer anderen Aufgabe, dann wieder zurück, und probieren Sie eine kleine Prüfung. In unserem Beispiel half allein dieser Schritt nicht. Statt dieselbe Nachricht immer wieder zu senden, gehen Sie daher zum nächsten Schritt über.

03

Andere Arbeit prüfen und die App vollständig neu starten

Läuft eine andere Aufgabe, warten Sie, bis sie fertig ist, oder speichern Sie das Nötige und halten Sie sie an. Beenden Sie dann die App, starten Sie sie neu und öffnen Sie dieselbe Aufgabe. Das Umschalten der Aufgabenansicht und der Neustart der gesamten App sind verschiedene Vorgänge.

04

Prüfen, ob eine kurze Antwort vollständig ist

Senden Sie die ursprüngliche große Aufgabe nicht sofort erneut. Schicken Sie stattdessen eine Prüfung ohne Dateiänderungen oder Werkzeugnutzung. Sobald die Antwort vollständig ist, prüfen Sie die zuletzt geleistete Arbeit und kehren Sie zur normalen Fortsetzung zurück.

Die Prüfnachricht können Sie zum Beispiel so eingrenzen. Da sie als gewöhnliche Anweisung an das Modell gesendet wird, kann sie wie üblich auf Ihr Nutzungskontingent angerechnet werden.

Dies ist eine Verbindungsprüfung. Nehmen Sie die frühere Arbeit nicht wieder auf.
Antworten Sie, ohne Dateien zu lesen oder zu schreiben und ohne Werkzeuge aufzurufen, nur mit „Antwort erhalten.“

Die Meldung im GitHub-Repository von OpenAI #30710 enthält einen Fall, in dem ein Sendefehler direkt nach dem Öffnen einer Konversation unter Windows durch einen vollständigen Neustart der App behoben wurde. Die offizielle Anleitung zur Fehlerbehebung, „vor dem Neustart auf den Abschluss einer laufenden Aufgabe warten“, betrifft den Fall, dass das integrierte Terminal hängt. Sie ist keine Anleitung für diesen Sendefehler.

Wenn Sie eine Aktualisierung versuchen, notieren Sie zuerst Ihre aktuelle App-Version und die Symptome. Laut dem offiziellen Leitfaden zur Fehlerbehebung können die mit der Desktop-App ausgelieferte Codex-Version und eine separat installierte CLI unterschiedlich sein. Eine Aktualisierung der CLI bedeutet nicht, dass ein Fehler in der App behoben ist.

4. Dieselbe Anzeige kann unterschiedliche Ursachen und Lösungen haben

Verlassen Sie sich nicht allein auf die Zeile „Fehler beim Senden der Nachricht“, sondern achten Sie auf den Wortlaut danach und auf den fehlgeschlagenen Vorgang. Die folgende Tabelle trennt Beispiele aus öffentlichen Berichten und aus unserer Umgebung nach Symptomen.

Sichtbares SymptomWas zu prüfen istWas man nicht vorschnell annehmen sollte
Verlauf lässt sich lesen, aber nicht sendenOb sich nach dem erneuten Laden senden lässtDass der Verlauf lesbar ist, heißt nicht, dass man senden kann
Auch das Archivieren schlägt fehl / os error 2Zustand der gespeicherten Dateien und der Verweise darauf (der Verlauf ist oft trotzdem lesbar)Auch wenn das Senden nach einem Neustart wieder funktioniert, kann das Archivieren weiter fehlschlagen
Timeout / App server request expired while queuedOb etwa 30 Sekunden gewartet wurde, die Antwort hängt oder eine Warteschlange bestehtNicht mit dem sofort zurückgegebenen thread not found vermischen
Fortsetzen und Anhalten schlagen beide fehlOb tatsächlich etwas läuft oder die Anzeige veraltet istDie Anzeige „läuft“ auf dem Bildschirm allein nicht blind vertrauen

Wenn der Verlauf erhalten bleibt, ist der Hinweis eines macOS-Nutzers in #30710 hilfreich. Der Bildschirm behandelte die Konversation als wieder aufgenommen, doch das Senden schlug wiederholt fehl; später gelang das Neuladen auf einem neuen Bildschirm. Dieser Bericht beschreibt eine Zustandsinkonsistenz, die sich nicht durch ein „Wettlaufproblem nur im Moment des Öffnens“ erklären lässt, und sein Verlauf ähnelt dem hier beschriebenen Fall sehr.

Ein Gegenbeispiel bietet der Windows-Bericht #39179: Dort ließ sich der Verlauf lesen, Senden und Archivieren schlugen aber fehl, und in der Umgebung des Verfassers hielt das auch nach einem Neustart an. Ein späterer Nachtrag berichtet außerdem, dass man nach einem vollständigen Neustart der App fortfahren konnte, das Archivierungsproblem aber nicht zuverlässig behoben war. #39575 enthält Diagnosen zu den Zeitstempeln in gespeicherten Dateinamen und zum Verweisprozess. Alle diese Berichte stammen aus Untersuchungen von Nutzern. Schließen Sie daher nicht, dass Ihre eigenen Daten beschädigt sind, nur weil ein Pfadpräfix oder eine Zeitdifferenz auftaucht.

Der Typ mit Wartezeit zeigt sich im Bericht über Sendezeitüberschreitungen #27395: Dort wurde turn/start nach 30 Sekunden (timeoutMs=30000) abgebrochen und als Timeout fehlgeschlagen; die Protokolle sind beigefügt. Im Nachtrag zu #23644 wartete eine Anfrage, auf der das Senden aufbaut, etwa 30 Sekunden in der Warteschlange (queueWaitMs=30001), bevor sie mit App server request expired while queued fehlschlug. Den Typ, bei dem auch das Anhalten fehlschlägt, zeigt der Bericht über inkonsistenten Verlauf und Ausführungszustand #42604.

5. Wenn es weiter nicht funktioniert: Prüfung und Übergabe

Wenn es nach einem Neustart weiterhin nicht funktioniert, prüfen Sie, ob sich der gespeicherte Verlauf lesen lässt. Wenn Ihnen eine Funktion zur Verfügung steht, mit der eine andere, funktionierende Codex-Aufgabe die Zielaufgabe lesen kann, beginnen Sie mit einer rein lesenden Prüfung. Wichtig ist außerdem, die Ziel-ID nicht mit einer Aufgabe mit ähnlichem Namen zu verwechseln.

Untersuche die Zielaufgabe im reinen Lesemodus.
Zielkennung: die im Fehler angezeigte Konversations-ID

Melde, ob sich der Verlauf lesen lässt, den Zustand des letzten Durchgangs und etwaige Fehler.
Sende keine Nachrichten an andere Aufgaben, nimm keine frühere Arbeit wieder auf, erstelle keinen Fork,
archiviere nichts, ändere keine Einstellungen, bearbeite die Datenbank nicht und verschiebe oder lösche keine Verlaufsdateien.
Falls keine Funktion zur Aufgabenverwaltung verfügbar ist, melde das bitte.

Dieses Beispiel gilt für Umgebungen, in denen Funktionen zur Aufgabenverwaltung verfügbar sind. Lässt sich eine solche Funktion nicht finden, raten Sie nicht an ähnlich benannten internen Befehlen, sondern gehen Sie zum Bericht in Kapitel 6 über.

Wählen Sie den nächsten Schritt je nach Prüfergebnis

Verlauf lesbar, vorherige Arbeit abgeschlossen
Eine zusätzliche Prüfnachricht senden oder einen Fork erwägen, der den Verlauf übernimmt. Die ursprüngliche Aufgabe beibehalten.
Verlauf lesbar, aber unklar, ob die Arbeit läuft
Zuerst Betriebszustand und Dateiänderungen prüfen. Dieselbe Arbeit nicht in einer anderen Aufgabe doppelt laufen lassen.
Ein Speicherfehler erscheint (z. B. os error 2)
Eine Sicherung bewahren und den Fehler mit Protokollen melden. Die Originaldateien nicht löschen, um das Laden zu reparieren.

Im Nachtrag zu #39179 wird beschrieben, dass ein kurzer Prüfbefehl aus einer anderen, funktionierenden Aufgabe gesendet wurde und nach Abschluss der Antwort auch die normale Konversation wiederhergestellt war. Eine weitere Ergänzung berichtet jedoch über ein ähnliches Senden, das fehlschlug, und darüber, dass eine neue Anweisung nach einem Fork eines abgeschlossenen Verlaufs angenommen wurde. Angesichts dieses Gegenbeispiels ergänzt der ursprüngliche Melder, dass es keine allgemeine Lösung sei.

Ein Fork ist ein Vorgang, der einen abgeschlossenen Verlauf in eine separate Aufgabe übernimmt. Die ursprüngliche Aufgabe wird dadurch nicht repariert. Gehen Sie nicht davon aus, dass unvollständige Arbeit einfach weiterläuft. Prüfen Sie nach der Übergabe das Arbeitsverzeichnis, die geänderten Dateien und den zuletzt abgeschlossenen Schritt.

Verlaufsdaten und Arbeitsdateien sind ebenfalls getrennt. Auch wenn sich eine Konversation nicht öffnen lässt, können die Änderungen am Projekt noch vorhanden sein. Umgekehrt sind die Dateien nicht unbedingt aktuell, selbst wenn Sie die Konversation lesen können. Verwendet Ihr Projekt Git, prüfen Sie die Liste der Änderungen und klären Sie, was bereits ausgeführt wurde, bevor Sie fortfahren.

6. Welche Angaben Sie bei einer Untersuchungsanfrage angeben sollten

Im Bericht sollten Sie nicht nur „sendet nicht“ schreiben, sondern trennen, was erfolgreich war und was fehlschlug. Angaben zur App-Version, zum Betriebssystem, zu Zeitpunkt und Zeitzone, zur Ziel-Konversations-ID und zur unmittelbar vorangegangenen Aktion erleichtern die Nachverfolgung, ohne dass unterschiedliche Störungen vermischt werden. Sie müssen nicht von Anfang an den vollständigen Konversationstext veröffentlichen.

Vorlage für Berichtsnotizen

Umgebung
App-Version / Betriebssystem / Ausführungsort, z. B. lokal oder remote
Auftreten
Zeitpunkt und Zeitzone / vollständiger Fehlertext / unmittelbar vorher ausgeführte Aktion
Was funktioniert und was nicht
Ergebnisse für Verlaufsanzeige / Senden / Anhalten / Archivieren
Versuchte Schritte
Was sich vor und nach dem erneuten Öffnen oder Neustart geändert hat

Wenn Sie die Protokolle prüfen können, hilft ein Blick auf die Zeilen vor und nach der fehlgeschlagenen Anfrage. method=turn/start markiert den Beginn einer Anweisung, thread/resume das Fortsetzen einer Konversation, und errorCode ist ein Hinweis auf die interne Antwort. Behalten Sie auch die erfolgreichen Zeilen und unterscheiden Sie, ob derselbe Fehler nur in mehreren Protokollzeilen auftaucht oder tatsächlich mehrfach fehlgeschlagen ist.

Zu den Speicherorten der App-Protokolle nennt der offizielle Leitfaden für macOS ~/Library/Logs/com.openai.codex/YYYY/MM/DD. Unter Windows lagen sie in unserer Umgebung an den folgenden zwei Orten.

  • PC, auf dem der Fehler auftrat: %LOCALAPPDATA%\Codex\Logs
  • Microsoft-Store-Version auf einem anderen PC (Protokolle von März 2026): %LOCALAPPDATA%\Packages\OpenAI.Codex_<ID>\LocalCache\Local\Codex\Logs (auf diesem PC gab es den Ordner %LOCALAPPDATA%\Codex überhaupt nicht)

Laut der Erklärung von Microsoft können Dateien, die eine paketierte App neu im AppData-Bereich anlegt, an einem eigenen Ort der App geschrieben werden und der App dennoch so erscheinen, als lägen sie am üblichen Ort. Finden Sie sie an einem Ort nicht, suchen Sie auch am anderen. Laut offizieller Anleitung werden Sitzungsdaten in $CODEX_HOME/sessions gespeichert (Standard: ~/.codex/sessions). Weichen Einstellungen oder Ausführungsort ab, liegt das gesuchte Element vielleicht einfach nicht in dem Ordner, den Sie ansehen. Schließen Sie deshalb nicht allein aus „die Suche liefert nichts“ auf eine Löschung.

Wo sich die Daten von Codex (CODEX_HOME) oder der App selbst befinden, nachdem Sie sie auf ein anderes Laufwerk verschoben haben, ist in ChatGPT und Codex auf ein anderes Laufwerk verschieben festgehalten.

Der offizielle Leitfaden erklärt, wie Sie Feedback senden können, indem Sie im Eingabefeld / eingeben. Protokolle und Screenshots können Konversationstexte, E-Mail-Adressen, Namen anderer Projekte und lokale Pfade enthalten. Stellen Sie in einem öffentlichen Issue nur die nötigen Teile anonymisiert bereit, und prüfen Sie beim Weitergeben vollständiger IDs oder Ähnlichem, an wen und für wen sichtbar das geht.

7. Die Wiederherstellung mit einer kurzen Antwort prüfen

Die erste Reaktion auf diesen Fehler ist nicht das Löschen des Verlaufs, sondern die getrennte Prüfung, ob er sich lesen lässt, ob sich die Konversation fortsetzen lässt und ob eine neue Anweisung vollständig ausgeführt wird. Im vorliegenden Fall kam das Senden nach dem erneuten Laden der Konversation wieder in Gang. Erscheint ein Speicherfehler, handelt es sich um einen anderen Weg. Gehen Sie dann zu den Prüfungen in Kapitel 5.

Wenn eine kurze Antwort vollständig ist, prüfen Sie, wie weit die ursprüngliche Anweisung gekommen ist, und setzen Sie an dem nötigen Schritt fort. Wenn es weiterhin nicht funktioniert, haben eine schreibgeschützte Untersuchung und das Sichern der Protokolle Vorrang. Wichtig ist, die Wiederherstellung nicht schon deshalb als abgeschlossen zu betrachten, weil die Fehlermeldung verschwunden ist oder sich ein Fork erstellen ließ.

Verwandte Artikel:

FAQ

Q. Wenn „thread not found“ erscheint, ist die Konversation dann gelöscht?
A. Nicht unbedingt. Der gespeicherte Verlauf kann lesbar sein, während die für das Senden nötige Konversation für die Ausführung nicht geladen ist. Andererseits kann auch der Speicherverweis oder die Datei selbst fehlerhaft sein. Deshalb prüfen Sie, ob sie sich tatsächlich lesen lässt.

Q. Ist notLoaded ein Fehler?
A. Der Zustand selbst ist normal. Er bedeutet, dass eine gespeicherte Konversation derzeit nicht für die Ausführung geladen ist. Problematisch wird er nur, wenn sie beim Fortsetzen nicht wieder aufgenommen wird und selbst eine kurze Antwort nicht abgeschlossen wird.

Q. Hilft ein Neustart immer?
A. Nicht immer. Es gibt Berichte, in denen ein vollständiger Neustart half (#30710), und Berichte, in denen Senden und Archivieren auch nach dem Neustart weiter fehlschlugen (#39179). In unserem Beispiel funktionierte das Senden nach dem Neuladen der Konversation wieder.

Q. Löst ein Update auf die neueste Version das Problem?
A. Stand 21. September 2026 haben wir keine korrigierte Version gefunden, die ausdrücklich angibt, dieses Symptom insgesamt zu beheben. Notieren Sie beim Aktualisieren die App-Versionen vor und nach dem Update sowie das Ergebnis. Die separat installierte CLI und das mit der App ausgelieferte Codex müssen nicht dieselbe Version haben.