AI Chat Clipper Hilfe

Als strukturiertes JSON exportieren

Neben den sieben Dokumentformaten bietet das Dateiraster – und das Inline-Menü Datei exportieren jeder Nachricht – einen JSON-Export. Im Gegensatz zu den anderen ist JSON kein fertiges Dokument zum Lesen: Es ist die Konversation als maschinenlesbare Daten, gedacht für Entwickler, die einen Chat in ein Skript, eine Datenbank oder ein anderes Tool einspeisen möchten, ohne die Seite selbst zu scrapen.

Die Datei ist ein einzelnes, schön formatiertes JSON-Objekt – ein Block mit Metadaten über die Konversation, gefolgt von einer flachen Liste ihrer Nachrichten.

  • Konversationsmetadatenschema (ein versionierter Bezeichner, derzeit ai-chat-extractor/conversation@2, damit ein Konsument das Format und seine Version erkennen kann), site, title, url, exported_at (ein ISO-Zeitstempel), content_format (immer markdown) und message_count.
  • messages – ein geordnetes Array, ein Eintrag pro Nachricht, jeder mit seinem index, seiner role (wer gesprochen hat – user oder assistant) und zwei Ansichten des Textes: content, die vollständige Nachricht als Markdown, und contents, dieselbe Nachricht in typisierte Teile aufgeteilt.

Die beiden Ansichten dienen zwei Arten von Konsumenten. content ist die gesamte Nachricht als ein Markdown-String – alles, was ein einfaches Skript benötigt. contents zerlegt sie in eine geordnete Liste von typisierten Segmenten, sodass eine Pipeline Teile nach Art auswählen oder verwerfen kann, ohne das Markdown neu zu parsen: text für Prosa, thinking für einen Denkblock eines Modells, code für einen umzäunten Codeblock (mit einer optionalen language), image für ein Bild (mit seiner url und seinem alt-Text – ob es als Markdown oder als HTML-Tag geschrieben wurde) und table für eine Markdown-Tabelle, aufgeteilt in ihre headers und rows, sodass ein Konsument echte Spalten anstelle eines Blocks von Pipe-Zeichen erhält. AI Chat Clipper gibt nur einen Segmenttyp aus, den es ehrlich aus der Konversation identifizieren kann – es wird keine Struktur erfinden, die nicht vorhanden ist. Zitate zum Beispiel kommen als gewöhnliche Inline-Links ohne eigenen Block an, daher gibt es absichtlich keinen separaten sources-Typ.

Eine kurze Assistentenantwort, die einen Codeblock enthält, wird so exportiert:

{
  "schema": "ai-chat-extractor/conversation@2",
  "site": "claude",
  "title": "Reversing a string",
  "url": "https://claude.ai/chat/…",
  "exported_at": "2026-07-18T10:32:00.000Z",
  "content_format": "markdown",
  "message_count": 2,
  "messages": [
    { "index": 0, "role": "user", "content": "How do I reverse a string in Python?",
      "contents": [ { "type": "text", "text": "How do I reverse a string in Python?" } ] },
    { "index": 1, "role": "assistant", "content": "Use a slice:\n\n```python\ns[::-1]\n```",
      "contents": [
        { "type": "text", "text": "Use a slice:" },
        { "type": "code", "language": "python", "text": "s[::-1]" }
      ] }
  ]
}