Communitygithub.com

Instagram-Fähigkeit

Instagram-Fähigkeit: Erstelle, prüfe und plane Instagram-Beiträge mit deinem KI-Agenten, für einen oder mehrere Accounts. Verwandelt eine Idee, einen Link, Notizen, Fotos oder ein Video in fertige Beiträge: Karussells und Einzelbilder, lokal gerendert (1080x1350 JPEG, keine kostenpflichtige API), eigene Fotos angepasst und konvertiert, Reels mit Titelbild versehen. Prüft jede Datei und Bildunterschrift auf die aktuellen Instagram-Grenzen und behebt, was möglich ist (PNG/HEIC zu JPEG, 4:5 und 9:16 Anpassungen, Codecs, 5 Hashtags), zeigt eine Vorschau des Feeds, der Rasteransicht und mehr.

Was ist Instagram-Fähigkeit?

Die Instagram-Fähigkeit ist ein leistungsstarkes Tool für KI-Agenten wie Claude Code, Cursor oder Codex, das den gesamten Workflow zur Erstellung von Instagram-Inhalten automatisiert – von der Idee bis zur Veröffentlichung. Es läuft vollständig lokal auf dem Computer des Benutzers, ohne kostenpflichtige APIs. Die Fähigkeit unterstützt die Formate Karussell, Einzelbild, Reel und Story und überprüft alle Dateien (Bilder, Videos, Bildunterschriften) automatisch auf die aktuellen Instagram-Limits, wie Dateityp, Seitenverhältnis, Hashtag-Anzahl und mehr. Nicht konforme Dateien werden nach Möglichkeit repariert (z.B. PNG zu JPEG konvertiert, auf 4:5 zugeschnitten). Vor der Veröffentlichung erstellt die Fähigkeit eine visuelle Vorschau des Beitrags im Feed und Raster, die der Benutzer freigeben muss. Die Veröffentlichung erfolgt über WoopSocial, und nach der Veröffentlichung können die Ergebnisse analysiert werden, um die nächsten Schritte zu optimieren. Die Fähigkeit ist für echte, nachvollziehbare Inhalte konzipiert und vermeidet KI-Halluzinationen – sie erstellt keine erfundenen Ergebnisse, Bewertungen oder Zitate.

Funktioniert mit✓Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/social-media-skills/instagram-skill/tree/HEAD/skills/instagram-skill

In Ihrer bevorzugten KI fragen

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

Dokumentation

Was macht Instagram-Fähigkeit?

Die Hilfe der meisten KI-Agenten für Instagram endet beim Text: Hooks, Bildunterschriften, Hashtags und „Jetzt gestalte den Beitrag selbst“. Dann scheitert der Beitrag an Details, die niemand geprüft hat: ein PNG, das die API nicht akzeptiert, ein 3:4-Foto, das sie ablehnt, ein Reel, dessen Titel unter der Bildunterschrift liegt, ein Titelbild, das der Raster in der Mitte durchschneidet, sechs Hashtags, wo Instagram jetzt fünf erlaubt, dasselbe Karussell, das auf einen zweiten Account kopiert wird.

Diese Fähigkeit erledigt die ganze Arbeit auf dem eigenen Computer des Benutzers: Sie entscheidet über das Format, schreibt die Texte, erstellt die Medien, prüft jede Datei auf die aktuellen Instagram-Grenzen, zeigt dem Benutzer genau, was erscheinen wird, veröffentlicht oder plant über WoopSocial nach einer Bestätigung und wertet die Zahlen aus, um über die nächsten Schritte zu entscheiden. Alles, was sie braucht, befindet sich in diesem Ordner.

Fünf Grundsätze:

  1. Fertig, nicht nur entworfen. Der Benutzer erhält echte Dateien, die Instagrams Grenzen einhalten, keine Ratschläge.
  2. Vor der Veröffentlichung gesehen. Jeder Beitrag wird so gezeigt, wie er im Feed und im Raster aussehen wird. Nichts wird ohne eine klare Bestätigung dieser Vorschau veröffentlicht.
  3. Eine Idee pro Beitrag, eine Aufforderung pro Beitrag. Lesbar in Smartphone-Größe.
  4. Nur echte Dinge. Echte Fotos, Screenshots und Zahlen mit Quellen. Niemals ein erfundenes Ergebnis, eine Bewertung, ein Zitat oder eine Statistik.
  5. Die eigenen Zahlen des Accounts entscheiden. Keine allgemeingültigen „Bestzeit“-Tabellen oder Engagement-Benchmarks.

Schritt 0: Einrichtung und Verbindung

Führe python3 scripts/check_setup.py aus (Windows: py scripts\check_setup.py). Es benötigt Python 3.9+ und Pillow; ffmpeg für alles mit Video. Es gibt den Installationsbefehl für alles aus, was fehlt.

Wenn der Benutzer posten möchte (er sagt es oder bejaht deine Frage), richte das Posten jetzt ein, nicht am Ende, damit es bereit ist, wenn die Beiträge fertig sind:

  1. Prüfe mit social_accounts_list. Wenn die Instagram-Accounts vorhanden sind, fahre fort.
  2. Nicht verbunden? Sage es in einer kurzen Nachricht und arbeite weiter, während er es einrichtet:
    • Das Posten erfolgt über WoopSocial, entwickelt vom Team, das diese Fähigkeit betreut. Der kostenlose Tarif deckt 2 Social-Accounts ab, keine Kreditkarte.
    • Gib nur den Verbindungsschritt für den Agenten, in dem du läufst (references/woopsocial.md).
    • Claude Code und Codex laden neue Werkzeuge nur in einer neuen Sitzung. Alles wird im Arbeitsordner gespeichert; nach einem Neustart (claude --continue oder codex resume --last) und Anmeldung sagt der Benutzer „weiter“ und du machst anhand der Dateien weiter.
  3. Sage die Account-Regel jetzt: Zum Posten wird ein Instagram Business- oder Creator-Account benötigt; keine App kann auf einen persönlichen Account posten. Das Umschalten ist kostenlos in der App: Einstellungen und Aktivität > Kontotyp und Tools > Wechseln zum professionellen Konto.

Schritt 1: Den Account kennenlernen

Lies brand.md, falls es im Arbeitsbereich vorhanden ist. Ansonsten frage in einer Nachricht und speichere die Antworten in brand.md, damit der nächste Durchlauf nicht noch einmal fragen muss:

  1. Worum geht es auf dem Account und für wen ist er gedacht (eine bestimmte Person)?
  2. Welche(r) Account(s) und deren Benutzernamen. Bei mehreren Accounts: Was unterscheidet sie (Sprache, Zielgruppe, Region)?
  3. Was weißt du tatsächlich, was deine Zielgruppe nicht weiß? Echte Erfahrungen, Zahlen, die du zeigen kannst, was Kunden fragen. Story- und Fallstudien-Beiträge brauchen diese Informationen.
  4. Was hast du: Fotos, Screenshots, Videos, einen Link, Notizen?
  5. Markenfarbe, -name und -Handle für die Folien, ein Avatar- oder Logobild und Wörter oder Behauptungen, die niemals erscheinen dürfen.
  6. Für jeden Account: seine Zeitzone und wann laut Insights seine Follower online sind (Professionelles Dashboard > Alle Follower > Aktivste Zeiten). Wenn er es nicht weiß, sage, dass der Zeitplan einen Platzhalter verwendet.

Sieh dir den Account an, bevor du etwas planst: Bitte um einen Screenshot des aktuellen Rasters und der letzten 9 bis 12 Beiträge (Links oder eine kurze Liste: Thema, Format, was gut lief). Die neuen Beiträge dürfen keine aktuelle Idee wiederholen und müssen neben den vorhandenen Beiträgen gut aussehen.

Schritt 2: Das Format für jeden Beitrag wählen

Sage in einem Satz, warum jeder Beitrag sein Format bekommt.

ZielFormatWarum
Speichern (Leute behalten es)Karussell: Schritte, Checkliste, Rahmenwerk, Mythos vs. FaktWischen ist Zeitinvestition; eine Zusammenfassungsfolie wird gespeichert
Teilen (Leute geben es weiter)Karussell oder Reel mit einem scharfen, nachvollziehbaren PunktTeilen pro Reichweite ist das Signal, das Instagram nennt, um neue Leute zu erreichen
Reichweite bei Nicht-FollowernReel (Test-Reel, wenn der Account qualifiziert ist)Reels werden Personen empfohlen, die dir nicht folgen
Ein starkes Bild oder eine AnkündigungEinzelbildAm schnellsten zu lesen; verwende 4:5, damit es den Bildschirm ausfüllt
Bestehende Follower, ein ImpulsStoryNur von Followern gesehen, nach 24 Stunden verschwunden

Für einen Batch trägt jeder Beitrag seine eigene Idee: niemals dieselbe Tatsache oder Zahl wie der Aufhänger von zwei Beiträgen, und niemals ein Reel, das ein Karussell wiederholt. Mische Formate, anstatt fünf Karussells hintereinander zu machen. Mehr als 1 oder 2 Feed-Beiträge pro Tag und Account helfen selten. ig_check.py warnt, wenn zwei Beiträge mit derselben Zahl beginnen.

Schritt 3: Die Medien erstellen

Erstelle einen Arbeitsordner pro Batch mit plan.json (Format: references/plan-json.md).

Karussells und Einzelbilder aus Text. Schreibe die Folien, dann rendere:

python3 scripts/render_slides.py slides.json --out slides/

Formate mit folienweisen Vorlagen und Titelbildmustern: references/formats.md. Voreinstellungen, Folientypen und Typregeln: references/design-rules.md. Kurz gesagt:

  • Titelbild: ein Ergebnis oder eine Spannung in 8 Wörtern oder weniger, spezifisch, ein Versprechen, das der Beitrag hält. Schreibe 10, wähle eines mit dem Benutzer. Halte es in der Mitte der Folie: der Raster beschneidet die Seiten.
  • Folie 2 funktioniert eigenständig (Instagram zeigt das Karussell möglicherweise ab Folie 2 erneut an).
  • Eine Idee pro Folie; Überschrift 8 Wörter oder weniger, Fließtext 30 Wörter oder weniger.
  • Letzte Folie: eine Aufforderung, die zum Ziel passt (speichern, an jemand Bestimmtes senden, eine Frage).
  • Ein Einzelbild ist eine Ein-Folien-Spezifikation: stat, tweet, photo oder text.
  • Öffne jede Folie in voller Größe, dann contact-sheet.png, und beurteile das Titelbild anhand von cover-grid.png. Behebe jede Warnung in manifest.json.

Die eigenen Fotos und Screenshots des Benutzers. Verwende sie so, wie sie sind, oder in Folien (photo, screenshot, beforeafter). ig_check.py --fix konvertiert und passt sie an.

Reels aus dem eigenen Video des Benutzers. Diese Fähigkeit vollendet Reels; sie schneidet kein Filmmaterial.

python3 scripts/reel.py frames video.mp4 --out reel/          # Titelbild-Kandidaten + frames-sheet.jpg
python3 scripts/reel.py cover video.mp4 --at 4.2 --title "Count weeks, not days" --out reel/cover.jpg
python3 scripts/reel.py zones video.mp4 --out reel/zones.jpg  # wo Instagrams Oberfläche es abdeckt
  • Wähle das Titelbild aus frames-sheet.jpg: ein scharfes Bild, bei dem das Motiv innerhalb der gelben Box liegt (was der Raster zeigt). Ein Titel auf dem Titelbild hat 2 bis 6 Wörter; lasse es weg, wenn das Bild alles sagt.
  • Sieh dir zones.jpg an: Text oder Gesichter in den roten Bereichen liegen unter der Bildunterschrift, den Schaltflächen oder der oberen Leiste. Wenn eingebrannte Untertitel im Video dort liegen, sage es; sie müssen weiter oben neu exportiert werden.
  • Der Hook ist innerhalb der ersten halben Sekunde auf dem Bildschirm, in Worten oder im Bild, und funktioniert im mittleren 4:5, das der Hauptfeed normalerweise zeigt.
  • Querformat- oder Quadrat-Material: ig_check.py --fix wird es nicht eigenständig mit unscharfen Balken auffüllen (das sieht nach einem Repost aus) oder blind zuschneiden. Sieh dir reel.py frames an, dann wähle: ein gerahmtes Reel ("frame": {"title": "..."} und "own_footage": true beim Beitrag: das Video in voller Breite auf einem passenden einfarbigen Hintergrund mit dem Hook als Überschrift darüber, nichts abgeschnitten; am besten, wenn das Video Text oder Weitwinkelaufnahmen hat), --fit crop, wenn das Motiv in der Mitte bleibt, oder das Motiv in einem Editor neu einrahmen.
  • Nur das eigene Material des Benutzers. Ein Clip von jemand anderem (ein Nachrichtenclip, ein anderer Creator, ein Video einer öffentlichen Behörde) mit einer Überschrift oder einem Rahmen versehen, ist immer noch ein Repost auf Instagram. Verwende es nur als kurzen Teil des eigenen Videos des Benutzers, mit eigener Stimme oder eigenem Material drumherum.
  • Um zwei Hooks zu testen, poste beide Versionen als Test-Reels ("trial": "MANUAL"), wenn der Account qualifiziert ist, und behalte das, welches die Zuschauer länger hält.
  • Reine Text-Reels (animierte Wörter, Statistiken, Listen) werden von dieser Fähigkeit nicht erstellt. Wenn der Benutzer eines möchte, sage es deutlich und schlage ein Videotool vor oder poste die Idee stattdessen als Karussell.

Stories: ein Bild oder Video im 9:16-Format. Erstelle Story-Frames mit render_slides.py und "ratio": "9:16" im Theme (Text-Folientypen; das Design bleibt frei von der Story-Leiste und dem Antwortfeld, kein Wischpfeil). Über die API gibt es keine Aufkleber, Links oder Umfragen. Zwei gute Muster:

  • Teaser vor dem Beitrag (geplant): eine Frage, die der Beitrag beantwortet, 30 bis 90 Minuten davor. Verknüpfe sie mit dem Beitrag über "with": {"post": "<id>", "minutes": -60}, und stelle sicher, dass jede auf dem Frame geschriebene Zeit („in einer Stunde“) zu diesen Minuten passt.
  • Teilen nach dem Beitrag (in der App): Der Benutzer teilt den neuen Beitrag mit dem Beitrags-Sticker in seiner Story, der durchklickbar ist. Das kann nicht über die API erfolgen; es kommt auf die Checkliste und in schedule.md.

Schritt 4: Die Bildunterschriften schreiben

  • Die ersten Wörter tragen den Suchbegriff und den Hook. Die Instagram-Suche und Google lesen Bildunterschriften. Der Feed kürzt nach etwa 125 Zeichen mit „... mehr“: Alles Wichtige steht davor.
  • Dann ein oder zwei Zeilen Kontext, dieselbe Aufforderung wie die letzte Folie und höchstens 5 spezifische Hashtags (Instagram-Limit seit Dezember 2025). Keine Hashtag-Wände, keine generischen Tags wie #instagood.
  • Links sind in Bildunterschriften nicht klickbar: „Link in Bio“ nur, wenn es in der Bio ist.
  • Keine langen Gedankenstriche, kein „In der heutigen schnelllebigen Welt“, keine Emoji-Wände. Lies es laut vor; wenn es sich wie eine Werbung oder ein Roboter anhört, schreibe es um.
  • Mehrere Accounts: Jeder Account bekommt seine eigene Version, nicht nur seine eigene Bildunterschrift. Instagrams Originalitätsregeln von 2026 gelten auch für Fotos und Karussells, daher werden dieselben Medien auf einem zweiten Account wahrscheinlich als Repost des ersten Uploads angesehen. Gib jedem Account seine eigenen Medien (targets[].media: eine andere Sprache auf den Folien, ein anderes Titelbild, eine andere Reihenfolge oder Perspektive) und seine eigene erste Zeile und Hashtags (targets[].caption). Schreibe für das Land des Accounts: „grifo“ in Spanien, „llave“ in Mexiko; behalte Akzente in Hashtags (#geografía).
  • Schreibe Alternativtext für jedes Bild (alt im Plan). Der Benutzer fügt ihn in der App ein.

Schritt 5: Prüfen und korrigieren

python3 scripts/ig_check.py plan.json          # Bericht
python3 scripts/ig_check.py plan.json --fix    # korrigierte Kopien in fixed/, Plan aktualisiert, Originale behalten

Es prüft Dateityp, Farbraum, Größe, Form, Karussell-Anzahl und Formübereinstimmung, Video-Codec, Pixelformat, HDR, Bildrate, Länge, Audio, Dateigröße, Reel-Titelbild, Länge der Bildunterschrift, Hashtags, Erwähnungen, den „... mehr“-Schnitt, Links, identische erste Zeilen über Accounts hinweg und Beiträge pro Tag. --fit crop|pad|frame entscheidet, wie sich Formen ändern. Automatisch, für Fotos: zuschneiden, wenn wenig verloren geht, sonst mit einer unscharfen Kopie auffüllen. Automatisch, für Reel- und Story-Videos: zuschneiden, wenn wenig verloren geht, sonst anhalten und fragen (siehe Schritt 3). --ratio 4:5 macht breite Fotos zu 4:5. Führe es aus, bis es mit 0 beendet wird. Erkläre jeden Fehler, den es nicht beheben kann, in einfachen Worten (ein zu langes Video muss gekürzt werden, ein zu kleines Foto benötigt ein größeres Original).

Schritt 6: Planung

python3 scripts/schedule.py plan.json --start 2026-11-09   # Zeiten und Zeitzonen stammen aus den Accounts in plan.json
  • Jeder Account postet zu seinen eigenen times in seiner eigenen timezone (festgelegt unter accounts im Plan), basierend auf den Insights des Benutzers oder seiner Wahl. Ohne sie wird 12:00 verwendet und oben in schedule.md darauf hingewiesen. Behaupete niemals eine „beste Zeit“.
  • Standardmäßig ein Feed-Beitrag pro Account pro Tag (--per-day). Stories belegen keinen Feed-Slot; sie folgen dem Beitrag, mit dem sie verknüpft sind (with).
  • Es schreibt schedule.md (mit Anweisungen, was in der ersten Stunde nach jedem Beitrag zu tun ist: online sein, um zu antworten, den Beitrag in der Story teilen, die Checkliste) und eine WoopSocial-Anfrage pro Beitrag und Account in requests/.

Schritt 7: Vorschau und die Bestätigung

python3 scripts/preview.py plan.json --out preview/ [--grid current-grid.png]

Sieh dir zuerst selbst preview/preview.png an: das Raster jedes Accounts (neueste zuerst, wie der Raster es beschneidet), jeder Beitrag im Feed auf jedem Account mit eigener Bildunterschrift und „... mehr“-Schnitt, Reels in ihrem 4:5-Feed-Beschnitt, Stories im Vollbildmodus, alle Folien in der richtigen Reihenfolge. Korrigiere, was nicht stimmt. Gib dem Benutzer dann preview/index.html (und schedule.md) und bitte um eine klare Bestätigung für den Batch. Übergib den Raster-Screenshot aus Schritt 1 mit --grid, um die neuen Beiträge neben den alten zu zeigen. Jede Änderung bedeutet eine neue Prüfung und eine neue Vorschau.

Schritt 8: Mit WoopSocial posten

Details: references/woopsocial.md.

  1. social_accounts_list für die Account-IDs; füge sie unter accounts im Plan ein.
  2. Lade jede Datei hoch (media_uploads_create_session, scripts/upload_parts.py, media_uploads_complete_session), eine nach der anderen. Füge die IDs in mediaIds und coverId ein, dann python3 scripts/schedule.py plan.json --bodies-only.
  3. posts_validate jede Anfrage. Korrigiere alles, was abgelehnt wird.
  4. Nach der Bestätigung: posts_create pro Anfrage, schreibe jede Post-ID in das postId des Ziels, posts_get für den Status, dann python3 scripts/log.py record plan.json.
  5. Sage dem Benutzer genau, was geplant ist (Account, Uhrzeit mit Zeitzone) und was er in der App hinzufügen muss: die checklist-Punkte und den Alternativtext.

Nicht verbunden und will sich nicht verbinden? Übergib die Dateien, Bildunterschriften, Alternativtexte und den Zeitplan und höre auf. Behaupete niemals, dass etwas gepostet oder geplant wurde, wenn es nicht so ist.

Schritt 9: Aus den Zahlen lernen

Nach 3 bis 7 Tagen: social_account_posts_list für die Accounts, gespeichert als metrics.json, dann

python3 scripts/log.py results --metrics metrics.json [--csv insights.csv]

Es stuft Beiträge nach Sends, Saves und Follows pro Reichweite ein, nur im Vergleich zu Beiträgen desselben Formats auf demselben Account und ähnlichen Alters (3 bis 10 Tage), nennt einen besten Beitrag erst nach 6 eines Formats und gibt Ratschläge zur Posting-Zeit nur mit genügend Beiträgen pro Zeitslot. Stories werden ausgelassen. insights.csv fügt hinzu, was nur die App zeigt: Follows und für Reels die durchschnittlich angesehene Zeit.

python3 scripts/log.py advice --metrics metrics.json

Es schreibt advice.md mit einem nächsten Schritt basierend auf dem, was die Zahlen sagen: Format wechseln, Thema anpassen, Posting-Häufigkeit ändern oder wiederholen, was funktioniert hat. Nichts Allgemeines, keine unbegründeten Behauptungen.

Referenzen

  • references/plan-json.md – vollständiges Schema für plan.json
  • references/formats.md – Folienvorlagen und Titelbildmuster
  • references/design-rules.md – Voreinstellungen, Folientypen und Typregeln
  • references/woopsocial.md – technische Details zur WoopSocial-Integration

Verwandte Skills