Blog

Automatisieren Sie die langweiligen Teile der Elternschaft mit LLMs

Giovanni Lanzani

Aktualisiert Oktober 14, 2025
4 Minuten

Ich mache kein Geheimnis daraus, dass ich Kinder habe. Das bringt viele Freuden und gelegentlich auch Sorgen mit sich - und manchmal Dinge, die langweilig sein können und sich wiederholen.

Dazu gehört auch, dass Sie diese E-Mails von den Schulen bekommen (und wenn Sie Kinder in 4 verschiedenen Schulen haben, bekommen Sie mindestens 4), in denen steht, wann die Schulferien und die schulbezogenen freien Tage sind.

Solche E-Mails können Tabellen wie die folgende für landesweite FeiertageDie Ferien der niederländischen Schule für die Saison 2025-2026oder diese für schulspezifische freie Tage enthalten.

Schulspezifische freie Tage an einer beliebigen niederländischen Schule.

Das Importieren all dieser Daten in einen Kalender (mal 4) ist eine lästige Aufgabe. Letztes Jahr dachte ich, dass ich das meiste davon mit AppleScript automatisieren könnte.

Mit AppleScript konnte ich den folgenden Code im Skript-Editor schreiben und alle meine Ereignisse hinzufügen.

tell application "Calendar"
    tell calendar "Home" -- Change "Home" to the name of your calendar
        set newEvent to make new event at end of events with properties {summary:"Summer Holiday", start date:date "Saturday, 4 July 2026 at 00:00:00", end date:date "Sunday, 16 August 2026 at 00:00:00"}
                -- add other events
    end tell
end tell

Das bedeutete immer noch, dass ich etwas von Hand schreiben musste, und das war zwar besser als jedes Ereignis einzeln zu erstellen, aber immer noch mühsam.

In diesem Jahr sind die LLMs jedoch viel leistungsfähiger geworden, so dass ich beschlossen habe, sie mit den Screenshots der relevanten Tabellen zu füttern und sie wie folgt aufzufordern

Geben Sie anhand der als Bild angehängten Tabelle für jede Zeile der Tabelle den folgenden Satz aus

newEvent setzen, um am Ende von Ereignissen mit Eigenschaften ein neues Ereignis zu erzeugen  
  {Zusammenfassung:"",  
  Startdatum:Datum "",  
  Enddatum:Datum ""
}

Ich brauche nur diesen Satz, eine Zeile pro Zeile, keinen Code. Vor der allerersten Zeile, Ausgabe   
Anwendung "Kalender" mitteilen
  tell calendar "Home".  

Nach der allerletzten Ausgabezeile  

  Ende erzählen
Ende erzählen

Dies ist das Ergebnis nach der Eingabe des ersten Bildes

tell application "Calendar"
  tell calendar "Home"
    set newEvent to make new event at end of events with properties {summary:"Herfstvakantie", start date:date "18-10-2025", end date:date "26-10-2025"}
    set newEvent to make new event at end of events with properties {summary:"Kerstvakantie", start date:date "20-12-2025", end date:date "04-01-2026"}
    set newEvent to make new event at end of events with properties {summary:"Voorjaarsvakantie", start date:date "21-02-2026", end date:date "01-03-2026"}
    set newEvent to make new event at end of events with properties {summary:"Tweede Paasdag", start date:date "06-04-2026", end date:date "06-04-2026"}
    set newEvent to make new event at end of events with properties {summary:"Meivakantie", start date:date "22-04-2026", end date:date "05-05-2026"}
    set newEvent to make new event at end of events with properties {summary:"Hemelvaartsdag", start date:date "14-05-2026", end date:date "15-05-2026"}
    set newEvent to make new event at end of events with properties {summary:"Tweede Pinksterdag", start date:date "25-05-2026", end date:date "25-05-2026"}
    set newEvent to make new event at end of events with properties {summary:"Zomervakantie", start date:date "04-07-2026", end date:date "16-08-2026"}  end tell
end tell

Ziemlich gut! Ich habe es in den Skript-Editor kopiert und bin damit für das kommende Jahr gerüstet!

[caption id="attachment_88426" align="alignnone" width="988"]macOS Skript-Editor zeigt das ausführungsbereite Skript macOS Skript-Editor zeigt das ausführungsbereite Skript[/caption]

Nerdige Details

Wie sieht mein Arbeitsablauf unter der Haube aus? Ich habe die folgenden Tools/LLM verwendet

  • Auf der Kommandozeile habe ich llm von Simon Willison mit uv (Website von uv) installiert. uv tool install llm
  • Dann habe ich einen Gemini-API-Schlüssel erstellt. Gemini-2.5 scheint der König des Berges für tabellarische OCR zu sein, und dieser Job kostet nur Bruchteile von Cents. Um Gemini-2.5 mit dem Tool llm zu verwenden, führen Sie llm install llm-gemini aus und llm keys set gemini
  • Sobald Sie den Screenshot haben (⇧⌘4 auf dem Mac. Es wird eine Datei auf Ihrem Desktop gespeichert), machen Sie llm -a path/to/my/screenshot -m gemini-2.5-pro 'prompt' wo prompt das ist, was ich oben geschrieben habe!
  • Wenn Sie abenteuerlustig sind und glauben, dass der LLM Ihrer Wahl nur gültiges AppleScript ausgibt, können Sie llm -a path/to/my/screenshot -m gemini-2.5-pro 'prompt' | osascript - schreiben, ohne zwischen dem Terminal und dem Skript-Editor zu kopieren und einzufügen.
  • Sie möchten noch weniger kopieren? Kopieren Sie die Eingabeaufforderung von oben und führen Sie im Terminal
  • pbpaste | llm -a path/to/my/screenshot -m gemini-2.5-pro | osascript -

Viel Spaß!

Verfasst von

Giovanni Lanzani

Contact

Let’s discuss how we can support your journey.