CommunityCodierung & Entwicklunggithub.com

LucaFilippetti99/PersonalCoach

Erstellt Lucas wöchentlichen Speiseplan basierend auf seinem Einkaufszettel (spesa.json), Kühlschrank (frigo.json) und Profil für eine Definitionsphase mit ungefähren Portionsangaben und einem kleinen Rezept pro Gericht.

Was ist PersonalCoach?

Diese Skill, LucaFilippetti99/PersonalCoach, ermöglicht es einem KI-Assistenten, für Luca einen personalisierten wöchentlichen Speiseplan zu erstellen, der auf seinen aktuellen Vorräten (Kühlschrank und Vorratskammer), seinem Einkaufszettel und seinen persönlichen Einstellungen basiert. Sie wurde für die Verwendung mit einer lokalen Web-App entwickelt und stellt sicher, dass der Plan mit den Regeln der App konsistent bleibt, Abfälle vermieden und die Ernährungsziele (Defizit für Muskeldefinition) eingehalten werden. Nützlich für Szenarien, in denen Luca einen Essensplan, ein Wochenmenü oder Ideen für die Zubereitung von Mahlzeiten mit vorhandenen Zutaten anfordert. Die Skill liest mehrere JSON- und Markdown-Dateien, berechnet Portionen basierend auf dem Trainingskalender und aktuellen Gewichtstrends, priorisiert verderbliche Lebensmittel und erstellt Mini-Rezepte. Sie aktualisiert auch den Einkaufszettel und den Kühlschrankinhalt, um alles synchron zu halten. Die Plattform ist ein dateibasiertes Ökosystem (lokale Dateien + Web-App), das mit KI-Assistenten wie Claude Code oder Codex kompatibel ist. Wesentliche Regeln sind: zuerst den Kühlschrank verwenden, dann den Einkaufszettel; konsistente Zutatenbezeichnungen beibehalten; bereits gegessene Mahlzeiten nicht ändern; und nur minimale zusätzliche Einkäufe vorschlagen.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/LucaFilippetti99/PersonalCoach/tree/HEAD/skills/piano-pasti-settimanale

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Wöchentlicher Speiseplan

Der Plan wird aus Lucas lokaler Web-App (Bereich Essen) gelesen, daher muss die JSON-Datei dem folgenden Schema buchstabengetreu entsprechen.

Zu lesende Eingaben

  1. profilo.md — Ziel, ausgeschlossene Lebensmittel, Vorlieben, Anzahl der Mahlzeiten, Nahrungsergänzungsmittel.
  2. frigo.json — was bereits zu Hause ist (mit ggf. Verfallsdaten): muss zuerst verwendet werden. Enthält sowohl Kühlschrank als auch Vorratskammer: das Feld dove hat den Wert "frigo" oder "dispensa" (falls fehlend: Kohlenhydrate, Fette und Konserven sind in der Vorratskammer, der Rest im Kühlschrank).
  3. spesa.json — der aktuelle Einkaufszettel: ist die Grundlage des Plans zusammen mit dem Kühlschrank.
  4. impostazioni.json — target.kcal und target.proteine_g; calendario um zu wissen, welche Tage Trainingstage sind; sempre_in_casa (z. B. Salz, Öl: sind immer da, kommen nie auf den Einkaufszettel).
  5. Die letzte Datei in piani-pasti/ — um dieselben Gerichte nicht zu wiederholen.
  6. log/misure.json — wenn der Gewichtstrend eine Anpassung der Portionen nahelegt.

Wenn frigo.json oder impostazioni.json noch nicht existieren, fahre ohne sie fort.

Luca ändert die Pläne auch über die Web-App (fügt hinzu, ändert oder löscht Mahlzeiten, markiert sie als gegessen). Wenn die Datei für die Woche bereits existiert, beginne damit: verändere keine Mahlzeiten mit "fatto": true und überschreibe keine Mahlzeiten, die er geschrieben hat, es sei denn, er bittet dich darum; ergänze nur die fehlenden Tage oder Mahlzeiten.

Regeln

  • Zuerst der Kühlschrank, dann der Einkaufszettel: verwende zuerst die Artikel aus frigo.json, besonders die mit nahendem Verfallsdatum. Dann den Einkaufszettel. Mindestens 80–90 % der Zutaten müssen aus Kühlschrank + Einkaufszettel stammen; was fehlt, kommt in da_comprare_extra mit einer kurzen Begründung.
  • Konsistente Bezeichnungen: verwende für Zutaten denselben Namen wie in frigo.json / spesa.json (z. B. "Petto di pollo", nicht "pollo"), damit die Web-App erkennt, was bereits zu Hause ist.
  • Null Verschwendung: verderbliche Zutaten (Gemüse, Fleisch, frischer Fisch) sollten in den ersten Tagen verwendet werden. Plane clevere Reste: einmal kochen, zweimal verwenden.
  • Definition, moderates Defizit: Proteine in jeder Hauptmahlzeit, viel Gemüse, Kohlenhydrate vorhanden (reichlicher an Trainingstagen im calendario). Keine ausgelassenen Mahlzeiten oder drastische Pläne. Halte den Tag nahe an target.kcal und target.proteine_g.
  • Ungefähre Portionen: verwende praktische Maße (Faust, Handfläche, Esslöffel, "1 mittlere Brust") mit Grammangaben in Klammern nur für die Hauptkohlenhydrate.
  • Abwechslung: Luca kocht gerne jeden Tag, daher einfache, aber unterschiedliche Rezepte, maximal 2 Wiederholungen desselben Gerichts pro Woche. Du kannst Gerichte aus früheren Plänen vorschlagen, die ihm gefallen haben, und denselben Gerichtsnamen verwenden (die Web-App sammelt sie in einem Rezeptbuch).
  • Wochenende: Luca isst am Wochenende auswärts (mindestens eine Pizza pro Woche): plane diese Mahlzeiten nicht oder notiere "auswärts" in den Anmerkungen.
  • Respektiere immer die in profilo.md angegebenen ausgeschlossenen Lebensmittel.

Einkaufszettel, Kühlschrank und Vorratskammer (gleiche Regeln wie die Web-App)

Die Web-App hält Plan, Einkaufszettel und Haushalt mit einfachen Regeln synchron: befolge auch du sie, damit die Dateien konsistent bleiben.

  • Nachdem du den Plan geschrieben hast, aktualisiere spesa.json: füge für jede Zutat der noch nicht gegessenen Mahlzeiten (ab heute), die nicht in frigo.json (Kühlschrank oder Vorratskammer) ist, nicht in sempre_in_casa ist und nicht bereits auf der Liste steht, einen Artikel { "nome", "categoria", "quantita": "", "auto": true } hinzu. auto: true bedeutet "vom Plan hinzugefügt": die Web-App entfernt ihn automatisch, wenn die Mahlzeit geändert wird. Ändere keine Artikel ohne auto (sie wurden von Luca geschrieben).
  • da_comprare_extra bleibt für optionale Vorschläge (z. B. eine Zitrone zum Würzen), nicht für Zutaten, die für die Mahlzeiten benötigt werden.
  • Namen: die Web-App vergleicht Namen ohne Großschreibung und Akzente und mit Singular = Plural ("uovo" = "uova"), aber "pollo" und "petto di pollo" bleiben unterschiedlich: verwende dieselben Namen wie in frigo.json / spesa.json.
  • Wenn Luca dir sagt, dass er eine Mahlzeit gegessen hat: setze "fatto": true, entferne die Zutaten aus frigo.json, die im KÜHLSCHRANK sind (die Vorratskammer bleibt) und speichere sie in der Mahlzeit unter "consumati" (die entfernten Artikel, genau wie sie waren), damit sie zurückkommen, wenn Luca das Häkchen in der Web-App entfernt.
  • Wenn Luca dir sagt, dass er eingekauft hat: entferne die gekauften Artikel aus spesa.json und füge sie zu frigo.json mit dove ("dispensa" für Kohlenhydrate, Fette und Konserven, "frigo" für den Rest) und scadenza hinzu, falls bekannt.

Mini-Rezept

Jede Mahlzeit hat das Feld ricetta: ein Array von 3-5 kurzen Schritten (jeweils eine Zeile), mit ungefähren Garzeiten. Keine offensichtlichen Schritte ("Anrichten"). Wenn ein Gericht Reste eines vorherigen Tages verwendet, erwähne dies im ersten Schritt.

Schema der Datei

{
  "settimana": "AAAA-Www",
  "kcal_giorno_indicative": 2150,
  "giorni": [
    {
      "giorno": "lunedì",
      "pasti": [
        {
          "tipo": "pranzo",
          "piatto": "Riso con pollo e zucchine",
          "ingredienti": [{ "nome": "Riso basmati", "porzione": "1 pugno abbondante (~80 g)" }],
          "ricetta": ["Cuoci il riso in acqua salata (circa 12 min)", "…"],
          "note": "",
          "fatto": true
        }
      ]
    }
  ],
  "da_comprare_extra": [{ "nome": "Limoni", "categoria": "frutta", "quantita": "2", "motivo": "per condire il pesce" }]
}
  • giorno: Name in Kleinbuchstaben (lunedì … domenica). tipo: pranzo, cena, colazione oder spuntino.
  • categoria in da_comprare_extra: eine von proteine, carboidrati, verdure, frutta, latticini, grassi, dispensa, altro.
  • fatto ist optional: true nur für bereits gegessene Mahlzeiten (wird von Luca über die Web-App gesetzt oder von dir, wenn er sagt, was er gegessen hat); bei zukünftigen Mahlzeiten weglassen.
  • consumati ist optional: existiert nur in gegessenen Mahlzeiten und enthält die aus dem Kühlschrank entfernten Artikel (siehe oben). Nicht ändern.
  • Keine weiteren Felder hinzufügen.

Ausgabe

  1. Speichere den Plan in piani-pasti/AAAA-Www.json (ISO-Woche) unter genauer Einhaltung des obigen Schemas.
  2. Aktualisiere spesa.json mit den fehlenden Zutaten (siehe "Einkaufszettel, Kühlschrank und Vorratskammer").
  3. Zeige im Chat eine kurze Zusammenfassung: eine Zeile pro Tag mit den Hauptgerichten, dann was du zum Einkaufszettel hinzugefügt hast, die Liste da_comprare_extra und 2-3 Zubereitungstipps (was im Voraus gekocht werden kann). Erinnere Luca daran, dass der Plan bereits in der Web-App, Bereich Essen, sichtbar ist.

Verwandte Skills