Kompetenz zur Bildgenerierung
Erzeugt oder bearbeitet Bilder für das aktuelle Projekt (z. B. Website-Assets, Spiel-Assets, UI-Mockups, Produkt-Mockups, Wireframes, Logodesign, fotorealistische Bilder oder Infografiken).
Übergeordnete Modi und Regeln
Diese Kompetenz hat genau zwei übergeordnete Modi:
- Standardmäßiger integrierter Tool-Modus (bevorzugt): Integriertes
image_gen-Werkzeug zur Bilderzeugung, -bearbeitung und für transparente Bildanfragen. Erfordert keinenOPENAI_API_KEY. - Fallback-CLI-Modus:
scripts/image_gen.pyCLI. Verwenden, wenn der Benutzer explizit nach dem CLI-/API-/Modell-Pfad fragt oder ihn bestätigt. ErfordertOPENAI_API_KEY.
Im CLI-Fallback bietet die CLI drei Unterbefehle:
generateeditgenerate-batch
Regeln:
- Verwende standardmäßig das integrierte
image_gen-Werkzeug für normale Bilderzeugungs- und Bearbeitungsanfragen. - Wechsle nicht für gewöhnliche Qualitäts-, Größen- oder Dateipfadsteuerung zum CLI-Fallback.
- Bitte bei transparenten Bildern das integrierte
image_genum einen transparenten Hintergrund und erhalte die generierte Alpha-Transparenz. - Wechsle niemals stillschweigend vom integrierten
image_genoder CLIgpt-image-2zu CLIgpt-image-1.5; frage zuerst den Benutzer, es sei denn, er hat explizitgpt-image-1.5angefordert. - Das Wort
batchallein bedeutet nicht CLI-Fallback. Wenn der Benutzer nach vielen Assets fragt oder sagt, dass Assets batch-weise generiert werden sollen, ohne explizit nach CLI-/API-/Modell-Steuerung zu fragen, bleibe auf dem integrierten Pfad und sende einen integrierten Aufruf pro angefordertem Asset oder Variante. - Wenn das integrierte Werkzeug fehlschlägt oder nicht verfügbar ist, teile dem Benutzer mit, dass der CLI-Fallback existiert und dass er
OPENAI_API_KEYerfordert. Fahre nur fort, wenn der Benutzer explizit nach diesem Fallback fragt. - Wenn der Benutzer explizit nach dem CLI-Modus fragt, verwende den gebündelten
scripts/image_gen.py-Workflow. Erstelle keine einmaligen SDK-Ausführer. - Ändere niemals
scripts/image_gen.py. Wenn etwas fehlt, frage den Benutzer, bevor du etwas anderes tust.
Integrierte Speicherpfad-Richtlinie:
- Im integrierten Tool-Modus speichert Codex generierte Bilder standardmäßig unter
$CODEX_HOME/*. - Beschreibe oder verlasse dich nicht auf das OS-Temp als Standardziel.
- Beschreibe oder verlasse dich nicht auf ein Zielpfad-Argument (falls vorhanden) des integrierten
image_gen-Werkzeugs. Wenn ein bestimmter Speicherort benötigt wird, generiere zuerst und verschiebe oder kopiere dann die ausgewählte Ausgabe aus$CODEX_HOME/generated_images/.... - Speicherpfad-Priorität im integrierten Modus:
- Wenn der Benutzer ein Ziel nennt, verschiebe oder kopiere die ausgewählte Ausgabe dorthin.
- Wenn das Bild für das aktuelle Projekt bestimmt ist, verschiebe oder kopiere das endgültig ausgewählte Bild vor dem Abschluss in den Arbeitsbereich.
- Wenn das Bild nur zur Vorschau oder zum Brainstorming dient, rendere es inline; die zugrunde liegende Datei kann unter dem Standardpfad
$CODEX_HOME/*verbleiben.
- Lasse ein projektbezogenes Asset niemals nur unter dem Standardpfad
$CODEX_HOME/*liegen. - Überschreibe kein vorhandenes Asset, es sei denn, der Benutzer hat explizit um Ersatz gebeten; erstelle andernfalls einen Geschwister-Dateinamen mit Versionsangabe wie
hero-v2.pngoderitem-icon-edited.png.
Gemeinsame Prompt-Anleitung für beide Modi befindet sich in references/prompting.md und references/sample-prompts.md.
Nur-Fallback-Dokumente/Ressourcen für den CLI-Modus:
references/cli.mdreferences/image-api.mdreferences/codex-network.mdscripts/image_gen.py
Wann zu verwenden
- Generiere ein neues Bild (Konzeptkunst, Produktfoto, Cover, Website-Hero)
- Generiere ein neues Bild unter Verwendung von einem oder mehreren Referenzbildern für Stil, Komposition oder Stimmung
- Bearbeite ein vorhandenes Bild (Inpainting, Licht- oder Wettertransformationen, Hintergrundersatz, Objektentfernung, Compositing, transparenter Hintergrund)
- Erstelle viele Assets oder Varianten für eine Aufgabe
Wann nicht zu verwenden
- Erweitern oder Anpassen eines vorhandenen SVG/Vektor-Icon-Sets, Logosystems oder einer Illustrationsbibliothek innerhalb des Repos
- Erstellen einfacher Formen, Diagramme, Wireframes oder Icons, die besser direkt in SVG, HTML/CSS oder Canvas erstellt werden
- Vornehmen einer kleinen, projekteigenen Asset-Bearbeitung, wenn die Quelldatei bereits in einem bearbeitbaren nativen Format vorliegt
- Jede Aufgabe, bei der der Benutzer eindeutig eine deterministische, code-native Ausgabe anstelle eines generierten Bitmaps wünscht
Entscheidungsbaum
Denke über zwei separate Fragen nach:
- Absicht: Ist dies ein neues Bild oder eine Bearbeitung eines vorhandenen Bildes?
- Ausführungsstrategie: Ist dies ein einzelnes Asset oder viele Assets/Varianten?
Absicht:
- Wenn der Benutzer ein vorhandenes Bild modifizieren möchte, Teile davon jedoch erhalten will, behandle die Anfrage als Bearbeitung.
- Wenn der Benutzer Bilder nur als Referenzen für Stil, Komposition, Stimmung oder Motivführung bereitstellt, behandle die Anfrage als Generierung.
- Wenn der Benutzer keine Bilder bereitstellt, behandle die Anfrage als Generierung.
Integrierte Bearbeitungssemantik:
- Der integrierte Bearbeitungsmodus ist für Bilder gedacht, die bereits im Konversationskontext sichtbar sind, z. B. angehängte Bilder oder zuvor im Thread generierte Bilder.
- Wenn der Benutzer eine lokale Bilddatei mit dem integrierten Werkzeug bearbeiten möchte, lade sie zuerst mit dem integrierten
view_image-Werkzeug, damit das Bild im Konversationskontext sichtbar ist, und fahre dann mit dem integrierten Bearbeitungsablauf fort. - Versprich keine beliebige Dateisystempfad-Bearbeitung durch das integrierte Werkzeug.
- Wenn eine lokale Datei dennoch direkte Dateipfadsteuerung, Masken oder andere explizite CLI-spezifische Parameter benötigt, verwende den expliziten CLI-Fallback nur, wenn der Benutzer danach fragt.
- Bewahre bei Bearbeitungen Invarianten aggressiv und speichere standardmäßig nicht-destruktiv.
Ausführungsstrategie:
- Erzeuge auf dem integrierten Standardpfad viele Assets oder Varianten, indem du pro angefordertem Asset oder Variante einen
image_gen-Aufruf tätigst. - Verwende auf dem CLI-Fallback-Pfad den CLI-Unterbefehl
generate-batchnur, wenn der Benutzer explizit den CLI-Modus gewählt hat und viele Prompts/Assets benötigt. - Verwende für viele verschiedene Assets nicht
nals Ersatz für separate Prompts.nist für Varianten eines Prompts; verschiedene Assets benötigen separate integrierte Aufrufe oder separate CLIgenerate-batch-Aufträge.
Gehe davon aus, dass der Benutzer ein neues Bild möchte, es sei denn, er bittet eindeutig darum, ein vorhandenes zu ändern.
Arbeitsablauf
- Entscheide den übergeordneten Modus: standardmäßig integriert, einschließlich transparenter Ausgabeanfragen; Fallback-CLI nur, wenn explizit angefordert oder bestätigt.
- Entscheide die Absicht:
generateoderedit. - Entscheide, ob die Ausgabe nur zur Vorschau dient oder vom aktuellen Projekt konsumiert werden soll.
- Entscheide die Ausführungsstrategie: Einzelasset vs. wiederholte integrierte Aufrufe vs. CLI
generate-batch. - Sammle Eingaben im Voraus: Prompt(s), exakten Text (wortwörtlich), Einschränkungen/Vermeidungsliste und alle Eingabebilder.
- Beschrifte für jedes Eingabebild explizit seine Rolle:
- Referenzbild
- Bearbeitungsziel
- Unterstützende Einfüge-/Stil-/Compositing-Eingabe
- Wenn sich das Bearbeitungsziel nur im lokalen Dateisystem befindet und du auf dem integrierten Pfad bleibst, untersuche es zuerst mit
view_image, damit das Bild im Konversationskontext verfügbar ist. - Wenn der Benutzer nach einem Foto, einer Illustration, einem Sprite, einem Produktbild, Banner oder einem anderen expliziten Raster-Asset fragt, verwende
image_genanstelle von SVG/HTML/CSS-Platzhaltern. Wenn die Anfrage nach einem Icon, Logo oder UI-Grafik ist, die zu vorhandenen repo-nativen SVG/Vektor/Code-Assets passen soll, bevorzuge die direkte Bearbeitung dieser. - Erweitere den Prompt basierend auf der Spezifität:
- Wenn der Prompt des Benutzers bereits spezifisch und detailliert ist, normalisiere ihn zu einer klaren Spezifikation, ohne kreative Anforderungen hinzuzufügen.
- Wenn der Prompt des Benutzers generisch ist, füge geschmackvolle Erweiterungen nur hinzu, wenn sie die Ausgabequalität wesentlich verbessern.
- Verwende standardmäßig das integrierte
image_gen-Werkzeug. - Bitte bei transparenten Ausgabeanfragen das integrierte
image_genum einen transparenten Hintergrund und erhalte den generierten Alphakanal. - Überprüfe Ausgaben und validiere: Motiv, Stil, Komposition, Textgenauigkeit und Invarianten/Vermeidungsitems.
- Iteriere mit einer einzelnen gezielten Änderung und überprüfe dann erneut.
- Für reine Vorschauarbeit rendere das Bild inline; die zugrunde liegende Datei kann unter dem Standardpfad
$CODEX_HOME/generated_images/...verbleiben. - Für projektgebundene Arbeit verschiebe oder kopiere das ausgewählte Artefakt in den Arbeitsbereich und aktualisiere alle konsumierenden Codes oder Referenzen. Lasse ein projektbezogenes Asset niemals nur unter dem Standardpfad
$CODEX_HOME/generated_images/...liegen. - Bei Stapel- oder Multi-Asset-Anfragen speichere jedes angeforderte Endergebnis im Arbeitsbereich, es sei denn, der Benutzer hat explizit darum gebeten, die Ausgaben nur für die Vorschau zu behalten. Verworfene Varianten müssen nicht aufbewahrt werden, es sei denn, sie werden angefordert.
- Wenn der Benutzer explizit den CLI-Fallback wählt oder bestätigt, verwende die Nur-Fallback-Dokumente für Modell, Qualität, Größe,
input_fidelity, Masken, Ausgabeformat, Ausgabepfade und Netzwerksetup. - Melde immer die endgültig gespeicherten Pfade für alle arbeitsbereichsgebundenen Assets sowie den endgültigen Prompt oder Promptsatz und ob das integrierte Werkzeug oder der Fallback-CLI-Modus verwendet wurde.
Transparente Bildanfragen
Bitte das integrierte image_gen um einen wirklich transparenten Hintergrund und erhalte sein Alpha.
Prompt-Erweiterung
Formatiere Benutzer-Prompts in eine strukturierte, produktionsorientierte Spezifikation um. Mache das Ziel des Benutzers klarer und handlungsorientierter, aber füge nicht blind Details hinzu.
Behandle dies als Prompt-Formungshilfe, nicht als geschlossenes Schema. Verwende nur die Zeilen, die helfen, und füge eine kurze, zusätzliche beschriftete Zeile hinzu, wenn sie die Klarheit wesentlich verbessert.
Spezifitätsrichtlinie
Verwende die Spezifität des Benutzer-Prompts, um zu entscheiden, wie viel Erweiterung angemessen ist:
- Wenn der Prompt bereits spezifisch und detailliert ist, bewahre diese Spezifität und normalisiere/strukturieren ihn nur.
- Wenn der Prompt generisch ist, kannst du geschmackvolle Erweiterungen hinzufügen, wenn sie das Ergebnis wesentlich verbessern.
Erlaubte Erweiterungen:
- Kompositions- oder Bildausschnittshinweise
- Hinweise auf Politurlevel oder beabsichtigte Verwendung
- Praktische Layout-Anleitung
- Angemessene Szenenkonkretheit, die die genannte Anfrage unterstützt
Nicht erlaubte Erweiterungen:
- Zusätzliche Charaktere oder Objekte, die nicht durch die Anfrage impliziert werden
- Markennamen, Slogans, Paletten oder narrative Elemente, die nicht impliziert werden
- Willkürliche seitenabhängige Platzierung, es sei denn, das umgebende Layout unterstützt sie
Verwendungstaxonomie (exakte Slugs)
Klassifiziere jede Anfrage in einen dieser Bereiche und halte den Slug konsistent über Prompts und Referenzen hinweg.
Generieren:
- photorealistic-natural — authentische/redaktionelle Lebensstilszenen mit echter Textur und natürlichem Licht.
- product-mockup — Produkt-/Verpackungsaufnahmen, Katalogbilder, Merch-Konzepte.
- ui-mockup — App-/Web-Interface-Mockups und Wireframes; gib die gewünschte Genauigkeit an.
- infographic-diagram — Diagramme/Infografiken mit strukturiertem Layout und Text.
- scientific-educational — Unterrichtserklärer, wissenschaftliche Diagramme und Lernvisualisierungen mit erforderlichen Beschriftungen und Genauigkeitsbeschränkungen.
- ads-marketing — Kampagnenkonzepte und Werbekreative mit Zielgruppe, Markenposition, Szene und exaktem Slogan/Text.
- productivity-visual — Folien, Diagramme, Workflows und datenlastige Geschäftsvisualisierungen.
- logo-brand — Logo-/Markenexploration, vektorfreundlich.
- illustration-story — Comics, Kinderbuchkunst, narrative Szenen.
- stylized-concept — Stilgetriebene Konzeptkunst, 3D/stilisierte Renderings.
- historical-scene — Epochengenaue/wissensbasierte Szenen.
Bearbeiten:
- text-localization — Übersetze/ersetze Bildtext, bewahre das Layout.
- identity-preserve — Anprobe, Person in Szene; sperre Gesicht/Körper/Pose.
- precise-object-edit — Entferne/ersetze ein bestimmtes Element (einschließlich Innenraumwechsel).
- lighting-weather — Nur Tageszeit/Jahreszeit/Atmosphärenänderungen.
- background-extraction — Transparenter Hintergrund / sauberer Ausschnitt. Bitte das integrierte
image_genum tatsächliche Transparenz. - style-transfer — Wende Referenzstil an, während Motiv/Szene geändert werden.
- compositing — Multi-Bild-Einfügen/-Zusammenführen mit angepasster Beleuchtung/Perspektive.
- sketch-to-render — Zeichnung/Strichzeichnung zu fotorealistischem Rendering.
Gemeinsames Prompt-Schema
Verwende die folgende beschriftete Spezifikation als gemeinsame Prompt-Gerüst für beide übergeordneten Modi:
Use case: <Taxonomie-Slug>
Asset type: <wo das Asset verwendet wird>
Primary request: <Hauptanfrage des Benutzers>
Input images: <Bild 1: Rolle; Bild 2: Rolle> (optional)
Scene/backdrop: <Umgebung>
Subject: <Hauptmotiv>
Style/medium: <Foto/Illustration/3D/usw>
Composition/framing: <Weit/Nah/Aufsicht; Platzierung>
Lighting/mood: <Beleuchtung + Stimmung>
Color palette: <Palettennotizen>
Materials/textures: <Oberflächendetails>
Text (verbatim): "<exakter Text>"
Constraints: <muss behalten / vermeiden>
Avoid: <negative Einschränkungen>
Hinweise:
Asset typeundInput imagessind Prompt-Gerüste, keine dedizierten CLI-Flags.Scene/backdropbezieht sich auf die visuelle Einstellung. Es ist nicht dasselbe wie der Fallback-CLI-Parameterbackground, der das Transparenzverhalten der Ausgabe steuert.- Nur-Fallback-Ausführungshinweise wie
Quality:,Input fidelity:, Masken, Ausgabeformat und Ausgabepfade gehören nur in den CLI-Pfad. Behandle sie nicht als Argumente des integriertenimage_gen-Werkzeugs.
Erweiterungsregeln:
- Halte es kurz.
- Füge nur die Details hinzu, die benötigt werden, um den Prompt wesentlich zu verbessern.
- Liste für Bearbeitungen explizit Invarianten auf (
ändere nur X; behalte Y unverändert). - Wenn ein kritisches Detail fehlt und den Erfolg blockiert, stelle eine Frage; andernfalls fahre fort.
Beispiele
Generierungsbeispiel (Hero-Bild)
Use case: product-mockup
Asset type: Landing-Page-Hero
Primary request: ein minimales Hero-Bild einer Keramikkaffeetasse
Style/medium: saubere Produktfotografie
Composition/framing: weite Komposition mit nutzbarem Negativraum für Seitenkopie falls nötig
Lighting/mood: weiches Studio-Licht
Constraints: keine Logos, kein Text, kein Wasserzeichen
Bearbeitungsbeispiel (Invarianten)
Use case: precise-object-edit
Asset type: Produktfoto-Hintergrundersatz
Primary request: ersetze nur den Hintergrund durch einen warmen Sonnenuntergangsverlauf
Constraints: ändere nur den Hintergrund; behalte das Produkt und seine Kanten unverändert; kein Text; kein Wasserzeichen
Prompt-Best-Practices
- Strukturiere den Prompt als Szene/Hintergrund -> Motiv -> Details -> Einschränkungen.
- Füge die beabsichtigte Verwendung (Anzeige, UI-Mock, Infografik) hinzu, um den Modus und das Politurlevel festzulegen.
- Verwende Kamerakompositionssprache für Fotorealismus.
- Verwende SVG/Vektor-Ersatz nur, wenn der Benutzer explizit nach Vektorausgabe oder einem Nicht-Bild-Platzhalter gefragt hat.
- Zitiere exakten Text und gib Typografie + Platzierung an.