CommunityImagemgithub.com

erlingerwu0925/paper-illustration-image2

Gere ilustrações acadêmicas de qualidade de publicação através de uma ponte local entre o Codex app-server e o Claude Code, usando a geração de imagem nativa do Codex. Uma alternativa experimental separada do `paper-illustration`, para usuários do Claude Code que desejam um renderizador estilo GPT-image sem modificar a habilidade original.

O que é paper-illustration-image2?

Esta habilidade, `paper-illustration-image2`, permite que o Claude Code atue como um planejador e revisor para gerar figuras de alta qualidade para conferências acadêmicas (como CVPR, NeurIPS, ICLR) usando uma ponte MCP para o Codex app-server local, que realiza a renderização raster nativa. O fluxo de trabalho é multi-estágio e iterativo: o Claude primeiro interpreta a solicitação do usuário e cria um prompt otimizado, depois refina o layout e o estilo, e só então aciona a geração da imagem via bridge. Após a renderização, o Claude realiza uma revisão estrita (pontuação de 1 a 10) e, se a pontuação for inferior a 9 (em uma escala de 1 a 10), gera feedback específico para refinamento, repetindo o ciclo até que a imagem atenda aos padrões. A habilidade é destinada a figuras conceituais (diagramas de arquitetura, fluxogramas de métodos, figuras comparativas) e não para gráficos estatísticos, figuras vetoriais determinísticas ou cenas fotorrealistas. A saída é salva no diretório `figures/ai_generated/`.

Funciona com✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/erlingerwu0925/Skills/tree/HEAD/collections/02-autonomous-research/ARIS/skills/paper-illustration-image2

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

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Paper Illustration Image2

Antes de cada slot de revisor, siga Selectable Reviewers: resolva a invocação → .aris/reviewer.json → padrão do Claude Code (Codex MCP) com reviewer_route.py através do resolvedor auxiliar canônico, preservando o nível deste slot, contextos atualizados, entradas de origem/imagem e portas determinísticas. Exemplos/diretrizes do Codex abaixo aplicam-se apenas a backend=codex; outras rotas usam seu próprio contrato de primeira chamada/resposta. Salve a rota e a identidade real retornada; seleções indisponíveis são REVIEW_UNAVAILABLE. Classifique a aceitação a partir das famílias/conclusão/escopo reais. Encaminhe as substituições de invocação, revisor/modelo/esforço para os filhos que carregam revisores. Os workers de geração permanecem inalterados.

Gere figuras de papel de qualidade de publicação usando Claude como planejador/revisor e uma ponte MCP local com Codex app-server como renderizador raster.

Filosofia Central do Design

┌──────────────────────────────────────────────────────────────────────────┐
│                    FLUXO DE TRABALHO ITERATIVO MULTI-ESTÁGIO            │
├──────────────────────────────────────────────────────────────────────────┤
│                                                                          │
│   Solicitação do Usuário                                                 │
│       │                                                                  │
│       ▼                                                                  │
│   ┌─────────────┐                                                        │
│   │   Claude    │ ◄─── Etapa 1: Analisar solicitação, criar prompt inicial│
│   │ (Planejador)│      - Extrair componentes, rótulos e fluxo de dados   │
│   │             │      - Escrever um resumo da figura pronto para papel  │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │Claude/Codex │ ◄─── Etapa 2: Otimizar descrição do layout             │
│   │   Layout    │      - Refinar posicionamento dos componentes          │
│   │   Revisão   │      - Otimizar espaçamento e agrupamento              │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │Claude/Codex │ ◄─── Etapa 3: Verificação de estilo CVPR/NeurIPS       │
│   │   Estilo    │      - Verificar paleta, setas e padrões de rótulos    │
│   │   Verificação│      - Ajustar o prompt antes da renderização         │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │ codex-image2│ ◄─── Etapa 4: Geração de imagem nativa via ponte       │
│   │ Ponte MCP   │      - Chamar generate_start / generate_status         │
│   │ + app-server│      - Aceitar apenas saída nativa de imageGeneration  │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   ┌─────────────┐                                                        │
│   │   Claude    │ ◄─── Etapa 5: Revisão visual RÍGIDA + NOTA (1-10)      │
│   │ (Revisor)   │      - Verificar lógica, rótulos, setas e estética    │
│   │   RÍGIDO!   │      - Rejeitar figuras pouco claras ou não prontas    │
│   └──────┬──────┘                                                        │
│          │                                                               │
│          ▼                                                               │
│   Nota ≥ 9? ──SIM──► Aceitar e Gerar Saída                               │
│          │                                                               │
│          NÃO                                                             │
│          │                                                               │
│          ▼                                                               │
│   Gerar feedback de melhoria ESPECÍFICO ──► Voltar para Etapa 2         │
│                                                                          │
└──────────────────────────────────────────────────────────────────────────┘

Constantes

  • RENDERIZADOR = codex-image2 — Ponte de geração de imagem nativa exposta através do app-server Codex local

  • CRÍTICO_TEXTO_OPCIONAL = mcp__codex__codex — Segunda opinião textual opcional para verificações de layout/estilo

  • MAX_ITERAÇÕES = 5 — Número máximo de rodadas de refinamento

  • NOTA_ALVO = 9 — Nota mínima aceitável (1-10)

  • DIR_SAÍDA = figures/ai_generated/ — Diretório de saída

  • IDIOMA_TEXTO = Portuguese — Idioma padrão do texto da figura, a menos que o usuário solicite outro

  • REQUISITO_IMAGEM_NATIVA = strict — Aceitar apenas saída nativa de imageGeneration; rejeitar fallbacks de shell/Python

  • IMAGE2_HELPER — nome canônico paper_illustration_image2.py, resolvido conforme shared-references/integration-contract.md §2 (Política A — porta local da habilidade). A Fase 3.2 (Arquitetura C) moveu a implementação canônica para skills/paper-illustration-image2/scripts/; tools/paper_illustration_image2.py permanece como um shim os.execv para que as camadas do resolvedor legado continuem funcionando sem uma reinstalação. Resolva via:

    # Camada 0: autocontida (CC 1.0+ expõe $CLAUDE_SKILL_DIR).
    IMAGE2_HELPER=""
    if [ -n "${CLAUDE_SKILL_DIR:-}" ] && [ -f "$CLAUDE_SKILL_DIR/scripts/paper_illustration_image2.py" ]; then
      IMAGE2_HELPER="$CLAUDE_SKILL_DIR/scripts/paper_illustration_image2.py"
    fi
    # Camadas 1-4: cadeia de runtime compartilhada via shim em tools/paper_illustration_image2.py.
    if [ -z "$IMAGE2_HELPER" ]; then
      cd "$(git rev-parse --show-toplevel 2>/dev/null || pwd)" || exit 1
      if [ -z "${ARIS_REPO:-}" ] && [ -f .aris/installed-skills.txt ]; then
          ARIS_REPO=$(awk -F'\t' '$1=="repo_root"{print $2; exit}' .aris/installed-skills.txt 2>/dev/null) || true
      fi
      if [ -z "${ARIS_REPO:-}" ] && [ -f "$HOME/.aris/repo" ]; then
          ARIS_REPO=$(cat "$HOME/.aris/repo" 2>/dev/null) || true
      fi
      IMAGE2_HELPER=".aris/tools/paper_illustration_image2.py"
      [ -f "$IMAGE2_HELPER" ] || IMAGE2_HELPER="tools/paper_illustration_image2.py"
      [ -f "$IMAGE2_HELPER" ] || { [ -n "${ARIS_REPO:-}" ] && IMAGE2_HELPER="$ARIS_REPO/tools/paper_illustration_image2.py"; }
      [ -f "$IMAGE2_HELPER" ] || IMAGE2_HELPER=""
    fi
    [ -z "$IMAGE2_HELPER" ] && {
      echo "ERRO: paper_illustration_image2.py não resolvido (camada 0: \$CLAUDE_SKILL_DIR/scripts/; camadas 1-4: .aris/tools/, tools/, \$ARIS_REPO/tools/, \$ARIS_REPO/tools/ via ~/.aris/repo)." >&2
      echo "       /paper-illustration-image2 não pode prosseguir. Correção: execute novamente bash tools/install_aris.sh ou smart_update.sh (atualiza ~/.aris/repo), ou copie o script canônico de \$ARIS_REPO/skills/paper-illustration-image2/scripts/." >&2
      exit 1
    }
    

    Todas as invocações abaixo usam python3 "$IMAGE2_HELPER" <subcomando>.

Guia de Estilo de Conferências de Alto Nível (CVPR/ICLR/NeurIPS)

O que "Estilo CVPR" Realmente Significa:

Padrões Visuais

  • Fundo branco limpo — Sem padrões decorativos ou gradientes, a menos que muito sutis
  • Fontes sem serifa — Arial, Helvetica ou tipografia limpa e amigável para papel
  • Paleta de cores sutil — Use 3-5 cores coordenadas, não um arco-íris
  • Amigável para impressão — Deve permanecer compreensível em escala de cinza
  • Bordas profissionais — Finas a médias, limpas e consistentes

Padrões de Layout

  • Fluxo horizontal — Esquerda para direita é o padrão para pipelines
  • Agrupamento claro — Use espaçamento ou caixas de agrupamento sutis para módulos relacionados
  • Tamanhos consistentes — Componentes similares devem ter tamanhos similares
  • Espaço em branco equilibrado — Evite layouts apertados ou excessivamente esparsos

Padrões de Setas (MAIS CRÍTICO)

  • Traços grossos — As setas devem permanecer visíveis após o redimensionamento do papel
  • Pontas de seta claras — Pontas de seta grandes e inequívocas
  • Cores escuras — Prefira setas pretas ou cinza escuro
  • Rotuladas — Setas importantes devem mostrar o que flui através delas
  • Sem cruzamentos — Reorganize a figura para evitar cruzamentos sempre que possível
  • DIREÇÃO CORRETA — As setas devem apontar para o alvo certo

Apelo Visual (Estilo Acadêmico Profissional)

Objetivo: nem conservador nem chamativo, encontrar o equilíbrio

✅ Deve ter

  • Gradientes sutis — Gradientes suaves da mesma família são aceitáveis
  • Cantos arredondados — Blocos modernos, mas contidos e arredondados
  • Hierarquia clara — Módulos principais maiores, módulos secundários menores
  • Codificação de cores consistente — Mapeamento estável entre tipos de módulo e cores
  • Tipografia profissional — Rótulos limpos com hierarquia de tamanhos legível

❌ Evitar

  • ❌ Gradientes de arco-íris
  • ❌ Sombras pesadas
  • ❌ Efeitos de perspectiva 3D
  • ❌ Efeitos de brilho
  • ❌ Ícones decorativos de clip-art
  • ❌ Estilo de apresentação de slides que pareça chamativo em vez de pronto para papel

✓ Efeito ideal

  • Parece intencional, profissional e imediatamente legível
  • Tem apelo visual moderado sem se tornar decorativo
  • Parece apropriado para uma figura de conferência de alto nível
  • Sobrevive a redimensionamento de PDF e impressão em escala de cinza

O que EVITAR (CRÍTICO)

  • ❌ Setas finas como fios
  • ❌ Conexões não rotuladas ou ambíguas
  • ❌ Texto minúsculo ilegível
  • ❌ Sopa de caixas plana e chata, sem hierarquia
  • ❌ Figuras excessivamente decoradas com sombras/brilhos/ícones
  • ❌ Direções de seta erradas

Escopo

Tipo de FiguraQualidadeExemplos
Diagramas de arquiteturaExcelenteArquitetura de modelo, pipeline, codificador-decodificador
Ilustrações de métodoExcelenteDiagramas conceituais, fluxogramas de algoritmo
Figuras conceituaisBomDiagramas de comparação, árvores de taxonomia

Não é para: Gráficos estatísticos (use /paper-figure), figuras de topologia vetorial determinística (prefira /figure-spec), cenas fotorrealistas

Fluxo de Trabalho: DEVE EXECUTAR TODAS AS ETAPAS

Etapa 0: Verificação Pré-voo

Renderize esta lista de verificação explicitamente antes de começar:

📋 Lista de verificação de integração do paper-illustration-image2:
   [ ] 1. python3 "$IMAGE2_HELPER" preflight --workspace <cwd> --json-out figures/ai_generated/preflight.json
   [ ] 2. Confirmar que o JSON do preflight diz ok=true antes de renderizar
   [ ] 3. Renderizar via mcp__codex-image2__generate_start + generate_status
   [ ] 4. Finalizar via python3 "$IMAGE2_HELPER" finalize --workspace <cwd> --best-image <melhor_png>
   [ ] 5. Verificar artefatos via python3 "$IMAGE2_HELPER" verify --workspace <cwd> --json-out figures/ai_generated/verify.json
  1. Criar figures/ai_generated/ se não existir.
  2. Confirmar que a solicitação é adequada para uma ilustração raster:
    • diagrama de arquitetura
    • figura de método conceitual
    • ilustração de fluxo de trabalho
  3. Preferir texto da figura em Português a menos que o usuário solicite o contrário.
  4. Executar:
python3 "$IMAGE2_HELPER" preflight \
  --workspace <cwd> \
  --json-out figures/ai_generated/preflight.json
  1. Se o preflight não for ok=true, parar e dizer isso claramente.

Etapa 1: Claude Planeja a Figura

Transforme a solicitação do usuário em um prompt de imagem totalmente especificado. Inclua:

  • tipo de figura
  • módulos/estágios exatos
  • direção do fluxo
  • rótulos a mostrar
  • setas de fluxo de dados
  • restrições de estilo
  • o que evitar

Quando a entrada for uma nota de método ou uma seção de artigo, primeiro a resuma em um resumo de figura limpo antes de escrever o prompt de imagem final.

Etapa 2: Otimização de Layout

Esta etapa é obrigatória. Antes de renderizar, refine o prompt em um plano de layout concreto:

  • ordem exata dos módulos
  • espaçamento e agrupamento
  • proeminência relativa dos módulos
  • roteamento de setas e possíveis pontos de colisão

Se a rota de revisão de texto selecionada estiver disponível, você pode pedir uma breve segunda opinião sobre o layout aqui, mas o executor ainda deve completar esta etapa sem um crítico externo.

Use a crítica de layout do Codex para:

  • componentes ausentes
  • layout confuso
  • hierarquia de fluxo fraca
  • possível ambiguidade na direção das setas ou desorganização

Etapa 3: Verificação de Estilo

Esta etapa também é obrigatória. Verifique o prompt em relação ao estilo de papel pretendido antes de renderizar:

  • paleta é contida e acadêmica
  • setas são grossas, escuras e legíveis
  • rótulos são concisos e em Português, a menos que solicitado o contrário
  • a figura será lida claramente em escala de cinza / impressão
  • nenhum brilho, gradiente de arco-íris ou decoração de apresentação de slides escapa

Se a rota de revisão de texto selecionada estiver disponível, você pode pedir uma auditoria de estilo apenas de texto, mas não bloqueie nela.

Etapa 4: Gerar Através da Ponte

Chame mcp__codex-image2__generate_start com:

  • prompt: o prompt de imagem final
  • cwd: raiz do projeto atual ou diretório de trabalho do artigo
  • outputPath: figures/ai_generated/figura_v1.png
  • system: uma instrução curta como Figura de artigo acadêmico. Prefira rótulos claros em Português.
  • timeoutSeconds: um tempo limite de renderização limitado, como 180

Em seguida, chame mcp__codex-image2__generate_status com esperas limitadas até que:

  • done=true e status=completed, ou
  • done=true e status=failed

Se a geração falhar, relate o erro da ponte diretamente, em vez de escondê-lo.

Etapa 5: Revisar a Saída

Revise a imagem gerada com uma lista de verificação rigorosa:

  • todos os componentes principais estão presentes?
  • o fluxo lógico é óbvio?
  • os rótulos são legíveis?
  • as setas apontam na direção certa?
  • a figura parece pronta para papel, em vez de um slide?

Atribua uma nota de 1 a 10.

Etapa 6: Refinar se Necessário

Se nota < 9, escreva um prompt de refinamento direcionado:

  • diga exatamente o que estava errado (com base na verificação)
  • peça mudanças específicas para a nota alvo
  • evite reformular a solicitação inteira — apenas os ajustes

Atualize o outputPath para figures/ai_generated/figura_v2.png (incremente o número da versão).

Volte para a Etapa 4. Nunca exceda 5 iterações no total.

Etapa 7: Finalizar

Uma vez que a nota ≥ 9:

  1. Execute:
python3 "$IMAGE2_HELPER" finalize \
  --workspace <cwd> \
  --best-image figures/ai_generated/figura_vXXX.png
  1. Execute:
python3 "$IMAGE2_HELPER" verify \
  --workspace <cwd> \
  --json-out figures/ai_generated/verify.json
  1. Se a verificação passar, informe o caminho da figura final e confirme que ela atende aos padrões da conferência.
  2. Se a verificação falhar, relate o erro e ofereça-se para iterar mais (se dentro do limite de iterações) ou explique por que a figura não pôde ser concluída.

Referências

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Habilidades Relacionadas