Carrymark

Markdown, das in der Datei bleibt.

Carrymark wandelt Word, Excel, PowerPoint und PDF mit microsoft/markitdown in Markdown um, legt es direkt in die Datei und sagt dir, wann es nicht mehr zum Inhalt passt. Lokal, ohne KI.

Das Problem

Wer Office-Dokumente und PDFs für Suche, Wikis oder Sprachmodelle aufbereitet, legt das Markdown meist irgendwo anders ab. Ab dem Moment laufen Datei und Abzug auseinander: Jemand ändert eine Zahl in Excel, und der Abzug im Wiki stimmt nicht mehr.

Carrymark dreht das um. Das Markdown steckt in der Datei selbst, und ein Fingerprint zeigt, ob es noch zum Inhalt passt.

So sieht das im Terminal aus

$ carrymark sync ~/Dokumente
Aktuell       Projektbericht.docx: Markdown eingebettet (114 Zeichen, markitdown/0.1.8).
Aktuell       Umsatz 2026.xlsx: Aktuell, nichts zu tun.

# Jemand ändert in Excel eine Zahl.

$ carrymark check "Umsatz 2026.xlsx"
Veraltet      Umsatz 2026.xlsx
              Der Inhalt hat sich seit dem Einbetten geändert.

$ carrymark export ~/Dokumente --okf -o wissen/
wissen/projektbericht-docx.md
wissen/umsatz-2026-xlsx.md
OKF-Bundle: wissen/index.md

Wie es funktioniert

  1. Umwandeln. markitdown von Microsoft macht aus Absätzen, Tabellen, Folien und PDF-Seiten sauberes Markdown, lokal auf deinem Rechner.
  2. Beschreiben. Carrymark setzt eine Frontmatter nach dem Open Knowledge Format davor: Typ, Titel, Autor, Änderungsdatum, Erzeuger und Fingerprint.
  3. Einbetten. In Office-Dateien als registrierter Custom-XML-Part, in PDFs als Anhang carrymark.md. Der eigentliche Inhalt der Datei bleibt unverändert.
  4. Prüfen. carrymark check vergleicht den Fingerprint mit dem aktuellen Inhalt: aktuell, veraltet oder verloren.
  5. Aktualisieren. carrymark sync bettet neu ein, was sich geändert hat, und holt Verlorenes aus der Sicherung zurück.

Was im Office-Paket passiert

Eine DOCX-, XLSX- oder PPTX-Datei ist ein ZIP-Archiv. Carrymark legt das Markdown dort so ab, wie Office selbst Custom-XML-Datastores registriert, und Office behält es beim Speichern.

Der kleine Eintrag in docProps/custom.xml ist die Versicherung: Fehlt später der große Part, der Eintrag aber nicht, hat ein Programm den Part entfernt. Carrymark meldet dann Verloren und stellt das Markdown wieder her.

Und PDFs? PDF kann Dateien tragen; ZUGFeRD-Rechnungen legen so ihr XML in die PDF. Carrymark hängt das Markdown als carrymark.md an, mit der Beziehung Alternative wie in PDF/A-3, und vermerkt Fingerprint und GUID in den Dokumentinformationen. Signierte und verschlüsselte PDFs bleiben unangetastet.

Getestet mit echtem Office

Der Selbsttest lässt jede App eine Datei anlegen, bettet Markdown ein, öffnet die Datei wieder in der App, ergänzt Text und speichert. Danach wird geprüft, was übrig ist.

App (macOS)PartGUIDFingerprint-EintragMarkdown
Word 16.113.4überlebtgleichdavollständig
Excel 16.113.3überlebtgleichdavollständig
PowerPoint 16.113.4überlebtgleichdavollständig

Noch nicht getestet: Office für Windows und im Browser, der Dokumentinspektor, Pages, Google Docs, LibreOffice, und bei PDFs das Speichern in Vorschau oder Acrobat nach dem Einbetten.

Auch als Mac-App

Ordner ins Fenster ziehen, und Carrymark zeigt für jede Office-Datei und PDF den Zustand und eine Vorschau des Markdowns, Tabellen als Tabellen. Einbetten, aktualisieren, wiederherstellen und als OKF-Bundle exportieren mit einem Klick. Andere Dateitypen nimmt die App gar nicht erst an.

Carrymark-App: Seitenleiste mit Dateien nach Zustand, rechts eine geänderte Excel-Datei mit Tabellenvorschau

Gebaut auf offener Arbeit

microsoft/markitdown

Die Umwandlung nach Markdown. MIT-Lizenz, © Microsoft Corporation. GitHub

Open Knowledge Format

Vorlage für Frontmatter und Bundles, von Google Cloud Platform. Spezifikation

pypdf

Anhänge und Metadaten in PDFs. BSD-Lizenz. GitHub

Carrymark

Einbetten, Prüfen, Wiederherstellen, Export und die Mac-App. MIT-Lizenz.

Loslegen

git clone https://github.com/GodModeAI2025/OfficeMD.git carrymark
cd carrymark
./carrymark setup                 # einmalig: Python-Umgebung mit markitdown
./carrymark sync ~/Dokumente      # prüfen, einbetten, aktualisieren
./carrymark export ~/Dokumente --okf -o wissen/

Python 3.10 oder neuer. Keine Netzwerkzugriffe, keine Telemetrie, keine KI.