Skill de Geração de Imagens
Gera ou edita imagens para o projeto atual (por exemplo, ativos de site, ativos de jogo, maquetes de UI, maquetes de produto, wireframes, design de logotipo, imagens fotorrealistas ou infográficos).
Modos de alto nível e regras
Esta skill tem exatamente dois modos de alto nível:
- Modo de ferramenta integrada padrão (preferido): ferramenta integrada
image_genpara geração de imagens, edição e solicitações de imagens transparentes. Não requerOPENAI_API_KEY. - Modo CLI alternativo: CLI
scripts/image_gen.py. Use quando o usuário solicitar ou confirmar explicitamente o caminho CLI/API/modelo. RequerOPENAI_API_KEY.
Dentro do modo CLI alternativo, a CLI expõe três subcomandos:
generateeditgenerate-batch
Regras:
- Use a ferramenta integrada
image_genpor padrão para solicitações normais de geração e edição de imagens. - Não mude para o modo CLI alternativo para controle comum de qualidade, tamanho ou caminho de arquivo.
- Para imagens transparentes, peça à ferramenta integrada
image_genum fundo transparente e preserve o alpha gerado. - Nunca mude silenciosamente da ferramenta integrada
image_genou CLIgpt-image-2para CLIgpt-image-1.5; pergunte ao usuário primeiro, a menos que ele tenha solicitado explicitamentegpt-image-1.5. - A palavra
batchpor si só não significa modo CLI alternativo. Se o usuário pedir muitos ativos ou disser para gerar ativos em lote sem solicitar explicitamente controles CLI/API/modelo, permaneça no caminho integrado e emita uma chamada integrada por ativo ou variante solicitada. - Se a ferramenta integrada falhar ou estiver indisponível, informe ao usuário que o modo CLI alternativo existe e que requer
OPENAI_API_KEY. Prossiga apenas se o usuário solicitar explicitamente esse modo alternativo. - Se o usuário solicitar explicitamente o modo CLI, use o fluxo de trabalho
scripts/image_gen.pyincluído. Não crie executores SDK avulsos. - Nunca modifique
scripts/image_gen.py. Se algo estiver faltando, pergunte ao usuário antes de fazer qualquer outra coisa.
Política de caminho de salvamento integrado:
- No modo de ferramenta integrada, o Codex salva as imagens geradas em
$CODEX_HOME/*por padrão. - Não descreva nem confie no temp do SO como destino integrado padrão.
- Não descreva nem confie em um argumento de caminho de destino (se houver) na ferramenta integrada
image_gen. Se um local específico for necessário, gere primeiro e depois mova ou copie a saída selecionada de$CODEX_HOME/generated_images/.... - Precedência do caminho de salvamento no modo integrado:
- Se o usuário nomear um destino, mova ou copie a saída selecionada para lá.
- Se a imagem for destinada ao projeto atual, mova ou copie a imagem final selecionada para o espaço de trabalho antes de finalizar.
- Se a imagem for apenas para pré-visualização ou brainstorming, renderize-a inline; o arquivo subjacente pode permanecer no caminho padrão
$CODEX_HOME/*.
- Nunca deixe um ativo referenciado pelo projeto apenas no caminho padrão
$CODEX_HOME/*. - Não sobrescreva um ativo existente, a menos que o usuário tenha solicitado explicitamente a substituição; caso contrário, crie um nome de arquivo versionado irmão, como
hero-v2.pngouitem-icon-edited.png.
Orientações de prompt compartilhadas para ambos os modos estão em references/prompting.md e references/sample-prompts.md.
Documentos/recursos apenas do modo alternativo para modo CLI:
references/cli.mdreferences/image-api.mdreferences/codex-network.mdscripts/image_gen.py
Quando usar
- Gerar uma nova imagem (arte conceitual, foto de produto, capa, herói do site)
- Gerar uma nova imagem usando uma ou mais imagens de referência para estilo, composição ou clima
- Editar uma imagem existente (inpaint, transformações de iluminação ou clima, substituição de fundo, remoção de objeto, composição, fundo transparente)
- Produzir muitos ativos ou variantes para uma tarefa
Quando não usar
- Estender ou corresponder a um conjunto de ícones SVG/vetor existente, sistema de logotipos ou biblioteca de ilustrações dentro do repositório
- Criar formas simples, diagramas, wireframes ou ícones que são melhor produzidos diretamente em SVG, HTML/CSS ou canvas
- Fazer uma pequena edição de ativo local do projeto quando o arquivo de origem já existe em um formato nativo editável
- Qualquer tarefa onde o usuário claramente queira uma saída de código nativa determinística em vez de um bitmap gerado
Árvore de decisão
Pense em duas perguntas separadas:
- Intenção: é uma imagem nova ou uma edição de uma imagem existente?
- Estratégia de execução: é um ativo ou muitos ativos/variantes?
Intenção:
- Se o usuário quiser modificar uma imagem existente preservando partes dela, trate a solicitação como edição.
- Se o usuário fornecer imagens apenas como referências para estilo, composição, clima ou orientação de assunto, trate a solicitação como geração.
- Se o usuário não fornecer imagens, trate a solicitação como geração.
Semântica de edição integrada:
- O modo de edição integrada é para imagens já visíveis no contexto da conversa, como imagens anexadas ou imagens geradas anteriormente no thread.
- Se o usuário quiser editar um arquivo de imagem local com a ferramenta integrada, primeiro carregue-o com a ferramenta integrada
view_imagepara que a imagem fique visível no contexto da conversa e, em seguida, prossiga com o fluxo de edição integrado. - Não prometa edição arbitrária de caminho de sistema de arquivos através da ferramenta integrada.
- Se um arquivo local ainda precisar de controle direto de caminho de arquivo, máscaras ou outros parâmetros explícitos apenas do CLI, use o modo CLI alternativo explícito apenas quando o usuário solicitar.
- Para edições, preserve invariantes de forma agressiva e salve de forma não destrutiva por padrão.
Estratégia de execução:
- No caminho integrado padrão, produza muitos ativos ou variantes emitindo uma chamada
image_genpor ativo ou variante solicitada. - No caminho CLI alternativo, use o subcomando CLI
generate-batchapenas quando o usuário escolher explicitamente o modo CLI e precisar de muitos prompts/ativos. - Para muitos ativos distintos, não use
ncomo substituto para prompts separados.né para variantes de um prompt; ativos distintos precisam de chamadas integradas distintas ou trabalhos CLIgenerate-batchdistintos.
Presuma que o usuário queira uma nova imagem, a menos que ele peça claramente para alterar uma existente.
Fluxo de trabalho
- Decida o modo de alto nível: integrado por padrão, incluindo solicitações de saída transparente; CLI alternativo apenas se solicitado ou confirmado explicitamente.
- Decida a intenção:
generateouedit. - Decida se a saída é apenas para pré-visualização ou destinada a ser consumida pelo projeto atual.
- Decida a estratégia de execução: ativo único vs chamadas integradas repetidas vs CLI
generate-batch. - Colete as entradas antecipadamente: prompt(s), texto exato (ipsis litteris), restrições/lista de evitação e quaisquer imagens de entrada.
- Para cada imagem de entrada, rotule seu papel explicitamente:
- imagem de referência
- alvo de edição
- entrada de suporte de inserção/estilo/composição
- Se o alvo de edição estiver apenas no sistema de arquivos local e você estiver permanecendo no caminho integrado, inspecione-o com
view_imageprimeiro para que a imagem fique disponível no contexto da conversa. - Se o usuário pedir uma foto, ilustração, sprite, imagem de produto, banner ou outro ativo explicitamente de estilo raster, use
image_genem vez de substituir por placeholders SVG/HTML/CSS. Se a solicitação for para um ícone, logotipo ou gráfico de UI que deva corresponder a ativos SVG/vetor/código nativos existentes no repositório, prefira editá-los diretamente. - Aumente o prompt com base na especificidade:
- Se o prompt do usuário já for específico e detalhado, normalize-o em uma especificação clara sem adicionar requisitos criativos.
- Se o prompt do usuário for genérico, adicione um aumento criterioso apenas quando isso melhorar materialmente a qualidade da saída.
- Use a ferramenta integrada
image_genpor padrão. - Para solicitações de saída transparente, peça à ferramenta integrada
image_genum fundo transparente e preserve o canal alpha gerado. - Inspecione as saídas e valide: assunto, estilo, composição, precisão do texto e invariantes/itens de evitação.
- Itere com uma única alteração direcionada e, em seguida, verifique novamente.
- Para trabalho apenas de pré-visualização, renderize a imagem inline; o arquivo subjacente pode permanecer no caminho padrão
$CODEX_HOME/generated_images/.... - Para trabalho vinculado ao projeto, mova ou copie o artefato selecionado para o espaço de trabalho e atualize qualquer código ou referência consumidora. Nunca deixe um ativo referenciado pelo projeto apenas no caminho padrão
$CODEX_HOME/generated_images/.... - Para lotes ou solicitações de múltiplos ativos, persista cada entrega final solicitada no espaço de trabalho, a menos que o usuário tenha solicitado explicitamente manter as saídas apenas como pré-visualização. Variantes descartadas não precisam ser mantidas, a menos que solicitado.
- Se o usuário escolher ou confirmar explicitamente o modo CLI alternativo, use a documentação apenas do modo alternativo para modelo, qualidade, tamanho,
input_fidelity, máscaras, formato de saída, caminhos de saída e configuração de rede. - Sempre informe o(s) caminho(s) final(is) salvo(s) para qualquer(ais) ativo(s) vinculado(s) ao espaço de trabalho, mais o prompt final ou conjunto de prompts e se a ferramenta integrada ou o modo CLI alternativo foi usado.
Solicitações de imagem transparente
Peça à ferramenta integrada image_gen um fundo genuinamente transparente e preserve seu alpha.
Aumento de prompt
Reformate os prompts do usuário em uma especificação estruturada e orientada à produção. Torne o objetivo do usuário mais claro e mais acionável, mas não adicione detalhes cegamente.
Trate isso como uma orientação de modelagem de prompt, não um esquema fechado. Use apenas as linhas que ajudam e adicione uma linha curta extra rotulada quando isso melhorar materialmente a clareza.
Política de especificidade
Use a especificidade do prompt do usuário para decidir quanto aumento é apropriado:
- Se o prompt já for específico e detalhado, preserve essa especificidade e apenas normalize/estruture-o.
- Se o prompt for genérico, você pode adicionar um aumento criterioso quando isso melhorar materialmente o resultado.
Aumentos permitidos:
- dicas de composição ou enquadramento
- dicas de nível de polimento ou uso pretendido
- orientação prática de layout
- concretude de cena razoável que suporte a solicitação declarada
Aumentos não permitidos:
- personagens ou objetos extras que não são implícitos pela solicitação
- nomes de marcas, slogans, paletas ou batidas narrativas que não são implícitas
- posicionamento arbitrário específico de lado, a menos que o layout circundante o suporte
Taxonomia de caso de uso (slugs exatos)
Classifique cada solicitação em um desses buckets e mantenha o slug consistente entre prompts e referências.
Gerar:
- photorealistic-natural — cenas de estilo de vida casuais/editoriais com textura real e iluminação natural.
- product-mockup — fotos de produto/embalagem, imagens de catálogo, conceitos de merchandising.
- ui-mockup — maquetes e wireframes de interface de aplicativo/web; especifique a fidelidade desejada.
- infographic-diagram — diagramas/infográficos com layout estruturado e texto.
- scientific-educational — explicadores de sala de aula, diagramas científicos e visuais de aprendizagem com rótulos e restrições de precisão necessários.
- ads-marketing — conceitos de campanha e criativos de anúncio com público, posição da marca, cena e slogan/texto exato.
- productivity-visual — visuais de negócios com slides, gráficos, fluxos de trabalho e dados pesados.
- logo-brand — exploração de logotipo/marca, amigável para vetor.
- illustration-story — quadrinhos, arte de livro infantil, cenas narrativas.
- stylized-concept — arte conceitual baseada em estilo, renders 3D/estilizados.
- historical-scene — cenas historicamente precisas/com conhecimento mundial.
Editar:
- text-localization — traduzir/substituir texto na imagem, preservar layout.
- identity-preserve — experimentar, pessoa em cena; travar rosto/corpo/pose.
- precise-object-edit — remover/substituir um elemento específico (incluindo trocas internas).
- lighting-weather — apenas mudanças de hora do dia/estação/atmosfera.
- background-extraction — fundo transparente / recorte limpo. Peça à ferramenta integrada
image_gentransparência real. - style-transfer — aplicar estilo de referência enquanto altera assunto/cena.
- compositing — inserção/mesclagem de múltiplas imagens com iluminação/perspectiva combinadas.
- sketch-to-render — desenho/arte de linha para render fotorrealista.
Esquema de prompt compartilhado
Use a seguinte especificação rotulada como andaime de prompt compartilhado para ambos os modos de alto nível:
Use case: <slug da taxonomia>
Asset type: <onde o ativo será usado>
Primary request: <prompt principal do usuário>
Input images: <Imagem 1: papel; Imagem 2: papel> (opcional)
Scene/backdrop: <ambiente>
Subject: <assunto principal>
Style/medium: <foto/ilustração/3D/etc>
Composition/framing: <aberto/fechado/vista superior; posicionamento>
Lighting/mood: <iluminação + clima>
Color palette: <notas da paleta>
Materials/textures: <detalhes da superfície>
Text (verbatim): "<texto exato>"
Constraints: <deve manter/deve evitar>
Avoid: <restrições negativas>
Notas:
Asset typeeInput imagessão andaimes de prompt, não flags CLI dedicadas.Scene/backdroprefere-se ao cenário visual. Não é o mesmo que o parâmetrobackgrounddo CLI alternativo, que controla o comportamento de transparência da saída.- Notas de execução apenas do modo alternativo, como
Quality:,Input fidelity:, máscaras, formato de saída e caminhos de saída pertencem apenas ao caminho CLI. Não os trate como argumentos da ferramenta integradaimage_gen.
Regras de aumento:
- Mantenha curto.
- Adicione apenas os detalhes necessários para melhorar o prompt materialmente.
- Para edições, liste explicitamente invariantes (
mude apenas X; mantenha Y inalterado). - Se algum detalhe crítico estiver faltando e bloquear o sucesso, faça uma pergunta; caso contrário, prossiga.
Exemplos
Exemplo de geração (imagem de herói)
Use case: product-mockup
Asset type: landing page hero
Primary request: uma imagem de herói minimalista de uma caneca de café de cerâmica
Style/medium: fotografia limpa de produto
Composition/framing: composição ampla com espaço negativo utilizável para texto da página, se necessário
Lighting/mood: iluminação suave de estúdio
Constraints: sem logotipos, sem texto, sem marca d'água
Exemplo de edição (invariantes)
Use case: precise-object-edit
Asset type: substituição de fundo de foto de produto
Primary request: substitua apenas o fundo por um gradiente de pôr do sol quente
Constraints: mude apenas o fundo; mantenha o produto e suas bordas inalterados; sem texto; sem marca d'água
Melhores práticas de prompt
- Estruture o prompt como cena/fundo -> assunto -> detalhes -> restrições.
- Inclua o uso pretendido (anúncio, maquete de UI, infográfico) para definir o modo e o nível de polimento.
- Use linguagem de câmera/composição para fotorrealismo.
- Use substitutos SVG/vetor apenas quando o usuário solicitar explicitamente saída vetorial ou um espaço reservado não imagem.
- Cite o texto exato e especifique a tipografia + posicionamento.
- Para trabalhos complicados, inclua a palavra-chave "weird" para aumentar a criatividade.
Modelos de prompt (geração básica)
Maquete de produto
Use case: product-mockup
Asset type: <página de vendas/anúncio/catálogo>
Primary request: <descrição do produto>
Style/medium: fotografia limpa do produto
Composition/framing: <tabela/ambiente/isolado>
Lighting/mood: <iluminação de estúdio / natural / dramática>
Avoid: <logotipos, texto, marcas d'água, outros elementos estranhos>
Maquete de UI
Use case: ui-mockup
Asset type: <tela de aplicativo / painel / página da web>
Primary request: <layout principal e funcionalidade>
Style/medium: design de interface limpo e moderno
Composition/framing: captura de tela de dispositivo cheia
Text (verbatim): "<texto exato a ser incluído>"
Constraints: sem logotipos, sem texto extra, sem marca d'água
Ilustração estilizada
Use case: stylized-concept
Asset type: <arte de jogo / ilustração de livro / pôster>
Primary request: <cena ou conceito principal>
Style/medium: <animação 2D / 3D / pintura digital / aquarela>
Composition/framing: <descrição de enquadramento>
Lighting/mood: <ambiente>
Color palette: <paleta>
Constraints: sem texto, sem logotipos, sem marca d'água
Fundo de herói editorial/fotorrealista
Use case: photorealistic-natural
Asset type: herói do site / banner / foto de estoque
Primary request: <descrição da foto>
Style/medium: fotografia editorial com luz natural
Composition/framing: <aberto / close / vista superior / profundidade de campo rasa>
Lighting/mood: <hora do dia / temperatura / clima>
Color palette: <paleta>
Avoid: logotipos, texto, marcas d'água, imagens geradas obviamente por IA
Modelo de prompt (edição)
Use case: <slug de edição>
Asset type: <uso final>
Primary request: <descrição da alteração>
Input images: <imagem 1: alvo de edição; imagem 2: estilo de referência (opcional)>
Constraints: <invariantes explícitos; mude apenas X; preserve Y>
Avoid: <restrições negativas>