Pular para o conteúdo

Anexos na conversa

Anexe arquivo, imagem, print colado ou arquivo arrastado à conversa, sabendo os limites de seleção, o que viaja embutido e o que vira caminho.

Ver Markdown

Você pode mandar arquivo e imagem para o agente junto com a mensagem. Há três formas de fazer isso, e as três terminam no mesmo lugar:

  1. Escolher um arquivo pelo seletor do campo de escrita. O diálogo nativo devolve o caminho de uma vez e respeita o gerenciador de janelas do seu sistema.
  2. Colar. O print da tela, a imagem copiada de uma página e o arquivo copiado no gerenciador de arquivos funcionam. Os bytes vêm do próprio evento de colagem, e não da área de transferência do sistema — porque a leitura da área de transferência volta vazia quando a imagem foi copiada como arquivo, que era exatamente o caso que não anexava nada.
  3. Arrastar e soltar o arquivo de dentro do sistema para o campo de escrita.

Imagem viaja inteira; o resto viaja como caminho

A diferença não é estética — é o que o agente consegue fazer com o anexo:

  • Imagem vai embutida na mensagem. É a única forma de o modelo ver o que você mandou: um caminho de arquivo o obrigaria a chamar uma ferramenta, o que custa uma rodada e uma autorização, e falha quando o arquivo está fora do projeto.
  • Qualquer outro arquivo vai como referência de caminho. O agente lê PDF, notebook e texto melhor com a própria ferramenta de leitura do que com qualquer coisa que empurrássemos embutida — e um arquivo grande embutido estouraria o contexto antes de chegar lá.

O que decide é o tipo do arquivo, e há um teto para o caminho embutido: uma imagem acima do teto vira referência por caminho em vez de ser recusada. O agente continua alcançando a imagem, só que pela ferramenta de leitura.

Limites que você vai encontrar

Limite Valor Por que existe
Itens por gesto de seleção 20 Nunca foi limite de tamanho: é o que impede uma seleção de “todos os arquivos desta pasta” virar quatro mil anexos numa mensagem.
Miniatura na ficha do anexo 96 px de lado Redimensionar no processo principal evita trafegar 8 MB de foto só para desenhar um quadrado pequeno.
Imagem aberta em tamanho real 24 MB Uma foto maior não atravessa a comunicação interna do app: ela abre no visualizador do sistema.
Fonte da miniatura 24 MB Acima disso nem se tenta decodificar; a ficha cai no ícone do tipo, que é informação suficiente.

Arquivos colados são gravados numa pasta temporária própria, e não soltos no diretório temporário do sistema: assim o nome original é preservado sem risco de colidir com o de outra colagem. O nome passa por saneamento antes de virar caminho de escrita.

Conversa em host remoto (SSH)

Aqui a regra muda, e vale entender por quê: um caminho local não existe no servidor. Mandar o caminho da sua máquina para um agente que roda num servidor Linux produz um “não encontrei” sem explicação útil.

  • Imagem continua indo embutida, porque ela chega igual em qualquer host.
  • Qualquer outro arquivo é enviado para o host — para uma pasta de anexos da conversa na conta do servidor — e o agente recebe o caminho de lá. O envio acontece pelo canal de execução da conexão, não por transferência de arquivos, porque o protocolo de transferência não existe quando a conexão usa o cliente de SSH do sistema.
  • Envio que falha vira aviso na própria mensagem, nunca um caminho inexistente apresentado como válido.

Limites que valem saber agora

  • Não prometa envio uniforme de bytes. Imagem embutida e referência por caminho são comportamentos diferentes, e o que vale num provedor ou num host pode não valer em outro.
  • O que decide o caminho é o adapter estar em uso. Onde a superfície não está no caminho estruturado do provedor, o anexo continua sendo colado como caminho no texto, pela própria tela — não é o mesmo recurso com outro nome.
  • Colar e arrastar não foram exercitados em local e em host remoto para cada provedor publicável. Esse é o cenário pendente desta página, e é ele que decide se os limites acima podem ser publicados como comportamento verificado.

Estado desta página. Ela descreve o comportamento-alvo da próxima release, com base na inspeção do código-fonte da revisão de referência. Nenhum cenário foi executado em build nesta coleta; onde há medição ao vivo, isso está dito no texto.