Synchronisiere deinen Ordner mit ChatGPT: die Geschichte hinter `openai-folder-sync`

created: Freitag, Aug. 29, 2025
Darstellung eines lokalen Verzeichnisses, das in eine Sprechblase mit dem OpenAI-Logo synchronisiert wird

Vor einiger Zeit bin ich ständig auf dasselbe Problem gestoßen: Ich hatte eine Menge Notizen, Spezifikationen und Markdown-Dokumente auf meinem Laptop, aber wenn ich ChatGPT öffnete und Fragen dazu stellte, wusste das Modell natürlich nicht, dass sie existieren. Dateien per Copy-Paste zu übertragen war mühsam; manuell Stück für Stück hochzuladen war auch keine große Verbesserung. Also habe ich ein kleines CLI gebaut, das mir die langweilige Arbeit abnimmt: openai-folder-sync, ein Kommandozeilen-Tool, das ein lokales Verzeichnis mit einem OpenAI Vector Store synchronisiert, sodass diese Dateien als durchsuchbarer Kontext für ChatGPT verfügbar werden.

Warum ein Vector Store?

OpenAIs Dateisuche basiert auf einem Vector Store. Du fügst Dateien zu einem Store hinzu, sie werden in Embeddings verarbeitet, und Assistenten (oder ChatGPT über verbundene Tools) können relevante Informationen abrufen und Antworten anhand dieser Dateien fundieren. Das ist ein sauberes Modell, aber es setzt voraus, dass du daran denkst, deine Dateimensammlung hochzuladen und zu pflegen. Ein Sync-Schritt — der ein Verzeichnis spiegelt, das du bereits pflegst — entspricht eher unserer täglichen Arbeitsweise.

Was das Tool macht

openai-folder-sync durchsucht ein Verzeichnis auf deinem Rechner, filtert Dateien nach Erweiterung und schiebt sie in einen vorhandenen Vector Store. Du kannst es einmal ausführen, um einen Store zu befüllen, oder es in deine Routine einbauen (z. B. als Cron-Job), um deine Wissensbasis aktuell zu halten. Es gibt auch eine Option, Git-Metadaten (Branch und Commit) in den hochgeladenen Inhalt einzubetten, sodass du, wenn ChatGPT etwas zitiert, genau weißt, aus welcher Version es stammt.

Repo: https://github.com/JensWalter/openai-folder-sync

Installation

Es ist in Rust geschrieben und lässt sich über Cargo installieren:

cargo install --git https://github.com/JensWalter/openai-folder-sync.git

Cargo baut das Tool und legt das openai-folder-sync-Binary in deinem PATH ab.

Usage

Du brauchst einen OpenAI-API-Schlüssel und eine vorhandene Vector-Store-ID (sieht aus wie vs_…). Dann zeigst du das CLI auf deinen Ordner:

openai-folder-sync \
  --vector-store 'vs_ABCDEFGHIJK' \
  --local-dir '/Users/jens/tmp/wiki/content' \
  --extensions md

Während der Entwicklung lieber über Cargo laufen lassen?

cargo run -- \
  --vector-store 'vs_ABCDEFGHIJK' \
  --local-dir '/Users/jens/tmp/wiki/content' \
  --extensions md

Die meisten Flags können auch über Umgebungsvariablen gesetzt werden:

export OPENAI_API_KEY=sk-...
export VECTOR_STORE=vs_ABCDEFGHIJK
export LOCAL_DIR=/Users/jens/tmp/wiki/content
export EXTENSIONS=md,txt,pdf
export GIT_INFO=true

openai-folder-sync

Common flags
  --vector-store / VECTOR_STORE – target store ID
  --local-dir / LOCAL_DIR – folder to sync
  --extensions / EXTENSIONS – comma-separated list
  --git-info / GIT_INFO – include git metadata (true|false)
  --help – show all options

Wie das mit ChatGPT zusammenpasst

Sobald die Dateien in einem Vector Store sind, kann ChatGPT (oder deine Assistants-API-Anwendungen) beim Beantworten deiner Fragen relevante Ausschnitte aus diesen Dateien abrufen. Das bedeutet, du kannst Dinge fragen wie „Was hat der Vorschlag zur Migrationszeit gesagt?“ und das Modell zieht den relevanten Kontext aus deinen synchronisierten Dokumenten — kein Copy-Paste nötig. Dein Ordner wird effektiv zu einer lebenden Wissensbasis.

Tipps & Fallstricke

Beispiel-Workflow

  1. Erstelle pro Wissensbereich einen Vector Store (z. B. „Company Wiki“, „Research Notes“).
  2. Zeige openai-folder-sync auf den passenden lokalen Ordner.
  3. Führe es im Rahmen deiner Schreib-Routine aus (bei mir: nach dem Push auf main).
  4. Stelle ChatGPT Fragen und lass das Retrieval die schwere Arbeit übernehmen.

Roadmap

Ich habe derzeit keine weiteren Pläne für dieses Tool. Wenn du denkst, dass etwas fehlt, öffne einfach ein Issue oder einen PR.

Wenn du es ausprobieren möchtest, enthält das Repository Installations- und Nutzungsdetails sowie die Hilfeausgabe. Ich habe es gebaut, um meinen eigenen Workflow zu vereinfachen; wenn es dich von ein paar Copy-Paste-Marathons befreit und ChatGPT hilft, aus deinen echten Dokumenten zu antworten, ist das ein Gewinn. Viel Erfolg beim Synchronisieren!