CommunityBildgithub.com

MrBogomips/codex-image-gen

Generiert oder bearbeitt Rasterbilder (Illustrationen, Fotos, Icons, Texturen, Mockups, Poster, Logokonzepte, transparente Ausschnitte, Platzhalter-Assets) über das integrierte Bildtool der codex CLI und speichert sie unter einem angegebenen Pfad.

Was ist codex-image-gen?

Diese Fähigkeit ermöglicht es KI-Agenten, Rasterbilder zu generieren oder zu bearbeiten, indem sie das integrierte Bildtool der codex CLI verwenden. Statt die von `codex exec` standardmäßig in einem temporären Ordner abgelegten Bilder manuell suchen zu müssen, nutzt das Skill ein Python-Skript, das die Bilder gezielt aus einer codex-Sitzung sammelt und an den gewünschten Pfad speichert. Es unterstützt verschiedene Bildeingaben wie Seitenverhältnis, Referenzbilder, Bildbearbeitungen, mehrere Varianten und exakte Pixelmaße. Das Skill ist für Entwickler und KI-Agenten nützlich, die wiederholt qualitativ hochwertige Bilder (z. B. für UI-Mockups, Illustrationen oder Logos) erstellen müssen, ohne auf externe kostenpflichtige APIs angewiesen zu sein – es läuft auf dem codex-Kontokontingent ohne zusätzlichen API-Key. Bei Fehlern oder fehlendem Kontingent wird keine Alternative wie OpenAI SDK verwendet, sondern der Vorgang sauber abgebrochen. Das Skill ist in der Lage, lange und detaillierte Bildbeschreibungen zu verarbeiten, und bietet Optionen zur Anpassung von Seitenverhältnis, Bildgröße, Anzahl der Varianten und Nachbearbeitung (Zuschneiden oder Auffüllen).

Funktioniert mit~Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add https://github.com/MrBogomips/skills/tree/HEAD/skills/codex-image-gen

Installed? Explore more Bild skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

In Ihrer bevorzugten KI fragen

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

Dokumentation

Bildgenerierung über die codex CLI

codex exec hat keine Option „Bild in diesen Pfad schreiben“: Es speichert generierte Bilder unter $CODEX_HOME/generated_images/<sitzungs-id>/. scripts/codex_image.py führt eine nicht-interaktive Runde aus, sammelt nur die Bilder dieser exakten Sitzung und schreibt sie an den gewünschten Pfad. Wenn kein Bild zurückkommt, schreibt es nichts.

Verwende immer das Skript. Ein selbstgeschriebenes codex exec "zeichne eine Katze" gibt oft Prosa oder eine ImageMagick-Zeichnung zurück, und du musst nach der Ausgabe suchen.

Nie auf eine kostenpflichtige API ausweichen. Verwende nicht das OpenAI SDK oder OPENAI_API_KEY, auch wenn codex fehlschlägt oder das Kontingent erschöpft ist. Melde den Fehler und brich ab. Für die kostenpflichtige API von Google verwende nur google-image-gen, und nur wenn der Benutzer explizit danach verlangt.

Verwendung

Starte aus dem Skill-Verzeichnis oder gib den absoluten Pfad des Skripts an. Ein Durchlauf dauert etwa 30–60 Sekunden.

python3 scripts/codex_image.py -p "ein einzelnes rotes Fahrrad gegen eine nasse Steinmauer in der Dämmerung, Kinofotografie" -o fahrrad.png
ZielBefehl
Seitenverhältnis (Hinweis für das Modell)-p "..." -o aus.png --aspect 9:16
Referenzbild(er)-p "..." -o aus.png -r ref.png [-r ref2.png]
Bild bearbeiten--edit v1.png -p "mach den Himmel lila" -o v2.png
Mehrere Varianten-p "..." -o opt.png -n 3 (speichert opt.png, opt-2.png, opt-3.png)
Exakte Pixelgröße-p "..." -o cover.png --aspect 9:16 --fit 1080x1920
Langer Prompt--prompt-file prompt.md -o aus.png
Prompt ansehen, nichts ausgeben--print-prompt hinzufügen
  • Die Ausgabeerweiterung folgt dem tatsächlichen Format: PNG-Bytes, die als fahrrad.jpg angefordert wurden, landen in fahrrad.png. Das Skript gibt jeden geschriebenen Pfad aus.
  • --aspect beeinflusst nur das Ergebnis. --fit WxH garantiert die Größe danach: es füllt mit schwarzen Balken auf (--fit-mode pad, Standard) oder zentriert es mit Beschnitt (--fit-mode crop) und speichert immer als PNG. Stimme --aspect auf das Ziel ab, damit wenig aufgefüllt oder beschnitten werden muss. --fit benötigt Pillow, das vor dem codex-Lauf geprüft wird.
  • -n fordert N Varianten in einem Durchlauf an; das Modell kann weniger zurückgeben, und das Skript speichert, was es bekommt.
  • --edit hängt das Bild als Ziel an und sagt dem Modell, dass es nur das ändern soll, was der Prompt verlangt.

Den Prompt schreiben

Das Skript fügt die Formulierung hinzu, die einen echten Bildtool-Aufruf erzwingt, daher geht es bei --prompt nur um das Bild. Eine kurze, beschriftete Spezifikation funktioniert gut:

Motiv: ein einzelnes rotes Fahrrad, Farbe an den Kanten bis aufs blanke Metall abgenutzt
Szene: lehnt an einer nassen Steinmauer im Hafen, Stadtrichter dahinter
Stil: Kinofotografie, geringe Schärfentiefe
Beleuchtung: Dämmerung, niedrige warme Sonne, Spiegelungen auf nassem Stein
Text (wörtlich): "KEIN ERSATZTEIL"
Vermeiden: Menschen, Wasserzeichen, zusätzliche Fahrräder
  • Zitiere Text, der erscheinen muss, und halte ihn kurz; lange Zeichenketten kommen oft falsch geschrieben zurück.
  • Gib an, was nicht erscheinen darf. Für einen transparenten Ausschnitt fordere einen transparenten Hintergrund an und speichere als .png.
  • Für --edit beschreibe die Änderung („entferne den Laternenpfahl“) und nenne, was erhalten bleiben muss („behalte das Fahrrad, Bildausschnitt und Beleuchtung“). Ändere pro Durchlauf nur eine Sache.
  • Eine Bearbeitung ist eine Neugenerierung, kein Pixel-Patch: Bildausschnitt und Details variieren, und jeder Durchlauf verstärkt dies. Halte die Kette kurz und setze alles, was unverändert überleben muss, nachträglich zusammen.

Nach der Generierung

Überprüfe das Ergebnis, bevor du es übergibst, mit allen dir zur Verfügung stehenden Mitteln, um ein Bild anzusehen: Das Modell hat manchmal Probleme mit Text, Anzahlen oder einem angeforderten Detail. Falls es daneben liegt, führe den Vorgang mit einem präziseren Prompt erneut aus oder verfeinere mit --edit.

Fehlerfälle

Das Skript beendet sich mit einem Fehlercode ungleich Null und einer klaren Meldung und schreibt nichts.

  • codex CLI nicht gefunden / nicht angemeldet: installiere codex und führe codex login aus; CODEX_BIN verweist auf ein anderes Programm.
  • Kontingent erschöpft: warte auf den Reset, den codex meldet, oder verwende ein anderes Konto. Wiederhole nicht in einer Schleife.
  • Kein Bild erzeugt: Das Modell hat in Text geantwortet. Die Antwort wird angezeigt; führe den Vorgang mit einer einfacheren Bildanfrage erneut aus.
  • Zeitüberschreitung: Erhöhe --timeout (Standard 900 s) nur, wenn der Durchlauf lediglich langsam war.
  • Pillow fehlt mit --fit: pip install Pillow, oder entferne --fit.

Verwandte Skills